diff options
author | Paul Burton <paul.burton@imgtec.com> | 2014-03-14 16:06:16 +0000 |
---|---|---|
committer | Paul Burton <paul.burton@imgtec.com> | 2014-05-28 16:20:29 +0100 |
commit | 68c1232f51350b007cb1f05260e9e784770ec513 (patch) | |
tree | a9059486d9c85d889cd9615792e2dbbf76029bb0 /arch | |
parent | 245a7868d2f2e54a9a9b084de00d003a9badb2a5 (diff) | |
download | op-kernel-dev-68c1232f51350b007cb1f05260e9e784770ec513.zip op-kernel-dev-68c1232f51350b007cb1f05260e9e784770ec513.tar.gz |
MIPS: smp-cps: function to determine whether CPS SMP is in use
The core power down state for cpuidle will require that the CPS SMP
implementation is in use. This patch provides a mips_cps_smp_in_use
function which determines whether or not the CPS SMP implementation is
currently in use.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/include/asm/smp-cps.h | 2 | ||||
-rw-r--r-- | arch/mips/kernel/smp-cps.c | 6 |
2 files changed, 8 insertions, 0 deletions
diff --git a/arch/mips/include/asm/smp-cps.h b/arch/mips/include/asm/smp-cps.h index d49279e..324df2c 100644 --- a/arch/mips/include/asm/smp-cps.h +++ b/arch/mips/include/asm/smp-cps.h @@ -31,6 +31,8 @@ extern void mips_cps_core_init(void); extern struct vpe_boot_config *mips_cps_boot_vpes(void); +extern bool mips_cps_smp_in_use(void); + #else /* __ASSEMBLY__ */ .extern mips_cps_bootcfg; diff --git a/arch/mips/kernel/smp-cps.c b/arch/mips/kernel/smp-cps.c index af90e82..c7879fb 100644 --- a/arch/mips/kernel/smp-cps.c +++ b/arch/mips/kernel/smp-cps.c @@ -260,6 +260,12 @@ static struct plat_smp_ops cps_smp_ops = { .cpus_done = cps_cpus_done, }; +bool mips_cps_smp_in_use(void) +{ + extern struct plat_smp_ops *mp_ops; + return mp_ops == &cps_smp_ops; +} + int register_cps_smp_ops(void) { if (!mips_cm_present()) { |