summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorZhi Li <lizhi2@eswincomputing.com>2026-07-07 14:42:32 +0800
committerPaolo Abeni <pabeni@redhat.com>2026-07-21 09:06:02 +0200
commit0cb57bdebd101da07587e7f43d9473af826dd527 (patch)
tree3374edaf74ffef813b9093be792378186d94c727 /include/linux
parent186f38935e28ae700b0fe062dcc6ab345211dcee (diff)
net: stmmac: eic7700: add support for eth1 clock inversion variant
The eth1 MAC exhibits silicon-inherent RX and TX timing behavior that differs from the eth0 implementation. At 1000Mbps, RX sampling requires clock inversion due to a fixed MAC input skew that cannot be compensated by standard RGMII delay settings. The TX path includes a fixed ~2ns internal delay introduced by the MAC silicon. This delay is always present and is already accounted for in the device tree tx-internal-delay-ps property as part of the effective output timing. The tx-internal-delay-ps property describes the effective delay seen at the MAC output. Since the hardware register controls only the programmable portion of the delay, the driver subtracts the fixed silicon-inherent component before programming the delay register. Use compatible-specific match data to identify the eth1 variant and apply RX clock inversion only at 1000Mbps. The PHY interface mode is adjusted via phy_fix_phy_mode_for_mac_delays() to avoid double-application of RGMII delays when MAC-side delays are already present. Link speed dependency means RX sampling configuration is applied in the fix_mac_speed callback after negotiation. No behavior changes for the existing eth0 controller. Signed-off-by: Zhi Li <lizhi2@eswincomputing.com> Link: https://patch.msgid.link/20260707064234.1333-1-lizhi2@eswincomputing.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'include/linux')
0 files changed, 0 insertions, 0 deletions