summaryrefslogtreecommitdiffstats
path: root/sys/arm/arm
diff options
context:
space:
mode:
authormmel <mmel@FreeBSD.org>2016-10-15 08:27:54 +0000
committermmel <mmel@FreeBSD.org>2016-10-15 08:27:54 +0000
commit0e78b9280074f680f7f40174394f41db9700fb1d (patch)
tree1c199ae04776b544f88a65d1d5973abcdb28de51 /sys/arm/arm
parentb394a692e6ffca789b201f12d358cef6d02080a3 (diff)
downloadFreeBSD-src-0e78b9280074f680f7f40174394f41db9700fb1d.zip
FreeBSD-src-0e78b9280074f680f7f40174394f41db9700fb1d.tar.gz
MFC r306756:
ARM: SEV/WFE instructions are implemented starting from ARMv6K, use it directly.
Diffstat (limited to 'sys/arm/arm')
-rw-r--r--sys/arm/arm/cpufunc_asm_armv7.S7
-rw-r--r--sys/arm/arm/mp_machdep.c5
2 files changed, 2 insertions, 10 deletions
diff --git a/sys/arm/arm/cpufunc_asm_armv7.S b/sys/arm/arm/cpufunc_asm_armv7.S
index affd5281..62f9bca 100644
--- a/sys/arm/arm/cpufunc_asm_armv7.S
+++ b/sys/arm/arm/cpufunc_asm_armv7.S
@@ -297,13 +297,6 @@ ENTRY(armv7_drain_writebuf)
RET
END(armv7_drain_writebuf)
-ENTRY(armv7_sev)
- dsb
- sev
- nop
- RET
-END(armv7_sev)
-
ENTRY(armv7_auxctrl)
mrc CP15_ACTLR(r2)
bic r3, r2, r0 /* Clear bits */
diff --git a/sys/arm/arm/mp_machdep.c b/sys/arm/arm/mp_machdep.c
index 312ee58..2dc7171 100644
--- a/sys/arm/arm/mp_machdep.c
+++ b/sys/arm/arm/mp_machdep.c
@@ -467,9 +467,8 @@ release_aps(void *dummy __unused)
#endif
atomic_store_rel_int(&aps_ready, 1);
/* Wake the other threads up */
-#if __ARM_ARCH >= 7
- armv7_sev();
-#endif
+ dsb();
+ sev();
printf("Release APs\n");
OpenPOWER on IntegriCloud