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] TDA4VM: How to move to Native Linux Driver on SDK 8.4 for J7 and DRA8 Devices

Part Number: TDA4VM
Other Parts Discussed in Thread: DRA829, , DRA821, TDA4VH

Hi

I want to use the new Native Linux Driver introduces in PSDK Linux 8.4. How do I start?

  • Hi,

    The Native Linux Driver is disabled in out-of-box SDK. To enable the Native Linux Driver, you have to build and apply an device-tree overlay. 

    Steps to build the device tree overlay :

    1. Go to [PSDKL-INSTALL-DIR]/board-support/linux-5.10.120+gitAUTONIC[Commit-hashes]/
    2. Run the following commands :
      1. $ export PATH=[PSDKL-INSTALL-DIR]/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$PATH
      2. $ make ARCH=arm64 tisdk_j7-evm_defconfig
      3. $ make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- ${Name-of-dtbo}
        1. As name use -
          1. "ti/k3-j721e-quad-port-eth-exp.dtbo" for using the QPENET card with TDA4VM/DRA829
          2. "ti/k3-j721e-gesi-exp-board.dtbo" for using GESI Card with TDA4VM/DRA829
          3. "ti/k3-j7200-quad-port-eth-exp.dtbo" for using QPENET Card with DRA821
          4. "ti/k3-j784s4-quad-port-eth1-exp.dtbo" for using QPENET Card with TDA4VH
        2. Enter default values for all the additional config flags
    3. The device-tree overlays will be present in "[PSDKL-INSTALL-DIR]/board-support/linux-5.10.120+gitAUTONIC[Commit-hashes]/arch/arm64/boot/dts/ti/${Name-of-dtbo}"

    Here I am attaching prebuilt binaries for the device-tree overlays which can be used in out-of box configuration :

    Using the device-tree overlay :

    1. Copy the prebuilt ovelay binaries or the ones you built using the steps above to /boot/ folder of the rootfs for linux. For SD cards, this will be in the rootfs partition
    2. If not already present, create a file called uenv.txt  in the boot partition of the SD Card. Open the file and add the following line in the uenv.txt file :
      1. name_overlays=<Name-of-dtbo>
        1. Replace the <Name-of-dtbo> with : 
          1. "k3-j721e-quad-port-eth-exp.dtbo" for using the QPENET card with TDA4VM/DRA829
          2. "k3-j721e-gesi-exp-board.dtbo" for using GESI Card with TDA4VM/DRA829
          3. "k3-j7200-quad-port-eth-exp.dtbo" for using QPENET Card with DRA821
          4. "k3-j784s4-quad-port-eth1-exp.dtbofor using QPENET Card with TDA4VH
    3. Boot using the SD card. You should see the interfaces come-up with ifconfig.

    All the features documented in this page can be used with these interfaces. 

    For TSN features, you can see here.

    Note : If you are loading the remoteproc firmware from u-boot (like done in vision apps) ("dorprocboot" variable set to "1" in uboot env), you will need to stop the ethfw binary from being loaded on the boot media itself. For removing it from SD card, use the following commands after inserting the SD card into a PC:

    1. sudo rm /media/$USER/rootfs/lib/firmware/<firmware-name>
    2. sudo ln -s /lib/firmware/pdk-ipc/ipc_echo_test_mcu2_0_release_strip.xer5f /media/tanmay/rootfs/lib/firmware/<firmware-name>
    3. sync
    4. umount /media/$USER/*

    Select <firmware-name> as per following :

    1. "j7-main-r5f0_0-fw" for TDA4VM/DRA829
    2. "j7200-main-r5f0_0-fw" for DRA821
    3. "j784s4-main-r5f0_0-fwfor TDA4VH

    Thanks and Regards,
    Tanmay

  • Please refer to the attached device tree file for enabling 8 ports in J721E/TDAVM/DRA829 while working with TDA4VM EVM, use this device tree fie and follow the procedure mentioned above.

    k3-j721e-gesi-exp-board.dts

    Best Regards,
    Sudheer