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.

AM4376: Customer using AM4376, loading zImage then stuck

Part Number: AM4376

Hi Champs:

Customer using AM437 stuck while loading the zImage.

I added my console log, printenv, mmc dump info in the attached.

please guide us how to solve it.

THanks.

2020_9_3_Rio_Logs_on_SP_EVM_Using_CCS_Gel_DDR_Paras_To_Boot_OKay_Until_Kernel.7z

BR Rio

  • Hi Rio,

    From your attached log file, it is inconclusive to indicate zImage loading issue.

    Do we have any log when running “boot” from u-boot prompt?

    Also can we capture output from below u-boot cmds:

    =>mmc part
    =>fstype mmc 0:2
    =>ext4ls mmc 0:2 boot
    

    Best,

    -Hong

  • Rio,

    Can you turn off all the debug messages and try to boot the board?  That would help us to better understand the issue.  Once we understand the issue, the detailed debug logs will be useful, but right now we are not clear on the problem to be solved.

    Thanks,
    Brad

  • Hi Brad/Hong:

    I have reduced some logs.

    The attached has include : printenv / mmc info.

    You can see I enter the command: run mmc boot, then it stucks.

    BR Rio

    2020_9_10_Rio_SP_EVM_Full_Log_DDR_MMC.7zo

  • My issue seems similar with this E2E.

    https://e2e.ti.com/support/processors/f/791/t/626126?Linux-AM5728-Device-trees-to-include-on-custom-board-

    However, I don't know how to debug further...

    I'm looking at the ext4_common.c now...:(,

  • According this post ==> https://www.ti2k.com/71533.html

    We can observe how the am335 deal with the dtb file. Plz see the below log.

    I confirmed my SD card has the dtb file required for AM437.

    please guide us how to solve it, thanks.

    BR Rio

    iterate >bin<
    iterate >boot<
    Iterate dir am335x-evmsk.dtb
    ext4fs read 5 group descriptor (blkno 1 blkoff 160)
    iterate >.<
    iterate >..<
    iterate >zImage<
    iterate >am335x-evm.dtb<
    iterate >am335x-bone.dtb<
    iterate >zImage-3.14.43-g875c69b<
    iterate >devicetree-zImage-am335x-evm.dtb<
    iterate >am335x-evmsk.dtb<
    ext4fs read 5 group descriptor (blkno 1 blkoff 160)
    Got symlink >devicetree-zImage-am335x-evmsk.dtb<
    Iterate dir devicetree-zImage-am335x-evmsk.dtb
    ext4fs read 5 group descriptor (blkno 1 blkoff 160)
    iterate >.<
    iterate >..<
    iterate >zImage<
    iterate >am335x-evm.dtb<
    iterate >am335x-bone.dtb<
    iterate >zImage-3.14.43-g875c69b<
    iterate >devicetree-zImage-am335x-evm.dtb<
    iterate >am335x-evmsk.dtb<
    iterate >devicetree-zImage-am335x-boneblack.dtb<
    iterate >devicetree-zImage-am335x-bone.dtb<
    iterate >devicetree-zImage-am335x-evmsk.dtb<
    ext4fs read 5 group descriptor (blkno 1 blkoff 160)
    36445 bytes read in 120 ms (295.9 KiB/s)
    Initial value for argc=3
    Final value for argc=3
    entry >>> bootz_start  argv[1]=->>>
       Image Name:     Created:      1970-01-01   0:00:00 UTC
       Image Type:   Invalid ARCH Invalid OS Invalid Image (uncompressed)
       Data Size:    0 Bytes = 0 Bytes
       Load Address: 00000000
       Entry Point:  00000000
    entry >>> bootm_start >>>
    ## Current stack ends at 0x8e715890 *  kernel: cmdline image address = 0x82000000
    Kernel image @ 0x82000000 [ 0x000000 – 0x3f71e0 ]
    entry >>> bootm_find_ramdisk >>>entry >>> boot_get_ramdisk >>>## Skipping init Ramdisk
    ## No init Ramdisk
       ramdisk start = 0x00000000, ramdisk end = 0x00000000
    *  fdt: cmdline image address = 0x88000000
    ## Checking for 'FDT'/'FDT Image' at 88000000
    Wrong FIT format: no description
    *  fdt: raw FDT blob
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       of_flat_tree at 0x88000000 size 0x00008e5d
    Initial value for argc=3
    Final value for argc=3

  • Hi Brad/Hong:

    I doubt I'm lacking some files to cause this issue.

    May you take a look at the attached picture?

    Q1: is my mapping with Yellow line correct? (I compared the prebuild image and my generated uboot files.)

    Q2. Where is this file and how do I need to generated it? ==>      u-boot-spl.bin-am437x-evm

    BR Rio

  • Hi Rio, 

    Let’s get back to my last post. can we capture output from running below cmds at u-boot promt?

    =>mmc part
    =>fstype mmc 0:2
    =>ext4ls mmc 0:2 boot
    =>boot
    

    Have you built kernel and dtb?

    If yes, have you copy/install them to the <rootfs/boot/> folder?

    The instruction on how to copy/install kernel/DTB is here.

    https://software-dl.ti.com/processor-sdk-linux/esd/docs/06_03_00_106/AM437X/linux/Foundational_Components_Kernel_Users_Guide.html#users-guide 

    Best,

    -Hong

  • Rio Chan said:
    Q1: is my mapping with Yellow line correct? (I compared the prebuild image and my generated uboot files.)

    Yes.  The MLO-am437x-evm in the prebuild-images directory corresponds to "MLO" that you build.  The u-boot-am437x-evm.img corresponds to u-boot.img.

    Rio Chan said:
    Q2. Where is this file and how do I need to generated it? ==>      u-boot-spl.bin-am437x-evm

    That corresponds to u-boot-spl.bin.  You likely can find it in the spl directory.  That file is not directly needed. Basically the MLO file is built by taking u-boot-spl.bin and adding the GP Header to it (size, address).

    I still don't know what issue you're having and trying to solve...

  • Hi Brad:

    My issue is:

     when the uboot tries to load the zImage onto DDR, and once it loaded completed, the console will stop there without any logs.

     I also have tested it to "run mmcboot" in the bootarg, however, the result is the same.

     At this moment, how to debug that?

    BR Rio

  • It would be helpful to see the UART output (minus all the debug messages) to demonstrate.  Your description doesn't make it clear whether u-boot has attempted to jump to the zImage (most likely the case) or if it failed some time during the loading.

    Are there any changes with respect to the console UART in this customer's board compared to the TI board?  Are they using a different UART?  Are they supplying a 32k clock?