SPRADN2 January 2025 MSPM0G1518 , MSPM0G1519 , MSPM0G3518 , MSPM0G3519 , MSPM0L1227 , MSPM0L1228 , MSPM0L2227 , MSPM0L2228
In dual-bank or quad-bank devices, based on which bank (or pair) is executable, that bank (pair) gets readexecute privileges and loses write or erase privileges. The other bank (or pair) is readable, and writeable but not executable. This mechanism enforces the policy that any firmware update can only be saved in the writeable bank in the current session but can never be executed. Upon a subsequent BOOTRST, the CSC runs and needs to authenticate the update and decide if the updated image needs to be made executable. If the updated image exists in Upper bank, then configure USEUPPER to 1. If the updated image does not exist in Upper bank, then no other action is needed. When the CSC issues INITDONE, this bank-swap takes effect, swapping the execution or write privileges of the upper and lower banks and re-mapping the upper bank (or pair) to the lower half of the flash memory address space and re-mapping the upper bank (or pair) to the upper half of the flash memory address space.
Dual bank swap function is part of CSC function and follows CSC execution sequence describes in former chapter. On the application side, customers usually need to prepare the projects below to achieve bank swap function.