microblaze: Fix strict-aliasing rules for in_be32
authorMichal Simek <monstr@monstr.eu>
Tue, 18 Oct 2011 09:33:07 +0000 (11:33 +0200)
committerMichal Simek <monstr@monstr.eu>
Mon, 24 Oct 2011 05:57:03 +0000 (07:57 +0200)
readl should work with unsigned int instead of unsigned long.

Signed-off-by: Michal Simek <monstr@monstr.eu>
arch/microblaze/include/asm/io.h

index 7e190d15c60e98be1b2a68f191e33f19b5ed42d8..584cbce358c5aedeff87fb780bf5f9c4b99e95ed 100644 (file)
@@ -25,7 +25,7 @@
 #define readw(addr) \
   ({ unsigned short __v = (*(volatile unsigned short *) (addr)); __v; })
 #define readl(addr) \
-  ({ unsigned long __v = (*(volatile unsigned long *) (addr)); __v; })
+       ({ unsigned int __v = (*(volatile unsigned int *) (addr)); __v; })
 
 #define writeb(b, addr) \
   (void)((*(volatile unsigned char *) (addr)) = (b))