net: dm9000x: use standard I/O accessors
authorMike Frysinger <vapier@gentoo.org>
Wed, 14 Apr 2010 20:29:06 +0000 (16:29 -0400)
committerBen Warren <biggerbadderben@gmail.com>
Mon, 3 May 2010 21:52:48 +0000 (14:52 -0700)
The current dm9000x driver accesses its memory mapped registers directly
instead of using the standard I/O accessors.  This can cause problems on
Blackfin systems as the accesses can get out of order.  So convert the
direct volatile dereferences to use the normal in/out macros.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
drivers/net/dm9000x.c

index a7fef56030f08171ac1c054724b9f20651e7c808..f121286812f03148a72171741d3318cf2988fd0a 100644 (file)
@@ -117,12 +117,12 @@ static void DM9000_iow(int reg, u8 value);
 
 /* DM9000 network board routine ---------------------------- */
 
-#define DM9000_outb(d,r) ( *(volatile u8 *)r = d )
-#define DM9000_outw(d,r) ( *(volatile u16 *)r = d )
-#define DM9000_outl(d,r) ( *(volatile u32 *)r = d )
-#define DM9000_inb(r) (*(volatile u8 *)r)
-#define DM9000_inw(r) (*(volatile u16 *)r)
-#define DM9000_inl(r) (*(volatile u32 *)r)
+#define DM9000_outb(d,r) outb(d, r)
+#define DM9000_outw(d,r) outw(d, r)
+#define DM9000_outl(d,r) outl(d, r)
+#define DM9000_inb(r) inb(r)
+#define DM9000_inw(r) inw(r)
+#define DM9000_inl(r) inl(r)
 
 #ifdef CONFIG_DM9000_DEBUG
 static void