diff options
Diffstat (limited to 'arch/mips/include/asm/edac.h')
-rw-r--r-- | arch/mips/include/asm/edac.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/mips/include/asm/edac.h b/arch/mips/include/asm/edac.h index 4da0c1fe30d9..ae6fedcb0060 100644 --- a/arch/mips/include/asm/edac.h +++ b/arch/mips/include/asm/edac.h | |||
@@ -1,6 +1,8 @@ | |||
1 | #ifndef ASM_EDAC_H | 1 | #ifndef ASM_EDAC_H |
2 | #define ASM_EDAC_H | 2 | #define ASM_EDAC_H |
3 | 3 | ||
4 | #include <asm/compiler.h> | ||
5 | |||
4 | /* ECC atomic, DMA, SMP and interrupt safe scrub function */ | 6 | /* ECC atomic, DMA, SMP and interrupt safe scrub function */ |
5 | 7 | ||
6 | static inline void atomic_scrub(void *va, u32 size) | 8 | static inline void atomic_scrub(void *va, u32 size) |
@@ -24,8 +26,8 @@ static inline void atomic_scrub(void *va, u32 size) | |||
24 | " sc %0, %1 \n" | 26 | " sc %0, %1 \n" |
25 | " beqz %0, 1b \n" | 27 | " beqz %0, 1b \n" |
26 | " .set mips0 \n" | 28 | " .set mips0 \n" |
27 | : "=&r" (temp), "=m" (*virt_addr) | 29 | : "=&r" (temp), "=" GCC_OFF12_ASM() (*virt_addr) |
28 | : "m" (*virt_addr)); | 30 | : GCC_OFF12_ASM() (*virt_addr)); |
29 | 31 | ||
30 | virt_addr++; | 32 | virt_addr++; |
31 | } | 33 | } |