Hi, I'm using NXP iMXRT1062 processor onEmbedded Artists OEM board rev. C1 and I'm using SDK v2.15.000.
I'm working with "eaimxrt1062_mcuboot_opensource" and "eaimxrt1062_ota_mcuboot_server_enet" examples to use the MCUBoot functionality.
I'm able to work in XIP mode as standard configuration from the SDK examples (the example are configured for XIP code execution from External flash via the FlexSPI bus).
I need to change the execution mode to full RAM execution avoiding the XIP.
I'm able to RUN the eaimxrt1062_mcuboot_opensource in ram booting from falsh at startup and executing the code in SDRAM. But I don't know how to modify the app side ("eaimxrt1062_ota_mcuboot_server_enet") and how to customize the MCUBoot side to perform the execution of OTA app from SDRAM too.
How I have to customize the linlker script for "eaimxrt1062_ota_mcuboot_server_enet" in order to obtain to be loaded in SDRAM by the MCUBoot? Please note that the OTA app should be stored in the external flash at 0x60040000 address.
My goal is obtain this:
- MCUBoot:
- this should be programmed in External flash at 0x60000000 and executed in SDRAM (it still work)
- the MCUBoot should jump at image stored at at 0x60040000; the image should be executed in SDRAM
- OTA App:
- this should be programmed in External flash at 0x60040000 and then should be executed in SDRAM
Please note The OTA App will JUMP to a third application that will be executed in XIP mode and will be stored in external flash memory at 0x60200000.
My intention to execute the MCUBoot and the OTA app in SDRAM comes from my need to use the QUAD SPI flex SPI bus at a low clock rate to interface another external flash memory. So I can't use standard XIP code execution because I noticed that XIP flex SPI bus clock rate should be not changed at runtime or the changes will no have effect, is it right?
I'm a bit confused due the lack of documentation for the MCUBoot applications.
Can anybody help me?
Thanks in advance,
Best Regards,
Emanuele