[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220817193119.4463-5-kabel@kernel.org>
Date: Wed, 17 Aug 2022 21:31:19 +0200
From: Marek Behún <kabel@...nel.org>
To: Vinod Koul <vkoul@...nel.org>,
Kishon Vijay Abraham I <kishon@...com>,
Linux Phy <linux-phy@...ts.infradead.org>,
Gregory Clement <gregory.clement@...tlin.com>
Cc: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Daniel Scally <djrscally@...il.com>,
Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
Kees Cook <keescook@...omium.org>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
linux-kernel@...r.kernel.org, pali@...nel.org,
josef.schlehofer@....cz,
Marek Behún <kabel@...nel.org>
Subject: [PATCH linux-phy 4/4] arm64: dts: armada-3720-turris-mox: Change comphy tx amplitude for 2500base-x mode
Change comphy transmit amplitude to 1025 mV for 2500base-x mode on
comphy connected to Topaz.
This fixes issue wherein if the 8b/10b encoded packet contains a long
enough alternating sequence of bits (010101... or 101010...), which
happens if the packet contains a sequence of 'J' or '\xb5' bytes, the
packet may be lost when sent from A3720 to Topaz due to FCS error. The
probability of loss grows with the number of 'J's with default transmit
amplitude setting - with 114 'J's the probability is about 50%, with 125
'J's almost 100% of packets are lost.
Fixes: 7109d817db2e ("arm64: dts: marvell: add DTS for Turris Mox")
Signed-off-by: Marek Behún <kabel@...nel.org>
---
arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
index ada164d423f3..74a7ac1f8ecb 100644
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -181,6 +181,16 @@ ð1 {
phys = <&comphy0 1>;
};
+&comphy0 {
+ /*
+ * Set peak to peak transmit amplitude to 1025 mV to fix issue wherein
+ * a packet may be lost if it contains a long enough sequence of 'J'
+ * or '\xb5' bytes.
+ */
+ tx-p2p-microvolt = <1025000>;
+ tx-p2p-microvolt-names = "2500base-x";
+};
+
&sdhci0 {
wp-inverted;
bus-width = <4>;
--
2.35.1
Powered by blists - more mailing lists