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-DRA8X-TDA4X: Boot device as EMMC

Part Number: PROCESSOR-SDK-DRA8X-TDA4X

Hi Ti,

Can you mention steps required for booting completely from secondary media.

With steps given in "https://e2e.ti.com/support/processors/f/791/p/886980/3282433#3282433

  • Hi Amit,

    Once you boot from eMMC. From u-boot prompt:

    gpt write mmc 0 ${partitions}

    The above creates a partition. Now boot to kernel using SD card.

    In kernel you should be able to see /dev/mmcblk0p1

    In kernel Make a ext4 fs using:

    mkfs.ext4 /dev/mmcblk0p1

    mkdir rootfs

    mount /dev/mmcblk0p1 rootfs

    Now untar tisdk-rootfs-image-j7-evm.tar.xz which is present in the filesystem folder of SDK.(Make sure you copy tisdk-rootfs-image-j7-evm.tar.xz to SD card filesystem so that you can tar that to rootfs)

    cp tisdk-rootfs-image-j7-evm.tar.xz rootfs
    cd rootfs
    tar -xvf tisdk-rootfs-image-j7-evm.tar.xz

    This should create the needed fs in eMMC.

    Now get back to eMMC dip switch settings:
    Your bootargs should reflect root=/dev/mmcblk0p1.

    That should get rootfs from eMMC.

    - Keerthy



  • Amit,

    If this unblocks you could you please resolve this one?

    - Keerthy

  • Hi Keerthy

    I followed the steps given above but i am seeing below error:

    no mmc device at slot 1
    SD/MMC found on device 1
    libfdt fdt_check_header(): FDT_ERR_BADMAGIC
    No FDT memory address configured. Please configure
    the FDT address via "fdt addr <address>" command.
    Aborting!
    Bad Linux ARM64 Image magic!

    Does this mean the uboot is not detecting emmc partition itself ?

    Best regards

    Amit

  • Amit,

    Please give the full log. Which command failed and at which step.

    Once you boot to u-boot prompt using eMMC.

    Step 1: gpt write mmc 0 ${partitions}

    Then switch back to SD boot.

    As requested earlier please mention which step failed and please provide full logs for better debug.

    Thanks,
    Keerthy

  • Hi Keerthy,

    1. There is no errors in any of the above command.

    2. i dont understand how "gpt write mmc 0 ${partitions}" should boot from emmc. Can you explain a bit.

    3. Also can you tell what is the bootcmd you use for booting from emmc.

    4. If i boot from SD card i am able to see the emmc rootfs partition with the correct data.

    Best regards

    Amit

  • Hi Amit,

    Please find all my answers inline.

    1) That is good to hear.
    2) No no that was just to create partition.
    4) Nice!

    3) Once you boot to u-boot prompt using eMMC boot mode do the following:

    a) mmc dev 0

    b) ext4ls mmc 0:1 /boot

    With the above step you should see all the files in the boot folder of your eMMC filesystem that you saw in step 4.
    I see something like below:

    ext4ls mmc 0:1 /boot
    <DIR> 4096 .
    <DIR> 4096 ..
    17539168 vmlinux-4.19.94-g5a23bc00e0
    4250 k3-j721e-vision-apps.dtbo
    3779 k3-j721e-common-proc-board-infotainment.dtbo
    16933888 arago-tiny-image-j7-evm.cpio
    813 k3-j721e-pcie-backplane.dtbo
    <SYM> 30 vmlinux.gz
    99826 k3-j721e-proc-board-tps65917.dtb
    13600776 Image
    101860 k3-j721e-common-proc-board.dtb
    3180 k3-j721e-common-proc-board-jailhouse.dtbo
    13338632 Image-4.19.94-g5a23bc00e0
    7146581 vmlinux.gz-4.19.94-g5a23bc00e0
    1867 k3-j721e-common-proc-board-infotainment-display-sharing.dtbo

    c) Boot args:

    setenv bootargs console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 vm.overcommit_ratio=5 vm.overcommit_memory=2 root=/dev/mmcblk0p1 ip=dhcp
    setenv bootcmd "setenv autoload no;ext4load mmc 0:1 0x82000000 /boot/Image;ext4load mmc 0:1 0x81200000 /boot/k3-j721e-common-proc-board.dtb; booti 0x82000000 - 0x81200000"
    saveenv
    boot

    With that you should boot Linux Prompt. I tried it myself on my J7 board.

    Let me know if you are able to proceed.

    Best Regards,
    Keerthy

  • Hi Keerthy

    As I do not have SD card.

    Now,i can boot uboot form emmc successful.i boot kernel and dtb from tftp/nfs service(nfs mount systemfile).

    Enter into system,i do mkfs.ext4 /dev/mmcblk0p1 or mount /dev/mmcblk0p1 rootfs,the system will down.

    why?

  • Hi,

    If you scroll this thread up you can see my responses.

    Once you are on u-boot prompt.

    gpt write mmc 0 ${partitions}

    The above creates a partition. Now boot to kernel using NFS filesystem.

    In kernel you should be able to see /dev/mmcblk0p1

    In kernel Make a ext4 fs using:

    mkfs.ext4 /dev/mmcblk0p1

    mkdir rootfs

    mount /dev/mmcblk0p1 rootfs

    Now untar tisdk-rootfs-image-j7-evm.tar.xz which is present in the filesystem folder of SDK.(Make sure you copy tisdk-rootfs-image-j7-evm.tar.xz to SD card filesystem so that you can tar that to rootfs)

    cp tisdk-rootfs-image-j7-evm.tar.xz rootfs
    cd rootfs
    tar -xvf tisdk-rootfs-image-j7-evm.tar.xz

    This should create the needed fs in eMMC.

    - Keerthy

  • I understand,but perhaps because mount filesystem from nfs service.As long as I do something in mmcblk0p1,the board will down