Hi Mark
Sorry for the delay in reply.
Thanks for your suggestions also.
I understand that with giving provision to share MQX between factory and actual images will limit the OS update capabilities in future.
But in our design we have considered the update of factory image while running the actual image, though this is meant only for critical updates(I understand the risk involved in this).
Currently we are using the Freescale compiler coming along with the Code Warrior, with full optimization ON, not sure whether it is as optimized as IAR.
The available internal flash is 1MB and we have allocated 724K for actual image and the rest for Boot loader and factory image.
Factory image only have the capability to update via USB and over the cloud, no other application features,
When I looked int the map files, currently MQX (BSP, PSP, MFS, USBH etc) takes up to 100KB, which is 100KB X 2 in our case for both factory and actual images,
which is 20% of the total available program memory.
In my latest project with a K22 we felt we needed to guarantee we would be able to use the full amount of internal storage for future firmware updates, so we built a small bare bones boot-loader that could read from an external SPI flash (~1MB).
We also have an external SPI flash in our system. But writing and getting the firmware images in SPI flash won't make the update procedure slow a bit ?
I understand the difficulties, but do you thinks that there is a way to extract the MQX related things from actual and factory firmware and if it is placed to a common location,
both the images can share it. I think I may have to play with Linker settings but any idea how to do this exactly with Freescale CPUs?
Thanks,
Renjith