提交 a07f0dbe 编写于 作者: L Lennert Buytenhek 提交者: Linus Torvalds

[PATCH] cs89x0: use u16 for device register data

cs89x0 inconsistently used 'int' and 'u32' for device register data.
As the cs89x0 is a 16-bit chip, change the I/O accessors over to 'u16'.
(Spotted by Deepak Saxena.)
Signed-off-by: NLennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 580d7b8c
...@@ -342,38 +342,38 @@ struct net_device * __init cs89x0_probe(int unit) ...@@ -342,38 +342,38 @@ struct net_device * __init cs89x0_probe(int unit)
#endif #endif
#if defined(CONFIG_ARCH_IXDP2X01) #if defined(CONFIG_ARCH_IXDP2X01)
static int static u16
readword(unsigned long base_addr, int portno) readword(unsigned long base_addr, int portno)
{ {
return (u16)__raw_readl(base_addr + (portno << 1)); return __raw_readl(base_addr + (portno << 1));
} }
static void static void
writeword(unsigned long base_addr, int portno, int value) writeword(unsigned long base_addr, int portno, u16 value)
{ {
__raw_writel((u16)value, base_addr + (portno << 1)); __raw_writel(value, base_addr + (portno << 1));
} }
#elif defined(CONFIG_ARCH_PNX010X) #elif defined(CONFIG_ARCH_PNX010X)
static int static u16
readword(unsigned long base_addr, int portno) readword(unsigned long base_addr, int portno)
{ {
return inw(base_addr + (portno << 1)); return inw(base_addr + (portno << 1));
} }
static void static void
writeword(unsigned long base_addr, int portno, int value) writeword(unsigned long base_addr, int portno, u16 value)
{ {
outw(value, base_addr + (portno << 1)); outw(value, base_addr + (portno << 1));
} }
#else #else
static int static u16
readword(unsigned long base_addr, int portno) readword(unsigned long base_addr, int portno)
{ {
return inw(base_addr + portno); return inw(base_addr + portno);
} }
static void static void
writeword(unsigned long base_addr, int portno, int value) writeword(unsigned long base_addr, int portno, u16 value)
{ {
outw(value, base_addr + portno); outw(value, base_addr + portno);
} }
...@@ -385,11 +385,11 @@ readwords(unsigned long base_addr, int portno, void *buf, int length) ...@@ -385,11 +385,11 @@ readwords(unsigned long base_addr, int portno, void *buf, int length)
u8 *buf8 = (u8 *)buf; u8 *buf8 = (u8 *)buf;
do { do {
u32 tmp32; u16 tmp16;
tmp32 = readword(base_addr, portno); tmp16 = readword(base_addr, portno);
*buf8++ = (u8)tmp32; *buf8++ = (u8)tmp16;
*buf8++ = (u8)(tmp32 >> 8); *buf8++ = (u8)(tmp16 >> 8);
} while (--length); } while (--length);
} }
...@@ -399,23 +399,23 @@ writewords(unsigned long base_addr, int portno, void *buf, int length) ...@@ -399,23 +399,23 @@ writewords(unsigned long base_addr, int portno, void *buf, int length)
u8 *buf8 = (u8 *)buf; u8 *buf8 = (u8 *)buf;
do { do {
u32 tmp32; u16 tmp16;
tmp32 = *buf8++; tmp16 = *buf8++;
tmp32 |= (*buf8++) << 8; tmp16 |= (*buf8++) << 8;
writeword(base_addr, portno, tmp32); writeword(base_addr, portno, tmp16);
} while (--length); } while (--length);
} }
static int static u16
readreg(struct net_device *dev, int regno) readreg(struct net_device *dev, u16 regno)
{ {
writeword(dev->base_addr, ADD_PORT, regno); writeword(dev->base_addr, ADD_PORT, regno);
return readword(dev->base_addr, DATA_PORT); return readword(dev->base_addr, DATA_PORT);
} }
static void static void
writereg(struct net_device *dev, int regno, int value) writereg(struct net_device *dev, u16 regno, u16 value)
{ {
writeword(dev->base_addr, ADD_PORT, regno); writeword(dev->base_addr, ADD_PORT, regno);
writeword(dev->base_addr, DATA_PORT, value); writeword(dev->base_addr, DATA_PORT, value);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册