Hi Everyone!
I am working on secure boot in imx8mm processor. I wanted to enable the HAB in my board using this configuration
CONFIG_IMX_HAB=y
and SPL hangs unexpectedly here! Just got two logs
U-Boot SPL 2022.10+gf3b505b57d+p2 (Jun 14 2024 - 13:47:05 +0000)
Training FAILED
I removed the flag and rebuilt the u-boot flash.bin again and started working again
Here is how I am Testing things!
No. 1 I just enabled the FLAG (CONFIG_IMX_HAB=y) and board stuck in above error
U-Boot SPL 2022.10+gf3b505b57d+p2 (Jun 14 2024 - 13:47:05 +0000)
Training FAILED
No.2 I removed the FLAG and rebuilt the flash.bin and it loaded again.
No. 3 I thought it might be the fuses issues, so I write to the OTP fuses and signed the flash.bin and again got stuck here
U-Boot SPL 2022.10+gf3b505b57d+p2 (Jun 14 2024 - 13:47:05 +0000)
Training FAILED
I am following this blog for signing
https://www.ezurio.com/resources/software-announcements/high-assurance-boot-hab-i-mx8m-edition?utm_m...
Please tell me where I am making mistake and why SPL is not loading?
Some additional information if its relevant
I have already enabled kernel Fit Signing and dm-verity in my project and its working
Sorry! I dont know how to raise the issue in Boundary for assistance. But I found the bug. I was using software exponentation for kernel fitimage signing in u-boot where I was using the below flags
CONFIG_SPL_RSA=y
CONFIG_RSA_SOFTWARE_EXP=y
Here, I removed the CONFIG_SPL_RSA flag and commented some code in u-boot to remove some compilation errors and it started working!
But the strange thing is that I can't find the purpose of this flag. I checked this flag in whole u-boot and I can't find a single c code which runs after if CONFIG_SPL_RSA but still solved my problem. Can anyone tell me the purpose of this flag!