[PATCH v2 0/2] arm64: dts: rockchip: add ALIENTEK QuarkPi-CA2

Andrew Lunn andrew at lunn.ch
Thu Oct 1 06:33:27 PDT 2026


On Thu, Oct 01, 2026 at 09:17:01PM +0800, BG9OXA wrote:
> Hello Andrew,
> 
> Following up on the phy-mode point, with the measurements I promised.
> 
> I ran three 15-minute runs at full rate in both directions on this board
> (rk_gmac-dwmac + YT8531 PHY, iperf3, 900 s per direction), rebooting
> between runs so each configuration was fresh:
> 
>   mode          tx_delay   rx_delay   board->host    host->board   retrans
>   rgmii-rxid    0x2f       0x00       922 Mbit/s     939 Mbit/s    0
>   rgmii         0x2f       0x00       922 Mbit/s     939 Mbit/s    0
>   rgmii-id      0x00       0x00       918 Mbit/s     939 Mbit/s    224
> 
> The MAC error counters (rx/tx errors and drops) stayed at zero in all
> three runs, and the link came up at 1000 Mb/s Full duplex every time.
> 
> So plain "rgmii" with the delay added on the MAC side behaves exactly
> like the rxid form, and the "rgmii-id" run - where both sides add the
> delay - is the only one that shows retransmissions. That matches your
> point that only one side should add the delay. I have changed 2/2 to
> phy-mode = "rgmii" and dropped the rxid form: the RGMII traces on this
> board are ordinary length, so nothing in the PCB asks for an extra RX
> delay.

Did you read

https://elixir.bootlin.com/linux/v6.15/source/Documentation/devicetree/bindings/net/ethernet-controller.yaml#L287

phy-mode describes the PCB. 'rgmii-id' says the PCB does not have
extra RX/TX delays. So 'rgmii-id' is correct here. Please spend some
time to understand what delays are being added where, and how you can
get to rgmii-id without any retransmissions.

   Andrew



More information about the Linux-rockchip mailing list