[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2821088.9PvXe5no7K@diego>
Date: Tue, 19 Aug 2025 20:44:26 +0200
From: Heiko StĂĽbner <heiko@...ech.de>
To: Dongjin Kim <tobetter@...il.com>, Andrew Lunn <andrew@...n.ch>
Cc: Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-rockchip@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject:
Re: [PATCH] arm64: dts: rockchip: Change ethernet TXD timing delay value
Am Dienstag, 19. August 2025, 18:03:47 Mitteleuropäische Sommerzeit schrieb Andrew Lunn:
> On Tue, Aug 19, 2025 at 01:50:17PM +0900, Dongjin Kim wrote:
> > Very poor network performance is observed on the ODROID-M1 Board
> > (REV 1.0 20220613) when running iperf3 (under 200Mbits/sec), and
> > this problem can be resolved after changing the value of TXD
> > timing to 0x35 from 0x4f.
>
> How did you decide on 0x35?
just because I accidentially stumbled over that recently, Rockchip has
some scanning functionality in their vendor-kernel to get possible
delay values for a board.
Described in a document called "Rockchip GMAC RGMII Delayline Guide" [0]
and one code location is for example the armbian tree [1]
At least that is one possible source of per-board delay values :-)
Heiko
[0] https://lo01.g77k.com/aeb/docs/en/Common/GMAC/Rockchip_Developer_Guide_Linux_GMAC_RGMII_Delayline_EN.pdf
(random internet source Google found me)
[1] https://github.com/armbian/linux-rockchip/blob/rk-6.1-rkr5.1/drivers/net/ethernet/stmicro/stmmac/dwmac-rk-tool.c
>
> ~/linux/arch/arm64$ grep -hr "tx_delay = " | sort | uniq -c
> 4 tx_delay = <0x10>;
> 1 tx_delay = <0x1a>;
> 1 tx_delay = <0x21>;
> 2 tx_delay = <0x22>;
> 4 tx_delay = <0x24>;
> 2 tx_delay = <0x26>;
> 14 tx_delay = <0x28>;
> 1 tx_delay = <0x2a>;
> 6 tx_delay = <0x30>;
> 1 tx_delay = <0x3a>;
> 3 tx_delay = <0x3c>;
> 2 tx_delay = <0x42>;
> 5 tx_delay = <0x43>;
> 2 tx_delay = <0x44>;
> 1 tx_delay = <0x46>;
> 6 tx_delay = <0x4f>;
>
> The numbers are all over the place, but it is clear that 0x28 is the
> most popular for some reason. But since this delay values are magic,
> i've no idea why.
>
> Andrew
>
Powered by blists - more mailing lists