]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/arm/am79c961a.c
Pull acpi-debug into release branch
[linux-2.6-omap-h63xx.git] / drivers / net / arm / am79c961a.c
index 53e3afc1b7b7c865c850906d4601865fe33ae49d..2143eeb7a2b0fdf34143d8c14bfe0a623a5c7894 100644 (file)
@@ -38,7 +38,7 @@
 #include "am79c961a.h"
 
 static irqreturn_t
-am79c961_interrupt (int irq, void *dev_id, struct pt_regs *regs);
+am79c961_interrupt (int irq, void *dev_id);
 
 static unsigned int net_debug = NET_DEBUG;
 
@@ -526,7 +526,6 @@ am79c961_rx(struct net_device *dev, struct dev_priv *priv)
                skb = dev_alloc_skb(len + 2);
 
                if (skb) {
-                       skb->dev = dev;
                        skb_reserve(skb, 2);
 
                        am_readbuffer(dev, pktaddr, skb_put(skb, len), len);
@@ -596,7 +595,7 @@ am79c961_tx(struct net_device *dev, struct dev_priv *priv)
 }
 
 static irqreturn_t
-am79c961_interrupt(int irq, void *dev_id, struct pt_regs *regs)
+am79c961_interrupt(int irq, void *dev_id)
 {
        struct net_device *dev = (struct net_device *)dev_id;
        struct dev_priv *priv = netdev_priv(dev);
@@ -635,7 +634,7 @@ static void am79c961_poll_controller(struct net_device *dev)
 {
        unsigned long flags;
        local_irq_save(flags);
-       am79c961_interrupt(dev->irq, dev, NULL);
+       am79c961_interrupt(dev->irq, dev);
        local_irq_restore(flags);
 }
 #endif
@@ -696,7 +695,9 @@ static int __init am79c961_probe(struct platform_device *pdev)
        dev->base_addr = res->start;
        dev->irq = platform_get_irq(pdev, 0);
 
-       ret = -ENODEV;
+       ret = -ENODEV;
+       if (dev->irq < 0)
+               goto nodev;
        if (!request_region(dev->base_addr, 0x18, dev->name))
                goto nodev;