public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] ksz87xx: add support for low-loss cable equalizer errata
@ 2026-03-26  9:10 Fidelio Lawson
  2026-03-26  9:10 ` [PATCH 1/3] dt-bindings: dsa: microchip: add KSZ low-loss cable errata properties Fidelio Lawson
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Fidelio Lawson @ 2026-03-26  9:10 UTC (permalink / raw)
  To: Woojung Huh, UNGLinuxDriver, Andrew Lunn, Vladimir Oltean,
	David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, Marek Vasut,
	Maxime Chevallier
  Cc: Woojung Huh, netdev, devicetree, linux-kernel, Fidelio Lawson

Hello,

This patch series adds support for the "Module 3: Equalizer fix for short
cables" erratum documented in Microchip KSZ87xx Errata DS80000687C.

According to the erratum, the embedded PHY receiver in KSZ87xx switches is
tuned by default for long, high-loss Ethernet cables. When operating with
short or low-loss cables (for example CAT5e or CAT6), the PHY equalizer may
over-amplify the incoming signal, leading to internal distortion and link
establishment failures.

Microchip provides two workarounds, each requiring a write to a different
indirect PHY register access mechanism.

This series introduces:

 - Device Tree bindings to enable the errata fix and select workaround 1 or 2,
 - driver-level parsing of these bindings,
 - implementation of the indirect register programming sequence required
   for Workaround 1 and Workaround 2.

If the errata is enabled but no mode is explicitly selected, the driver
defaults to Workaround 1, following Microchip guidance.

The feature is opt-in and does not affect existing platforms that do not
enable the errata.

Tested on KSZ8795 with both Workaround 1 and Workaround 2.

Signed-off-by: Fidelio Lawson <fidelio.lawson@exotec.com>
---
Fidelio Lawson (3):
      dt-bindings: dsa: microchip: add KSZ low-loss cable errata properties
      net: dsa: microchip: parse KSZ87xx low-loss errata from DT
      net: dsa: microchip: implement KSZ87xx Module 3 low-loss cable errata

 .../devicetree/bindings/net/dsa/microchip,ksz.yaml | 18 ++++++
 drivers/net/dsa/microchip/ksz8.c                   | 71 ++++++++++++++++++++++
 drivers/net/dsa/microchip/ksz8.h                   |  1 +
 drivers/net/dsa/microchip/ksz_common.h             |  9 +++
 4 files changed, 99 insertions(+)
---
base-commit: 2d1373e4246da3b58e1df058374ed6b101804e07
change-id: 20260323-ksz87xx_errata_low_loss_connections-b65e76e2b403

Best regards,
--  
Fidelio Lawson <fidelio.lawson@exotec.com>


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2026-03-26 12:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-26  9:10 [PATCH 0/3] ksz87xx: add support for low-loss cable equalizer errata Fidelio Lawson
2026-03-26  9:10 ` [PATCH 1/3] dt-bindings: dsa: microchip: add KSZ low-loss cable errata properties Fidelio Lawson
2026-03-26 10:33   ` Rob Herring (Arm)
2026-03-26 12:14   ` Andrew Lunn
2026-03-26  9:10 ` [PATCH 2/3] net: dsa: microchip: parse KSZ87xx low-loss errata from DT Fidelio Lawson
2026-03-26  9:10 ` [PATCH 3/3] net: dsa: microchip: implement KSZ87xx Module 3 low-loss cable errata Fidelio Lawson
2026-03-26  9:42   ` Vladimir Oltean
2026-03-26 12:18   ` Andrew Lunn
2026-03-26 12:38   ` Marek Vasut

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox