1 /**
2   ******************************************************************************
3   * @file    low_level_security.h
4   * @author  MCD Application Team
5   * @brief   Header for low_level_security.c module
6   *
7   ******************************************************************************
8   * @attention
9   *
10   * <h2><center>&copy; Copyright (c) 2021 STMicroelectronics.
11   * All rights reserved.</center></h2>
12   *
13   * This software component is licensed by ST under BSD 3-Clause license,
14   * the "License"; You may not use this file except in compliance with the
15   * License. You may obtain a copy of the License at:
16   *                        opensource.org/licenses/BSD-3-Clause
17   *
18   ******************************************************************************
19   */
20 
21 /* Define to prevent recursive inclusion -------------------------------------*/
22 #ifndef LOW_LEVEL_SECURITY_H
23 #define LOW_LEVEL_SECURITY_H
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
29 /* Includes ------------------------------------------------------------------*/
30 #include "boot_hal_cfg.h"
31 #include "bootutil/bootutil_log.h"
32 
33 /** @addtogroup Secure Secure Boot / Firmware Update
34   * @{
35   */
36 
37 /** @addtogroup LOW_LEVEL
38   * @{
39   */
40 /** @defgroup LOW_LEVEL_SECURITY Security Low Level define
41   * @{
42   */
43 #define SRAM2_PAGE_SIZE (0x400)
44 /**
45   * @}
46   */
47 /** @defgroup LOW_LEVEL_SECURITY Security Low Level Interface
48   * @{
49   */
50 /** @defgroup SECURITY_Configuration Security Configuration
51   * @{
52   */
53 
54 /**
55   * @}
56   */
57 
58 /** @defgroup SECURITY_Exported_Constants Exported Constants
59   * @{
60   */
61 
62 /**
63   * @}
64   */
65 
66 /** @defgroup SECURITY_Exported_Functions Exported Functions
67   * @{
68   */
69 void    LL_SECU_ApplyRunTimeProtections(void);
70 void    LL_SECU_UpdateRunTimeProtections(void);
71 void    LL_SECU_CheckStaticProtections(void);
72 void    LL_SECU_UpdateLoaderRunTimeProtections(void);
73 void    LL_SECU_SetLoaderCodeSecure(void);
74 #if (TFM_TAMPER_ENABLE != NO_TAMPER)
75 void    TAMP_IRQHandler(void);
76 #endif /*  TFM_TAMPER_ENABLE != NO_TAMPER */
77 
78 /**
79   * @}
80   */
81 
82 /**
83   * @}
84   */
85 
86 /**
87   * @}
88   */
89 
90 /**
91   * @}
92   */
93 
94 /**
95   * @}
96   */
97 
98 
99 #ifdef __cplusplus
100 }
101 #endif
102 
103 #endif /* LOW_LEVEL_SECURITY_H */
104 
105 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
106