diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 1d2508834415c5748a5d2391bae52b3bb7ee0c44..6d7f686383fcd6b4f8c795521ffb7a4eaa01fc2f 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -5729,8 +5729,11 @@ static void rtl_shutdown(struct pci_dev *pdev) spin_unlock_irq(&tp->lock); if (system_state == SYSTEM_POWER_OFF) { - /* WoL fails with some 8168 when the receiver is disabled. */ - if (tp->features & RTL_FEATURE_WOL) { + /* WoL fails with 8168b when the receiver is disabled. */ + if ((tp->mac_version == RTL_GIGA_MAC_VER_11 || + tp->mac_version == RTL_GIGA_MAC_VER_12 || + tp->mac_version == RTL_GIGA_MAC_VER_17) && + (tp->features & RTL_FEATURE_WOL)) { pci_clear_master(pdev); RTL_W8(ChipCmd, CmdRxEnb);