AnsweredAssumed Answered

KL82 ROM - Bootloader API

Question asked by Radu Toma on Jul 6, 2017
Latest reply on Jul 26, 2017 by Hui_Ma

Hi there,

 

I am looking at the KBOOT and the KL82 ROM. The thoughts are to use the the KBOOT as base for a bootloader. 

 

I have noticed that from the application level, one can gain access to Flash Driver available in ROM (chapter 9 of the Kinetis Bootloader Reference Manual). 

What has peeked my interest is the Bootloader API Tree (see below):

//! @brief Root of the bootloader API tree.
//!
//! An instance of this struct resides in read-only memory in the bootloader. It
//! provides a user application access to APIs exported by the bootloader.
//!
//! @note The order of existing fields must not be changed.
typedef struct BootloaderTree
{
void (*runBootloader)(void *arg); //!< Function to start the bootloader executing.
standard_version_t bootloader_version; //!< Bootloader version number.
const char *copyright; //!< Copyright string.
const uint32_t *reserved; //!< Do NOT use.
const flash_driver_interface_t *flashDriver; //!< Flash driver API.
} bootloader_tree_t;

Question:

Since KBOOT supports UART, I2C, SPI, USB, FlexCAN and QSPI peripherals, is there a way to gain access to the ROM drivers for these peripherals?

 

Many thanks!

Radu

kl82 rom-api kboot

Outcomes