Here is the problem we are seeing when booting the OMAP3530 from eMMC.
We are able to write the eMMC flash and have burnt a small image into the first sector according to the TRM specs. By writing 4 to the RPM_RSTCTRL register (after u-boot powers on the eMMC), the OMAP3530 reboots and executes the image in flash (a monitor prompt is printed on the serial port). Unfortunately, this is not the case at initial POR. The ROM code fails the MMC2 boot. This can be deduced from the tracing vector after the boot from the JTAG port:
0x4020FFB0 : 0x0000001B 0x00000020 0x00000002 0x0005107F
0x4020FFC0 : 0x00000020 0xD4BA6069 0xE59FF014 0xE59FF014
The value 0x0005107F 0X00000020 means the following:
Reset
ROM code C main
ROM code runs after the cold reset
Booting started
Memory boot
No more devices to check (I think this means failure)
Peripheral booting started
Device initialized
Peripheral booting failed (expected)
USB peripheral boot (expected)
When I run after u-boot has configured the MMC, I also get the following:
CH (configuration header) found
Image header correct
Image executed
Also the “No more devices to check” bit is not set.
Since we have no control over ROM code, other than the correct setting of the headers (which the hard reboot seems to verify), this seems like it is a hardware problem.
Can you please verify if there is an issue or how can i get this work.