From: Mike Frysinger Date: Wed, 14 Apr 2010 20:29:06 +0000 (-0400) Subject: net: dm9000x: use standard I/O accessors X-Git-Tag: v2010.06-rc1~68^2~12 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a45dde2293c816138e53c26eca6fd0322583f9a6;p=u-boot net: dm9000x: use standard I/O accessors 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 Signed-off-by: Ben Warren --- diff --git a/drivers/net/dm9000x.c b/drivers/net/dm9000x.c index a7fef56030..f121286812 100644 --- a/drivers/net/dm9000x.c +++ b/drivers/net/dm9000x.c @@ -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