Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
[safe/jmp/linux-2.6] / drivers / net / pcmcia / 3c574_cs.c
index 29d288e..10ee106 100644 (file)
@@ -93,7 +93,6 @@ earlier 3Com products.
 #include <pcmcia/cisreg.h>
 #include <pcmcia/ciscode.h>
 #include <pcmcia/ds.h>
-#include <pcmcia/mem_op.h>
 
 #include <asm/uaccess.h>
 #include <asm/io.h>
@@ -200,7 +199,6 @@ enum Window4 {              /* Window 4: Xcvr/media bits. */
 
 struct el3_private {
        struct pcmcia_device    *p_dev;
-       dev_node_t node;
        u16 advertising, partner;               /* NWay media advertisement */
        unsigned char phys;                     /* MII device address */
        unsigned int autoselect:1, default_media:3;     /* Read from the EEPROM/Wn3_Config. */
@@ -283,8 +281,6 @@ static int tc574_probe(struct pcmcia_device *link)
        spin_lock_init(&lp->window_lock);
        link->io.NumPorts1 = 32;
        link->io.Attributes1 = IO_DATA_PATH_WIDTH_16;
-       link->irq.Attributes = IRQ_TYPE_DYNAMIC_SHARING;
-       link->irq.Handler = &el3_interrupt;
        link->conf.Attributes = CONF_ENABLE_IRQ;
        link->conf.IntType = INT_MEMORY_AND_IO;
        link->conf.ConfigIndex = 1;
@@ -311,8 +307,7 @@ static void tc574_detach(struct pcmcia_device *link)
 
        dev_dbg(&link->dev, "3c574_detach()\n");
 
-       if (link->dev_node)
-               unregister_netdev(dev);
+       unregister_netdev(dev);
 
        tc574_release(link);
 
@@ -353,7 +348,7 @@ static int tc574_config(struct pcmcia_device *link)
        if (i != 0)
                goto failed;
 
-       ret = pcmcia_request_irq(link, &link->irq);
+       ret = pcmcia_request_irq(link, el3_interrupt);
        if (ret)
                goto failed;
 
@@ -361,7 +356,7 @@ static int tc574_config(struct pcmcia_device *link)
        if (ret)
                goto failed;
 
-       dev->irq = link->irq.AssignedIRQ;
+       dev->irq = link->irq;
        dev->base_addr = link->io.BasePort1;
 
        ioaddr = dev->base_addr;
@@ -446,17 +441,13 @@ static int tc574_config(struct pcmcia_device *link)
                }
        }
 
-       link->dev_node = &lp->node;
        SET_NETDEV_DEV(dev, &link->dev);
 
        if (register_netdev(dev) != 0) {
                printk(KERN_NOTICE "3c574_cs: register_netdev() failed\n");
-               link->dev_node = NULL;
                goto failed;
        }
 
-       strcpy(lp->node.dev_name, dev->name);
-
        printk(KERN_INFO "%s: %s at io %#3lx, irq %d, "
               "hw_addr %pM.\n",
               dev->name, cardname, dev->base_addr, dev->irq,