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.

[参考译文] 66AK2E05:从任何 SGMII 端口或仅从端口0/1引导 TFTP

Guru**** 2546020 points
Other Parts Discussed in Thread: 66AK2E05

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/619851/66ak2e05-tftp-boot-from-any-sgmii-port-or-only-ports-0-1

器件型号:66AK2E05

您好!

我正在使用 Keystone 66Ak2E05开发板。 最初、我使用 UART 引导模式引导至 Uboot、然后从该 Uboot 中、我使用 TFTP 引导获取 Uboot (需要新 Uboot 时)和 Linux 映像。 现在、我已经使用 SGMII 0和1尝试了这种方法、 因为66Ak2E05模块具有  连接到 SGMII 0和1的 RJ45连接器。

我的硬件团队正在 布置和启动电路板布局、并希望重新分配许多 SGMII 端口以更干净地布线。  

在给定当前位置的情况下、他们可能希望使用 SGMII 5、6或7进行 TFTP 引导。

我是否可以使用任何 SGMII 接口(5、6或7、而不是0或1)来启动 66Ak2E05?  

当我尝试通过以太网引导66AK2E05模块时、它会尝试从 eth0开始执行 SGMII 和 PHY 自动协商。 当我将以太网电缆连接到较低的以太网端口时、eth0已启动。 当我连接到顶部以太网端口时、它尝试在 eth0:netcp@24000000上执行 SGMII 和 PHY 自动协商、并且超时。 然后、它在其他 netcp 上尝试、并且成功地用于 netcp@slaver-1器件、并且 eth1已启动。 因此、我想它逐个检查每个 SGMII 接口、并使用它可以成功执行自动协商的接口。  

 以下是日志:

 清除整个 DDR3内存以启用 ECC

2GiB

NAND: 512 MiB

ENV_RELOAD_SPEC:

读取2

net:  eth0:netcp@24000000

警告:netcp@2f00000 (eth1)使用随机 MAC 地址- 76:9b:65:ca:48:fb

,eth1:netcp@2f00000

警告:netcp@slave-1 (eth2)使用随机 MAC 地址- 46:27:80:26:7c:15

,eth2:netcp@slave-1.

警告:netcp@slave-2 (eth3)使用随机 MAC 地址- ee:51:C4:CD:30:8e

,eth3:netcp@slave-2

警告:netcp@slave-3 (eth4)使用随机 MAC 地址- 62:F8:06:4e:11:8f

,eth4:netcp@slave-3.

警告:netcp@slave-4 (eth5)使用随机 MAC 地址- 42:16:f2:37:91:B5

,eth5:netcp@slave-4

警告:netcp@slave-5 (eth6)使用随机 MAC 地址-9e:ef:A3:27:1e:43

,eth6:netcp@slave-5

警告:netcp@slave-6 (eth7)使用随机 MAC 地址- 06:89:01:00:76:B1

,eth7:netcp@slave-6

警告:netcp@slave-7 (eth8)使用随机 MAC 地址- ea:23:84:ca:9c:43

,eth8:netcp@slave-7

警告:netcpx@slave-1 (eth9)使用随机 MAC 地址- 82:47:54:9c:e8:fa

,eth9:netcpx@slave-1.

按键停止自动引导: 0

 Netcp@24000000等待 SGMII 自动协商完成.......... 超时!

Netcp@24000000等待 PHY 自动协商完成.......... 超时!

错误:PHY 启动失败

 在 drivers/net/keyston_net.c:1098/ks2_eth_start ()

Netcp@2f00000 SerDes 通道未建立

 

netcp@slaver-1等待 SGMII 自动协商完成。 完成

BOOTP 广播1

BOOTP 广播2.

BOOTP 广播3.

BOOTP 广播4.

DHCP 客户端绑定到地址10.40.106.142 (2005 ms)

使用 netcp@slave-1器件

服务器10.40.106.120的 TFTP;我们的 IP 地址为10.40.106.142

文件名"//Arago.cpio.gz"。

 

因此、我希望使用任何 SGMII 接口都可以正常工作。 您可以确认这一点吗? 此外、我是否需要 Uboot 上的任何命令来使任何特定的 SGMII 接口处于活动状态?或者、电路板只 需通过执行上述日志中的自动协商来自行选择 SGMII 接口? 请回复。

此致、

Ashwini

 

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

    我已将其转发给软件团队。 他们的反馈应发布在此处。

    BR
    Tsvetolin Shulev
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您能否澄清一下、如果 SGMII 引导仅需要来自 u-boot、而不需要来自 RBL (ROM 引导加载程序)。 如果只需要 uboot thene 进行 TFTP 引导、我将在 Linux 引导加载程序专家中循环以响应此问题。

    如果这与 ROM 引导加载程序相关、请在此处参阅我的响应:
    e2e.ti.com/.../2283848

    在 EVM 上、DEVSTAT 寄存器中的以太网引导模式设置为0x1506B、这意味着通道设置为0b00、这意味着启用所有 SGMII 端口。

    我将让 uboot/Linux 专家解释 uboot 中的相同设置。

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

    需要从 Uboot 启动 SGMII。 首先、我从 UART 引导模式启动 Uboot、然后从此 Uboot 提供命令、以便从以太网端口获取新的 Uboot 映像和 Linux 映像(为此、我们需要使用 SGMII 5、6或7)并刻录到 SPI 闪存。
    因此、请将此内容转发给 Uboot 专家、让我知道设置。

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

    当我从 UART 引导 Uboot 并尝试通过 SGMII 0和1从 Ethenet 获取 Uboot 时、电路板会分别自动使用 K2E_EMAC0和 K2E_EMAC1器件。 那么、它还会自动为 SGMII 7选择 K2E_EMAC7、还是需要在 Uboot 上设置任何内容?

    K2E EVM # env 默认-f -a
    ##重置为默认环境
    K2E EVM # setenv serverip 192.168.10.1
    K2E EVM # setenv name_uboot u-boot-spi.gph
    K2E EVM # setenv boot ramfs
    K2E EVM # saveenv
    正在将环境保存到 NAND 中...
    正在擦除 NAN...
    在0x120000擦除-- 100%完成。
    正在写入 NAND…… 完成
    K2E EVM #运行 get_uboot_net
    BOOTP 广播1
    DHCP 客户端绑定到地址192.168.10.15
    使用 K2E_EMAC1器件
    来自服务器192.168.10.1的 TFTP;我们的 IP 地址为192.168.10.15
    文件名"/u-boot-spi.gph"。
    加载地址:0x87000000
    正在加载:############################
    983.4 KiB/s
    完成
    传输的字节= 540051 (83d93十六进制)
    K2E EVM # printenv ethact
    ethact=K2E_EMAC1
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、Ashwini、

    您已达到目标。 ethact 是您应该玩的游戏,但首先在 u-boot 中执行 ping 操作。 我打算建议从 eth1开始。 将 ethact 设置为 K2E_EMAC1、ping 应通过 eth1工作。 工作后、移至更高的端口。 您似乎已经通过了 eth1步骤。 EVM 需要首先具有自己的 IP 地址"setenv ipaddr x.x.x.x"。 验证 ping 是否正常工作后、tftp 应该会继续执行。

    TI 使用第三方分接卡来测试更高的端口。 到 RTM BOC 以太网 PHY 的 SGMII 端口顺序相反。 也就是说、SGMII4不会连接到 RTM BOC 上的 PHY4 (eth4)、而是 PHY7 (eth7)。 如果您未将 RTM BOC 与 TI EVM 配合使用、则这不适用于您。

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

    尊敬的 Rex:

    我将"ethact"设置为 K2E_EMAC1、并将如下所示的"eth1addr"设置为从 SGMII 1启动 TFTP。

    K2E EVM # setenv ethact K2E_EMAC1
    K2E EVM # setenv eth1addr aa:bb:cc:44:55:66

    并且从 SGMII 1 (K2E EVM 模块中的上以太网端口)引导 TFTP 成功。 我正在运行 DHCP 服务器以设置 K2E 板的 IP 地址。

    因此、如果我想使用 SGMII 7、例如、我是否只需要按如下方式设置 ethact 和 eth7addr、它应该起作用、对吧? 请确认。 我们不使用任何分接卡。

    K2E EVM # setenv ethact K2E_EMAC7
    K2E EVM # setenv eth1addr aa:bb:cc:44:55:66



    -Ashwini

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

    它应该起作用,但我们没有尝试过它。

    雷克斯