linux-phy.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH linux-phy 0/4] mvebu a3720 comphy: Fix serdes transmit amplitude
@ 2022-08-17 19:31 Marek Behún
  2022-08-17 19:31 ` [PATCH linux-phy 1/4] string.h: Add str_has_proper_prefix() Marek Behún
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Marek Behún @ 2022-08-17 19:31 UTC (permalink / raw)
  To: Vinod Koul, Kishon Vijay Abraham I, Linux Phy, Gregory Clement,
	Andy Shevchenko, Daniel Scally, Heikki Krogerus, Sakari Ailus
  Cc: Kees Cook, linux-kernel, pali, josef.schlehofer, Marek Behún

This series adds support for setting serdes transmit amplitude for
ethernet modes (sgmii, 1000base-x, 2500base-x) in the Marvell A3720
comphy driver.

The amplitude is set according to setting in device tree.

Finally the Turris MOX device tree is changed to set the 2500base-x
mode tx amplitude to 1025 mV.

This is needed to fix a weird issue wherein when A3720 sends a packet
to Topaz, and the packet contains a long sequence of 'J's or '\xb5'
bytes (these translate to '010101010101'... in 8b/10b encoding), the
packet may be lost on Topaz due to FCS error. The probability of
loss grows with number of 'J's:

  loss
                         ______
  100%                .-^
                     /
                    /
   50%             /
                  /
                 /
    0%  ______.-^
            90    114    125     number of consecutive 'J's

Marek Behún (4):
  string.h: Add str_has_proper_prefix()
  device property: Add {fwnode/device}_get_tx_p2p_amplitude()
  phy: marvell: phy-mvebu-a3700-comphy: Support changing tx amplitude
    for ethernet
  arm64: dts: armada-3720-turris-mox: Change comphy tx amplitude for
    2500base-x mode

 .../dts/marvell/armada-3720-turris-mox.dts    |  10 ++
 drivers/base/property.c                       | 130 ++++++++++++++++++
 drivers/phy/marvell/phy-mvebu-a3700-comphy.c  | 109 ++++++++++++++-
 include/linux/property.h                      |   5 +
 include/linux/string.h                        |  18 +++
 5 files changed, 271 insertions(+), 1 deletion(-)

-- 
2.35.1


-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy

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

end of thread, other threads:[~2022-08-17 19:47 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-17 19:31 [PATCH linux-phy 0/4] mvebu a3720 comphy: Fix serdes transmit amplitude Marek Behún
2022-08-17 19:31 ` [PATCH linux-phy 1/4] string.h: Add str_has_proper_prefix() Marek Behún
2022-08-17 19:31 ` [PATCH linux-phy 2/4] device property: Add {fwnode/device}_get_tx_p2p_amplitude() Marek Behún
2022-08-17 19:31 ` [PATCH linux-phy 3/4] phy: marvell: phy-mvebu-a3700-comphy: Support changing tx amplitude for ethernet Marek Behún
2022-08-17 19:47   ` Marek Behún
2022-08-17 19:31 ` [PATCH linux-phy 4/4] arm64: dts: armada-3720-turris-mox: Change comphy tx amplitude for 2500base-x mode Marek Behún

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).