diff options
author | Kumar Gala <galak@kernel.crashing.org> | 2007-07-10 00:49:09 -0400 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2007-07-10 01:33:14 -0400 |
commit | 74a0ba61b1ca96d6bb98889a7d95cd057165da49 (patch) | |
tree | 1f062fa32459fd564a7331174fe11b2ad151e829 /arch/powerpc/kernel/io.c | |
parent | cef1a3a5b8697ad76a6d18753e418cfe6a897030 (diff) |
[POWERPC] Move inline asm eieio to using eieio inline function
Use the eieio function so we can redefine what eieio does rather
than direct inline asm. This is part code clean up and partially
because not all PPCs have eieio (book-e has mbar that maps to eieio).
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/kernel/io.c')
-rw-r--r-- | arch/powerpc/kernel/io.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/powerpc/kernel/io.c b/arch/powerpc/kernel/io.c index 34ae11494ddc..e31aca9208eb 100644 --- a/arch/powerpc/kernel/io.c +++ b/arch/powerpc/kernel/io.c | |||
@@ -35,7 +35,7 @@ void _insb(const volatile u8 __iomem *port, void *buf, long count) | |||
35 | asm volatile("sync"); | 35 | asm volatile("sync"); |
36 | do { | 36 | do { |
37 | tmp = *port; | 37 | tmp = *port; |
38 | asm volatile("eieio"); | 38 | eieio(); |
39 | *tbuf++ = tmp; | 39 | *tbuf++ = tmp; |
40 | } while (--count != 0); | 40 | } while (--count != 0); |
41 | asm volatile("twi 0,%0,0; isync" : : "r" (tmp)); | 41 | asm volatile("twi 0,%0,0; isync" : : "r" (tmp)); |
@@ -66,7 +66,7 @@ void _insw_ns(const volatile u16 __iomem *port, void *buf, long count) | |||
66 | asm volatile("sync"); | 66 | asm volatile("sync"); |
67 | do { | 67 | do { |
68 | tmp = *port; | 68 | tmp = *port; |
69 | asm volatile("eieio"); | 69 | eieio(); |
70 | *tbuf++ = tmp; | 70 | *tbuf++ = tmp; |
71 | } while (--count != 0); | 71 | } while (--count != 0); |
72 | asm volatile("twi 0,%0,0; isync" : : "r" (tmp)); | 72 | asm volatile("twi 0,%0,0; isync" : : "r" (tmp)); |
@@ -97,7 +97,7 @@ void _insl_ns(const volatile u32 __iomem *port, void *buf, long count) | |||
97 | asm volatile("sync"); | 97 | asm volatile("sync"); |
98 | do { | 98 | do { |
99 | tmp = *port; | 99 | tmp = *port; |
100 | asm volatile("eieio"); | 100 | eieio(); |
101 | *tbuf++ = tmp; | 101 | *tbuf++ = tmp; |
102 | } while (--count != 0); | 102 | } while (--count != 0); |
103 | asm volatile("twi 0,%0,0; isync" : : "r" (tmp)); | 103 | asm volatile("twi 0,%0,0; isync" : : "r" (tmp)); |
@@ -155,21 +155,21 @@ void _memcpy_fromio(void *dest, const volatile void __iomem *src, | |||
155 | __asm__ __volatile__ ("sync" : : : "memory"); | 155 | __asm__ __volatile__ ("sync" : : : "memory"); |
156 | while(n && (!IO_CHECK_ALIGN(vsrc, 4) || !IO_CHECK_ALIGN(dest, 4))) { | 156 | while(n && (!IO_CHECK_ALIGN(vsrc, 4) || !IO_CHECK_ALIGN(dest, 4))) { |
157 | *((u8 *)dest) = *((volatile u8 *)vsrc); | 157 | *((u8 *)dest) = *((volatile u8 *)vsrc); |
158 | __asm__ __volatile__ ("eieio" : : : "memory"); | 158 | eieio(); |
159 | vsrc++; | 159 | vsrc++; |
160 | dest++; | 160 | dest++; |
161 | n--; | 161 | n--; |
162 | } | 162 | } |
163 | while(n > 4) { | 163 | while(n > 4) { |
164 | *((u32 *)dest) = *((volatile u32 *)vsrc); | 164 | *((u32 *)dest) = *((volatile u32 *)vsrc); |
165 | __asm__ __volatile__ ("eieio" : : : "memory"); | 165 | eieio(); |
166 | vsrc += 4; | 166 | vsrc += 4; |
167 | dest += 4; | 167 | dest += 4; |
168 | n -= 4; | 168 | n -= 4; |
169 | } | 169 | } |
170 | while(n) { | 170 | while(n) { |
171 | *((u8 *)dest) = *((volatile u8 *)vsrc); | 171 | *((u8 *)dest) = *((volatile u8 *)vsrc); |
172 | __asm__ __volatile__ ("eieio" : : : "memory"); | 172 | eieio(); |
173 | vsrc++; | 173 | vsrc++; |
174 | dest++; | 174 | dest++; |
175 | n--; | 175 | n--; |