1.3.3 SPI Bootloader Configurations

Bootloader Specific User Configurations

spi_bootloader_mcc_config_sam
  • Bootloader Peripheral Used:

    • Specifies the communication peripheral used by bootloader to receive the application
    • The name of the peripheral will vary from device to device
  • Bootloader NVM Memory Used:

    • Specifies the memory peripheral used by bootloader to perform flash operations
    • The name of the peripheral will vary from device to device
  • Bootloader Size (Bytes):

    • Specifies the maximum size of flash required by the bootloader
    • This size is calculated based on Bootloader type and Memory used
    • This size will vary from device to device and should always be aligned to device erase unit size
  • Enable Bootloader Trigger From Firmware:

    • This Option can be used to Force Trigger bootloader from application firmware after a soft reset. It does so by reserving the specified number of bytes in SRAM from the start of the RAM. The reserved memory is updated by the application with a pre-defined pattern. The bootloader firmware in the bootloader_Trigger() routine, can check the reserved memory for the pre-defined pattern and enter bootloader mode if the pattern matches.

    • Number Of Bytes To Reserve From Start Of RAM:

      • Specifies the number of bytes to reserve for the trigger pattern in RAM. This option adds the provided offset to RAM Start address in bootloader linker script.
      • Application firmware can store some pattern in the reserved bytes region from RAM start for bootloader to check at reset in bootloader_Trigger() function
  • Enable Fuse Programming:

    • Enables fuse programming capability in the bootloader
  • Enable watchdog Refresh If Enabled Through Fuse:

    • Bootloader firmware refreshes the watchdog if it is enabled through fuse
  • Use Dual Bank For Safe Flash Update:

    • Used to configure bootloader to use Dual banks of device to upload the application
    • This option is visible only for devices supporting Dual flash banks

Bootloader System Configurations

spi_bootloader_mcc_config_system
  • Application Start Address (Hex):
    • Start address of the application which will programmed by bootloader
    • This value is filled by bootloader when its loaded which is equal to the bootloader size. It can be modified as per user need
    • This value will be used by bootloader to Jump to application at device reset