Hello All,
I am working with a custom OMAP4460 platform on which I am observing an issue related to 'reset' command of U-Boot
At U-Boot prompt, when a 'reset' command is issued, the expected behavior is that the platform should reboot and load bootloaders from default boot device (MicroSD card in our case).
This works fine on most platforms. However, on some platforms (same hardware platform, different board, built in the same batch of units) it is observed that when the 'reset' command is issued, the system does not reboot, but hangs when attempting to load X-Loader after reboot. On probing the WARM_RESET of OMAP, it is observe that the reset pulse is fine.
Running through the U-Boot sources, I found that 'reset' command reboots the system by setting the RST_GLOBAL_COLD_software bit in register PRM_RSTCTRL. The code specific to this can be found in cpu/omap4/start.S
It is observed that if U-Boot code is changed to set bit RST_GLOBAL_COLD_software bit in register PRM_RSTCTRL, the 'reset' command in U-Boot reboots the systems which failed to load X-Loader after reboot.
I am puzzled by this because the 'reset' command at U-Boot should have worked without any changes required in cpu/omap4/start.S
Any pointers to understand where the issue could be would be very helpful.
Thank you for your time.
Warm regards,
Kanagesh