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.

AM3359: 只使用一个PRU网口,设备树需要怎么修改

Part Number: AM3359


只使用一个PRU网口(PRU1),设备树需要怎么修改.

  • 请问使用的SDK版本是多少?

    Documentation/devicetree/bindings/net/ti-prueth.txt 中有 Example (am572x-idk board, single-emac) 的示例。

    更多详细内容请查看:

    software-dl.ti.com/.../PRU-ICSS_Ethernet.html

  • ti-processor-sdk-linux-rt-am335x-evm-04.03.00.05,单个PRU网口是不是需要修改内核驱动

  • 单个PRU网口是不是需要修改内核驱动

    内核驱动应该不需要修改,建议先修改设备树看一下有没有问题,如果有问题我再帮您升级确认。

  • aliases {

    ethernet2 = &pruss_emac1;
    };

    pruss_eth {
    compatible = "ti,am3359-prueth";
    pruss = <&pruss>;
    sram = <&ocmcram>;
    interrupt-parent = <&pruss_intc>;
    status = "okay"; /*ZJJ modify,before :disabled*/

    pinctrl-0 = <&pruss_eth_default>;
    pinctrl-names = "default";

    emac1: ethernet-mii1 {
    phy-handle = <&pruss_eth1_phy>;
    phy-mode = "mii";
    interrupts = <21>, <23>;
    interrupt-names = "rx", "tx";
    /* Filled in by bootloader */
    local-mac-address = [00 00 00 00 00 00];
    };
    };

    设备树修改过了,应该没问题

  • 目前是无法通信吗?什么现象?

  • 可以识别到phy芯片,但是ifconfig查看不到

  • 请将相关的log信息贴上来。

  • [ 1.146266] davinci_mdio 4a332400.mdio: davinci mdio revision 1.6
    [ 1.152404] libphy: 4a332400.mdio: probed
    [ 1.157816] davinci_mdio 4a332400.mdio: phy[1]: device 4a332400.mdio:01, driver unknown
    [ 1.167786] remoteproc remoteproc1: 4a334000.pru0 is available
    [ 1.173780] pru-rproc 4a334000.pru0: PRU rproc node /ocp/pruss_soc_bus@4a326000/pruss@4a300000/pru@4a334000 probed successfully
    [ 1.185829] remoteproc remoteproc2: 4a338000.pru1 is available
    [ 1.191780] pru-rproc 4a338000.pru1: PRU rproc node /ocp/pruss_soc_bus@4a326000/pruss@4a300000/pru@4a338000 probed successfully

    ......

    [ 8.873772] prueth pruss_eth: pruss MC Mask 0:0:0:0:0:0
    [ 8.902558] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [ 8.989677] prueth pruss_eth: could not get ptp tx irq
    [ 9.007133] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [ 9.022957] omap-aes 53500000.aes: will run requests pump with realtime priority
    [ 9.280123] prueth pruss_eth: pruss MC Mask 0:0:0:0:0:0
    [ 9.359727] prueth pruss_eth: could not get ptp tx irq
    Starting Network Service...
    [ 9.889153] prueth pruss_eth: pruss MC Mask 0:0:0:0:0:0
    [ 9.892281] remoteproc remoteproc0: powering up wkup_m3
    [ OK ] Started Kernel Logging Service.
    [ 10.025726] prueth pruss_eth: could not get ptp tx irq
    [ 10.093642] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 224300
    [ 10.093917] remoteproc remoteproc0: remote processor wkup_m3 is now up
    [ 10.093971] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192

    ......

    AM335x-Tronlong login: root (automatic login)
    root@AM335x-Tronlong:~# ifconfig -a
    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    inet6 addr: ::1%763852/128 Scope:Host
    UP LOOPBACK RUNNING MTU:65536 Metric:1
    RX packets:320 errors:0 dropped:0 overruns:0 frame:0
    TX packets:320 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1
    RX bytes:24320 (23.7 KiB) TX bytes:24320 (23.7 KiB)

    sit0 Link encap:IPv6-in-IPv4
    NOARP MTU:1480 Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1
    RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

    root@AM335x-Tronlong:~#

  • 好的,感谢提供信息,你是指通过ifconfig -a查不到对应的网口是吗?通过ethtool eth0/1指令能查到信息吗?

  • 是的,我看好像是pru的驱动没有执行,prueth.c这里没有执行

  • ethtool eth0/1指令也查看不到

  • 我将您的问题升级到了英文论坛,请关注:

    e2e.ti.com/.../am3359-pru-ethernet-configuration

  • 英文论坛已有回复,请参考回复,另外建议您可以升级到最新SDK版本再试一下。