]> err.no Git - linux-2.6/blobdiff - drivers/net/b44.c
[PATCH] 3c59x: read current link status from phy
[linux-2.6] / drivers / net / b44.c
index 3fe8ba992c38b32b8fd5b55e8f503e6231afbfaf..94939f570f78988e7c54c9dbcab685ca59385253 100644 (file)
@@ -1285,6 +1285,9 @@ static int b44_open(struct net_device *dev)
        b44_init_hw(bp);
        bp->flags |= B44_FLAG_INIT_COMPLETE;
 
+       netif_carrier_off(dev);
+       b44_check_phy(bp);
+
        spin_unlock_irq(&bp->lock);
 
        init_timer(&bp->timer);
@@ -1927,6 +1930,7 @@ static int b44_suspend(struct pci_dev *pdev, pm_message_t state)
        b44_free_rings(bp);
 
        spin_unlock_irq(&bp->lock);
+       pci_disable_device(pdev);
        return 0;
 }
 
@@ -1936,6 +1940,8 @@ static int b44_resume(struct pci_dev *pdev)
        struct b44 *bp = netdev_priv(dev);
 
        pci_restore_state(pdev);
+       pci_enable_device(pdev);
+       pci_set_master(pdev);
 
        if (!netif_running(dev))
                return 0;