From: Bhupesh Sharma Date: Sat, 23 Apr 2022 19:50:03 +0000 (+0530) Subject: arm64: dts: qcom: sa8155p-adp: Disable multiple Tx and Rx queues for ethernet IP X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=11a3f3dc2cf8d6127aae6183a69dcf3dde026305;p=linux.git arm64: dts: qcom: sa8155p-adp: Disable multiple Tx and Rx queues for ethernet IP 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. Fixes: c5cb42cc8411 ("arm64: dts: qcom: sa8155p-adp: Enable ethernet node") Cc: Bjorn Andersson Cc: Vinod Koul Signed-off-by: Bhupesh Sharma Signed-off-by: Bjorn Andersson Link: https://lore.kernel.org/r/20220423195003.353150-1-bhupesh.sharma@linaro.org --- diff --git a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts index 8034d0d31bd03..ba547ca9fc6bd 100644 --- a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts +++ b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts @@ -49,7 +49,7 @@ }; 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 @@ 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 @@ 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>; - }; }; };