r8169: fix wake on lan setting for non-8111E.
authorHayes Wang <hayeswang@realtek.com>
Fri, 5 Oct 2012 21:29:08 +0000 (23:29 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 12 Oct 2012 20:28:12 +0000 (05:28 +0900)
commit d4ed95d796e5126bba51466dc07e287cebc8bd19 upstream.

Only 8111E needs enable RxConfig bit 0 ~ 3 when suspending or
shutdowning for wake on lan.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Acked-by: Francois Romieu <romieu@fr.zoreil.com>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/r8169.c

index 5f838ef924945c79360fc4b51f3ab49568694a3f..0d2387aaf6accf3d7303c0313ad19d89ac565ad2 100644 (file)
@@ -3126,8 +3126,10 @@ static void r8168_pll_power_down(struct rtl8169_private *tp)
                rtl_writephy(tp, 0x1f, 0x0000);
                rtl_writephy(tp, MII_BMCR, 0x0000);
 
-               RTL_W32(RxConfig, RTL_R32(RxConfig) |
-                       AcceptBroadcast | AcceptMulticast | AcceptMyPhys);
+               if (tp->mac_version == RTL_GIGA_MAC_VER_32 ||
+                   tp->mac_version == RTL_GIGA_MAC_VER_33)
+                       RTL_W32(RxConfig, RTL_R32(RxConfig) | AcceptBroadcast |
+                               AcceptMulticast | AcceptMyPhys);
                return;
        }