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/AM5728:PRU 以太网不起作用

Guru**** 2585275 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/634000/linux-am5728-pru-ethernet-doesn-t-work

器件型号:AM5728

工具/软件:Linux

在我们的定制板上、我们希望使用端口作为一般100Mbps 以太网接口。 我们已修改设备树 pinmux 和 PRU_rproc.c 驱动程序。 现在、它可以生成 eth2和 eth3、并且固件(am57xx-pru0-prueth-fw.elf、am57xx-pru1-prueth-Fw.elf)也可以成功加载。 但是、我们无法使用 eth2或 eth3 ping 另一个 IP 地址、但 PC 主机可以 ping eth2或 eth3 IP 地址。

与 PRU 相关的引导消息为:

root@am57xx-EVM:~# dmesg | grep PRU
[14.325470] ti-pruss 4b200000.pruss:创建 PRU 内核和其他子平台器件
[14.356055] IRQ: No IRQ domain found for /ocp/pruss@4b200000/INTC@4b220000!
[14.383808] IRQ:找不到/ocp/pruss@4b200000/INTC@4b220000的 IRQ 域!
[14.421548] ti-pruss 4b280000.pruss:创建 PRU 内核和其他子平台器件
[14.443252] IRQ:找不到/ocp/pruss@4b280000/INTC@4b2a0000的 IRQ 域!
[14.470573] IRQ:找不到/ocp/pruss@4b280000/INTC@4b2a0000的 IRQ 域!
[14.480283] of _get_named_gpio_FLAGS:已解析节点'/ocp/pruss@4b280000/MDIO@4b2b2400[0]的'reset-GPIO'属性-状态(0)
[14.480329] of _get_named_gpio_FLAGS:已解析节点'/ocp/pruss@4b280000/MDIO@4b2b2400[1]'的'reset-GPIO'属性-状态(0)
[14.993830] remoteproc4:4b234000.pru0可用
[15.130293] PRU-rproc 4b234000.pru0:PRU rproc 节点/ocp/pruss@4b200000/pru0@4b234000已成功探测
[15.175954] remoteproc5:4b238000.pru1可用
[15.186316] PRU-rproc 4b238000.pru1:PRU rproc 节点/ocp/pruss@4b200000/pru1@4b238000探测成功
[15.186871] PRU-rproc 4b2b4000.pru0:已定义邮箱和振铃/启动系统事件
[15.186910] remoteproc6:4b2b4000.pru0可用
[15.187204] PRU-rproc 4b2b4000.pru0:PRU rproc 节点/ocp/pruss@4b280000/pru0@4b2b4000已成功探测
[15.188431] PRU-rproc 4b2b8000.pru1:已定义邮箱和振铃/启动系统事件
[15.188467] remoteproc7:4b2b8000.pru1现已推出
[15.189137] PRU-rproc 4b2b8000.pru1:PRU rproc 节点/ocp/pruss@4b280000/pru1@4b2b8000探测成功
[15.595656] prueth pruss2_eth:端口1:使用随机 MAC 地址:B6:55:46:54:F6:88
[15.729304] prueth pruss2_eth:端口2:使用随机 MAC 地址:fe:8f:ad:58:33:55
[15.840517] prueth pruss2_eth:TI PRU 以太网驱动程序已初始化
[18.178309] remoteproc4:加电4b234000.pru0
[18.212237] remoteproc4:引导 FW 映像 am57xx-pru1_0-FW、大小为75804
[18.244640] ti-pruss 4b20000.pruss:配置的 system_events = 0x000000030000 intr 通道= 0x00000005 host_intr = 0x005
[18.265558] remoteproc4:远程处理器4b234000.pru0现已启动
[18.277618] virtio_rpmsg_bus virtio4:创建通道 rpmsg-PRU addr 0x1E
[18.295243] remoteproc5:加电4b238000.pru1
[18.301241] remoteproc5:引导 FW 映像 am57xx-pru1_1-FW、大小为75804
[18.308004] ti-prusss 4b200000.pruss:已配置 system_events = 0x0000000c0000 intr 通道= 0x0000000a host_intr = 0x00a
[18.320176] remoteproc5:远程处理器4b238000.pru1现已启动
[18.332085] virtio_rpmsg_bus virtio5:创建通道 rpmsg-PRU addr 0x1f
[18.417847] rpmsg_PRU rpmsg8:新的 rpmsg_PRU 设备:/dev/rpmsg_pru30
[18.439861] rpmsg_PRU rpmsg9:新的 rpmsg_PRU 器件:/dev/rpmsg_pru31
root@am57xx-EVM:~# ifup eth2
[91.588486] remoteproc6:为4b2b4000.pru0加电
[91.595605] remoteproc6:引导 FW 映像 ti-pruss/am57xx-pru0-prueth-fw.elf、大小4350
[91.605822] ti-prusss 4b280000.pruss:已配置 system_events = 0x0000060000500000 intr 通道= 0x00000095 host_intr = 0x005
[91.619178] remoteproc6:远程处理器4b2b4000.pru0现已启动
[91.625400]净额 eth2:已开始
[91.631982] IPv6:ADDRCONF (NETDEV_UP):ETH2:链路未就绪
udhcpc (v1.24.1)已启动
正在发送发现...
[93.208730] eth2:链路速率高达- 100Mbps/全速-流控 Rx/TX
[93.214782] IPv6:ADDRCONF (NETDEV_CHANGE):ETH2:链路就绪
正在发送发现...
正在发送192.168.1.104...的选择
已获得192.168.1.104的租赁,租赁时间为7200
/etc/udhcpc.d/50default:添加 DNS 192.168.1.1
root@am57xx-EVM:~# ls /dev/dev | grep PRU
rpmsg_pru30
rpmsg_pru31
root@am57xx-EVM:~#

谢谢

此致