I’m currently trying to get the RAM loading working with MCUboot in Zephyr for i.MX RT1060 but I’m not able to make the bootloader boot the image. Here are the steps I did so far:
In the generated .config file I can see that the CONFIG_SRAM_BASE_ADDRESS=0x80000000 which seems to be correct. But MCUboot reports the error message "Unable to find bootable image" instead of starting the application.
I'm using the Zephyr release 4.1.0.
Do I need to make any other changes?
Thanks.
Ildikó
FYI @ildiko_pocsai and @Omar_Anguiano ,
This article has steps and Git patches to enable RAM Loading on the RT1060 EVK, see https://community.nxp.com/t5/Zephyr-Project-Knowledge-Base/MCUboot-RAM-Loading-with-Zephyr/ta-p/2139... .
Best regards
Hello Omar,
Thanks for your reply. Yes, I want to use the external SDRAM. Can you please explain me how to add the DCD to the image in Zephyr. I'm using Zephyr's sysbuild build system to build MCUboot and my application which uses the MCUboot imgtool to sign the image. But I cannot find any option for the imgtool to add the DCD.
Thanks.
Ildikó
You can use a tool such as Secure Provisioning Tool or MCUBootUtility to add the DCD to the image, from the binary generated, the dcd can be added. If you don’t have already a dcd then you can generate it in ConfigTools.
Best regards,
Omar
Hello, I hope you are well.
Address 0x80000000 is for external SDRAM, do you want to load the image to that SDRAM? IF that is the case, then you will need to add to your image the DCD so the SDRAM is initialized during boot, so when code is moved to the SDRAM, it is ready to execute.
Best regards,
Omar