Skip to content

Commit dd75c72

Browse files
rxrblnkuba-moo
authored andcommitted
r8169: fix RTL8117 Wake-on-Lan in DASH mode
Wake-on-Lan does currently not work for r8169 in DASH mode, e.g. the ASUS Pro WS X570-ACE with RTL8168fp/RTL8117. Fix by not returning early in rtl_prepare_power_down when dash_enabled. While this fixes WoL, it still kills the OOB RTL8117 remote management BMC connection. Fix by not calling rtl8168_driver_stop if WoL is enabled. Fixes: 065c27c ("r8169: phy power ops") Signed-off-by: René Rebe <rene@exactco.de> Cc: stable@vger.kernel.org Reviewed-by: Heiner Kallweit <hkallweit1@gmail.com> Link: https://patch.msgid.link/20251202.194137.1647877804487085954.rene@exactco.de Signed-off-by: Jakub Kicinski <kuba@kernel.org>
1 parent e7a9530 commit dd75c72

File tree

1 file changed

+1
-4
lines changed

1 file changed

+1
-4
lines changed

drivers/net/ethernet/realtek/r8169_main.c

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2655,9 +2655,6 @@ static void rtl_wol_enable_rx(struct rtl8169_private *tp)
26552655

26562656
static void rtl_prepare_power_down(struct rtl8169_private *tp)
26572657
{
2658-
if (tp->dash_enabled)
2659-
return;
2660-
26612658
if (tp->mac_version == RTL_GIGA_MAC_VER_32 ||
26622659
tp->mac_version == RTL_GIGA_MAC_VER_33)
26632660
rtl_ephy_write(tp, 0x19, 0xff64);
@@ -4812,7 +4809,7 @@ static void rtl8169_down(struct rtl8169_private *tp)
48124809
rtl_disable_exit_l1(tp);
48134810
rtl_prepare_power_down(tp);
48144811

4815-
if (tp->dash_type != RTL_DASH_NONE)
4812+
if (tp->dash_type != RTL_DASH_NONE && !tp->saved_wolopts)
48164813
rtl8168_driver_stop(tp);
48174814
}
48184815

0 commit comments

Comments
 (0)