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

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 Bootloader Introduction
      1. 1.1.1 Bootloader Concept
      2. 1.1.2 MSPM0 Bootloader Structure
        1. 1.1.2.1 ROM-Based BSL
        2. 1.1.2.2 ROM-Based BSL With Flash-Based Plug-In Interface
        3. 1.1.2.3 Flash-Based Secondary BSL
      3. 1.1.3 MSPM0 BSL Features and Demos Summary
    2. 1.2 BSL Host Implementation Summary
  5. 2BSL Configuration in Non-Main (Configuration NVM)
    1. 2.1 Non-Main Introduction
    2. 2.2 Example – Disable PA18 BSL Invoke Pin With Sysconfig
  6. 3Bootloader Host
    1. 3.1 MCU Host Code Introduction
      1. 3.1.1 Hardware Connection
      2. 3.1.2 TXT to Header File Conversion
      3. 3.1.3 Step-by-Step Using the Demo
    2. 3.2 PC Host Example
      1. 3.2.1 Prepare the Image File and Password File
      2. 3.2.2 Steps to Using the GUI
  7. 4Bootloader Target
    1. 4.1 Default ROM-Based BSL
      1. 4.1.1 UART Interface
      2. 4.1.2 I2C Interface
    2. 4.2 Flash-Based Plug-In Interface Demos
      1. 4.2.1 UART Interface
        1. 4.2.1.1 Step by step using the demo
        2. 4.2.1.2 How to Debug the Plug-In Interface Code
      2. 4.2.2 I2C Interface
      3. 4.2.3 SPI Interface
      4. 4.2.4 CAN Interface
    3. 4.3 Secondary BSL Demo
      1. 4.3.1 Flash-Based Secondary BSL Start From 0x1000
      2. 4.3.2 Live Firmware Update (LFU) Solution
  8. 5Common Questions
    1. 5.1 Linker File Modification
    2. 5.2 Factory Reset by CCS to Recover Device
  9. 6References
  10.   Revision History

Flash-Based Secondary BSL

If the private protocol is needed, the ROM-based BSL core cannot be used any more and the secondary BSL demo can be referred. A totally open sourced secondary BSL demo is provided in the SDK that you can use to easily modify the protocol. The default protocol of the secondary BSL demo is the same with ROM-based BSL.

GUID-86585BCA-2040-459B-98A9-3C96E75F584F-low.png Figure 1-5 Flash-Based Secondary BSL Structure

There are also two kinds of secondary BSL demos mentioned, as shown in Figure 1-6. Use MSPM0G3507 as an example:

GUID-AE6A273C-3CC7-44DA-93FC-0A72301E9FFD-low.jpg Figure 1-6 Secondary BSL Solutions
  • For the secondary BSL start from 0x1000, you can put it anywhere in the flash except 0x0. Because the application code must start from the 0x0 address. The demo reused the ROM-based BSL's trigger resources. (Both hardware, software and blank device detection). Figure 1-7 shows the secondary BSL demo executed flow.
    GUID-182BD324-4F37-4FE4-B464-E74F7C8127A1-low.jpg Figure 1-7 Secondary BSL Execute Flow