This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LP-EM-CC2340R53: MCU boot customization to accommodate unequal partition size for both primary and secondary image for CC2340R53

Part Number: LP-EM-CC2340R53
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

Hi Team, 

Problem Statement: 

Our image size is around 300KB for now, which cannot be accommodated either  onchip or dual image OAD type. 

Also, we may not need firmware upgrade feature for now from MCU bootloader rather we want to leverage the use of 

secure boot feature from MCU boot. 

Current supported configuration in MCU bootloader 

For MCU boot for Dual image OAD is - Bootloader size (24KB), Primary Image ( 236 KB) and  Secondary Image Size (236 KB). 

And for MCU boot on chip OAD - Bootloader size (24KB), Persistent image ( 176 KB) and  Secondary Image Size (256 KB). 

So in both case we may not be able to accommodate since our application is around 300KB. 

Query: 

So I think if it is possible to have unequal partition supported from MCU BOOT, such that user application will not provide OAD service and hence firmware update is not possible. But when I  try to configure for unequal partition in MCU boot , I get compilation error. 

Please find my required memory partitioning and error message i get when I try to have unequal partition . Kindly let us know is there any solution for this problem. 

With Regards

Ilan T        

  • Hello Ilan,

    Thank you for reaching out! Unfortunately, this is not possible with the current implementation of MCUBoot, as the open-source bootloader requires the images to be the same size. This will probably require a modification to the current MCUBoot code, or using a custom bootloader all together.

    However, taking a step back, could you explain to me why you require two images of different size? Maybe we can provide another solution.

    P.S. I noticed you posted two threads regarding the same issue, so I closed one of them.

    Best Regards,

    Tarek 

  • HI Tarek, 

    Thanks right now we are not planning for firmware upgrade, instead we need secure boot functionality, and I hope MCUBOOT already has this feature. 

    If in case our application takes more CODE memory > 256 KB (including (MCUBOOT header + FW signature + footer) we will be end up in not using the onchip or off chip OAD mode using our internal memory only is limited due to partition size.

    So thought came to me that if secondary image slot size can be reduced, we can accommodate more CODE > 256 KB in primary image. If in case the secondary image slot is empty the MCU Bootloader will choose to always boot from primary image if the valid firmware is present. 

    Regards 

    Ilan T  

  • I could see off chip OAD with external memory as an option. But the current production hardware we could not afford to add external memory. that's another point which triggered me this thought that it could be addressed if the secondary partition size can be reduced. 

    Regards 

    Ilan 

  • Hi Ilan,

    Thank you for providing some context. It may be possible to add this functionality to the mcuboot project but it would require adding some additional modifications to your local mcuboot project and disabling the mcuboot sysconfig module.

    Best Regards,

    Jan

  • Hi Jan, 

    Ok thanks, But I am not sure where to look for this information. Do you have any suggestions here.

  • Hi,

    The modifications would have to take place within the mcuboot project itself.

    Best Regards,

    Jan