smp.h revision 96442
133965Sjdp/* 233965Sjdp * $FreeBSD: head/sys/ia64/include/smp.h 96442 2002-05-12 05:54:21Z marcel $ 333965Sjdp */ 433965Sjdp#ifndef _MACHINE_SMP_H_ 533965Sjdp#define _MACHINE_SMP_H_ 633965Sjdp 733965Sjdp#ifdef _KERNEL 833965Sjdp 933965Sjdp/* 1033965Sjdp * Interprocessor interrupts for SMP. The following values are indices 1133965Sjdp * into the IPI vector table. The SAL gives us the vector used for AP 1233965Sjdp * wake-up. We base the other vectors on that. Keep IPI_AP_WAKEUP at 1333965Sjdp * index 0 and IPI_MCA_RENDEZ at index 1. See sal.c for details. 1433965Sjdp */ 1533965Sjdp/* Architecture specific IPIs. */ 16#define IPI_AP_WAKEUP 0 17#define IPI_MCA_RENDEZ 1 18#define IPI_MCA_CMCV 2 19#define IPI_TEST 3 20/* Machine independent IPIs. */ 21#define IPI_AST 4 22#define IPI_RENDEZVOUS 5 23#define IPI_STOP 6 24 25#define IPI_COUNT 7 26 27#ifndef LOCORE 28 29extern int ipi_vector[]; 30 31void ipi_all(int ipi); 32void ipi_all_but_self(int ipi); 33void ipi_selected(u_int64_t cpus, int ipi); 34void ipi_self(int ipi); 35 36#endif /* !LOCORE */ 37#endif /* _KERNEL */ 38#endif /* !_MACHINE_SMP_H */ 39