diff options
author | Finn Thain <fthain@telegraphics.com.au> | 2010-06-01 02:18:32 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-02 05:16:22 -0700 |
commit | 38454db3f0b694df929073a5a867edf30551d950 (patch) | |
tree | 0725a76b8f03337b63caf3da8aaee526cba990ef | |
parent | c1f8fc57c046903b5e7c891f2922592d5f775af3 (diff) |
mac8390: propagate error code from request_irq
Use the request_irq() error code as the return value for mac8390_open().
EAGAIN doesn't make sense for Nubus slot IRQs. Only this driver can claim
this IRQ (until the NIC is removed, which means everything is powered
down).
Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/mac8390.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/mac8390.c b/drivers/net/mac8390.c index 1136c9a22b6..6b14cfef46c 100644 --- a/drivers/net/mac8390.c +++ b/drivers/net/mac8390.c @@ -641,12 +641,13 @@ static int __init mac8390_initdev(struct net_device *dev, static int mac8390_open(struct net_device *dev) { + int err; + __ei_open(dev); - if (request_irq(dev->irq, __ei_interrupt, 0, "8390 Ethernet", dev)) { - pr_info("%s: unable to get IRQ %d.\n", dev->name, dev->irq); - return -EAGAIN; - } - return 0; + err = request_irq(dev->irq, __ei_interrupt, 0, "8390 Ethernet", dev); + if (err) + pr_info("%s: unable to get IRQ %d\n", dev->name, dev->irq); + return err; } static int mac8390_close(struct net_device *dev) |