Application Parser InterfaceApplication Interface
Description
Application interface for the bootloader image parser.
The Parser Interface can be used to parse upgrade images from the context of the application.
Data Structures |
|
struct | BootloaderParserCallbacks_t |
Function pointers to parser callbacks.
|
|
Typedefs |
|
typedef void(* | BootloaderParserCallback_t ) (uint32_t address, uint8_t *data, size_t length, void *context) |
typedef struct BootloaderParserContext | BootloaderParserContext_t |
Context for the bootloader image parser routine.
|
|
Functions |
|
int32_t | bootloader_initParser ( BootloaderParserContext_t *context, size_t contextSize) |
int32_t | bootloader_parseBuffer ( BootloaderParserContext_t *context, BootloaderParserCallbacks_t *callbacks, uint8_t data[], size_t numBytes) |
int32_t | bootloader_parseImageInfo ( BootloaderParserContext_t *context, uint8_t data[], size_t numBytes, ApplicationData_t *appInfo, uint32_t *bootloaderVersion) |
uint32_t | bootloader_parserContextSize (void) |
Typedef Documentation
typedef void(* BootloaderParserCallback_t) (uint32_t address, uint8_t *data, size_t length, void *context) |
Bootloader parser callback
- Parameters
-
address
Address of the data data
Raw data length
Size in bytes of raw data. context
A context variable defined by the implementation that is implementing this callback.
Definition at line
48
of file
btl_interface_parser.h
.
Function Documentation
int32_t bootloader_initParser | ( | BootloaderParserContext_t * |
context,
|
size_t |
contextSize
|
||
) |
Initialize the image parser.
- Parameters
-
[in] context
Pointer to the parser context struct. [in] contextSize
Size of the context struct.
- Returns
- BOOTLOADER_OK if success, BOOTLOADER_ERROR_PARSE_CONTEXT if context struct is too small.
int32_t bootloader_parseBuffer | ( | BootloaderParserContext_t * |
context,
|
BootloaderParserCallbacks_t * |
callbacks,
|
||
uint8_t |
data[],
|
||
size_t |
numBytes
|
||
) |
Parse a buffer.
- Parameters
-
[in] context
Pointer to the parser context struct. [in] callbacks
Callbacks to be called by the parser. [in] data
Data to be parsed. [in] numBytes
Size of the data buffer.
- Returns
- BOOTLOADER_ERROR_PARSE_CONTINUE if the chunk was parsed correctly, and a new chunk is expected. BOOTLOADER_ERROR_PARSE_ERROR if something went wrong while parsing. BOOTLOADER_ERROR_PARSE_SUCCESS if the entire file was successfully parsed.
int32_t bootloader_parseImageInfo | ( | BootloaderParserContext_t * |
context,
|
uint8_t |
data[],
|
||
size_t |
numBytes,
|
||
ApplicationData_t * |
appInfo,
|
||
uint32_t * |
bootloaderVersion
|
||
) |
Parse a buffer and get application and bootloader upgrade metadata from the buffer.
- Note
-
appInfo
andbootloaderVersion
will default to zeros.
- Parameters
-
[in] context
Pointer to the parser context struct. [in] data
Data to be parsed. [in] numBytes
Size of the data buffer. [out] appInfo
Pointer to ApplicationData_t struct. [out] bootloaderVersion
Pointer to an integer representing bootloader version.
- Returns
- BOOTLOADER_OK if metadata was filled successfully.
uint32_t bootloader_parserContextSize | ( | void |
|
) |
Find the size of the context struct BootloaderParserContext used by the bootloader image parser to store parser state.
- Returns
- size of BootloaderParserContext , returns 0 if something went wrong.