diff options
author | Al Viro <viro@ftp.linux.org.uk> | 2008-03-19 09:43:49 +0000 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2008-03-26 00:18:00 -0400 |
commit | de5971462fe27885290d8c95d9446a8b6d012448 (patch) | |
tree | ea82ddb101d79d7d9cc8881d4adc6582143ee0f9 /drivers/net/ni52.c | |
parent | 725aa4a9abc5d391ce36387e01c5b3c90a9f5516 (diff) | |
download | op-kernel-dev-de5971462fe27885290d8c95d9446a8b6d012448.zip op-kernel-dev-de5971462fe27885290d8c95d9446a8b6d012448.tar.gz |
ni52: kill the second argument of check586(), get rid of bogus pointer
Passing ISA bus address explicitly cast to char * only to cast it back to
unsigned long is dumb; so's passing it at all when it's always dev->mem_start...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/ni52.c')
-rw-r--r-- | drivers/net/ni52.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/drivers/net/ni52.c b/drivers/net/ni52.c index 10beb18..71ce4f2 100644 --- a/drivers/net/ni52.c +++ b/drivers/net/ni52.c @@ -179,7 +179,7 @@ static void ni52_timeout(struct net_device *dev); /* helper-functions */ static int init586(struct net_device *dev); -static int check586(struct net_device *dev, char *where, unsigned size); +static int check586(struct net_device *dev, unsigned size); static void alloc586(struct net_device *dev); static void startrecv586(struct net_device *dev); static void __iomem *alloc_rfa(struct net_device *dev, void __iomem *ptr); @@ -296,16 +296,16 @@ static int ni52_open(struct net_device *dev) /********************************************** * Check to see if there's an 82586 out there. */ -static int check586(struct net_device *dev, char *where, unsigned size) +static int check586(struct net_device *dev, unsigned size) { + unsigned long where = dev->mem_start; struct priv pb; struct priv *p = /* (struct priv *) dev->priv*/ &pb; char __iomem *iscp_addrs[2]; int i; - p->base = (unsigned long) isa_bus_to_virt((unsigned long)where) - + size - 0x01000000; - p->memtop = (char __iomem *)isa_bus_to_virt((unsigned long)where) + size; + p->base = (unsigned long) isa_bus_to_virt(where) + size - 0x01000000; + p->memtop = (char __iomem *)isa_bus_to_virt(where) + size; p->scp = (struct scp_struct __iomem *)(p->base + SCP_DEFAULT_ADDRESS); memset_io(p->scp, 0, sizeof(struct scp_struct)); for (i = 0; i < sizeof(struct scp_struct); i++) @@ -316,7 +316,7 @@ static int check586(struct net_device *dev, char *where, unsigned size) if (readb(&p->scp->sysbus) != SYSBUSVAL) return 0; - iscp_addrs[0] = (char __iomem *)isa_bus_to_virt((unsigned long)where); + iscp_addrs[0] = (char __iomem *)isa_bus_to_virt(where); iscp_addrs[1] = (char __iomem *)p->scp - sizeof(struct iscp_struct); for (i = 0; i < 2; i++) { @@ -474,7 +474,7 @@ static int __init ni52_probe1(struct net_device *dev, int ioaddr) retval = -ENODEV; goto out; } - if (!check586(dev, (char *)dev->mem_start, size)) { + if (!check586(dev, size)) { printk(KERN_ERR "?memcheck, Can't find memory at 0x%lx with size %d!\n", dev->mem_start, size); retval = -ENODEV; goto out; @@ -483,9 +483,9 @@ static int __init ni52_probe1(struct net_device *dev, int ioaddr) if (dev->mem_start != 0) { /* no auto-mem-probe */ size = 0x4000; /* check for 16K mem */ - if (!check586(dev, (char *) dev->mem_start, size)) { + if (!check586(dev, size)) { size = 0x2000; /* check for 8K mem */ - if (!check586(dev, (char *)dev->mem_start, size)) { + if (!check586(dev, size)) { printk(KERN_ERR "?memprobe, Can't find memory at 0x%lx!\n", dev->mem_start); retval = -ENODEV; goto out; @@ -504,11 +504,11 @@ static int __init ni52_probe1(struct net_device *dev, int ioaddr) } dev->mem_start = memaddrs[i]; size = 0x2000; /* check for 8K mem */ - if (check586(dev, (char *)dev->mem_start, size)) + if (check586(dev, size)) /* 8K-check */ break; size = 0x4000; /* check for 16K mem */ - if (check586(dev, (char *)dev->mem_start, size)) + if (check586(dev, size)) /* 16K-check */ break; } |