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.


