diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2010-10-20 18:25:42 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-10-21 04:32:47 -0400 |
commit | fccec10b33503a2b1197c8e7a3abd30443bedb08 (patch) | |
tree | 256a666e213fc2244052a217f2638e84549b1727 /drivers/net/r8169.c | |
parent | 323bb6857533d7132e1d4fd9cc8edc599a06f5e6 (diff) |
r8169: (re)init phy on resume
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>
Diffstat (limited to 'drivers/net/r8169.c')
-rw-r--r-- | drivers/net/r8169.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 8715ec3a25a8..0204fe2b2490 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
@@ -4824,6 +4824,9 @@ static int rtl8169_resume(struct device *device) | |||
4824 | { | 4824 | { |
4825 | struct pci_dev *pdev = to_pci_dev(device); | 4825 | struct pci_dev *pdev = to_pci_dev(device); |
4826 | struct net_device *dev = pci_get_drvdata(pdev); | 4826 | struct net_device *dev = pci_get_drvdata(pdev); |
4827 | struct rtl8169_private *tp = netdev_priv(dev); | ||
4828 | |||
4829 | rtl8169_init_phy(dev, tp); | ||
4827 | 4830 | ||
4828 | if (netif_running(dev)) | 4831 | if (netif_running(dev)) |
4829 | __rtl8169_resume(dev); | 4832 | __rtl8169_resume(dev); |
@@ -4864,6 +4867,8 @@ static int rtl8169_runtime_resume(struct device *device) | |||
4864 | tp->saved_wolopts = 0; | 4867 | tp->saved_wolopts = 0; |
4865 | spin_unlock_irq(&tp->lock); | 4868 | spin_unlock_irq(&tp->lock); |
4866 | 4869 | ||
4870 | rtl8169_init_phy(dev, tp); | ||
4871 | |||
4867 | __rtl8169_resume(dev); | 4872 | __rtl8169_resume(dev); |
4868 | 4873 | ||
4869 | return 0; | 4874 | return 0; |