Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

MIPS: generic: enable SMP on SMVP systems

In addition to CPS SMP setups, also try to initialise MT SMP setups with
multiple VPEs per CPU core. CMP SMP support is not provided as it is
considered deprecated.

Additionally, rework the code by dropping the err variable and make it
similar to how other platforms perform this initialisation.

Co-developed-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>

authored by

Sander Vanheule and committed by
Thomas Bogendoerfer
18c7e034 047ff68b

+6 -5
+6 -5
arch/mips/generic/init.c
··· 110 110 111 111 void __init device_tree_init(void) 112 112 { 113 - int err; 114 - 115 113 unflatten_and_copy_device_tree(); 116 114 mips_cpc_probe(); 117 115 118 - err = register_cps_smp_ops(); 119 - if (err) 120 - err = register_up_smp_ops(); 116 + if (!register_cps_smp_ops()) 117 + return; 118 + if (!register_vsmp_smp_ops()) 119 + return; 120 + 121 + register_up_smp_ops(); 121 122 } 122 123 123 124 int __init apply_mips_fdt_fixups(void *fdt_out, size_t fdt_out_size,