From 71093be0fdc4f4eb4cd2c26ccb423773246b5c3a Mon Sep 17 00:00:00 2001 From: Al Viro Date: Wed, 19 Mar 2008 09:44:09 +0000 Subject: [PATCH] --- yaml --- r: 90379 b: refs/heads/master c: 7f8cfd560875fd643024c02ea25d4f3b8f1fd31c h: refs/heads/master i: 90377: 87b945b9df36724341abae99466ca17bc135b7d9 90375: f3fa2867567da06cc16bd85bc9a354a81a97877d v: v3 --- [refs] | 2 +- trunk/drivers/net/ni52.c | 21 +++++++-------------- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/[refs] b/[refs] index 75ea1849cc8e..35530b652d34 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e06ee2bb03f936c57265e447bc05e8324db61207 +refs/heads/master: 7f8cfd560875fd643024c02ea25d4f3b8f1fd31c diff --git a/trunk/drivers/net/ni52.c b/trunk/drivers/net/ni52.c index 8eac7146a884..3b1c4af615b6 100644 --- a/trunk/drivers/net/ni52.c +++ b/trunk/drivers/net/ni52.c @@ -300,8 +300,7 @@ static int ni52_open(struct net_device *dev) 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; + struct priv *p = dev->priv; char __iomem *iscp_addrs[2]; int i; @@ -309,6 +308,7 @@ static int check586(struct net_device *dev, unsigned size) p->base = p->mapped + size - 0x01000000; p->memtop = p->mapped + size; p->scp = (struct scp_struct __iomem *)(p->base + SCP_DEFAULT_ADDRESS); + p->scb = (struct scb_struct __iomem *) p->mapped; memset_io(p->scp, 0, sizeof(struct scp_struct)); for (i = 0; i < sizeof(struct scp_struct); i++) /* memory was writeable? */ @@ -335,6 +335,9 @@ static int check586(struct net_device *dev, unsigned size) if (readb(&p->iscp->busy)) return 0; } + + p->iscp = (struct iscp_struct __iomem *) + ((char __iomem *)p->scp - sizeof(struct iscp_struct)); return 1; } @@ -348,13 +351,6 @@ static void alloc586(struct net_device *dev) ni_reset586(); mdelay(32); - spin_lock_init(&p->spinlock); - - p->scp = (struct scp_struct __iomem *) (p->base + SCP_DEFAULT_ADDRESS); - p->scb = (struct scb_struct __iomem *) isa_bus_to_virt(dev->mem_start); - p->iscp = (struct iscp_struct __iomem *) - ((char __iomem *)p->scp - sizeof(struct iscp_struct)); - memset_io(p->iscp, 0, sizeof(struct iscp_struct)); memset_io(p->scp , 0, sizeof(struct scp_struct)); @@ -445,6 +441,8 @@ static int __init ni52_probe1(struct net_device *dev, int ioaddr) dev->mem_start = memstart; dev->mem_end = memend; + spin_lock_init(&priv->spinlock); + if (!request_region(ioaddr, NI52_TOTAL_SIZE, DRV_NAME)) return -EBUSY; @@ -520,11 +518,6 @@ static int __init ni52_probe1(struct net_device *dev, int ioaddr) dev->mem_end = dev->mem_start + size; #endif - memset(priv, 0, sizeof(struct priv)); - - priv->mapped = (char __iomem *)isa_bus_to_virt(dev->mem_start); - priv->memtop = priv->mapped + size; - priv->base = priv->mapped + size - 0x01000000; alloc586(dev); /* set number of receive-buffs according to memsize */