ARM: smp_scu: allow the platform code to read the SCU CPU status
On Amlogic Meson8 / Meson8m2 (both Cortex-A9) and Meson8b (Cortex-A5) the CPU hotplug code needs to wait until the SCU status of the CPU that is being taken offline is SCU_PM_POWEROFF. Provide a utility function (which can be invoked for example from .cpu_kill()) which allows reading the SCU status of a CPU. While here, replace the magic number 0x3 with a preprocessor macro (SCU_CPU_STATUS_MASK) so we don't have to duplicate this magic number in the new function. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Acked-by: Russell King <rmk+kernel@armlinux.org.uk> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
This commit is contained in:

committed by
Kevin Hilman

parent
0606326eff
commit
936a417443
@@ -28,6 +28,7 @@ static inline unsigned long scu_a9_get_base(void)
|
||||
unsigned int scu_get_core_count(void __iomem *);
|
||||
int scu_power_mode(void __iomem *, unsigned int);
|
||||
int scu_cpu_power_enable(void __iomem *, unsigned int);
|
||||
int scu_get_cpu_power_mode(void __iomem *scu_base, unsigned int logical_cpu);
|
||||
#else
|
||||
static inline unsigned int scu_get_core_count(void __iomem *scu_base)
|
||||
{
|
||||
@@ -42,6 +43,11 @@ static inline int scu_cpu_power_enable(void __iomem *scu_base,
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
static inline int scu_get_cpu_power_mode(void __iomem *scu_base,
|
||||
unsigned int logical_cpu)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SMP) && defined(CONFIG_HAVE_ARM_SCU)
|
||||
|
Reference in New Issue
Block a user