Currently, my development environment is MCUXpresso IDE. In the SDK, the multicore examples consist of a master project and a slave project. Moreover, in the master project, only one slave image file location can be specified. I want to achieve a function: Burn a CM33 image and multiple CM7 images into Flash. After the CM33 core starts up, it will load different CM7 images into RAM based on the switch status or other configuration items for running.
How can this be achieved? Are there any examples?
Hi @ethan_dang1 ,
Thanks for your interest in NXP MIMXRT series!
RT118x can support this use case, but not through a ready-made ROM/MCUXpresso IDE feature that automatically selects one CM7 image from multiple candidates.
The RT118x boot container can describe multiple images, but this is a fixed boot-image/container mechanism, not a GPIO/switch-based runtime selection policy. For the requested behavior, CM33 should be implemented as a custom boot manager. After CM33 boots, it reads the switch/configuration, selects one CM7 image stored in Flash, loads it to the expected target memory, configures the M7 vector/start condition and access permission, and then releases/kicks off CM7.
There is no confirmed SDK example that directly implements “one CM33 image + multiple selectable CM7 images”. The closest references are the multicore examples, multicore_trigger, the RT1180 M7 kick-off procedure, and dynamic code loading/overlay concepts.
We apologize for any inconvenience this may cause!
Best regards,
Gavin