diff options
| -rw-r--r-- | include/asm-powerpc/io.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/include/asm-powerpc/io.h b/include/asm-powerpc/io.h index 3baff8b0fd5a..c2c5f14b5f5f 100644 --- a/include/asm-powerpc/io.h +++ b/include/asm-powerpc/io.h | |||
| @@ -163,8 +163,11 @@ extern void _outsl_ns(volatile u32 __iomem *port, const void *buf, long count); | |||
| 163 | 163 | ||
| 164 | static inline void mmiowb(void) | 164 | static inline void mmiowb(void) |
| 165 | { | 165 | { |
| 166 | __asm__ __volatile__ ("sync" : : : "memory"); | 166 | unsigned long tmp; |
| 167 | get_paca()->io_sync = 0; | 167 | |
| 168 | __asm__ __volatile__("sync; li %0,0; stb %0,%1(13)" | ||
| 169 | : "=&r" (tmp) : "i" (offsetof(struct paca_struct, io_sync)) | ||
| 170 | : "memory"); | ||
| 168 | } | 171 | } |
| 169 | 172 | ||
| 170 | /* | 173 | /* |
