Part Number:AM4378
Tool/software: Linux
I have a custom board based on the AM4378 EVM, and I am trying to get it to boot, but it hangs when it tries to load the kernel. U-Boot runs all the way through and has the following output:
U-Boot SPL 2018.01-00558-g8617e02-dirty (Apr 01 2019 - 17:00:43)
Trying to boot from MMC1
SPL: Please implement spl_start_uboot() for your board
SPL: Direct Linux boot not active!
U-Boot 2018.01-00558-g8617e02-dirty (Apr 01 2019 - 17:00:43 -0500)
CPU : AM437X-GP rev 1.2
Model: TI AM437x UTI BOARD
DRAM: 512 MiB
Can't find PMIC:TPS65218_PMIC
NAND: 0 MiB
MMC: OMAP SD/MMC: 0
Net: <ethaddr> not set. Validating first E-fuse MAC
Could not get PHY for cpsw: addr 0
cpsw, usb_ether
Hit any key to stop autobo 0
=>setenv ip_method none
=>setenv bootfile zImage
=>setenv devtype mmc
=>setenv getuenv 'setenv devnum ${mmcdev}; if mmc rescan; then if run loadbootenv; then run importbootenv; fi; fi;'
=>setenv bootcmd 'mmc rescan; run findfdt; run getuenv; setenv devtype mmc; run loadimage; run loadfdt; run args_mmc; bootz ${loadaddr} - ${fdtaddr}'
=>saveenv
Saving Environment to FAT...
writing uboot.env
done
=>boot
709 bytes read in 3 ms (230.5 KiB/s)
Importing environment from mmc0 ...
3639496 bytes read in 203 ms (17.1 MiB/s)
41750 bytes read in 28 ms (1.4 MiB/s)
## Flattened Device Tree blob at 88000000
Booting using the fdt blob at 0x88000000
Loading Device Tree to 8fff2000, end 8ffff315 ... OK
Starting kernel ...
I can see when stepping through the code in CCS that execution gets to the function "rest_init", and stops there - it seems like it's going into some idle loop at that point. I am wondering if it has something to do with the fact that I am not using a PMIC to boot my board currently. I am using TPS74801 LDOs to boot the board, but it seems like U-Boot is expecting a PMIC to be used. Do I have to change some things in U-Boot to let it know that I am not using a PMIC chip, and if so, how do I do that?