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.

[FAQ] How do I bring/brought up Ethernet interfaces for Main Domain CPSWnG in Linux from SDK Version 9.0 and above?

Other Parts Discussed in Thread: DRA821, DRA829, TDA4VM, TDA4VH, TDA4VL

How do I bring/brought up Ethernet interfaces for Main Domain CPSWnG in Linux from SDK Version 9.0 and above?

  • From SDK 9.0 Onwards Ethernet drivers for CPSWnG will not be enabled by default in Linux.

    We need to add the device-tree overlays to the uEnv.txt file, as shown below to load the driver in every boot.

    name_overlays=ti/<overlay-file-name>  OR
    name_overlays=<overlay-file-name>

    The overlay addition with ti/<overlay> or <overlay> depends upon following from u-boot/include/environment/ti/mmc.env. if ti/ already present like below then use <overlay>,  if not, use ti/<overlay>.


    For SDK 9.0 and 10.0 it will be ti/<overlay-file-name>
    For SDK 9.1 and 9.2 it will be <overlay-file-name>

    For Virtual MAC driver:

    1. Add Virtual MAC driver device-tree overlay corresponding to SOC as shown below table in the uEnv.txt file.

    SoC

    Overlay file to use

    J7200/DRA821

    k3-j7200-evm-virt-mac-client.dtbo

    J721e/TDA4VM/DRA829

    k3-j721e-evm-virt-mac-client.dtbo

    J784S4/TDA4VH

    k3-j784s4-evm-virt-mac-client.dtbo

    1. Update the firmware soft link corresponding to SOC as shown below table to the Main R5F0_0 core (i.e. MCU2_0 core) with EthFw binary if not linked by default. If vision overlay is present and vision binary build with ETHFW then no need to make below change.
      Note:  Default vision binary build with ETHFW enabled.

    SoC

    Command to map firmware binay

    J7200/DRA821

    # ln -s /lib/firmware/ti-eth/j7200/app_remoteswitchcfg_server_strip.xer5f j7200-main-r5f0_0-fw

    J721e/TDA4VM/DRA829

    # ln -s /lib/firmware/ti-eth/j721e/app_remoteswitchcfg_server_strip.xer5f j721e-main-r5f0_0-fw

    J784S4/TDA4VH

    # ln -s /lib/firmware/ti-eth/j784s4/app_remoteswitchcfg_server_strip.xer5f j784s4-main-r5f0_0-fw

     For Native Linux Driver:

    1. Add MAC ports interface-specific device-tree overlays corresponding to SOC as shown in the below table in the uEnv.txt file.

    SoC

    MAC Ports Interface

    Overlay file to use

    J7200/DRA821

    QSGMII

    k3-j7200-evm-quad-port-eth-exp.dtbo

    J721e/TDA4VM/DRA829

    RGMII

    k3-j721e-evm-gesi-exp-board.dtbo

    J721e/TDA4VM/DRA829

    QSGMII

    k3-j721e-evm-quad-port-eth-exp.dtbo

    J721S2/TDA4VL

    RGMII

    k3-j721s2-evm-gesi-exp-board.dtbo

    J784S4/TDA4VH

    QSGMII

    k3-j784s4-evm-quad-port-eth1-exp.dtbo

    J784S4/TDA4VH

    USXGMII

    k3-j784s4-evm-usxgmii-exp1-exp2.dtbo

    2. Along with overlay addition, make sure that ETHFW is not loaded in MCU2_0.

    a) If vision Apps is used with vision overlay then rebuild vision application by disabling ETHFW. Please refer to vision-apps user guide (from SDK documentation)  for more details about build steps and build flags.

    b) If vision Apps is not using, we can soft link ipc echo test binary (ipc_echo_test_mcu2_0_release_strip.xer5f from /lib/firmware/ti-ipc/<soc>) to MCU2_0, refer to above ETHFW binary soft link commands

    Note: 

    For enabling 8 ports in case of CPSW9G, we have to manage the device tress files such that to enable all 8 Ports.

    Best Regards,
    Sudheer