]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/net/fs_enet/fs_enet-main.c
fs_enet: Don't call NAPI functions when NAPI is not used.
[karo-tx-linux.git] / drivers / net / fs_enet / fs_enet-main.c
index 42d94edeee26f4106170a0385e6767a10fcf99f7..940e2041ba3832de9dbb4b57351cac6775bc5cac 100644 (file)
@@ -835,7 +835,8 @@ static int fs_enet_close(struct net_device *dev)
 
        netif_stop_queue(dev);
        netif_carrier_off(dev);
-       napi_disable(&fep->napi);
+       if (fep->fpi->use_napi)
+               napi_disable(&fep->napi);
        phy_stop(fep->phydev);
 
        spin_lock_irqsave(&fep->lock, flags);
@@ -946,16 +947,11 @@ static int fs_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
 {
        struct fs_enet_private *fep = netdev_priv(dev);
        struct mii_ioctl_data *mii = (struct mii_ioctl_data *)&rq->ifr_data;
-       unsigned long flags;
-       int rc;
 
        if (!netif_running(dev))
                return -EINVAL;
 
-       spin_lock_irqsave(&fep->lock, flags);
-       rc = phy_mii_ioctl(fep->phydev, mii, cmd);
-       spin_unlock_irqrestore(&fep->lock, flags);
-       return rc;
+       return phy_mii_ioctl(fep->phydev, mii, cmd);
 }
 
 extern int fs_mii_connect(struct net_device *dev);