linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / drivers / net / tulip / de4x5.c
index 05e8947..ee48bfd 100644 (file)
 #include <linux/ctype.h>
 #include <linux/dma-mapping.h>
 #include <linux/moduleparam.h>
+#include <linux/bitops.h>
 
-#include <asm/bitops.h>
 #include <asm/io.h>
 #include <asm/dma.h>
 #include <asm/byteorder.h>
@@ -1141,7 +1141,7 @@ de4x5_hw_init(struct net_device *dev, u_long iobase, struct device *gendev)
        lp->asBitValid = TRUE;
        lp->timeout = -1;
        lp->gendev = gendev;
-       lp->lock = SPIN_LOCK_UNLOCKED;
+       spin_lock_init(&lp->lock);
        init_timer(&lp->timer);
        de4x5_parse_params(dev);
 
@@ -1316,7 +1316,7 @@ de4x5_open(struct net_device *dev)
     ** Re-initialize the DE4X5... 
     */
     status = de4x5_init(dev);
-    lp->lock = SPIN_LOCK_UNLOCKED;
+    spin_lock_init(&lp->lock);
     lp->state = OPEN;
     de4x5_dbg_open(dev);
     
@@ -2124,6 +2124,7 @@ static struct eisa_driver de4x5_eisa_driver = {
                 .remove  = __devexit_p (de4x5_eisa_remove),
         }
 };
+MODULE_DEVICE_TABLE(eisa, de4x5_eisa_ids);
 #endif
 
 #ifdef CONFIG_PCI
@@ -2143,9 +2144,9 @@ srom_search(struct net_device *dev, struct pci_dev *pdev)
     u_long iobase = 0;                     /* Clear upper 32 bits in Alphas */
     int i, j, cfrv;
     struct de4x5_private *lp = netdev_priv(dev);
-    struct list_head *walk = &pdev->bus_list;
+    struct list_head *walk;
 
-    for (walk = walk->next; walk != &pdev->bus_list; walk = walk->next) {
+    list_for_each(walk, &pdev->bus_list) {
        struct pci_dev *this_dev = pci_dev_b(walk);
 
        /* Skip the pci_bus list entry */
@@ -2242,8 +2243,8 @@ static int __devinit de4x5_pci_probe (struct pci_dev *pdev,
                return -ENODEV;
 
        /* Ok, the device seems to be for us. */
-       if (pci_enable_device (pdev))
-               return -ENODEV;
+       if ((error = pci_enable_device (pdev)))
+               return error;
 
        if (!(dev = alloc_etherdev (sizeof (struct de4x5_private)))) {
                error = -ENOMEM;
@@ -5089,7 +5090,7 @@ mii_get_phy(struct net_device *dev)
     lp->useMII = TRUE;
 
     /* Search the MII address space for possible PHY devices */
-    for (n=0, lp->mii_cnt=0, i=1; !((i==1) && (n==1)); i=(++i)%DE4X5_MAX_MII) {
+    for (n=0, lp->mii_cnt=0, i=1; !((i==1) && (n==1)); i=(i+1)%DE4X5_MAX_MII) {
        lp->phy[lp->active].addr = i;
        if (i==0) n++;                             /* Count cycles */
        while (de4x5_reset_phy(dev)<0) udelay(100);/* Wait for reset */