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: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
 {
        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;