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.

[FAQ] [参考译文] [常见问题解答] SK-AM64B:自动生成的 MAC 端口2 PHY 配置不正确

Guru**** 2481495 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1457030/faq-sk-am64b-incorrect-auto-generated-mac-port-2-phy-configuration

器件型号:SK-AM64B
主题中讨论的其他器件:DP83869SysConfig

工具与软件:

 SK-AM64x 上的两个以太网端口分别连接到两个千兆位以太网 PHY 收发器 DP83867。

在 SK-AM64x 网络示例中启用 MAC 端口2时、自动生成的 ti_board_config.c 文件包含 AM64x-EVM 的端口2板配置(DP83869扩展配置)、该配置不正确。  

    {    /* "CPSW3G" */
        .enetType = ENET_CPSW_3G,
        .instId   = 0U,
        .macPort  = ENET_MAC_PORT_2,
        .mii      = { ENET_MAC_LAYER_GMII, ENET_MAC_SUBLAYER_REDUCED },
        .phyCfg   =
        {
            .phyAddr         = 3,
            .isStrapped      = false,
            .skipExtendedCfg = false,
            .extendedCfg     = &gEnetCpbBoard_dp83869PhyCfg,
            .extendedCfgSize = sizeof(gEnetCpbBoard_dp83869PhyCfg),
        },
        .flags    = 0U,
    },

对自动生成文件的任何更改都会在重新编译示例时被覆盖、如何以一种干净的方式解决此问题?

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

    SDK 版本10.01及以后版本

    使用以下 PHY 选项修改默认 MAC 端口2 SysConfig 设置:

    - 选择 DP83867 从"ETHPHY Device"下拉列表中选择器件。

    -将"PHY 地址"值设置为  1.

    这将使用正确的值来更新自动生成的 ti_board_config.c 文件。

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

    SDK 版本10.0或更早版本

    按照以下步骤使用自定义电路板配置文件、而不是自动生成的 ti_board_config 文件:

    1.在 SysConfig GUI 中启用"Custom Board"(CPSW/ICSSG -> Board Config -> Custom Board)选项。 这将启用特定于示例的 enet_custom_board_config.c 文件。  

    2. 在 CCS 中添加 enet_custom_board_config.c 文件(mcu_plus_sdk_am64x\examples\networking\enet_layer2_multi_channel\am64x-evm\r5fss0-0_freertos\enet_custom_board_config.c)以及示例 main.c 文件。

    2.在 enet_custom_board_config.c 文件中修改以太网端口配置  gEnetCpbBoard_am64x_EVM_EthPort 使用 DP83867扩展配置、而不是 DP83869、并将 phyAddr 设置为 1. 如下所示。

    3.保存该文件并重新编译示例。

    此致、

    Nitika

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

    SDK 版本10.0或更早版本:  修改 SysConfig 模板文件(不建议使用)

    修改自动生成文件的另一种方法是更改模板本身。

    1.转到 mcu_plus_sdk_am64x\source\sysconfig\networking\.meta\enet_cpsw\templates\am64x_am243x\enet_board_cfg.c.xdt 文件。

    2.修改  enetBoardPhyInfoMap 的 am64x-evm 条目 、以将 "gEnetCpbBoard_dp83867PhyCfg"分配到 ENET_MAC_PORT_2、如下所示。

        const enetBoardPhyInfoMap = new Map(
            [
                ['am64x-evm',{ENET_MAC_PORT_1: 'gEnetCpbBoard_dp83867PhyCfg', ENET_MAC_PORT_2: 'gEnetCpbBoard_dp83867PhyCfg'}],
                ['am243x-evm',{ENET_MAC_PORT_1: 'gEnetCpbBoard_dp83867PhyCfg', ENET_MAC_PORT_2: 'gEnetCpbBoard_dp83869PhyCfg'}],
                ['am243x-lp',{ENET_MAC_PORT_1: 'gEnetCpbBoard_dp83869PhyCfg', ENET_MAC_PORT_2: 'gEnetCpbBoard_dp83869PhyCfg'}],
            ],
            );

    注意:这会修改 SK-AM64x 和 AM64x-EVM 的所有自动生成的 ti_board_config 文件、这可能会导致 AM64x-EVM 示例中出现故障。

    请谨慎修改模板文件、

    3.打开示例中的 SysConfig、您将在 ti_board_config.c 文件中看到修改后的值。 Re 编译示例。

    此致、

    Nitika