MCCI Trusted Bootloader
Simple trusted bootloader and tools for small embedded systems
mcci_bootloader_board_stm32h7b3i_dk.h
Go to the documentation of this file.
1/*
2
3Module: mcci_bootloader_board_stm32h7b3i_dk.h
4
5Function:
6 Top-level platform interface for STM32H7B3I_DK.
7
8Copyright and License:
9 This file copyright (C) 2021 by
10
11 MCCI Corporation
12 3520 Krums Corners Road
13 Ithaca, NY 14850
14
15 See accompanying LICENSE file for copyright and license information.
16
17Author:
18 ChaeHee Won, MCCI Corporation June 2021
19
20*/
21
22#ifndef _mcci_bootloader_board_stm32h7b3i_dk_h_
23#define _mcci_bootloader_board_stm32h7b3i_dk_h_ /* prevent multiple includes */
24
25#pragma once
26
27#ifndef _mcci_bootloader_types_h_
29#endif
30
31#ifndef _mcci_bootloader_platform_h_
33#endif
34
35#ifndef _mcci_bootloader_stm32h7_h_
37#endif
38
39#ifndef _mcci_stm32h7xx_h_
40# include "mcci_stm32h7xx.h"
41#endif
42
43#ifndef _mcci_bootloader_board_stm32h7b3i_dk_request_h_
45#endif
46
48
49/****************************************************************************\
50|
51| Flash layout
52|
53\****************************************************************************/
54
55///
56/// \brief the maximum image size is 1024k bytes at the bank2 flash
57///
58#define MCCI_BOOTLOADER_BOARD_STM32H7B3I_DK_STORAGE_IMAGE_SIZE \
59 (UINT32_C(1024) * 1024)
60
61///
62/// \brief base address of the update image in flash bank 2.
63///
64/// \details Defined by the linker script.
65///
67
68///
69/// \brief base address of the fallback image (bank 2, 512k to 1024k).
70///
71/// \details Defined by the linker script.
72///
74
75
76/****************************************************************************\
77|
78| API functions.
79|
80\****************************************************************************/
81
84
87
91
94
97
100
103
106
109
112
115
118
122
123McciBootloaderBoard_Stm32h7b3iDk_Request_t *
125
127
128#endif /* _mcci_bootloader_board_stm32h7b3i_dk_h_ */
const uint8_t gk_McciBootloaderBoard_Stm32h7b3iDk_UpdateImageBase[]
base address of the update image in flash bank 2.
McciBootloaderPlatform_FailFn_t MCCI_BOOTLOADER_NORETURN_PFX McciBootloaderBoard_Stm32h7b3iDk_fail MCCI_BOOTLOADER_NORETURN_SFX
McciBootloaderPlatform_DelayMsFn_t McciBootloaderBoard_Stm32h7b3iDk_delayMs
McciBootloaderPlatform_SystemInitFn_t McciBootloaderBoard_Stm32h7b3iDk_systemInit
McciBootloaderPlatform_GetPrimaryStorageAddressFn_t McciBootloaderBoard_Stm32h7b3iDk_getPrimaryStorageAddress
const uint8_t gk_McciBootloaderBoard_Stm32h7b3iDk_FallbackImageBase[]
base address of the fallback image (bank 2, 512k to 1024k).
McciBootloaderPlatform_StorageReadFn_t McciBootloaderBoard_Stm32h7b3iDk_storageRead
void McciBootloaderBoard_Stm32h7b3iDk_setLed(void)
void McciBootloaderBoard_Stm32h7b3iDk_handleSysTick(void)
McciBootloaderPlatform_GetFallbackStorageAddressFn_t McciBootloaderBoard_Stm32h7b3iDk_getFallbackStorageAddress
McciBootloaderPlatform_PrepareForLaunchFn_t McciBootloaderBoard_Stm32h7b3iDk_prepareForLaunch
McciBootloaderPlatform_StorageInitFn_t McciBootloaderBoard_Stm32h7b3iDk_storageInit
McciBootloaderPlatform_AnnunciatorIndicateStateFn_t McciBootloaderBoard_Stm32h7b3iDk_annunciatorIndicateState
McciBootloaderPlatform_GetUpdateFlagFn_t McciBootloaderBoard_Stm32h7b3iDk_getUpdate
McciBootloaderBoard_Stm32h7b3iDk_Request_t * McciBootloaderBoard_Stm32h7b3iDk_getRequestPointer(void)
void McciBootloaderBoard_Stm32h7b3iDk_clearLed(void)
McciBootloaderPlatform_AnnunciatorInitFn_t McciBootloaderBoard_Stm32h7b3iDk_annunciatorInit
McciBootloaderPlatform_SetUpdateFlagFn_t McciBootloaderBoard_Stm32h7b3iDk_setUpdate
void() McciBootloaderPlatform_FailFn_t(McciBootloaderError_t errorCode)
function for reporting a fatal error
void() McciBootloaderPlatform_StorageInitFn_t(void)
Initialize the storage driver.
McciBootloaderStorageAddress_t() McciBootloaderPlatform_GetPrimaryStorageAddressFn_t(void)
get the start address of the primary image in the storage
bool() McciBootloaderPlatform_StorageReadFn_t(McciBootloaderStorageAddress_t startAddress, uint8_t *pBuffer, size_t nBuffer)
Read bytes from the storage.
MCCI_BOOTLOADER_BEGIN_DECLS typedef void() McciBootloaderPlatform_SystemInitFn_t(void)
function type for platform intialization function
bool() McciBootloaderPlatform_GetUpdateFlagFn_t(void)
Get the "update flag".
void() McciBootloaderPlatform_SetUpdateFlagFn_t(bool state)
Set the "update flag".
void() McciBootloaderPlatform_AnnunciatorInitFn_t(void)
Initialize the annuciator system.
void() McciBootloaderPlatform_DelayMsFn_t(uint32_t ms)
delay execution
void() McciBootloaderPlatform_PrepareForLaunchFn_t(void)
function type for preparing to launch an application
void() McciBootloaderPlatform_AnnunciatorIndicateStateFn_t(McciBootloaderState_t state)
Indicate the current state.
McciBootloaderStorageAddress_t() McciBootloaderPlatform_GetFallbackStorageAddressFn_t(void)
get the start address of the fallback image in the storage
#define MCCI_BOOTLOADER_BEGIN_DECLS
#define MCCI_BOOTLOADER_END_DECLS
#define MCCI_BOOTLOADER_NORETURN_PFX
void McciBootloaderBoard_Stm32h7b3iDk_fail(McciBootloaderError_t errorCode)