Thread (34 messages) 34 messages, 3 authors, 2020-10-01

Re: RTL8402 stops working after hibernate/resume

From: Petr Tesarik <hidden>
Date: 2020-09-30 18:11:00
Also in: linux-clk

On Wed, 30 Sep 2020 17:47:15 +0200
Heiner Kallweit [off-list ref] wrote:
quoted hunk ↗ jump to hunk
[...]
Petr,
in the following I send two patches. First one is supposed to fix the freeze.
It also fixes another issue that existed before my ether_clk change:
ether_clk was disabled on suspend even if WoL is enabled. And the network
chip most likely needs the clock to check for WoL packets.
Please let me know whether it fixes the freeze, then I'll add your Tested-by.

Second patch is a re-send of the one I sent before, it should fix
the rx issues after resume from suspend for you.

[...]
diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c
index 9e4e6a883..4fb49fd0d 100644
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -4837,6 +4837,10 @@ static int rtl8169_resume(struct device *device)
 
 	rtl_rar_set(tp, tp->dev->dev_addr);
 
+	/* Reportedly at least Asus X453MA corrupts packets otherwise */
Just a nitpick: The incoming packets are not corrupted, they are truncated:

+	/* Reportedly at least Asus X453MA truncates packets otherwise */

Other than that, like I have already written in another part of the thread:

Tested-by: Petr Tesarik <redacted>
+	if (tp->mac_version == RTL_GIGA_MAC_VER_37)
+		rtl_init_rxcfg(tp);
+
 	if (tp->TxDescArray)
 		rtl8169_up(tp);
 
-- 
2.28.0

Attachments

  • (unnamed) [application/pgp-signature] 488 bytes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help