Changeset View
Changeset View
Standalone View
Standalone View
sys/arm/arm/mp_machdep.c
Show First 20 Lines • Show All 44 Lines • ▼ Show 20 Lines | |||||
#include <vm/vm_extern.h> | #include <vm/vm_extern.h> | ||||
#include <vm/vm_kern.h> | #include <vm/vm_kern.h> | ||||
#include <vm/pmap.h> | #include <vm/pmap.h> | ||||
#include <machine/armreg.h> | #include <machine/armreg.h> | ||||
#include <machine/cpu.h> | #include <machine/cpu.h> | ||||
#include <machine/cpufunc.h> | #include <machine/cpufunc.h> | ||||
#include <machine/debug_monitor.h> | #include <machine/debug_monitor.h> | ||||
#include <machine/platform.h> | |||||
#include <machine/smp.h> | #include <machine/smp.h> | ||||
#include <machine/pcb.h> | #include <machine/pcb.h> | ||||
#include <machine/physmem.h> | #include <machine/physmem.h> | ||||
#include <machine/intr.h> | #include <machine/intr.h> | ||||
#include <machine/vmparam.h> | #include <machine/vmparam.h> | ||||
#ifdef VFP | #ifdef VFP | ||||
#include <machine/vfp.h> | #include <machine/vfp.h> | ||||
#endif | #endif | ||||
▲ Show 20 Lines • Show All 145 Lines • ▼ Show 20 Lines | #endif | ||||
atomic_add_rel_32(&smp_cpus, 1); | atomic_add_rel_32(&smp_cpus, 1); | ||||
if (smp_cpus == mp_ncpus) { | if (smp_cpus == mp_ncpus) { | ||||
/* enable IPI's, tlb shootdown, freezes etc */ | /* enable IPI's, tlb shootdown, freezes etc */ | ||||
atomic_store_rel_int(&smp_started, 1); | atomic_store_rel_int(&smp_started, 1); | ||||
} | } | ||||
mtx_unlock_spin(&ap_boot_mtx); | mtx_unlock_spin(&ap_boot_mtx); | ||||
platform_late_init(); | |||||
#ifndef INTRNG | #ifndef INTRNG | ||||
/* Enable ipi */ | /* Enable ipi */ | ||||
#ifdef IPI_IRQ_START | #ifdef IPI_IRQ_START | ||||
start = IPI_IRQ_START; | start = IPI_IRQ_START; | ||||
#ifdef IPI_IRQ_END | #ifdef IPI_IRQ_END | ||||
end = IPI_IRQ_END; | end = IPI_IRQ_END; | ||||
#else | #else | ||||
▲ Show 20 Lines • Show All 319 Lines • Show Last 20 Lines |