]> rtime.felk.cvut.cz Git - lisovros/linux_canprio.git/commitdiff
r8169: (re)init phy on resume
authorStanislaw Gruszka <sgruszka@redhat.com>
Wed, 20 Oct 2010 22:25:42 +0000 (22:25 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 9 Dec 2010 21:33:34 +0000 (13:33 -0800)
commit fccec10b33503a2b1197c8e7a3abd30443bedb08 upstream.

Fix switching device to low-speed mode after resume reported in:
https://bugzilla.redhat.com/show_bug.cgi?id=502974

Reported-and-tested-by: Laurentiu Badea <bugzilla-redhat@wotevah.com>
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/net/r8169.c

index 00bf3c58a497dd7e5e004ab8790778cc132bf63b..d0629cadc54b7a55749c218a84d4f76c4fb2bdd5 100644 (file)
@@ -4889,6 +4889,9 @@ static int rtl8169_resume(struct device *device)
 {
        struct pci_dev *pdev = to_pci_dev(device);
        struct net_device *dev = pci_get_drvdata(pdev);
+       struct rtl8169_private *tp = netdev_priv(dev);
+
+       rtl8169_init_phy(dev, tp);
 
        if (netif_running(dev))
                __rtl8169_resume(dev);
@@ -4929,6 +4932,8 @@ static int rtl8169_runtime_resume(struct device *device)
        tp->saved_wolopts = 0;
        spin_unlock_irq(&tp->lock);
 
+       rtl8169_init_phy(dev, tp);
+
        __rtl8169_resume(dev);
 
        return 0;