Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 40a5c0b4 authored by Will Deacon's avatar Will Deacon
Browse files

ARM: mcpm: use -st dsb option prior to sev instructions



In a similar manner to our spinlock implementation, mcpm uses sev to
wake up cores waiting on a lock when the lock is unlocked. In order to
ensure that the final write unlocking the lock is visible, a dsb
instruction is executed immediately prior to the sev.

This patch changes these dsbs to use the -st option, since we only
require that the store unlocking the lock is made visible.

Acked-by: default avatarNicolas Pitre <nico@linaro.org>
Reviewed-by: default avatarDave Martin <dave.martin@arm.com>
Reviewed-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
parent e3ab547f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -151,7 +151,7 @@ mcpm_setup_leave:

	mov	r0, #INBOUND_NOT_COMING_UP
	strb	r0, [r8, #MCPM_SYNC_CLUSTER_INBOUND]
	dsb
	dsb	st
	sev

	mov	r0, r11
+2 −2
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@
	dmb
	mov	\rscratch, #0
	strb	\rscratch, [\rbase, \rcpu]
	dsb
	dsb	st
	sev
.endm

@@ -102,7 +102,7 @@ ENTRY(vlock_unlock)
	dmb
	mov	r1, #VLOCK_OWNER_NONE
	strb	r1, [r0, #VLOCK_OWNER_OFFSET]
	dsb
	dsb	st
	sev
	bx	lr
ENDPROC(vlock_unlock)