Module Name: src Committed By: snj Date: Sun Apr 8 06:12:53 UTC 2018
Modified Files: src/sys/arch/evbarm/rpi [netbsd-8]: rpi_machdep.c Log Message: Pull up following revision(s) (requested by mlelstv in ticket #704): sys/arch/evbarm/rpi/rpi_machdep.c: 1.81 Firmware after May 8, 2017 places APs in WFE state at boot. Add a "sev" after writing the start vector, otherwise secondary CPUs will not boot. To generate a diff of this commit: cvs rdiff -u -r1.70.8.2 -r1.70.8.3 src/sys/arch/evbarm/rpi/rpi_machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/evbarm/rpi/rpi_machdep.c diff -u src/sys/arch/evbarm/rpi/rpi_machdep.c:1.70.8.2 src/sys/arch/evbarm/rpi/rpi_machdep.c:1.70.8.3 --- src/sys/arch/evbarm/rpi/rpi_machdep.c:1.70.8.2 Wed Jun 21 17:50:08 2017 +++ src/sys/arch/evbarm/rpi/rpi_machdep.c Sun Apr 8 06:12:53 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: rpi_machdep.c,v 1.70.8.2 2017/06/21 17:50:08 snj Exp $ */ +/* $NetBSD: rpi_machdep.c,v 1.70.8.3 2018/04/08 06:12:53 snj Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rpi_machdep.c,v 1.70.8.2 2017/06/21 17:50:08 snj Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rpi_machdep.c,v 1.70.8.3 2018/04/08 06:12:53 snj Exp $"); #include "opt_arm_debug.h" #include "opt_bcm283x.h" @@ -578,6 +578,9 @@ rpi_bootstrap(void) } } + /* Wake up APs in case firmware has placed them in WFE state */ + __asm __volatile("sev"); + for (int loop = 0; loop < 16; loop++) { if (arm_cpu_hatched == __BITS(arm_cpu_max - 1, 1)) break;