Commit ef9da46d authored by Heiner Kallweit's avatar Heiner Kallweit Committed by David S. Miller
Browse files

r8169: fix data corruption issue on RTL8402



Petr reported that after resume from suspend RTL8402 partially
truncates incoming packets, and re-initializing register RxConfig
before the actual chip re-initialization sequence is needed to avoid
the issue.

Reported-by: default avatarPetr Tesarik <ptesarik@suse.cz>
Proposed-by: default avatarPetr Tesarik <ptesarik@suse.cz>
Tested-by: default avatarPetr Tesarik <ptesarik@suse.cz>
Signed-off-by: default avatarHeiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent bb13a800
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -4854,6 +4854,10 @@ static int __maybe_unused rtl8169_resume(struct device *device)
	if (!device_may_wakeup(tp_to_dev(tp)))
		clk_prepare_enable(tp->clk);

	/* Reportedly at least Asus X453MA truncates packets otherwise */
	if (tp->mac_version == RTL_GIGA_MAC_VER_37)
		rtl_init_rxcfg(tp);

	return rtl8169_net_resume(tp);
}