Hi @brian_strickler
Thank you for reaching out! Let me provide you my thougths on this, as well some questions to understand better your goal.
When you ask for the best way to copy the Main OS image from Flash to QSPI, what is your parameter ? Speed, memory usage, efficiency, code development effort?
When copying data from FlexSPI to SRAM, we can use the FlexSPI APIs or the Rom BootLoader APIs. We have two demos, the FlexSPI and the ROMAPI in the SDK, to illustrate its operation.
With the FlexSPI APIS you have control of the source code, and with the BootROM you can only call the APIS with parameters, saving coding and development effort.
The format question is interesting, but those low level APIs I mentioned to not care about format, they copy chunks of Data from flash to SRAM arrays. Is format more important for you during while receiving and storing the images? Our flashloader, and bootloader examples ( SBL) are able to receive images in hex and binary images, thanks to their support of the BLHOST tool. I mention this because you may use them as a refence, to handle image receiving, or for bootloader code development, also including jump to application.
About your other thougths, we provide redundant boot feature on the RT1170, with this feature if your bootloader application gets corrupted, the bootROM will boot a back up copy. I do not know if this is relatead to what you want to do.
Best regards,
Diego