Hello,
We are verifying images of u-boot(from MLO) and zImage(from u-boot) while booting. And to achieve this we are reading signature files from MLO and u-boot.
Priorities as per boot pins are: eMMC(MMC1), MMC(MMC0)
So, when eMMC is flashed MLO always read signature file of u-boot from eMMC. But, if SD card is connected the u-boot should read signature file of zImage from SD card and if SD card is not connected, it should read from eMMC.
(The case when SD card is connected, it should read signature from SD card because zImage will also be loaded from the SD card.)
Following are my observations:
case 1(expected): eMMC is not flashed. using SD card.
If I store signature files (signature1.bin and signarute2.bin) in BOOT partition in SD card. I am able to read file signature1.bin from MLO and file signature2.bin from u-boot.
case 2(not expected): eMMC is flased. SD card is not connected.
If I store signature file (signature1.bin and signarute2.bin) in BOOT partition in eMMC. I am able to read file signature1.bin from MLO but can not read file signature2.bin from u-boot.
error is: not able to find file signature2.bin
case 3(expected): eMMC is flased. SD card is connected and it has file signature2.bin in its BOOT partition.
I am able to read file signature1.bin from MLO and file signature2.bin from u-boot.
case 4(expected): eMMC is flashed. SD card is connected and file signature2.bin is not stored in its BOOT partition.
I am able to read filesignature1.bin from MLO but can not read file signature2.bin from u-boot.
error is: not able to find file signature2.bin
This behavior makes me understand that u-boot is always(whether I use eMMC or SD card) going to find file signature2.bin in SD card. Is it correct?
How to say u-boot to find this signature file in eMMC if SD card is not connected?
Please let me know your suggestions.