From 032427f3e9854fccfdddaea8fb15ae4603391a11 Mon Sep 17 00:00:00 2001 From: gonzo Date: Wed, 15 Aug 2012 03:03:03 +0000 Subject: Merging projects/armv6, part 1 Cummulative patch of changes that are not vendor-specific: - ARMv6 and ARMv7 architecture support - ARM SMP support - VFP/Neon support - ARM Generic Interrupt Controller driver - Simplification of startup code for all platforms --- sys/arm/include/smp.h | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'sys/arm/include/smp.h') diff --git a/sys/arm/include/smp.h b/sys/arm/include/smp.h index ca707e3..3cf3cc1 100644 --- a/sys/arm/include/smp.h +++ b/sys/arm/include/smp.h @@ -3,4 +3,33 @@ #ifndef _MACHINE_SMP_H_ #define _MACHINE_SMP_H_ +#include + +#define IPI_AST 0 +#define IPI_PREEMPT 2 +#define IPI_RENDEZVOUS 3 +#define IPI_STOP 4 +#define IPI_STOP_HARD 5 +#define IPI_HARDCLOCK 6 +#define IPI_TLB 7 + +void init_secondary(int cpu); + +void ipi_all_but_self(u_int ipi); +void ipi_cpu(int cpu, u_int ipi); +void ipi_selected(cpuset_t cpus, u_int ipi); + +/* PIC interface */ +void pic_ipi_send(cpuset_t cpus, u_int ipi); +void pic_ipi_clear(int ipi); +int pic_ipi_get(int arg); + +/* Platform interface */ +void platform_mp_setmaxid(void); +int platform_mp_probe(void); +void platform_mp_start_ap(void); +void platform_mp_init_secondary(void); + +void platform_ipi_send(cpuset_t cpus, u_int ipi); + #endif /* !_MACHINE_SMP_H_ */ -- cgit v1.1