SPRUJH3 April 2025 TMS320F2800132 , TMS320F2800133 , TMS320F2800135 , TMS320F2800137 , TMS320F2800152-Q1 , TMS320F2800153-Q1 , TMS320F2800154-Q1 , TMS320F2800155 , TMS320F2800155-Q1 , TMS320F2800156-Q1 , TMS320F2800157 , TMS320F2800157-Q1 , TMS320F280021 , TMS320F280023 , TMS320F280023C , TMS320F280025 , TMS320F280025C , TMS320F280034 , TMS320F280036-Q1 , TMS320F280036C-Q1 , TMS320F280037 , TMS320F280037C , TMS320F280038-Q1 , TMS320F280038C-Q1 , TMS320F280039 , TMS320F280039C , TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041C , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049C , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377S , TMS320F28378D , TMS320F28378S , TMS320F28379D , TMS320F28379S , TMS320F28384D , TMS320F28384S , TMS320F28386D , TMS320F28386S , TMS320F28388D , TMS320F28388S , TMS320F28P550SG , TMS320F28P550SJ , TMS320F28P559SG-Q1 , TMS320F28P559SJ-Q1 , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1
When BMSPs are configured in the OTP, a custom boot mode table must also be defined by writing to the boot definition table registers (BOOTDEF) with boot option entries. Replacing the default boot mode selection table, the user-defined BOOTDEF table is indexed using the customized BMSPs in the OTP. For example, instead of parallel boot being tied to boot option 0 in the default configuration, the user can now set the first boot option to any available boot mode, and so on.
The BOOTDEF table is set up by configuring a 64-bit register (see Table 2-5), split into two 32-bit wide locations in the DCSM OTP, called Z1-OTP-BOOTDEF-LOW and Z1-OTP-BOOTDEF-HIGH (or Z2-OTP-BOOTDEF-LOW and Z2-OTP-BOOTDEF-HIGH depending on which zone is configured). These registers are then partitioned into 8-bit wide entries, defining each boot option to be used.
The range of customizable boot modes in the BOOTDEF table depends on how many BMSPs are being used. Recall, zero BMSPs allows for one table entry, one BMSP allows up to two table entries, two BMSPs allows up to four table entries, and three BMSPs allows up to eight table entries.
To configure the BOOTDEF table:The BOOTDEF registers in the DCSM OTP can be programmed using the On-Chip Flash tool in CCS or Flash API (see Section 5.4 or Section 5.5 respectively for steps), or graphically with the DCSM tool in SysConfig [8].
Once programmed with valid BOOTDEFs, the boot definition table can be indexed with the BMSPs configured in the BOOTPIN-CONFIG register to select which boot option is executed in the boot ROM on reset.
| BOOTDEF Name | Byte Position | Name | Description |
|---|---|---|---|
| BOOT_DEF0 | 7:0 | [3:0] BOOT_DEF0 Mode | Set the boot mode number from Table 2-6. Any unsupported boot mode causes the device to either go to wait boot (debugger connected) or boot to Flash (standalone). |
| [7:4] BOOT_DEF0 Options | Set alternate/additional boot options. This can include changing the GPIOs for a particular boot peripheral or specifying a different Flash entry point. Refer to GPIO Assignments for valid BOOTDEF values to set in the table. | ||
| BOOT_DEF1 | 15:8 | BOOT_DEF1 Mode/Options | Refer to BOOT_DEF0 description. |
| BOOT_DEF2 | 23:16 | BOOT_DEF2 Mode/Options | |
| BOOT_DEF3 | 31:24 | BOOT_DEF3 Mode/Options | |
| BOOT_DEF4 | 39:32 | BOOT_DEF4 Mode/Options | |
| BOOT_DEF5 | 47:40 | BOOT_DEF5 Mode/Options | |
| BOOT_DEF6 | 55:48 | BOOT_DEF6 Mode/Options | |
| BOOT_DEF7 | 63:56 | BOOT_DEF7 Mode/Options |
| Boot Number | Boot Mode |
|---|---|
| 0 | Parallel |
| 1 | SCI/Wait |
| 2 | CAN |
| 3 | Flash |
| 4 | Wait |
| 5 | RAM |
| 6 | SPI |
| 7 | I2C |
| 8 | CAN-FD |
| 10 | Secure Flash |
There are exceptions to the configurability of the boot selection table depending on the device family:
This is different from devices that use the BOOTDEF register (see Table 2-3), allowing for up to eight boot modes to be selected. Please see the device-specific TRM for more details on BOOTCTRL.