diff options
author | Kars de Jong <jongk@linux-m68k.org> | 2006-12-09 10:29:58 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-09 09:41:18 -0800 |
commit | 8e8858e932a81d827e194abf82faf32d02396f55 (patch) | |
tree | e839f98a57e8eb307e5acce77d976f28c05bb84a | |
parent | 99b48cff405333afe26ac603b37639c410a48e5d (diff) | |
download | linux-stable-8e8858e932a81d827e194abf82faf32d02396f55.tar.gz linux-stable-8e8858e932a81d827e194abf82faf32d02396f55.tar.bz2 linux-stable-8e8858e932a81d827e194abf82faf32d02396f55.zip |
[PATCH] m68k/HP300: HP LANCE updates
- 7990: request_irq() should have SA_SHIRQ flag set
- hplance_init() printed dev->name before register_netdev() had filled it in
Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/net/7990.c | 2 | ||||
-rw-r--r-- | drivers/net/hplance.c | 14 |
2 files changed, 11 insertions, 5 deletions
diff --git a/drivers/net/7990.c b/drivers/net/7990.c index 7733697f7776..2d5ba076471c 100644 --- a/drivers/net/7990.c +++ b/drivers/net/7990.c @@ -500,7 +500,7 @@ int lance_open (struct net_device *dev) int res; /* Install the Interrupt handler. Or we could shunt this out to specific drivers? */ - if (request_irq(lp->irq, lance_interrupt, 0, lp->name, dev)) + if (request_irq(lp->irq, lance_interrupt, SA_SHIRQ, lp->name, dev)) return -EAGAIN; res = lance_reset(dev); diff --git a/drivers/net/hplance.c b/drivers/net/hplance.c index 9c643f2a8d54..c991cb82ff22 100644 --- a/drivers/net/hplance.c +++ b/drivers/net/hplance.c @@ -77,6 +77,7 @@ static int __devinit hplance_init_one(struct dio_dev *d, { struct net_device *dev; int err = -ENOMEM; + int i; dev = alloc_etherdev(sizeof(struct hplance_private)); if (!dev) @@ -93,6 +94,15 @@ static int __devinit hplance_init_one(struct dio_dev *d, goto out_release_mem_region; dio_set_drvdata(d, dev); + + printk(KERN_INFO "%s: %s; select code %d, addr %2.2x", dev->name, d->name, d->scode, dev->dev_addr[0]); + + for (i=1; i<6; i++) { + printk(":%2.2x", dev->dev_addr[i]); + } + + printk(", irq %d\n", d->ipl); + return 0; out_release_mem_region: @@ -119,8 +129,6 @@ static void __init hplance_init(struct net_device *dev, struct dio_dev *d) struct hplance_private *lp; int i; - printk(KERN_INFO "%s: %s; select code %d, addr", dev->name, d->name, d->scode); - /* reset the board */ out_8(va+DIO_IDOFF, 0xff); udelay(100); /* ariba! ariba! udelay! udelay! */ @@ -143,7 +151,6 @@ static void __init hplance_init(struct net_device *dev, struct dio_dev *d) */ dev->dev_addr[i] = ((in_8(va + HPLANCE_NVRAMOFF + i*4 + 1) & 0xF) << 4) | (in_8(va + HPLANCE_NVRAMOFF + i*4 + 3) & 0xF); - printk("%c%2.2x", i == 0 ? ' ' : ':', dev->dev_addr[i]); } lp = netdev_priv(dev); @@ -160,7 +167,6 @@ static void __init hplance_init(struct net_device *dev, struct dio_dev *d) lp->lance.lance_log_tx_bufs = LANCE_LOG_TX_BUFFERS; lp->lance.rx_ring_mod_mask = RX_RING_MOD_MASK; lp->lance.tx_ring_mod_mask = TX_RING_MOD_MASK; - printk(", irq %d\n", lp->lance.irq); } /* This is disgusting. We have to check the DIO status register for ack every |