专栏底层软件地平线J3芯片以太网MAC驱动中如何修改支持RMII接口phy

地平线J3芯片以太网MAC驱动中如何修改支持RMII接口phy

解答中
雪奇的开发生活2026-07-31
31
3

1、控制器硬件是自己设计开发的,其他硬件参考设计为金脉3J3控制器,以太网部分修改为J3直接连接phy芯片而非交换机;

2、问题模块:以太网驱动

3、问题描述:J3芯片采用RMII接口和DP83848这个phy芯片连接,现在现象是uboot和linux均可以ping通电脑,但是丢包率超过70%。

4、怀疑点:查看 kernel/drivers/net/ethernet/hobot/hobot_eth.c文件中明确了mac驱动只支持RGMII接口,所以怀疑是MAC驱动问题导致的丢包。

5、给出开发建议:

——RGMII接口更换为RMII接口是否需要修改mac驱动文件,如果需要修改如何修改?

——需要给出RMII接口以太网的参考配置让我们对比一下?

——需要提供J3芯片以太网相关的寄存器配置手册,修改mac驱动。

底层软件
技术深度解析征程3
评论1
0/600
  • 费小财
    Lv.5

    一般rmii的接口按理说是不需要单独的配置的,你这边需要改的内容有哪些点呢? 或者你更新下linux版本试试

    2026-07-31
    0
    2
    • 雪奇的开发生活回复费小财:
      1、源码开发包是从第三方公司获取到的,当前已经结束相关支持了。
      2、看到mac驱动源码这个文件中说明中有"The gmac is highly configurable at synthesis time. This driver has been developed for a subset of the total available feature set. Currently it supports: -TSO -Checksum offload for RX and TX. -RGMII phy interface. - The statics module. -Single RX and TX queue." 所以怀疑当前mac驱动只支持RGMII接口。
      3、下面图是我们参考的以太网连接示意图
      2026-07-31
      0
    • 费小财回复雪奇的开发生活:

      你可以配置试试,理论上rmii是由框架支持的,除非是厂商的phy需要配置特定的寄存器的,但是这类的修改应该是有phy厂商提供差异性配置,然后加带代码里面的

      2026-08-03
      0