Appearance
RK3588 · DesignWare GMAC
1G×2双网口
RGMIIPHY 接口
RSS多队列
PTP硬件时间戳
板卡配置
稳定
PHY 型号RTL8211F
PHY 地址
0x00 / 0x01PHY 接口
RGMII_ID参考时钟125 MHz (内部 PLL)
特殊说明
- GMAC0 PHY 地址 0x00,GMAC1 PHY 地址 0x01
- TX/RX delay 由 SoC 内部 IOdomain 提供
网卡设备树配置
/* GMAC0 */
nic_cfg_t cfg0 = {
.base = 0xFE1B0000, .irq = 227,
.phy_addr = 0, .phy_iface = PHY_IFACE_RGMII_ID,
.clk_ref = 125000000,
};
/* GMAC1 */
nic_cfg_t cfg1 = {
.base = 0xFE1C0000, .irq = 228,
.phy_addr = 1, .phy_iface = PHY_IFACE_RGMII_ID,
.clk_ref = 125000000,
};SoC 级说明
网口映射
| 网口 | 控制器基地址 | IRQ |
|---|---|---|
| eth0 (GMAC0) | 0xFE1B0000 | 227 |
| eth1 (GMAC1) | 0xFE1C0000 | 228 |
时钟配置
RK3588 GMAC 时钟由 CLK_GMAC0/1 提供,默认 125 MHz。TX/RX delay 通过 IODOMAIN 和 GRF 寄存器控制,驱动默认配置 TX delay=0x30, RX delay=0x11,可根据 PCB 走线调整。
多队列 RSS
RK3588 支持 4 发 / 4 收队列,可通过 NIC_IOCTL_SET_RSS 启用多核接收分流:
c
nic_rss_cfg_t rss = { .rx_queues = 4, .tx_queues = 4,
.hash_type = NIC_RSS_HASH_TCP4 };
nic_ioctl(&g_nic, NIC_IOCTL_SET_RSS, &rss);已知问题
已知双网口同时满速时,偶发 GMAC1 RX FIFO 溢出,建议限速至 950 Mbps