Closed maclobdell closed 3 years ago
Thank you for raising this detailed GitHub issue. I am now notifying our internal issue triagers. Internal Jira reference: https://jira.arm.com/browse/IOTOSM-2292
We closed this issue because it has been inactive for quite some time and we believe it to be low priority. If you think that the priority should be higher, then please reopen with your justification for increasing the priority.
Description
Currently regions.py is used in the process to generate a binary file that can be used in a firmware update campaign (called *_update.bin). One thing it does is to take the data regions from the hex file and pad the gaps in order to generate a binary (since binaries cannot have gaps). When using Python 3, I have found that if there is a sufficiently large gap in the flash regions (exact limit to be quantified), the IntelHex python library will fail to pad the data. It reports a MemoryError.
This specifically occurs when the application hex file contains code/data flash regions at multiple different base addresses. (e.g. as of Mbed OS 5.14.0, the Cypress targets are including code starting at 0x1000_0000 and a new supervisory flash data section at 0x1600_0000).
When compiling mbed-os-example-pelion Target: CY8CPROTO_062_4343W Toolchain: doesn't matter mbed OS: mbed-os-5.14 Python version 3.7
Issue request type