SLUUDI6 December   2025 MSPM33C321A

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 Overview of BSL Features
    2. 1.2 Terminology
    3. 1.3 Additional resources
  5. 2BSL Architecture
    1. 2.1 Design
      1. 2.1.1 Timeout Feature
        1. 2.1.1.1 Interface Autodetection
        2. 2.1.1.2 Command Reception
    2. 2.2 BSL Invocation
      1. 2.2.1 Application Request
      2. 2.2.2 GPIO Based Invocation
      3. 2.2.3 Debug Mailbox Command
      4. 2.2.4 Other BSL Invocation Methods
        1. 2.2.4.1 Pre-Boot Application Verification
        2. 2.2.4.2 Blank Device Handling
    3. 2.3 Memory
      1. 2.3.1 SRAM Memory Usage
    4. 2.4 BSL Non-Main Configuration
      1. 2.4.1  BSL Configuration ID
      2. 2.4.2  BSL Interface Pins (BLINTERFACE_PINS)
      3. 2.4.3  BSL Invoke Pin Configuration (BSLPIN_INVOKE)
      4. 2.4.4  Memory Readout Configuration
      5. 2.4.5  BSL Password
      6. 2.4.6  Application Revision Pointer
      7. 2.4.7  Security Alert Level
      8. 2.4.8  UART Baud Rate
      9. 2.4.9  I2C Slave Address
      10. 2.4.10 Configuration CRC
    5. 2.5 Changing BSL Configuration
      1. 2.5.1 Reference
      2. 2.5.2 Using SysConfig and Code Composer Studio (CCS)
      3. 2.5.3 Using Debug Interface
  6. 3Bootloader Protocol
    1. 3.1 Packet Format
    2. 3.2 BSL Protocol
      1. 3.2.1 BSL Acknowledgment
      2. 3.2.2 Peripheral Configuration
        1. 3.2.2.1 UART
        2. 3.2.2.2 I2C
        3. 3.2.2.3 CRC
    3. 3.3 Bootloader Core Commands
      1. 3.3.1  Connection
      2. 3.3.2  Get Device Info
      3. 3.3.3  Unlock Bootloader
      4. 3.3.4  Program Data
      5. 3.3.5  Program Data Fast
      6. 3.3.6  Readback Data
      7. 3.3.7  Flash Range Erase
      8. 3.3.8  Mass Erase
      9. 3.3.9  Factory Reset
      10. 3.3.10 Standalone Verification
      11. 3.3.11 Start Application
      12. 3.3.12 Change Baud Rate
    4. 3.4 Bootloader Core Response
      1. 3.4.1 BSL Core Message
      2. 3.4.2 Detailed Error
      3. 3.4.3 Memory Readback
      4. 3.4.4 Device Info
      5. 3.4.5 Standalone Verification
    5. 3.5 Bootloader Security
      1. 3.5.1 Password Protected Commands
        1. 3.5.1.1 Security Alert
      2. 3.5.2 BSL Entry
  7. 4Sample Program Flow with Bootloader
  8. 5Revision History

GPIO Based Invocation

GPIO used for BSL invocation can be configured in the BSL Configuration in Non-main flash.

Fresh devices will have the TI programmed default pin detail in BSL configuration.

GPIO pin based invocation can be disabled in the BCR configuration. It is enabled by default.

GPIO should be asserted before POR, and the state should be maintained for at-least T_start ms after POR. Then the GPIO pin state can be de-asserted.

 Invocation From GPIOFigure 2-2 Invocation From GPIO

* - GPIO pin to be used as 'BSL Invoke' and 'Expected Pin Level' can be configured in BSL configuration

** - T_start refers to the Cold boot startup time, specified in the device specific data sheet

Note: If pin based BSL invocation is enabled, the configured GPIO pin should be either pulled high or low. It should not be left floating, which could cause unexpected BSL execution.