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.

PROCESSOR-SDK-J721E: Enable Quad-Port Eth Expansion Board

Part Number: PROCESSOR-SDK-J721E

I am following this document to enable the QSMII Ports but cannot ping between the EVM and PC  5824.Enable8PortEth_J7EVM_SDK7p1_public.pdf

I am using SDK and RTOS versions:

ti-processor-sdk-linux-j7-evm-08_04_00_11
ti-processor-sdk-rtos-j721e-evm-08_05_00_11

These are the steps I took:

  1. Flash SD card with:
    tisdk-default-image-j7-evm.tar.xz
    boot-j7-evm.tar.gz
  2. RTOS_SDK/ethfw/apps/app_remoteswitchcfg_server/mcu_2_0/main.c
    +#define ENABLE_QSGMII_PORTS
  3. $ source pdksetupenv.sh
    $ make enet_clean
    $ make enet
    make ethfw_all_clean BUILD_SOC_LIST=J721E
    make ethfw_all BUILD_SOC_LIST=J721E
  4. Copied the binary from RTOS-SDK/ethfw/out/J71E/R5Ft/FREERTOS/release/app_remoteswitchcfg_server_strip.xer5f to /lib/firmware/ethfw/
  5. Stopped Uboot and ran
    setenv dorprocboot 1
    setenv init_main_cpsw0_qsgmii_phy "gpio set gpio@22_17; gpio clear gpio@22_16"
    setenv bootcmd "run findfdt; run envboot; run init_${boot}; run init_main_cpsw0_qsgmii_phy; run boot_rprocs; run get_kern_${boot}; run get_fdt_${boot}; run get_overlay_${boot}; run run_kern"
    saveenv
    boot

I have an ethernet cable connected from the PC to Port 1 and LEDs on the quad ports are working
I assigned eth1 an IP address 192.168.1.100 and the PC is 192.168.1.1 however I am not able to communicate between the two devices

Please let me know if I am doing the right steps and have the correct versions of everything thanks.

  • I saw somewhere that I do not need to follow the 5824.Enable8PortEth_J7EVM_SDK7p1_public.pdf steps with the 08_04_00_11 SDK. So I tried again with the default image and I was able to successfully ping between PC and EVM. The only thing I did was setenv dorprocboot 1.

    I am wondering why this does not work with the RTOS ethfw binary that I built? That should work the same way?

    Emily

  • Update with the default image - only eth1 could ping the pc 

    See the image for the ports that corresponded to eth1

    I tried configuring eth2 but that did not work. I could not ping using the other 2 ports

  • Hi Emily,

    eth1 is a switch port while eth2 is a mac-only port. So eth1 will work with port 2,3,5,6,7 and 8 while eth2 will work with port 1 where ports are as per following images :

    Port 4 works only with mcu2_1 core. This is the default configuration. For more details, you can refer to ethfw user guide here

    Regards,
    Tanmay

    .

  • Ok thank you Tanmay. Is there a patch or change in the device tree to enable the QSGMII ports in U-boot?

  • I tried building the device tree k3-j721e-quad-port-eth-exp.dtbo and copied it to rootfs on the SD card. Now when I boot the EVM I can see 4 ethernet ports and the status when a cable is plugged in. However now I can not ping between the EVM and PC.

  • Hi Emily,

    Is there a patch or change in the device tree to enable the QSGMII ports in U-boot?

    No. Just setting the variable dorprocboot to 1 in u-boot will work.

    I tried building the device tree k3-j721e-quad-port-eth-exp.dtbo and copied it to rootfs on the SD card. Now when I boot the EVM I can see 4 ethernet ports and the status when a cable is plugged in. However now I can not ping between the EVM and PC.

    The "k3-j721e-quad-port-eth-exp.dtbo" is used for enabling native linux driver where as you are using ethfw based solution. Both are mutually exclusive and should not be run together. If you want to go ahead with ethfw, remove the "k3-j721e-quad-port-eth-exp.dtbo" from your rootfs and boot without it.

    Regards,
    Tanmay

  • Ok thank you Tanmay. I will continue with ethfw. Do you know why only the default image works correctly and binary I built in the RTOS SDK does not? Maybe I have the wrong version?

  • Hi Emily,

    You don't need any additional changes to ethfw for it to work while building. It should work with just building the binary with "make ethfw_all BUILD_SOC_LIST=J721E".

    Just make sure while copying the binary to /lib/firmware/ethfw, don't change the name of the binary. It must be "app_remoteswitchcfg_server_strip.xer5f"

    Maybe I have the wrong version?

    Very likely, please use the same release version for Linux and RTOS as only those are tested.

    Regards,
    Tanmay

  • I downloaded the same release versions for Linux and RTOS (08_04) and I built the binary "app_remoteswitchcfg_server_strip.xer5f" and now it works.

    Thanks,
    Emily