]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: stmmac: eswin: clear TXD and RXD delay registers during initialization
authorZhi Li <lizhi2@eswincomputing.com>
Mon, 18 May 2026 02:21:37 +0000 (10:21 +0800)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 21 May 2026 09:58:17 +0000 (11:58 +0200)
commit6872fb088edc1a3c36792b301f8e4a1c35dd7c35
tree8a61d704a68892b25b26223ee44628729543dd98
parent23386defe949c0db4f746bed7098fc5e06746083
net: stmmac: eswin: clear TXD and RXD delay registers during initialization

Clear the TXD and RXD delay control registers during EIC7700 DWMAC
initialization.

These registers may retain values programmed by the bootloader. If left
unchanged, residual delays can alter the effective RGMII timing seen by
the MAC and override the configuration described by the device tree.

This may violate the expected RGMII timing model and can cause link
instability or prevent the Ethernet controller from operating correctly.

Explicitly clearing these registers ensures that the MAC delay settings
are determined solely by the kernel configuration.

The corresponding register offsets are optional, and the registers are
only cleared when the offsets are provided in the device tree.

Fixes: ea77dbbdbc4e ("net: stmmac: add Eswin EIC7700 glue driver")
Signed-off-by: Zhi Li <lizhi2@eswincomputing.com>
Link: https://patch.msgid.link/20260518022137.464-1-lizhi2@eswincomputing.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/stmicro/stmmac/dwmac-eic7700.c