This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TDA4VH:在 u-boot 中为 Marvell 88q2221m PHY 启用 MDIO 通信

Guru**** 2473260 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/switches-multiplexers-group/switches-multiplexers/f/switches-multiplexers-forum/1213472/tda4vh-enabling-mdio-communication-in-u-boot-for-marvell-88q2221m-phy

您好、TI!

我们尝试在 u-boot 中启用 MDIO 通信、板上安装了 Marvell 88q2221m PHY、该 PHY 支持第45条 MDIO 协议。

我们能够 使用固定链路与 Marvell 88q2221m PHY 通信。  

为了启用 MDIO ,我们已经禁用了固定链接从 dtsi 和试图找到 PHY 通过掩码使用 API ,  phy_find_by_mask(),  指定 PHY_CONNECT 停止。

当我们调试代码时、我们发现在一组中维护着 MDIO 可管理器件(MMD) 开发  指定  get_phy_device_by_mask () 停止

int devad[]={
    /*第22条*/
    MDIO_DEVAD_NONE、
    /*第45条*/
    MDIO_MMD_PMAPMD
    MDIO_MMD_WIS
    MDIO_MMD_PCS
    MDIO_MMD_PHYXS
    MDIO_MMD_VEND1
  };

减少 开发 作为参数传递到 get_phy_id API (get_phy_id (bus、addr、devad、&phy_id);) 、将尝试使用获取 PHY ID cpsw_mdio_read ()

但对于所有 开发  功耗 phy_id 为零。

我们找到了 cpsw_mdio_read 采用 devad (dev_addr 作为第三个 参数) 、但在 函数中未使用。

目前、我们使用的是 Linux 8.5 SDK 中的 uboot。

查询:  

  1. 您能否检查我们正在使用的 API 是否正确、如果错误、您能否指导我们需要使用哪个 API 来启用第45条 MDIO 通信。
  2. TI 在8.5 SDK 中提供了 u-boot、支持第45条协议。
  3. 要在 u-boot 中映射新的 PHY、TI 是否提供了相关文档。

 

请查看随附的屏幕截图 以供参考。 μ A

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Santosh:

    关闭该线程、因为它与 该线程重复

    如有必要、请重新打开。

    此致、
    Tanmy.