[PATCH] arm64: dts: rockchip: odroid-m1: use rgmii-id for gmac0

Andrew Lunn andrew at lunn.ch
Mon Oct 19 14:12:45 PDT 2026


On Mon, Oct 19, 2026 at 09:22:54PM +0200, Miguel Jesus Seron Gonzalez wrote:
> The gmac0 node uses phy-mode "rgmii" with the MAC delays
> tx_delay = <0x4f> and rx_delay = <0x2d>. On some boards this TX delay
> does not work at 1000 Mbit/s. Dongjin Kim reported iperf3 throughput
> below 200 Mbit/s on REV 1.0 20220613 boards. On a REV 1.0 20211112
> board, TX from the board stalls completely in iperf3 and ping loss
> grows with frame size (5% at 56 bytes, 20% at 1472 bytes), while RX is
> unaffected. Other boards work with the current value, so it seems to
> be marginal rather than wrong everywhere.
> 
> Instead of tuning the MAC TX delay again, switch to phy-mode
> "rgmii-id", so that the RTL8211F PHY adds both RGMII delays, and drop
> the MAC delay properties, as suggested by Chukun Pan. Dongjin
> confirmed in the same thread that rgmii-id works.
> 
> With this change, on the REV 1.0 20211112 board at 1000 Mbit/s full
> duplex, there were 3 retransmitted TCP segments out of 24929 (0.012%)
> over almost four hours, no RX/TX errors and no ping loss.
> 
> Fixes: fd3583267703 ("arm64: dts: rockchip: Add Hardkernel ODROID-M1 board")
> Link: https://lore.kernel.org/r/20250819075522.2238643-1-tobetter@gmail.com
> Suggested-by: Chukun Pan <amadeus at jmu.edu.cn>
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: Miguel Jesus Seron Gonzalez <info at gluon.es>

> @@ -200,7 +200,7 @@ &gmac0 {
>  	assigned-clock-rates = <0>, <125000000>;
>  	clock_in_out = "output";
>  	phy-handle = <&rgmii_phy0>;
> -	phy-mode = "rgmii";
> +	phy-mode = "rgmii-id";
>  	phy-supply = <&vcc3v3_sys>;
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&gmac0_miim
> @@ -209,9 +209,6 @@ &gmac0_rx_bus2
>  		     &gmac0_rgmii_clk
>  		     &gmac0_rgmii_bus>;
>  	status = "okay";
> -
> -	tx_delay = <0x4f>;
> -	rx_delay = <0x2d>;

Correct from the DT binding point of few.

Reviewed-by: Andrew Lunn <andrew at lunn.ch>

    Andrew



More information about the Linux-rockchip mailing list