12.1.4.2 Using Boot Configuration Packet

The boot configuration data are stored in the Boot Configuration Packet in the OTP area. These data can be used for various boot sequence customizations:

  • Set the IO pin configuration where the external memories used to boot are connected (see Hardware and Software Constraints for a description of the IO).
  • Enable the boot from selected memories.
  • Configure the UART port used as a console.
  • Enable/disable JTAG used for debug.

See Boot Configuration User Interface for a detailed description of all the fields in these data.

By default, the values of the Boot Configuration Packet are 0x0. During prototyping phases, those values can be overridden by the content of the emulation memory through OTPC Emulation mode. To enable this feature, the bit BSCR_CR.EMUL_EN must be set.

The current running mode of the User area can be observed by reading BSCR_CR.EMUL_EN. If this bit is set, the Emulation mode is enabled, otherwise, the Emulation mode is disabled.

After a reset, the ROM code reads the Boot Configuration Packet from the SRAM dedicated to Emulation mode if the bit BSCR_CR.EMUL_EN is set to 1. Otherwise the packet is read from the OTP matrix.

Using Emulated OTP enables the user to test several boot configuration options, including Secure Boot mode, without programming the OTP.

Note: If Emulation mode is enabled, the emulation SRAM is not backed up. After a power off/on, the configuration and content are lost.
Figure 12-2. Boot Configuration Loading