Part Number:AM5728
Tool/software: Linux
on our custom board, we want to use prueth ports as general 100Mbps ethernet interfaces. We have modified the device-tree,pinmux and the pru_rproc.c driver . Now it can generate the eth2 and eth3 and the firmware (am57xx-pru0-prueth-fw.elf,am57xx-pru1-prueth-fw.elf) can also be loaded successfully. However we can not ping another ip address using eth2 or eth3, but the pc host can ping eth2 or eth3 ip address.
the boot messages related to PRU is:
root@am57xx-evm:~# dmesg | grep pru
[ 14.325470] ti-pruss 4b200000.pruss: creating PRU cores and other child platform devices
[ 14.356055] irq: no irq domain found for /ocp/pruss@4b200000/intc@4b220000 !
[ 14.383808] irq: no irq domain found for /ocp/pruss@4b200000/intc@4b220000 !
[ 14.421548] ti-pruss 4b280000.pruss: creating PRU cores and other child platform devices
[ 14.443252] irq: no irq domain found for /ocp/pruss@4b280000/intc@4b2a0000 !
[ 14.470573] irq: no irq domain found for /ocp/pruss@4b280000/intc@4b2a0000 !
[ 14.480283] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/ocp/pruss@4b280000/mdio@4b2b2400[0]' - status (0)
[ 14.480329] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/ocp/pruss@4b280000/mdio@4b2b2400[1]' - status (0)
[ 14.993830] remoteproc4: 4b234000.pru0 is available
[ 15.130293] pru-rproc 4b234000.pru0: PRU rproc node /ocp/pruss@4b200000/pru0@4b234000 probed successfully
[ 15.175954] remoteproc5: 4b238000.pru1 is available
[ 15.186316] pru-rproc 4b238000.pru1: PRU rproc node /ocp/pruss@4b200000/pru1@4b238000 probed successfully
[ 15.186871] pru-rproc 4b2b4000.pru0: both mailbox and vring/kick system events defined
[ 15.186910] remoteproc6: 4b2b4000.pru0 is available
[ 15.187204] pru-rproc 4b2b4000.pru0: PRU rproc node /ocp/pruss@4b280000/pru0@4b2b4000 probed successfully
[ 15.188431] pru-rproc 4b2b8000.pru1: both mailbox and vring/kick system events defined
[ 15.188467] remoteproc7: 4b2b8000.pru1 is available
[ 15.189137] pru-rproc 4b2b8000.pru1: PRU rproc node /ocp/pruss@4b280000/pru1@4b2b8000 probed successfully
[ 15.595656] prueth pruss2_eth: port 1: using random MAC addr: b6:55:46:54:f6:88
[ 15.729304] prueth pruss2_eth: port 2: using random MAC addr: fe:8f:ad:58:33:55
[ 15.840517] prueth pruss2_eth: TI PRU ethernet driver initialized
[ 18.178309] remoteproc4: powering up 4b234000.pru0
[ 18.212237] remoteproc4: Booting fw image am57xx-pru1_0-fw, size 75804
[ 18.244640] ti-pruss 4b200000.pruss: configured system_events = 0x0000000000030000 intr_channels = 0x00000005 host_intr = 0x005
[ 18.265558] remoteproc4: remote processor 4b234000.pru0 is now up
[ 18.277618] virtio_rpmsg_bus virtio4: creating channel rpmsg-pru addr 0x1e
[ 18.295243] remoteproc5: powering up 4b238000.pru1
[ 18.301241] remoteproc5: Booting fw image am57xx-pru1_1-fw, size 75804
[ 18.308004] ti-pruss 4b200000.pruss: configured system_events = 0x00000000000c0000 intr_channels = 0x0000000a host_intr = 0x00a
[ 18.320176] remoteproc5: remote processor 4b238000.pru1 is now up
[ 18.332085] virtio_rpmsg_bus virtio5: creating channel rpmsg-pru addr 0x1f
[ 18.417847] rpmsg_pru rpmsg8: new rpmsg_pru device: /dev/rpmsg_pru30
[ 18.439861] rpmsg_pru rpmsg9: new rpmsg_pru device: /dev/rpmsg_pru31
root@am57xx-evm:~# ifup eth2
[ 91.588486] remoteproc6: powering up 4b2b4000.pru0
[ 91.595605] remoteproc6: Booting fw image ti-pruss/am57xx-pru0-prueth-fw.elf, size 4350
[ 91.605822] ti-pruss 4b280000.pruss: configured system_events = 0x0000060000500000 intr_channels = 0x00000095 host_intr = 0x005
[ 91.619178] remoteproc6: remote processor 4b2b4000.pru0 is now up
[ 91.625400] net eth2: started
[ 91.631982] IPv6: ADDRCONF(NETDEV_UP): eth2: link is not ready
udhcpc (v1.24.1) started
Sending discover...
[ 93.208730] eth2: Link is Up - 100Mbps/Full - flow control rx/tx
[ 93.214782] IPv6: ADDRCONF(NETDEV_CHANGE): eth2: link becomes ready
Sending discover...
Sending select for 192.168.1.104...
Lease of 192.168.1.104 obtained, lease time 7200
/etc/udhcpc.d/50default: Adding DNS 192.168.1.1
root@am57xx-evm:~# ls /dev | grep pru
rpmsg_pru30
rpmsg_pru31
root@am57xx-evm:~#
Thanks
regards