Hello,
as a workaround for this topic: https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1215733/mcu-plus-sdk-am243x-boot-from-flash-not-working-with-different-load-and-run-addresses
We thought that it may be possible to extract specified sections which have the same run- but a different load-address in the same memory-layout they would've been put at their respective load-addresses.
We are using the LTS 2.1.3 compiler toolchain.
Via CCS it is working and the sections get loaded first into the load-address and then copied in at the run-address. This does not work with rprc from flash. So the idea was to manually extract these sections beforehand after linking, put them as a separate "package" each into our own firmware-file. After a boot from flash we would be parsing the firmware-file before we would normally copy_in the sections from the load to the run-address. And the parsed "packages" would be manually placed at their respective load-addresses which are already known since the linker-generated copy-tables do exist at that point.
Would that work? I tried to investigate with tiarmreadelf to get some more info but I am not sure how those sections are arranged in the .elf-file and if we can simply extract them in the same memory-layout they would be placed automatically at the load-address.
Best regards
Felix