My firmware image is smaller than half of the flash size of my CC13xx part. What is the best strategy so that I can put in place an upgrade mechanism with a flip-flop image scheme?
More precisely:
-Q1. How can I specify a start address different from 0 after a boot sequence? IMAGE_VALID_CONF doesn't seem to do the trick for CC13xx according to the TR datasheet. How can I jump to half of the total flash size after booting? There are a few threads about that question on e2e but the answer is not very clear.
-Q2. How can I define a NVS region at run-time?
let's say that firmware-v1-A is occupying the first half of the flash and is running. It has the second flash part hard-coded as NVS. Does this firmware need to get firmware-v2-B which has the first half part of the NVS hard-coded so that this firmware can upgrade at the next iteration after download firmware-v3-A? Or can I create a NVS region at run-time in the other part of the flash that is not used and modify the jump address at next boot?