MCCI Trusted Bootloader
Simple trusted bootloader and tools for small embedded systems
mcci_bootloader_stm32h7.h
Go to the documentation of this file.
1/*
2
3Module: mcci_bootloader_stm32h7.h
4
5Function:
6 MCCI Bootloader STM32 H7 functions
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 March 2021
19
20*/
21
22#ifndef _mcci_bootloader_stm32h7_h_
23#define _mcci_bootloader_stm32h7_h_ /* prevent multiple includes */
24
25#pragma once
26
27#ifndef _mcci_bootloader_types_h_
29#endif
30
31#ifndef _mcci_arm_cm7_h_
32# include "mcci_arm_cm7.h"
33#endif
34
35#ifndef _mcci_bootloader_stm32h7_appimage_h_
37#endif
38
39#ifndef _mcci_bootloader_platform_types_h_
41#endif
42
44
45/****************************************************************************\
46|
47| Globals
48|
49\****************************************************************************/
50
51///
52/// \brief the Stm32 H7 vectors for the boot loader.
53///
54/// \details
55/// The vectors are put in section \c .McciBootloader_Vectors -- be
56/// sure to research the link script when making changes here.
57///
58/// \see mccibootloader.ld
59///
62__attribute__((__section__(".McciBootloader_Vectors")));
63
64///
65/// \brief the application signature block
66///
67/// \details
68/// The signature block is put in section \c .McciBootloader_Signature -- be
69/// sure to research the link script when making changes here.
70///
71/// \see mccibootloader.ld
72///
73extern const McciBootloader_SignatureBlock_t
75__attribute__((__section__(".McciBootloader_Signature")));
76
77/****************************************************************************\
78|
79| API functions
80|
81\****************************************************************************/
82
83void
85 void
86 );
87
88void
90 void
91 );
92
95
98
100
101#endif /* _mcci_bootloader_stm32h7_h_ */
bool() McciBootloaderPlatform_SystemFlashEraseFn_t(volatile const void *targetAddress, size_t targetSize)
Erase a region of internal flash.
bool() McciBootloaderPlatform_SystemFlashWriteFn_t(volatile const void *pDestination, const void *pSource, size_t nBytes)
Program a chunk of internal flash.
void McciBootloader_Stm32h7_prepareForLaunch(void)
void McciBootloader_Stm32h7_systemInit(void)
MCCI_BOOTLOADER_BEGIN_DECLS const McciBootloader_Stm32H7PageZero_t gk_McciBootloader_CortexVectors
the Stm32 H7 vectors for the boot loader.
const McciBootloader_SignatureBlock_t gk_McciBootloader_SignatureBlock
the application signature block
McciBootloaderPlatform_SystemFlashWriteFn_t McciBootloader_Stm32h7_systemFlashWrite
McciBootloaderPlatform_SystemFlashEraseFn_t McciBootloader_Stm32h7_systemFlashErase
#define MCCI_BOOTLOADER_BEGIN_DECLS
#define MCCI_BOOTLOADER_END_DECLS