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

Commit 8553cb67 authored by Catalin Marinas's avatar Catalin Marinas
Browse files

Modern processors may need to drain the WB before WFI



Since WFI may cause the processor to enter a low-power mode, data may
still be in the write buffer. This patch adds a DSB (or DWB) to the
cpu_(v6|v7)_do_idle functions before the WFI.

Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>



parent 73b63efa
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -71,6 +71,8 @@ ENTRY(cpu_v6_reset)
 *	IRQs are already disabled.
 */
ENTRY(cpu_v6_do_idle)
	mov	r1, #0
	mcr	p15, 0, r1, c7, c10, 4		@ DWB - WFI may enter a low-power mode
	mcr	p15, 0, r1, c7, c0, 4		@ wait for interrupt
	mov	pc, lr

+1 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@ ENDPROC(cpu_v7_reset)
 *	IRQs are already disabled.
 */
ENTRY(cpu_v7_do_idle)
	dsb					@ WFI may enter a low-power mode
	wfi
	mov	pc, lr
ENDPROC(cpu_v7_do_idle)