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.

[参考译文] Linux/EVMK2H:XTCIEVMK2X 评估模块:通过&quot 执行 Ping 操作;eth2:netcp@slave-2"和"eth3:netcp@slave-3"导致 U-Boot 崩溃

Guru**** 2539500 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/719758/linux-evmk2h-xtcievmk2x-evaluation-module-ping-through-eth2-netcp-slave-2-and-eth3-netcp-slave-3-causes-u-boot-to-crash

器件型号:EVMK2H

工具/软件:Linux

大家好、

我从 TI 存储库下载了 k2hK-EVM-Linux-RT-SDK-BIN-05.00.15.tar.xz 软件包、 将"u-boot-SPI-k2hK-EVM.GPH" U-Boot/SPL 映像编程到 XTCIEVMK2X 评估模块上的 SPI 闪存、并将 SOC 设置为 ARM SPI 引导模式。

将其插入 MicroTCA.4机箱后、我没有通过评估模块的 AMC0和 AMC1接口进行网络连接。  此外-当我尝试使用 U-Boot 时、U-Boot 会崩溃:

U-Boot SPL 2018.01-g131dc82830 (2018年7月25日- 15:41:41)
尝试从 SPI 引导

U-Boot 2018.01-g131dc82830 (2018年7月25日- 15:41:41 +0000)

CPU:66AK2Hx SR2.0
型号:德州仪器 Keystone 2 Kepler/Hawking EVM
DRAM:DDR3A 速度将配置为1333操作。
检测到 SO-DIMM [SQR-SD3T-2G1333SED]
DDR3速度1333
DRAM:2 GiB (包括以下报告)

清除整个 DDR3内存以启用 ECC
2GiB
NAND:512 MiB
从偏移100000读取 NAND 失败-74
***警告- readenv()失败,使用默认环境

网络:
警告:netcp@2000000使用来自 ROM 的 MAC 地址
eth0:netcp@2000000
警告:netcp@slave-1 (eth1)使用随机 MAC 地址- de:bb:6B:57:1b:0d
,eth1:netcp@slave-1.
警告:netcp@slave-2 (eth2)使用随机 MAC 地址- 6e:32:F8:A6:F6:24
,eth2:netcp@slave-2
警告:netcp@slave-3 (eth3)使用随机 MAC 地址- E2:74:0b:13:86:cf
,eth3:netcp@slave-3
按任意键停止自动引导:0
=>
=>
=> setenv ipaddr 192.168.99.199
=> setenv ethact eth1
=> ping 192.168.99.1

netcp@slaver-1等待 SGMII 自动协商完成。 完成
使用 netcp@slave-1器件
主机192.168.99.1处于活动状态
=>
=>
=> setenv ethact eth3
=> ping 192.168.99.1

正在等待 SGMII 自动协商完成.......... 超时!
使用 netcp@slave-3器件
数据中止
PC:[ ] LR:[ ]
重新分配 PC:[<0c0296a0>] LR:[<0c028c9f>]
SP:fed1fb0 IP:00000001 FP:fffaa94
R10:0163a8c0 R9:fed9ee8 R8:fffebf44
R7:00000006 R6:0000002a R5:fffebf80 R4:00000000
r3:00000001 r2:ffff r1:e59ff098 r0:ea000047
标志:nzCv IRQ 关闭 FIQ 关闭模式 SVC_32
正在重置 CPU ...

正在重置...

前面的 eth0和 eth1的效果非常好、与之相比、在将另一个 AMC 卡插入同一机箱插槽后、我通过 AMC0和 AMC1端口具有正常的网络连接。

因此、无论是从硬件方面还是从软件方面、都没有任何定制。

您可以看看这个吗?

此致、

Andranik

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

    10天是相当值得尊敬的时间段-请您最终查看此请求吗?

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

    我们对延迟答复表示歉意。

    在 uboot 期间、不太可能启用 eth2/3。 这是通过更高级的软件来完成的。
    请让专家尽快在此处提供更多详细信息。

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

    这里是否有任何进展?

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

    您好!

    您是否检查了 uboot 环境变量?  如果您停止 uboot 并键入 printenv、您应该会看到很多。  从这个错误中、看起来 NAND 中没有存储的环境变量:

    NAND:512 MiB
    从偏移100000读取 NAND 失败-74
    ***警告- readenv()失败,使用默认环境

    我认为我们的默认设置不会配置 eth2和 eth3。  当我在 ARM 模式下引导 K2K 时、日志看起来与此完全不一样。  

    网络:  
    警告:netcp@2000000使用来自 ROM 的 MAC 地址
    eth0:netcp@2000000
    警告:netcp@slave-1 (eth1)使用随机 MAC 地址- de:bb:6B:57:1b:0d
    ,eth1:netcp@slave-1.
    警告:netcp@slave-2 (eth2)使用随机 MAC 地址- 6e:32:F8:A6:F6:24
    ,eth2:netcp@slave-2
    警告:netcp@slave-3 (eth3)使用随机 MAC 地址- E2:74:0b:13:86:cf
    ,eth3:netcp@slave-3

     

    您是否完成了以下前提条件设置:

    http://processors.wiki.ti.com/index.php/MCSDK_UG_Chapter_Exploring

     

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

    有关此问题在 u-boot 中进行一些更改后得到解决的信息、请参阅以下 u-boot 代码补丁、该补丁可解决此问题:


    索引:arch/arm/dts/keystone-k2hk netcp.dtsi
    ===================================================================================================================================
    -- arch/arm/dts/keystone-k2hk netcp.dtsi(修订版151494)
    ++ arch/arm/dts/keystone-k2hk netcp.dtsi(修订版151495)
    @@-146、8 + 146、10 @@

    TI、navigator-DMA =<&DMA_GbE 22>、
    <&DMA_GbE 23>、
    +<&DMA_GbE 24>、
    +<&DMA_GbE 25>、
    <&DMA_GbE 8>;
    ti、navigator-dma-names ="netrx0"、"netrx1"、"nettx";
    +ti、navigator-dma-names ="netrx0"、"netrx1"、"netrx2"、"netrx3"、"nettx";

    netcp-devices{
    范围;
    索引:drivers/net/keyston_net.c
    ===================================================================================================================================
    -- drivers/net/keyston_net.c(修订版151494)
    ++ drivers/net/keyston_net.c(修订版151495)
    @@-799,999 +79911 @@

    struct ks2_eth_priv* priv=dev_get_priv(dev);

    -genphy_update_link(priv->phydev);
    -如果(priv->phydev->link=0)
    -返回-1;
    +if (priv->has _mdio){
    +genphy_update_link (priv->phydev);
    +if (priv->phydev->link =0)
    +return -1;
    +}

    if (长度< EMAC_MIN_ETHERNET_PKT_SIZE)
    长度= EMAC_MIN_ETHERNET_PKT_SIZE;
    @@-1065、7 +1067、7 @@
    "TI、navigator-DMA"、
    DMA_CHANNEL、8);

    -if (dma_count >(2 * priv->slave_port)){
    +if (dma_count >=(2 * priv->slave_port)){
    int dma_idx;

    dma_idx = priv->slave_port * 2 - 1;
    @@-1109、6 +11118 @@

    pdate->phy_interface = priv->phy_if;
    PRIV->has _MDIO = true;
    +}否则(priv->link_type =link_type_SGMII_MAC_TO_MAC_Forced_mode){
    +priv->SGMII_link_type = SGMII_LINK_MAC_MAC_DEV板;


    返回0;


    此致、
    Andrew。