aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/psci.h
diff options
context:
space:
mode:
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>2013-05-21 14:24:11 +0000
committerJon Medhurst <tixy@linaro.org>2013-07-01 11:04:48 +0100
commit23f83a32303d54cd6c6e45930d1a2ae98ddb9df0 (patch)
treeed878d2d8ba3543093a5d427852cd1c32f4cf301 /arch/arm/include/asm/psci.h
parent8bb495e3f02401ee6f76d1b1d77f3ac9f079e376 (diff)
arm: introduce psci_smp_ops
Rename virt_smp_ops to psci_smp_ops and move them to arch/arm/kernel/psci_smp.c. Remove mach-virt/platsmp.c, now unused. Compile psci_smp if CONFIG_ARM_PSCI and CONFIG_SMP. Add a cpu_die smp_op based on psci_ops.cpu_off. Initialize PSCI before setting smp_ops in setup_arch. If PSCI is available on the platform, prefer psci_smp_ops over the platform smp_ops. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Acked-by: Will Deacon <will.deacon@arm.com> CC: arnd@arndb.de CC: marc.zyngier@arm.com CC: linux@arm.linux.org.uk CC: nico@linaro.org CC: rob.herring@calxeda.com
Diffstat (limited to 'arch/arm/include/asm/psci.h')
-rw-r--r--arch/arm/include/asm/psci.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/include/asm/psci.h b/arch/arm/include/asm/psci.h
index ce0dbe7c162..c4ae171850f 100644
--- a/arch/arm/include/asm/psci.h
+++ b/arch/arm/include/asm/psci.h
@@ -32,5 +32,14 @@ struct psci_operations {
};
extern struct psci_operations psci_ops;
+extern struct smp_operations psci_smp_ops;
+
+#ifdef CONFIG_ARM_PSCI
+void psci_init(void);
+bool psci_smp_available(void);
+#else
+static inline void psci_init(void) { }
+static inline bool psci_smp_available(void) { return false; }
+#endif
#endif /* __ASM_ARM_PSCI_H */