STM32H750 Quad SPI Flash Dual Image
Hello together,
we have a board with an STM32H750I connected to a W25Q128 Quad SPI flash. We have our application code on the Quad SPI flash and run our application via XiP. This works fine. Now we work on our bootloader to update the application code in the field. We have a lot of free space on the external flash, so it would be interessting to keep 2 images on the external flash. Here is our idea how the memory map could look.
QUAD-SPI
0x9000 0000 – 0x9000 2000 Bootflags (decides where to jump to)
0x9000 2000 – 0x9080 1000 Application 1
0x9080 1000 – 0x9100 0000 Application 2
But we know that the application code is always build for location 0x9000 2000. So when we copy the code to location 0x9000 200 it works correct. But when we copy it to location 0x9080 1000 and jump there, it will fail of course. Is there any way to remap the QUAD SPI location? Or is the only way to compile it as "Position Independent Code" and take the burden of copying the GOT and PLT?
Thanks all of your for your support.
