SLAAE88B December 2022 – March 2024 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346
The secondary BSL start from 0x1000, it can be put anywhere in the flash area except start from 0x0. Because the application code must start from the 0x0. The secondary BSL demo executed flow showed in Figure 1-6. It can support UART or I2C or SPI or CAN interface if the device supported. The demo’s step-by-step operation is the same as shown in Section 4.2.1.1.
When needed to debug the code after modification, follow the steps in Section 4.2.1.2.
In the secondary BSL, the interrupt vector table offset address has been moved start from 0x1000(due to the code start from 0x1000) in the reset handler that located in the file named startup_mspm0xxxx_ticlang.
When trying to move the secondary BSL to another flash area, this can be done in the cmd file. For example, move the secondary BSL start from 0x4000, make the modification of the cmd file as shown in Figure 4-5.
The flash static write protection parameters and the start address of the alternate BSL also should be modified in the Sysconfig file, as shown in Figure 4-6.
Except the modification in the secondary BSL, the application’s cmd file also need to be modified that to avoid re-used the flash area that be used by secondary BSL.