diff options
author | andrew <andrew@FreeBSD.org> | 2016-02-28 13:43:58 +0000 |
---|---|---|
committer | andrew <andrew@FreeBSD.org> | 2016-02-28 13:43:58 +0000 |
commit | d66dd8620c74bae3123357d2482fbbc0a43ed614 (patch) | |
tree | 8a1b39e43c55285b238220e6fc45053ea64dc617 /sys/arm/qemu/virt_machdep.c | |
parent | 72d434db85893bc7fdf3d8cc09b34ec1225f09a1 (diff) | |
download | FreeBSD-src-d66dd8620c74bae3123357d2482fbbc0a43ed614.zip FreeBSD-src-d66dd8620c74bae3123357d2482fbbc0a43ed614.tar.gz |
Add SMP support to the ARM PLATFORM code. This will allow us to have
different methods to start the secondary cores in a kernel built for
multiple SoCs, e.g. with the Allwinner A20 and A31.
Sponsored by: ABT systems Ltd
Differential Revision: https://reviews.freebsd.org/D5466
Diffstat (limited to 'sys/arm/qemu/virt_machdep.c')
-rw-r--r-- | sys/arm/qemu/virt_machdep.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/arm/qemu/virt_machdep.c b/sys/arm/qemu/virt_machdep.c index 6b0cba2..d0514fe 100644 --- a/sys/arm/qemu/virt_machdep.c +++ b/sys/arm/qemu/virt_machdep.c @@ -41,6 +41,8 @@ __FBSDID("$FreeBSD$"); #include <machine/platform.h> #include <machine/platformvar.h> +#include <arm/qemu/virt_mp.h> + #include "platform_if.h" struct arm32_dma_range * @@ -86,6 +88,11 @@ static platform_method_t virt_methods[] = { PLATFORMMETHOD(platform_devmap_init, virt_devmap_init), PLATFORMMETHOD(platform_lastaddr, virt_lastaddr), +#ifdef SMP + PLATFORMMETHOD(platform_mp_start_ap, virt_mp_start_ap), + PLATFORMMETHOD(platform_mp_setmaxid, virt_mp_setmaxid), +#endif + PLATFORMMETHOD_END, }; |