smp.h revision 253762
1/* $FreeBSD: head/sys/arm/include/smp.h 253762 2013-07-29 08:07:35Z cognet $ */ 2 3#ifndef _MACHINE_SMP_H_ 4#define _MACHINE_SMP_H_ 5 6#include <sys/_cpuset.h> 7 8#define IPI_AST 0 9#define IPI_PREEMPT 2 10#define IPI_RENDEZVOUS 3 11#define IPI_STOP 4 12#define IPI_STOP_HARD 5 13#define IPI_HARDCLOCK 6 14#define IPI_TLB 7 15 16void init_secondary(int cpu); 17 18void ipi_all_but_self(u_int ipi); 19void ipi_cpu(int cpu, u_int ipi); 20void ipi_selected(cpuset_t cpus, u_int ipi); 21 22/* PIC interface */ 23void pic_ipi_send(cpuset_t cpus, u_int ipi); 24void pic_ipi_clear(int ipi); 25int pic_ipi_get(int arg); 26 27/* Platform interface */ 28void platform_mp_setmaxid(void); 29int platform_mp_probe(void); 30void platform_mp_start_ap(void); 31void platform_mp_init_secondary(void); 32 33void platform_ipi_send(cpuset_t cpus, u_int ipi); 34 35/* global data in mp_machdep.c */ 36extern struct pcb stoppcbs[]; 37 38#endif /* !_MACHINE_SMP_H_ */ 39