diff options
Diffstat (limited to 'kernel/arch/arc/include/asm/delay.h')
-rw-r--r-- | kernel/arch/arc/include/asm/delay.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/kernel/arch/arc/include/asm/delay.h b/kernel/arch/arc/include/asm/delay.h index 08e7e2a16..d5da2115d 100644 --- a/kernel/arch/arc/include/asm/delay.h +++ b/kernel/arch/arc/include/asm/delay.h @@ -22,10 +22,13 @@ static inline void __delay(unsigned long loops) { __asm__ __volatile__( - " lp 1f \n" - " nop \n" - "1: \n" - : "+l"(loops)); + " mov lp_count, %0 \n" + " lp 1f \n" + " nop \n" + "1: \n" + : + : "r"(loops) + : "lp_count"); } extern void __bad_udelay(void); |