Known issueEthernet

Rockchip Ethernet Link Up but No Traffic (RGMII tx_delay / rx_delay)

Link is Up - 1Gbps/Full but no DHCP / no traffic

The PHY negotiates a gigabit link, but packets are corrupted or dropped, so DHCP fails. This is the classic RGMII clock-to-data delay mismatch.

Applies to: RK3588 RK3588S RK3576 RK3568 RK3566 RK3399 RK3328 RK3288

Symptoms

  • "Link is Up - 1Gbps/Full" in dmesg, but no DHCP lease
  • Works at 100 Mbps, fails at 1000 Mbps
  • Rising rx_crc_errors in ethtool -S

Common causes

  • RGMII delay added twice (PHY internal + MAC delay line) or not at all
  • Wrong phy-mode (rgmii vs rgmii-id / rgmii-rxid / rgmii-txid)
  • Delay values copied from a different board layout

How to fix it

  1. Confirm it is timing
    ethtool -s eth0 speed 100 duplex full autoneg off   # works? → timing
    ethtool -S eth0 | grep -iE 'crc|err'
  2. Pick one owner for each delay
    /* MAC adds delays */
    &gmac0 { phy-mode = "rgmii"; tx_delay = <0x43>; rx_delay = <0x33>; };
    
    /* PHY adds both delays */
    &gmac0 { phy-mode = "rgmii-id"; tx_delay = <0x0>; rx_delay = <0x0>; };
  3. Tune on your PCB

    Vendor kernels include an RGMII loopback delay-scan helper in the GMAC sysfs node (see Rockchip's GMAC developer guide). Use the centre of the passing window.

Go deeper

FAQ

What does "Link is Up - 1Gbps/Full but no DHCP / no traffic" mean?

The PHY negotiates a gigabit link, but packets are corrupted or dropped, so DHCP fails. This is the classic RGMII clock-to-data delay mismatch.

What causes "Link is Up - 1Gbps/Full but no DHCP / no traffic"?

RGMII delay added twice (PHY internal + MAC delay line) or not at all; Wrong phy-mode (rgmii vs rgmii-id / rgmii-rxid / rgmii-txid); Delay values copied from a different board layout.

How do I fix "Link is Up - 1Gbps/Full but no DHCP / no traffic"?

1. Confirm it is timing 2. Pick one owner for each delay 3. Tune on your PCB: Vendor kernels include an RGMII loopback delay-scan helper in the GMAC sysfs node (see Rockchip's GMAC developer guide). Use the centre of the passing window.

Related issues

¿Desarrollas un producto basado en Rockchip?

Del diseño de hardware a la integración de Linux, Android e IA: consigue soporte de ingeniería para tu proyecto Rockchip.