146280ae7SWarner Losh /*- 2477a642cSPeter Wemm * ---------------------------------------------------------------------------- 3477a642cSPeter Wemm * "THE BEER-WARE LICENSE" (Revision 42): 4477a642cSPeter Wemm * <phk@FreeBSD.org> wrote this file. As long as you retain this notice you 5477a642cSPeter Wemm * can do whatever you want with this stuff. If we meet some day, and you think 6477a642cSPeter Wemm * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp 7477a642cSPeter Wemm * ---------------------------------------------------------------------------- 8477a642cSPeter Wemm * 9c3aac50fSPeter Wemm * $FreeBSD$ 10477a642cSPeter Wemm * 11477a642cSPeter Wemm */ 12477a642cSPeter Wemm 13477a642cSPeter Wemm #ifndef _MACHINE_SMP_H_ 14477a642cSPeter Wemm #define _MACHINE_SMP_H_ 15477a642cSPeter Wemm 160d2a2989SPeter Wemm #ifdef _KERNEL 170d2a2989SPeter Wemm 180d2a2989SPeter Wemm #ifdef SMP 190d2a2989SPeter Wemm 200d2a2989SPeter Wemm #ifndef LOCORE 210d2a2989SPeter Wemm 227c958a41SKonstantin Belousov #include <x86/x86_smp.h> 230d2a2989SPeter Wemm 240d2a2989SPeter Wemm /* global symbols in mpboot.S */ 250d2a2989SPeter Wemm extern char mptramp_start[]; 260d2a2989SPeter Wemm extern u_int32_t mptramp_pagetables; 270d2a2989SPeter Wemm 280d2a2989SPeter Wemm /* IPI handlers */ 290d2a2989SPeter Wemm inthand_t 30bd50262fSKonstantin Belousov IDTVEC(justreturn), /* interrupt CPU with minimum overhead */ 31bd50262fSKonstantin Belousov IDTVEC(justreturn1_pti), 32*dc43978aSKonstantin Belousov IDTVEC(invlop_pti), 33*dc43978aSKonstantin Belousov IDTVEC(invlop), 34bd50262fSKonstantin Belousov IDTVEC(ipi_intr_bitmap_handler_pti), 35bd50262fSKonstantin Belousov IDTVEC(cpustop_pti), 36bd50262fSKonstantin Belousov IDTVEC(cpususpend_pti), 37bd50262fSKonstantin Belousov IDTVEC(rendezvous_pti); 380d2a2989SPeter Wemm 39*dc43978aSKonstantin Belousov void invlop_handler(void); 40079f7ef8SRoger Pau Monné int native_start_all_aps(void); 419dba82a4SRoger Pau Monné void mp_bootaddress(vm_paddr_t *, unsigned int *); 420d2a2989SPeter Wemm 430d2a2989SPeter Wemm #endif /* !LOCORE */ 440d2a2989SPeter Wemm #endif /* SMP */ 450d2a2989SPeter Wemm 460d2a2989SPeter Wemm #endif /* _KERNEL */ 47477a642cSPeter Wemm #endif /* _MACHINE_SMP_H_ */ 48