summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/asm-avr32/io.h17
1 files changed, 3 insertions, 14 deletions
diff --git a/include/asm-avr32/io.h b/include/asm-avr32/io.h
index 27b1523d42e..e30d4b3bd83 100644
--- a/include/asm-avr32/io.h
+++ b/include/asm-avr32/io.h
@@ -240,30 +240,19 @@ BUILDSTRING(l, u32)
static inline void memcpy_fromio(void * to, const volatile void __iomem *from,
unsigned long count)
{
- char *p = to;
- volatile const char __iomem *addr = from;
-
- while (count--)
- *p++ = readb(addr++);
+ memcpy(to, (const void __force *)from, count);
}
static inline void memcpy_toio(volatile void __iomem *to, const void * from,
unsigned long count)
{
- const char *p = from;
- volatile char __iomem *addr = to;
-
- while (count--)
- writeb(*p++, addr++);
+ memcpy((void __force *)to, from, count);
}
static inline void memset_io(volatile void __iomem *addr, unsigned char val,
unsigned long count)
{
- volatile char __iomem *p = addr;
-
- while (count--)
- writeb(val, p++);
+ memset((void __force *)addr, val, count);
}
#define IO_SPACE_LIMIT 0xffffffff