smp.h revision 85673
1/*
2 * $FreeBSD: head/sys/ia64/include/smp.h 85673 2001-10-29 07:30:37Z marcel $
3 */
4#ifndef _MACHINE_SMP_H_
5#define _MACHINE_SMP_H_
6
7#ifdef _KERNEL
8
9/*
10 * Interprocessor interrupts for SMP. The following values are indices
11 * into the IPI vector table. The SAL gives us the vector used for AP
12 * wake-up. Keep the IPI_AP_WAKEUP at index 0.
13 */
14#define	IPI_AP_WAKEUP		0
15#define	IPI_AST			1
16#define	IPI_CHECKSTATE		2
17#define	IPI_INVLTLB		3
18#define	IPI_RENDEZVOUS		4
19#define	IPI_STOP		5
20#define	IPI_TEST		6
21
22#define	IPI_COUNT		7
23
24#ifndef LOCORE
25
26extern int mp_hardware;
27extern int mp_ipi_vector[];
28
29void	ipi_all(int ipi);
30void	ipi_all_but_self(int ipi);
31void	ipi_selected(u_int64_t cpus, int ipi);
32void	ipi_self(int ipi);
33
34#endif /* !LOCORE */
35#endif /* _KERNEL */
36#endif /* !_MACHINE_SMP_H */
37