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

Commit 016f98af authored by Will Deacon's avatar Will Deacon Committed by Marc Zyngier
Browse files

irqchip/gic-v3: Use nops macro for Cavium ThunderX erratum 23154



The workaround for Cavium ThunderX erratum 23154 has a homebrew
pipeflush built out of NOP sequences around the read of the IAR.

This patch converts the code to use the new nops macro, which makes it
a little easier to read.

Reviewed-by: default avatarMark Rutland <mark.rutland@arm.com>
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
parent d44ffa5a
Loading
Loading
Loading
Loading
+2 −7
Original line number Diff line number Diff line
@@ -122,14 +122,9 @@ static inline u64 gic_read_iar_cavium_thunderx(void)
{
	u64 irqstat;

	asm volatile(
		"nop;nop;nop;nop\n\t"
		"nop;nop;nop;nop");

	nops(8);
	irqstat = read_sysreg_s(ICC_IAR1_EL1);

	asm volatile(
		"nop;nop;nop;nop");
	nops(4);
	mb();

	return irqstat;