SLUUDG7A December 2025 – November 2026 MSPM33C321A , MSPM33C321A-Q1
User can enable bank swap in CSC-based secure boot by configuring BOOTCFG2.FLASHBANKSWAPPOLICY field in NONMAIN FLASH. Bank swap behavior happens in the CSC stage, while the behavior goes into effect after the device issues INITDONE.
In bank swap method, the actual firmware does not move between physical locations - instead, the address of two banks are swapped. As shown in Figure 3-8, there is a physical bank 0 (PB0) and physical bank 1 (PB1). These banks can switch addresses depending on the bank swap configuration.
To indicate the address swapping, we can define two logical banks(LB) that map to physical bank 0 or physical bank 1. Before INITDONE Logical Bank 0 always maps to address PB0, and Logical Bank 1 maps to PB1. However, depending on the bank swap execution, post INITDONE LB0 can map to PB0 or PB1.
In general with bank swap feature enabled, CSC always start APP in LB0. So if the APP being executed locates at PB0, CSC configures bank swap not happened by setting FLBANKSWP.USEUPPER to 0h(default), and LB0 maps to PB0. If the APP being executed locates at PB1, CSC configures bank swap happened by setting FLBANKSWP.USEUPPER to1h(default), and LB0 maps to PB1.