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: QNX eMMC boot using SPL / Uboot

Guru* 94091 points
Part Number: TDA4VM

Can eMMC boot mode, be used to boot to QNX using Uboot/SPL for TDA4VM?

  • Related Uboot Documentation on eMMC boot is available at:

    3.1.1.5. SD, eMMC or USB Storage — Processor SDK Linux for J721e Documentation

    An related e2e FAQ on Uboot setup for eMMC boot for Linux is available at:

    (+) [FAQ] PROCESSOR-SDK-DRA8X-TDA4X: Boot uboot from EMMC - Processors forum - Processors - TI E2E support forums

    This SPL (uBoot)boot flow for EMMC boot mode is not verified as part of the Processor SDK QNX release.  The below steps show how this can be accomplished.

    In the steps below, the files to be programmed to the eMMC, are read from the SD card (mmc 1).  If no SD card is present on system under test,  the Uboot utilities support various options for accessing the required files.

    Step 1: Boot to u-boot prompt

    How this accomplished is outside the scope of this example.  This example used SD boot mode, on the TI J721E EVM.

     

    Step 2: At Uboot prompt, write images to eMMC

    From Uboot prompt copy images into boot partition.  After these commands are run the board should be bootable to Uboot prompt, using eMMC boot mode.  In below commands the files are read from SD card (mmc 1), files can be accessed using other Uboot utilities, if SD card is not present.

    => mmc dev 0 1

    => fatload mmc 1 ${loadaddr} tiboot3.bin

    => mmc write ${loadaddr} 0x0 0x400

    => fatload mmc 1 ${loadaddr} tispl.bin

    => mmc write ${loadaddr} 0x400 0x1000

    => fatload mmc 1 ${loadaddr} u-boot.img

    => mmc write ${loadaddr} 0x1400 0x2000

    => fatload mmc 1 ${loadaddr} sysfw.itb

    => mmc write ${loadaddr} 0x3600 0x800

    => mmc partconf 0 1 1 1

    => mmc bootbus 0 2 0 0

    Step 3: From Uboot prompt manually load and jump to QNX-IFS

    In this example the qnx-ifs is read from the SD card, to memory address 0x80080000.  The Uboot utilities support various options for accessing the required files.  Therrequirement is that the qnx-ifs image reside at 0x80080000, such that boot can continue.

     

    => fatload mmc 1 80080000 qnx-ifs

    => go 80080000

     

    Step 4: Formatting eMMC from QNX

    At the QNX prompt, the QNX utilities can now be used to format, and populate the SD card content as needed.  There is a e2e FAQ going over formatting and populating the eMMC from QNX.

    6.1. How To Use EMMC Based Filesystem — Processor SDK QNX (ti.com)

    As part of the steps, a FAT partition which contains the qnx-ifs is required, such that Uboot can see the qnx-ifs image on the eMMC filesystem and use it to complete the boot cycle.

    Step 5: Power off the board and change the dip switch settings to eMMC boot mode:

    SW 8:

    1    2    3    4    5    6    7    8
    On Off Off Off Off Off Off Off

    SW 9:

    1    2    3    4    5    6    7    8
    Off On Off Off Off Off Off Off

    Step 6: Power on the board and stop at Uboot to change boot command

    setenv loadaddr ‘0x80080000’

    setenv bootcmd ‘mmcinfo; fatload mmc 0 ${loadaddr} qnx-ifs; go ${loadaddr}’

    saveenv

    boot