]> git.itanic.dy.fi Git - linux-stable/commit
net: stmmac: work around sporadic tx issue on link-up
authorHeiner Kallweit <hkallweit1@gmail.com>
Wed, 24 Aug 2022 20:34:49 +0000 (22:34 +0200)
committerJakub Kicinski <kuba@kernel.org>
Thu, 25 Aug 2022 19:40:56 +0000 (12:40 -0700)
commita3a57bf07de23fe1ff779e0fdf710aa581c3ff73
treef92475b272f3a60d9a8a4f36cfe855035af6f804
parentef332fe14b25f1599ef4c7cb61f3b5fb2192b546
net: stmmac: work around sporadic tx issue on link-up

This is a follow-up to the discussion in [0]. It seems to me that
at least the IP version used on Amlogic SoC's sometimes has a problem
if register MAC_CTRL_REG is written whilst the chip is still processing
a previous write. But that's just a guess.
Adding a delay between two writes to this register helps, but we can
also simply omit the offending second write. This patch uses the second
approach and is based on a suggestion from Qi Duan.
Benefit of this approach is that we can save few register writes, also
on not affected chip versions.

[0] https://www.spinics.net/lists/netdev/msg831526.html

Fixes: bfab27a146ed ("stmmac: add the experimental PCI support")
Suggested-by: Qi Duan <qi.duan@amlogic.com>
Suggested-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link: https://lore.kernel.org/r/e99857ce-bd90-5093-ca8c-8cd480b5a0a2@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c