freebsd-dev/sys/arm/include/smp.h
Oleksandr Tymoshenko cf1a573f04 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
2012-08-15 03:03:03 +00:00

36 lines
752 B
C

/* $FreeBSD$ */
#ifndef _MACHINE_SMP_H_
#define _MACHINE_SMP_H_
#include <sys/_cpuset.h>
#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_ */