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

MSPM0 Bootloader Structure

There are three kind of Bootloader solutions provided with MSPM0 devices: ROM-based BSL, ROM-based BSL with flash based plug-in interface and flash-based secondary BSL. Just choose one of the three solutions based on the application's requirement. Both of the solutions use the same invoke mode (general-purpose input/output (GPIO) invoke, blank-device detection and software invoke). There are some parameters that need to be configured in the NON-MAIN flash. For more details, see Section 2.

Table 1-1 MSPM0 BSL Solutions Summary
BSL Solutions ROM Cost Flash Cost (By default) Interface Pins Used With Hardware Invoke Pins Used With Software Invoke Using Case
ROM Based BSL 5K N/A UART 4 2 Need to follow TI's protocol and the setting with UART/I2C
I2C 4 2
ROM Based BSL with Plug-In interface 5K (just used the BSL Core section) ~ 1.6K UART 4 2 Need to follow TI's protocol, for the interface level are totally open source.
~ 1.3K I2C 4 2
~ 1.6K SPI 6 4
~ 5.8K CAN 4 2
Flash Based Secondary BSL N/A ~ 4.9K UART 4 2 Totally open source.
~ 4.7K I2C 4 2
~ 5K SPI 6 4
~ 9K CAN 4 2
Note: Hardware invoke needs two more pins than software invoke, the pins are reset pin and GPIO invoke pin.

Figure 1-2 shows the structure of BSL in MSPM0.

GUID-F88CD6B9-F31E-40F2-AA50-20A402DD2E65-low.png Figure 1-2 BSL Structure in MSPM0