[netdrvrs] Use netif_carrier_* instead of IFF_RUNNING
<tgraf@suug.ch> [Thu, 12 May 2005 23:45:25 +0000 (19:45 -0400)]
drivers/net/au1000_eth.c
drivers/net/bmac.c
drivers/net/sk98lin/skge.c
drivers/net/tlan.c
drivers/net/tokenring/ibmtr.c
drivers/net/wan/lmc/lmc_main.c
include/linux/if.h

index 5a2efd3..c82b9cd 100644 (file)
@@ -1681,10 +1681,6 @@ static int au1000_init(struct net_device *dev)
                control |= MAC_FULL_DUPLEX;
        }
 
-       /* fix for startup without cable */
-       if (!link) 
-               dev->flags &= ~IFF_RUNNING;
-
        aup->mac->control = control;
        aup->mac->vlan1_tag = 0x8100; /* activate vlan support */
        au_sync();
@@ -1709,16 +1705,14 @@ static void au1000_timer(unsigned long data)
        if_port = dev->if_port;
        if (aup->phy_ops->phy_status(dev, aup->phy_addr, &link, &speed) == 0) {
                if (link) {
-                       if (!(dev->flags & IFF_RUNNING)) {
+                       if (!netif_carrier_ok(dev)) {
                                netif_carrier_on(dev);
-                               dev->flags |= IFF_RUNNING;
                                printk(KERN_INFO "%s: link up\n", dev->name);
                        }
                }
                else {
-                       if (dev->flags & IFF_RUNNING) {
+                       if (netif_carrier_ok(dev)) {
                                netif_carrier_off(dev);
-                               dev->flags &= ~IFF_RUNNING;
                                dev->if_port = 0;
                                printk(KERN_INFO "%s: link down\n", dev->name);
                        }
index 734bd4e..00e5257 100644 (file)
@@ -1412,7 +1412,6 @@ static int bmac_open(struct net_device *dev)
        bp->opened = 1;
        bmac_reset_and_enable(dev);
        enable_irq(dev->irq);
-       dev->flags |= IFF_RUNNING;
        return 0;
 }
 
@@ -1425,7 +1424,6 @@ static int bmac_close(struct net_device *dev)
        int i;
 
        bp->sleeping = 1;
-       dev->flags &= ~(IFF_UP | IFF_RUNNING);
 
        /* disable rx and tx */
        config = bmread(dev, RXCFG);
index 05b827f..1ccb298 100644 (file)
@@ -4212,7 +4212,7 @@ SK_BOOL           DualNet;
                        Flags);
 
                SkGeStopPort(pAC, IoC, FromPort, SK_STOP_ALL, SK_HARD_RST);
-               pAC->dev[Param.Para32[0]]->flags &= ~IFF_RUNNING;
+               netif_carrier_off(pAC->dev[Param.Para32[0]]);
                spin_unlock_irqrestore(
                        &pAC->TxPort[FromPort][TX_PRIO_LOW].TxDesRingLock,
                        Flags);
@@ -4355,7 +4355,7 @@ SK_BOOL           DualNet;
                }
 
                /* Inform the world that link protocol is up. */
-               pAC->dev[Param.Para32[0]]->flags |= IFF_RUNNING;
+               netif_carrier_on(pAC->dev[Param.Para32[0]]);
 
                break;
        case SK_DRV_NET_DOWN:    /* SK_U32 Reason */
@@ -4368,7 +4368,7 @@ SK_BOOL           DualNet;
                } else {
                        DoPrintInterfaceChange = SK_TRUE;
                }
-               pAC->dev[Param.Para32[1]]->flags &= ~IFF_RUNNING;
+               netif_carrier_off(pAC->dev[Param.Para32[1]]);
                break;
        case SK_DRV_SWITCH_HARD: /* SK_U32 FromPortIdx SK_U32 ToPortIdx */
                SK_DBG_MSG(NULL, SK_DBGMOD_DRV, SK_DBGCAT_DRV_EVENT,
@@ -4961,7 +4961,6 @@ static int __devinit skge_probe_one(struct pci_dev *pdev,
 #ifdef CONFIG_NET_POLL_CONTROLLER
        dev->poll_controller =  &SkGePollController;
 #endif
-       dev->flags &=           ~IFF_RUNNING;
        SET_NETDEV_DEV(dev, &pdev->dev);
        SET_ETHTOOL_OPS(dev, &SkGeEthtoolOps);
 
@@ -5035,7 +5034,6 @@ static int __devinit skge_probe_one(struct pci_dev *pdev,
                dev->set_mac_address    = &SkGeSetMacAddr;
                dev->do_ioctl           = &SkGeIoctl;
                dev->change_mtu         = &SkGeChangeMtu;
-               dev->flags             &= ~IFF_RUNNING;
                SET_NETDEV_DEV(dev, &pdev->dev);
                SET_ETHTOOL_OPS(dev, &SkGeEthtoolOps);
 
index a7ffa64..ce11662 100644 (file)
@@ -2807,7 +2807,7 @@ void TLan_PhyMonitor( struct net_device *dev )
               if (priv->link) {
                      priv->link = 0;
                      printk(KERN_DEBUG "TLAN: %s has lost link\n", dev->name);
-                     dev->flags &= ~IFF_RUNNING;
+                     netif_carrier_off(dev);
                      TLan_SetTimer( dev, (2*HZ), TLAN_TIMER_LINK_BEAT );
                      return;
                }
@@ -2817,7 +2817,7 @@ void TLan_PhyMonitor( struct net_device *dev )
         if ((phy_status & MII_GS_LINK) && !priv->link) {
                priv->link = 1;
                printk(KERN_DEBUG "TLAN: %s has reestablished link\n", dev->name);
-               dev->flags |= IFF_RUNNING;
+               netif_carrier_on(dev);
         }
 
        /* Setup a new monitor */
index c098863..3873917 100644 (file)
@@ -888,11 +888,6 @@ static int tok_open(struct net_device *dev)
        ti->sap_status   = CLOSED; /* CLOSED or OPEN      */
        ti->open_failure =     NO; /* NO     or YES       */
        ti->open_mode    = MANUAL; /* MANUAL or AUTOMATIC */
-       /* 12/2000 not typical Linux, but we can use RUNNING to let us know when
-       the network has crapped out or cables are disconnected. Useful because
-       the IFF_UP flag stays up the whole time, until ifconfig tr0 down.
-       */
-       dev->flags &= ~IFF_RUNNING;
 
        ti->sram_phys &= ~1; /* to reverse what we do in tok_close */
        /* init the spinlock */
@@ -1242,7 +1237,7 @@ irqreturn_t tok_interrupt(int irq, void *dev_id, struct pt_regs *regs)
                ti->open_status = CLOSED;
                ti->sap_status  = CLOSED;
                ti->open_mode   = AUTOMATIC;
-               dev->flags &= ~IFF_RUNNING;
+               netif_carrier_off(dev);
                netif_stop_queue(dev);
                ti->open_action = RESTART;
                outb(0, dev->base_addr + ADAPTRESET);
@@ -1323,7 +1318,7 @@ irqreturn_t tok_interrupt(int irq, void *dev_id, struct pt_regs *regs)
                                break;
                        }
                        netif_wake_queue(dev);
-                       dev->flags |= IFF_RUNNING;/*BMS 12/2000*/
+                       netif_carrier_on(dev);
                        break;
                case DIR_INTERRUPT:
                case DIR_MOD_OPEN_PARAMS:
@@ -1427,7 +1422,7 @@ irqreturn_t tok_interrupt(int irq, void *dev_id, struct pt_regs *regs)
                                                                ring_status);
                        if(ring_status& (REMOVE_RECV|AUTO_REMOVAL|LOBE_FAULT)){
                                netif_stop_queue(dev);
-                               dev->flags &= ~IFF_RUNNING;/*not typical Linux*/
+                               netif_carrier_off(dev);
                                DPRINTK("Remove received, or Auto-removal error"
                                        ", or Lobe fault\n");
                                DPRINTK("We'll try to reopen the closed adapter"
index 15e545f..2b948ea 100644 (file)
@@ -723,7 +723,7 @@ static void lmc_watchdog (unsigned long data) /*fold00*/
         /* lmc_reset (sc); Why reset??? The link can go down ok */
 
         /* Inform the world that link has been lost */
-        dev->flags &= ~IFF_RUNNING;
+       netif_carrier_off(dev);
     }
 
     /*
@@ -736,7 +736,7 @@ static void lmc_watchdog (unsigned long data) /*fold00*/
          /* lmc_reset (sc); Again why reset??? */
 
          /* Inform the world that link protocol is back up. */
-         dev->flags |= IFF_RUNNING;
+        netif_carrier_on(dev);
 
          /* Now we have to tell the syncppp that we had an outage
           * and that it should deal.  Calling sppp_reopen here
@@ -1168,8 +1168,6 @@ static void lmc_running_reset (struct net_device *dev) /*fold00*/
     sc->lmc_media->set_link_status (sc, 1);
     sc->lmc_media->set_status (sc, NULL);
 
-    //dev->flags |= IFF_RUNNING;
-    
     netif_wake_queue(dev);
 
     sc->lmc_txfull = 0;
@@ -1233,8 +1231,6 @@ static int lmc_ifdown (struct net_device *dev) /*fold00*/
     csr6 &= ~LMC_DEC_SR;               /* Turn off the Receive bit */
     LMC_CSR_WRITE (sc, csr_command, csr6);
 
-    dev->flags &= ~IFF_RUNNING;
-
     sc->stats.rx_missed_errors +=
         LMC_CSR_READ (sc, csr_missed_frames) & 0xffff;
 
index d73a9d6..ce627d9 100644 (file)
@@ -33,7 +33,7 @@
 #define        IFF_LOOPBACK    0x8             /* is a loopback net            */
 #define        IFF_POINTOPOINT 0x10            /* interface is has p-p link    */
 #define        IFF_NOTRAILERS  0x20            /* avoid use of trailers        */
-#define        IFF_RUNNING     0x40            /* resources allocated          */
+#define        IFF_RUNNING     0x40            /* interface running and carrier ok */
 #define        IFF_NOARP       0x80            /* no ARP protocol              */
 #define        IFF_PROMISC     0x100           /* receive all packets          */
 #define        IFF_ALLMULTI    0x200           /* receive all multicast packets*/