AM62D FreeRTOS SDK  11.02.00
SBL SD

Introduction

This bootloader does SOC initializations and attempts to boot MCU R5 image by the name "app", DM R5 image by the name "dm", A53 image by the name "app_a53" and C7x image by the name "app_dsp" present in the first FAT partition found in the connected SD card. The file can be copied to the SD card by connecting it to the host PC using a card reader. Make sure that the images are named without any file extension. If the card is new, make sure that it is formatted with FAT32/16.

SBL reads the CANUART_WAKE_STAT1 MMR in wakeup control MMR to detect partial IO (or IO retention) mode exit. If exit is detected, then SBL will save the wake reason, that is the pad number that triggered the wakeup in BACKUP MMR0 of wakeup control MMR and clear isolation from the pins. Then, it continues the boot.

The pad number read from BACKUP MMR0 can be interpreted as follows

Pad Number Interpretation
255 Partial I/O resume but no pad is detected
5 - 16 Partial I/O resume with valid pad detected
0 Normal boot
Note
Please refer device datasheet to map the pad number to pin that caused the wakeup.

If the appimage files are found at the location, the SBL reads the files into a buffer, parses it. Each core is then initialized, RPRC image is loaded, entry points are set and the core is released from reset. For more on bootflow/bootloaders, please refer Understanding the bootflow and bootloaders

Supported Combinations

Parameter Value
CPU + OS r5fss0-0 nortos
Toolchain ti-arm-clang
Boards am62dx-evm
Example folder examples/drivers/boot/sbl_sd

Steps to Run the Example

Since this is a bootloader, the example will be run every time you boot an application using this example. It is run from an SD card unlike other examples which are usually loaded with CCS. Nevertheless, you can build this example like you do for the others using makefile or build it via CCS by importing as a project.

  • When using CCS projects to build, import the CCS project for the required combination and build it using the CCS project menu (see Using SDK with CCS Projects).
  • When using makefiles to build, note the required combination and build using make command (see Using SDK with Makefiles)
  • Refer to the page Basic steps to flash files to flash this bootloader along with the application to boot.

See Also

BOOTLOADER

Sample Output

[BOOTLOADER_PROFILE] Boot Media : SD Card
[BOOTLOADER_PROFILE] Boot Image Size : 198 KB
[BOOTLOADER_PROFILE] Cores present :
mcu-r5f0-0
r5f0-0
a530-0
[BOOTLOADER PROFILE] System_init : 38668us
[BOOTLOADER PROFILE] Drivers_open : 97508us
[BOOTLOADER PROFILE] Board_driversOpen : 0us
[BOOTLOADER PROFILE] File read from SD card : 9813us
[BOOTLOADER PROFILE] App_loadImages(CSL_CORE_ID_MCU_R5FSS0_0) : 69261us
[BOOTLOADER PROFILE] App_loadImages(CSL_CORE_ID_R5FSS0_0) : 75471us
[BOOTLOADER PROFILE] App_loadImages(CSL_CORE_ID_A53SS0_0) : 70009us
[BOOTLOADER PROFILE] SBL End : 156us
[BOOTLOADER_PROFILE] SBL Total Time Taken : 360890us
Image loading done, switching to application ...