![]() |
MCCI Trusted Bootloader
Simple trusted bootloader and tools for small embedded systems
|
#include "mcci_bootloader_types.h"#include "mcci_bootloader_platform.h"#include "mcci_bootloader_stm32l0.h"#include "mcci_bootloader_board_catena_abz_eeprom.h"Go to the source code of this file.
Macros | |
| #define | _mcci_bootloader_board_catena_abz_h_ /* prevent multiple includes */ |
| #define | MCCI_BOOTLOADER_BOARD_CATENA_ABZ_STORAGE_FALLBACK_BASE (UINT32_C(65536)) |
| we put the fallback image at 64k to 232k, in case anyone needs special things in page zero. | |
| #define | MCCI_BOOTLOADER_BOARD_CATENA_ABZ_STORAGE_IMAGE_SIZE (UINT32_C(168) * 1024) |
| the maximum image size is 168k bytes (192k - 20k for the bootloader and 4k for the mfg page). | |
| #define | MCCI_BOOTLOADER_BOARD_CATENA_ABZ_STORAGE_UPDATE_BASE (UINT32_C(256) * 1024) |
| base address of the update image | |
Functions | |
| void | McciBootloaderBoard_CatenaAbz_clearLed (void) |
| McciBootloaderBoard_CatenaAbz_Eeprom_t * | McciBootloaderBoard_CatenaAbz_getEepromPointer (void) |
| void | McciBootloaderBoard_CatenaAbz_handleSysTick (void) |
| void | McciBootloaderBoard_CatenaAbz_setLed (void) |
| #define _mcci_bootloader_board_catena_abz_h_ /* prevent multiple includes */ |
Definition at line 24 of file mcci_bootloader_board_catena_abz.h.
| #define MCCI_BOOTLOADER_BOARD_CATENA_ABZ_STORAGE_FALLBACK_BASE (UINT32_C(65536)) |
we put the fallback image at 64k to 232k, in case anyone needs special things in page zero.
This also lets you set the WP bit, clear the TP bit, and set BP bits to 0x03; this will protect the first 256k against accidental change.
Definition at line 61 of file mcci_bootloader_board_catena_abz.h.
| #define MCCI_BOOTLOADER_BOARD_CATENA_ABZ_STORAGE_IMAGE_SIZE (UINT32_C(168) * 1024) |
the maximum image size is 168k bytes (192k - 20k for the bootloader and 4k for the mfg page).
Definition at line 54 of file mcci_bootloader_board_catena_abz.h.
| #define MCCI_BOOTLOADER_BOARD_CATENA_ABZ_STORAGE_UPDATE_BASE (UINT32_C(256) * 1024) |
base address of the update image
The update block begins at a multiple of 64k to allow use of 64k erase if desired. We put it at 256k so we can easily write-protect the fallback image if needed.
Definition at line 71 of file mcci_bootloader_board_catena_abz.h.
| void McciBootloaderBoard_CatenaAbz_clearLed | ( | void | ) |
Definition at line 136 of file mccibootloaderboard_catenaabz_systeminit.c.
References MCCI_STM32L0_GPIO_BRR, MCCI_STM32L0_REG_GPIOB, and McciArm_putReg().
Referenced by McciBootloaderBoard_CatenaAbz_handleSysTick().
| McciBootloaderBoard_CatenaAbz_Eeprom_t * McciBootloaderBoard_CatenaAbz_getEepromPointer | ( | void | ) |
Definition at line 48 of file mccibootloaderboard_catenaabz_eeprom.c.
Referenced by McciBootloaderBoard_CatenaAbz_getUpdate(), McciBootloaderBoard_CatenaAbz_setUpdate(), and McciBootloaderBoard_CatenaAbz_SvcHandler().
| void McciBootloaderBoard_CatenaAbz_handleSysTick | ( | void | ) |
Definition at line 123 of file mccibootloaderboard_catenaabz_annunciator.c.
References annunciator, McciBootloaderBoard_CatenaAbz_clearLed(), nextBit(), stBitGap, stByteGap, stIdle, stInitial, stLedOn, and stNoChange.
Referenced by McciBootloaderBoard_CatenaAbz_fail().
| void McciBootloaderBoard_CatenaAbz_setLed | ( | void | ) |
Definition at line 127 of file mccibootloaderboard_catenaabz_systeminit.c.
References MCCI_STM32L0_GPIO_BSRR, MCCI_STM32L0_REG_GPIOB, and McciArm_putReg().
Referenced by nextBit().
| McciBootloaderPlatform_FailFn_t MCCI_BOOTLOADER_NORETURN_PFX McciBootloaderBoard_CatenaAbz_fail MCCI_BOOTLOADER_NORETURN_SFX |
Definition at line 88 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_AnnunciatorIndicateStateFn_t McciBootloaderBoard_CatenaAbz_annunciatorIndicateState |
Definition at line 118 of file mcci_bootloader_board_catena_abz.h.
Referenced by McciBootloaderBoard_CatenaAbz_fail().
| McciBootloaderPlatform_AnnunciatorInitFn_t McciBootloaderBoard_CatenaAbz_annunciatorInit | ( | void | ) |
Definition at line 115 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_DelayMsFn_t McciBootloaderBoard_CatenaAbz_delayMs |
Definition at line 91 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_GetFallbackStorageAddressFn_t McciBootloaderBoard_CatenaAbz_getFallbackStorageAddress | ( | void | ) |
Definition at line 106 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_GetPrimaryStorageAddressFn_t McciBootloaderBoard_CatenaAbz_getPrimaryStorageAddress | ( | void | ) |
Definition at line 103 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_GetUpdateFlagFn_t McciBootloaderBoard_CatenaAbz_getUpdate | ( | void | ) |
Definition at line 94 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_PrepareForLaunchFn_t McciBootloaderBoard_CatenaAbz_prepareForLaunch | ( | void | ) |
Definition at line 84 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_SetUpdateFlagFn_t McciBootloaderBoard_CatenaAbz_setUpdate |
Definition at line 97 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_SpiInitFn_t McciBootloaderBoard_CatenaAbz_spiInit | ( | void | ) |
Definition at line 109 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_SpiTransferFn_t McciBootloaderBoard_CatenaAbz_spiTransfer |
Definition at line 112 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_StorageReadFn_t McciBootloaderBoard_CatenaAbz_storageRead |
Definition at line 100 of file mcci_bootloader_board_catena_abz.h.
| McciBootloaderPlatform_SystemInitFn_t McciBootloaderBoard_CatenaAbz_systemInit |
Definition at line 81 of file mcci_bootloader_board_catena_abz.h.