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.

[参考译文] AM2634:通过 SPI 在定制 PHY 芯片上实现以太网。

Guru**** 2693225 points

Other Parts Discussed in Thread: AM2634, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1597743/am2634-ethernet-implementation-on-custom-phy-chip-via-spi

器件型号: AM2634
主题: SysConfig 中讨论的其他器件

尊敬的 TI 系列:

我们设计了定制的 am2634 电路板、而不是 DP83869HMGZT PHY IC(w.r.t LaunchPad 套件)、我们使用 KSZ9893RNXI-TR IC 进行以太网通信。
在 LaunchPad 中、默认 IC 使用 MDIO/MDC 引脚进行配置。  但在自定义卡中、配置是使用 SPI 协议完成的。
要将 LaunchPad 套件中包含的现有 SDK 用于具有 KSZ9893RNXI IC 的定制 PCB、需要的最少更新是什么?

是否有任何参考代码可用于控制带有 AM2634 控制器的 KSZ9893RNXI-TR IC?

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    要将 LaunchPad 套件中包含的现有 SDK 用于具有 KSZ9893RNXI IC 的定制 PCB、需要的最少更新是什么?

    尊敬的 Tej:

    您将需要在以下位置更新完整的 MDIO 实现:

    source/networking/enet/core/mod/mdio_manual_ioctl.c src

    source/networking/enet/core/core/mod/mdio.c src

    source/networking/enet/core/mod/mdio_ioctl.c src

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是否有任何参考代码可用于通过 AM2634 控制器控制 KSZ9893RNXI-TR IC?

    遗憾的是、我们没有这样的参考实现方案。 我想了解基于 SPI 的 PHY 的动机、是成本吗?

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

    您好:Nilabh、

    下面是我们的定制卡中使用的定制 IC PHY 开关 ( KSZ9893RNXI-TR ) 的原理图-


     

    这就是我计划如何实现以太网-


    1.我们的定制 IC 中有专用的 SPI 引脚 (47、48、49、50)、用于配置 PHY(需要跳过通过 MDIO 引脚配置)。

    2. MAC 层实现需要与 AM2634 类似、只需进行极少的修改即可同步 PHY 和 MAC 层。

    3.请建议使用最好的 SDK 示例文件、只需进行极少的修改即可使用。

    4.还应说明需要进行哪些修改,如果您能分享一些相同的参考资料,将会很有帮助。

    谢谢。此致。

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

    尊敬的 Tej:

    遗憾的是、 没有一种简单的方法可以解决此实现问题、因为您正在尝试使用基于 SPI 的接口对 MDIO 进行去耦;您需要自己实现 SPI 到 MDIO 转换层、我们以前没有实施此类设计的经验。

    phy 和 Mac 层同步层通过 MDIO 层进行。 您需要修改上述文件。

    由于我们没有采用 SPI 控制的以太网 PHY 的解决方案、因此没有任何参考实现方案。

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

    对于静态 MAC 地址、请修改函数以对 MAC 地址进行硬编码:

    • EnetBoard_getMacAddrList ():该函数应该填充板载 EEPROM 上可用的任何板特定 MAC 地址。  
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:Nilabh、

    对于静态 MAC 地址、请修改函数以对 MAC 地址进行硬编码:

    1.但函数“EnetBoard_getMacAddrList ()“位于“ti_board_config.c"文件“文件内、该文件在每次生成后由 SysConfig 生成、无法硬编码、因为每次生成后、它将再次被修改。

    2、如果我使 seprate 文件具有相同的函数名(“ EnetBoard_getMacAddrList ()“),如果同一个函数名位于两个不同的文件中,会有歧义。

    3.因此最后、应该从“ti_board_config.c"跳“跳过 EnetBoard_getMacAddrList 函数(如果 SysConfig 中有任何相同的设置,请建议使用)或者如果在那里、则应分配静态 MAC 而不读取 EEPROM。

    谢谢

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

    尊敬的 Tej:

    您可以在下面的模板文件中更改以下函数的定义:

    mcu_plus_sdk_am263x\source\networking\enet\coreet\sysconfig\networking\.meta\enet_cpsw\templates\am2613\enet_soc_cfg.c.xdt

    EnetSoc_getEFusedMacAddrs.

    您可以在此处对 MAC 地址进行硬编码

    您可以在文件中更改以下函数的定义:

    C:\ti\mcu_plus_sdk_am263x\source\networking\enet\core\sysconfig\board\.meta\ethphy_cpsw_icssg\templates\am263x\enet_board_cfg.c.xdt

    EnetBoard_getMacAddrList