M-Boot ROM Description
584
SPRUHE8E – October 2012 – Revised November 2019
Copyright © 2012–2019, Texas Instruments Incorporated
ROM Code and Peripheral Booting
6.5.5 M-Boot ROM RAM Usage
M-Boot ROM uses part of C2 RAM, which is unsecured memory for stack, data and to log boot status.
The first 0x900 bytes from start of C2 RAM start address (0x20004000) is reserved for boot ROM.
Applications are free to reuse this memory after boot ROM execution is completed. However, that this part
of C2 RAM will be zero-initialized by M-Boot ROM if it is rerun because of a reset which occurs while the
application is running. In other words, if an application is using the first 0x900 bytes of C2 RAM, then it
cannot expect the contents to be preserved between resets. This is extremely important for a debugger
reset and software reset.
6.5.5.1
M-Boot ROM Stack
The C2 memory range 0x20004584 to 0x20004900 is allocated for the M-Boot ROM stack.
6.5.5.2
M-Boot ROM Data Section
The M-Boot ROM data section is located in C2 memory from address 0x20004004 to 0x20004583.
6.5.5.3
M-Boot ROM Boot Status
The first location in C2 RAM is reserved by M-Boot ROM boot status. This location is used for boot ROM
to log status of different events that occur in the system during boot and applications can use this status to
take necessary actions.
This location is preserved during master subsystem SW and debugger resets unlike the boot ROM data
and stack memory range which is zero-initialized for these resets.
User applications can reuse this memory location after it reads the device boot status or it can leave this
location reserved if there is a need to preserve boot status between resets.
Note that M-Boot ROM itself doesn’t use this boot status for any purpose this is only provided to let
applications know about it.
More details on the boot status is given in
.
6.5.6 M-Boot ROM User OTP
The boot ROM user configurable DCSM OTP field descriptions and memory addresses are detailed in
. Each field is provided with a description of its purpose and associated ECC information..
Table 6-3. REV0, REVA, REVF - User Configurable DCSM OTP Fields
Address
Description
Notes
0x68 0810 - 0x68 0813
EMAC REG0 Address
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 0813 - 0x68 0817
EMAC REG1 Address
0x68 1000 - 0x68 1003
OTP - Security Lock
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 1004 - 0x68 1007
Reserved
0x68 1008 - 0x68 100B
Reserved
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 100C - 0x68 100F
OTP - Z2 FLASH ENTRY POINT
0x68 1010 - 0x68 1013
Reserved
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 1014 - 0x68 1017
Reserved
0x68 1018 - 0x68 101B
Reserved
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 101C - 0x68 101F
Main Oscillator Clock Frequency
0x68 1020 - 0x68 1023
Reserved
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 1024 - 0x68 1027
Reserved
0x68 1028 - 0x68 102B
Reserved
ECC is shared for these locations, so they must be
programmed at the same time.
0x68 102C - 0x68 102F
OTP ENTRY POINT