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.

AM5728: U-boot-spl early crash in enable_caches()

Part Number: AM5728


I am porting u-boot to a new am572x card. U-boot is hanging almost immediately in board_init_r on the call to enable_caches(). This is before reaching any code I have modified.

 

The crash always lands the PC on 0x0000000c.

I have compiled like this:

MYPATH=~/ti-processor-sdk-linux-am57xx-evm-06.03.00.106/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$(PATH)

PATH=$(MYPATH) make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- my_defconfig
PATH=$(MYPATH) make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- u-boot.bin
PATH=$(MYPATH) make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- spl/u-boot-spl.bin

I have created my own defconfig, “my_defconfig” based off am57xx_evm.defconfig with changes to CONFIG_DEFAULT_DEVICE_TREE and CONFIG_OF_LIST. The crash occurs regardless of which of the two defconfigs I use.

I have modified board.c and mux_data.h for the pinmux and EMIF settings, but the code crashes before reaching these changes.

I have used the Texas Instruments video series as a guide:

https://training.ti.com/linux-board-porting-series-module-7-debugging-u-boot-jtag-ccs?cu=399066

I am using loading spl/u-boot-spl.bin to address 0x40300000, and configuring the PC to start at 0x40300000.  This looks correct from spl/u-boot-spl.map:

I appreciate any guidance on why the processor is hanging.  Thank you.

  • Hi Gregory,

    1) Can you please attach the my_defconfig here.
    2) Since you are changing CONFIG_DEFAULT_DEVICE_TREE & CONFIG_OF_LIST
        i believe you have a different dts file as well. Please attach the dts file as well & the dtb as well.
    3) On my am572x-idk i commented out enable_caches and tried to boot. I could boot to u-boot prompt. Just as an experiment you could try that.
        Of course it will be slower but if everything else is okay then it will unblock you.
    4) If you believe there are not many changes on your custom board. Try the MLO & u-boot.img which is in board-support/prebuilt-images folder
    of your SDK.

    Best Regards,
    Keerthy

  • Thank you for your reply.  It is good advice.

    The problem is now solved.  The problem seems to be from stripping down the dts file far too much.

    Thank you, Greg