diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2013-09-20 23:29:44 +0100 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2013-09-27 16:39:03 +0100 |
commit | f474d3b4727c838ece492661be420387e4e55866 (patch) | |
tree | 101f12f9e2d767c5cebbd028ee8454a414006963 /xen/include/asm-arm/platform.h | |
parent | e1dbd62d48ef6b82fd6f4906e37ae1a8f873a2cf (diff) | |
download | xen-f474d3b4727c838ece492661be420387e4e55866.tar.gz xen-f474d3b4727c838ece492661be420387e4e55866.tar.bz2 xen-f474d3b4727c838ece492661be420387e4e55866.zip |
xen: arm: implement arch/platform SMP and CPU initialisation framework
Includes an implementation for vexpress using the sysflags interface and
support for the ARMv8 "spin-table" method.
Unused until "rewrite start of day page table and cpu bring up", split out to
simplify review.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
Acked-by: Julien Grall <julien.grall@linaro.org>
Diffstat (limited to 'xen/include/asm-arm/platform.h')
-rw-r--r-- | xen/include/asm-arm/platform.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/xen/include/asm-arm/platform.h b/xen/include/asm-arm/platform.h index a19dbf732b..dbd2a15ed4 100644 --- a/xen/include/asm-arm/platform.h +++ b/xen/include/asm-arm/platform.h @@ -15,6 +15,11 @@ struct platform_desc { /* Platform initialization */ int (*init)(void); int (*init_time)(void); +#ifdef CONFIG_ARM_32 + /* SMP */ + int (*smp_init)(void); + int (*cpu_up)(int cpu); +#endif /* Specific mapping for dom0 */ int (*specific_mapping)(struct domain *d); /* Platform reset */ @@ -43,6 +48,10 @@ struct platform_desc { int __init platform_init(void); int __init platform_init_time(void); int __init platform_specific_mapping(struct domain *d); +#ifdef CONFIG_ARM_32 +int platform_smp_init(void); +int platform_cpu_up(int cpu); +#endif void platform_reset(void); void platform_poweroff(void); bool_t platform_has_quirk(uint32_t quirk); |