MIPS: smp-cps: Allow booting of CPU other than VP0 within a core
authorMatt Redfearn <matt.redfearn@imgtec.com>
Thu, 7 Jul 2016 07:50:38 +0000 (08:50 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Sun, 24 Jul 2016 10:19:12 +0000 (12:19 +0200)
commit9736c6152ef6fbb688c05c75b250304787fc9ff7
tree24ff9184f805c9a7273398a34c1f0d6190a7b0d6
parent253aced6d244f69f8fad2a6a04ee3e942031fc52
MIPS: smp-cps: Allow booting of CPU other than VP0 within a core

The boot_core function was hardcoded to always start VP0 when starting
a core via the CPC. When hotplugging a CPU this may not be the desired
behaviour.

Make boot_core receive the VP ID to start running on the core, such that
alternate VPs can be started via CPU hotplug.
Also ensure that all other VPs within the core are stopped before
bringing the core out of reset so that only the desired VP starts.

Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Reviewed-by: Paul Burton <paul.burton@imgtec.com>
Cc: Matt Redfearn <matt.redfearn@imgtec.com>
Cc: Qais Yousef <qais.yousef@imgtec.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/13750/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/smp-cps.c