I have a custom i.MX6ULL board (based on the EVK). The board will almost always hang at "Starting kernel ..." at the first boot after power-on, however if the board is reset after that then it works fine. Also, if going into u-boot and delaying there a while (e.g. loading kernel via TFTP) before proceeding with boot then it works fine. Additionally, holding the reset button for approximately 10s at power-on and then releasing it will result in the board booting fine.
I have done DDR setup using the Register Programming Aid spreadsheet, and also done calibration using the DDR Stress Tester Tool. I have run the DDR Stress Test for over 1,000 iterations with no problems. I have also run memtester with no problems.
Occasionally I will see other errors / crash dumps on first boot after power-on - in u-boot, or during Kernel boot - however usually it will just hang at "Starting kernel ...". I have occasionally seen "Error: unrecognized/unsupported processor variant (0x410fc075)." when earlyprintk is enabled.
The board is booting from microSD, and I have also set up a u-boot script which copies the Kernel image to two separate locations in RAM and then compares them, which results in zero differences, however the board still hangs at "Starting kernel ...".
I have added additional large decoupling capacitors on the power-supply however this made no difference.
Any ideas regarding what the problem might be, or how to debug this?