专栏底层软件J5芯片平台原生代码对无源晶振PHY的兼容问题是否有计划更新?

J5芯片平台原生代码对无源晶振PHY的兼容问题是否有计划更新?

已解决
wuguang2022-12-08
42
3

Hi 地平线同事:

我们在开发阶段用于EtherNet debug预留选用了一颗国产PHY芯片MAE0621A,是一颗无源晶振的PHY芯片,需要外挂晶振;

在调试过程中发现需要修改J5的原生uboot代码才可以正常将晶振起振,比如下面这段代码为源代码,需要做注释或后移执行顺序才可以:

文件:uboot/drivers/net/hobot_eth_j5.c

接口:static int eqos_start(struct udevice *dev)

修改:注释掉该函数中如下代码,强制继续往下走才可以正常将晶振起振

//if (ret) {

// pr_err("EQOS_DMA_MODE_SWR stuck");

// goto err_stop_resets;

//}

根据上述背景我们得出的结论是,无源晶振的PHY驱动加载方式与有源的,在原生代码中的执行策略是不同的,或许是在设计J5底层总线驱动时,未考虑到客户可能会接入无源晶振的PHY芯片;

请问地平线部分是否考虑优化Eth的总线驱动?

感谢!

底层软件
征程5技术深度解析
评论2
0/1000
  • tao03wang
    Lv.1

    EQOS_DMA_MODE_SWR错误 应该是Phy没有输出时钟给J5导致的。

    咨询了硬件这个和无源晶振和有源晶振关系不大。

    麻烦确认下phy Reset timing时间是多少?

    现在还不清楚是不是只有MAE0621A有这个问题,目前还没有改eth驱动的计划

    2022-12-08
    0
    1
    • tao03wang回复tao03wang:
      我翻了我们内部的MAE0621A支持记录,MAE0621A输出clock需要mdio写phy的寄存器,这时无源晶振已经起振了,如果晶振不起振的话,mdio是无法写phy的寄存器的。

      所以这个问题和晶振没有关系。

      这是因为MAE0621A这款PHY的特殊性吧

      2022-12-08
      0
  • Daitao
    Lv.1

    您好:

    还需要您那边确认一下以下几个问题。

    1. PHY 再J5未进入Uboot阶段上电时序 reset是否正常。

    2. PHY 如果使用有源晶振是否存在同样问题。

    J5 再适配88EA1512时同样是无源晶振,如果再PHY reset异常时也会进入到这个报错。

    谢谢

    2022-12-08
    0
    0