r8169: align rtl_wol_suspend_quirk with vendor driver and rename it
authorHeiner Kallweit <hkallweit1@gmail.com>
Tue, 12 Jan 2021 08:28:41 +0000 (09:28 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 13 Jan 2021 03:01:30 +0000 (19:01 -0800)
At least from chip version 25 the vendor driver sets these rx flags
for all chip versions if WOL is enabled. Therefore I wouldn't consider
it a quirk, so let's rename the function.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/realtek/r8169_main.c

index 3333609..84f488d 100644 (file)
@@ -2210,23 +2210,11 @@ static int rtl_set_mac_address(struct net_device *dev, void *p)
        return 0;
 }
 
-static void rtl_wol_suspend_quirk(struct rtl8169_private *tp)
+static void rtl_wol_enable_rx(struct rtl8169_private *tp)
 {
-       switch (tp->mac_version) {
-       case RTL_GIGA_MAC_VER_25:
-       case RTL_GIGA_MAC_VER_26:
-       case RTL_GIGA_MAC_VER_29:
-       case RTL_GIGA_MAC_VER_30:
-       case RTL_GIGA_MAC_VER_32:
-       case RTL_GIGA_MAC_VER_33:
-       case RTL_GIGA_MAC_VER_34:
-       case RTL_GIGA_MAC_VER_37 ... RTL_GIGA_MAC_VER_63:
+       if (tp->mac_version >= RTL_GIGA_MAC_VER_25)
                RTL_W32(tp, RxConfig, RTL_R32(tp, RxConfig) |
                        AcceptBroadcast | AcceptMulticast | AcceptMyPhys);
-               break;
-       default:
-               break;
-       }
 }
 
 static void rtl_prepare_power_down(struct rtl8169_private *tp)
@@ -2240,7 +2228,7 @@ static void rtl_prepare_power_down(struct rtl8169_private *tp)
 
        if (device_may_wakeup(tp_to_dev(tp))) {
                phy_speed_down(tp->phydev, false);
-               rtl_wol_suspend_quirk(tp);
+               rtl_wol_enable_rx(tp);
        }
 }
 
@@ -4872,7 +4860,7 @@ static void rtl_shutdown(struct pci_dev *pdev)
 
        if (system_state == SYSTEM_POWER_OFF) {
                if (tp->saved_wolopts) {
-                       rtl_wol_suspend_quirk(tp);
+                       rtl_wol_enable_rx(tp);
                        rtl_wol_shutdown_quirk(tp);
                }