diff mbox series

[1/1] arm64: dts: qcom: sa8155p-adp: Disable multiple Tx and Rx queues for ethernet IP

Message ID 20220423195003.353150-1-bhupesh.sharma@linaro.org
State Accepted
Commit 11a3f3dc2cf8d6127aae6183a69dcf3dde026305
Headers show
Series [1/1] arm64: dts: qcom: sa8155p-adp: Disable multiple Tx and Rx queues for ethernet IP | expand

Commit Message

Bhupesh Sharma April 23, 2022, 7:50 p.m. UTC
Fix the issues seen with ethernet traffic getting stalled on SA8155p-ADP
board with default (or larger) mtu size of 1500 bytes, by disabling
multiple Tx and Rx queues for the stmmac IP block.

With the single queue setup, the ethernet traffic is stable,
wget / curl can work well on the board and no ethernet stall is
observed even when longer netperf / iperf3 test are run. Also
a performance of ~940 Mbits/sec is observed on the 1G link, so
there is no observable degradation in performance as well.

Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org>
---
 arch/arm64/boot/dts/qcom/sa8155p-adp.dts | 40 ++----------------------
 1 file changed, 2 insertions(+), 38 deletions(-)

Comments

Bjorn Andersson May 6, 2022, 3:03 p.m. UTC | #1
On Sun, 24 Apr 2022 01:20:03 +0530, Bhupesh Sharma wrote:
> Fix the issues seen with ethernet traffic getting stalled on SA8155p-ADP
> board with default (or larger) mtu size of 1500 bytes, by disabling
> multiple Tx and Rx queues for the stmmac IP block.
> 
> With the single queue setup, the ethernet traffic is stable,
> wget / curl can work well on the board and no ethernet stall is
> observed even when longer netperf / iperf3 test are run. Also
> a performance of ~940 Mbits/sec is observed on the 1G link, so
> there is no observable degradation in performance as well.
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: qcom: sa8155p-adp: Disable multiple Tx and Rx queues for ethernet IP
      commit: 11a3f3dc2cf8d6127aae6183a69dcf3dde026305

Best regards,
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
index 8034d0d31bd0..ba547ca9fc6b 100644
--- a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
+++ b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
@@ -49,7 +49,7 @@  vreg_s4a_1p8: smps4 {
 	};
 
 	mtl_rx_setup: rx-queues-config {
-		snps,rx-queues-to-use = <4>;
+		snps,rx-queues-to-use = <1>;
 		snps,rx-sched-sp;
 
 		queue0 {
@@ -58,28 +58,10 @@  queue0 {
 			snps,route-up;
 			snps,priority = <0x1>;
 		};
-
-		queue1 {
-			snps,dcb-algorithm;
-			snps,map-to-dma-channel = <0x1>;
-			snps,route-ptp;
-		};
-
-		queue2 {
-			snps,avb-algorithm;
-			snps,map-to-dma-channel = <0x2>;
-			snps,route-avcp;
-		};
-
-		queue3 {
-			snps,avb-algorithm;
-			snps,map-to-dma-channel = <0x3>;
-			snps,priority = <0xC>;
-		};
 	};
 
 	mtl_tx_setup: tx-queues-config {
-		snps,tx-queues-to-use = <4>;
+		snps,tx-queues-to-use = <1>;
 		snps,tx-sched-wrr;
 
 		queue0 {
@@ -87,24 +69,6 @@  queue0 {
 			snps,dcb-algorithm;
 			snps,priority = <0x0>;
 		};
-
-		queue1 {
-			snps,weight = <0x11>;
-			snps,dcb-algorithm;
-			snps,priority = <0x1>;
-		};
-
-		queue2 {
-			snps,weight = <0x12>;
-			snps,dcb-algorithm;
-			snps,priority = <0x2>;
-		};
-
-		queue3 {
-			snps,weight = <0x13>;
-			snps,dcb-algorithm;
-			snps,priority = <0x3>;
-		};
 	};
 };