1 /* USER CODE BEGIN Header */
2 /**
3   ******************************************************************************
4   * @file    hw_aes.h
5   * @author  GPM WBL Application Team
6   * @brief   This file contains all the functions prototypes for the AES MANAGER
7   ******************************************************************************
8   * @attention
9   *
10   * Copyright (c) 2024 STMicroelectronics.
11   * All rights reserved.
12   *
13   * This software is licensed under terms that can be found in the LICENSE file
14   * in the root directory of this software component.
15   * If no LICENSE file comes with this software, it is provided AS-IS.
16   *
17   ******************************************************************************
18   */
19 /* USER CODE END Header */
20 
21 /* Define to prevent recursive inclusion -------------------------------------*/
22 #ifndef HW_AES_H
23 #define HW_AES_H
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
29 /* Includes ------------------------------------------------------------------*/
30 #include <stdint.h>
31 
32 /** @addtogroup HW_AES_Peripheral  AES MANAGER
33  * @{
34  */
35 
36 /** @defgroup HW_AES_Exported_Types Exported Types
37  * @{
38  */
39 
40 /* Enumerated values used to report the AES result status after a process */
41 typedef enum
42 {
43   HW_AES_SUCCESS     =  0,
44   HW_AES_ERROR
45 } HW_AES_ResultStatus;
46 
47 /**
48  * @}
49  */
50 
51 /** @defgroup HW_AES_Exported_Constants  Exported Constants
52  * @{
53  */
54 /**
55  * @}
56  */
57 
58 /** @defgroup HW_AES_Exported_Macros           Exported Macros
59  * @{
60  */
61 /**
62  * @}
63  */
64 
65 /** @defgroup HW_AES_Exported_Functions        Exported Functions
66  * @{
67  */
68 HW_AES_ResultStatus HW_AES_Init(void);
69 
70 HW_AES_ResultStatus HW_AES_Deinit(void);
71 
72 HW_AES_ResultStatus HW_AES_Encrypt(const uint32_t *plainTextData, const uint32_t *key, uint32_t *encryptedData);
73 
74 /**
75   * @}
76   */
77 
78 /**
79  * @}
80  */
81 
82 /**
83  * @}
84  */
85 
86 #ifdef __cplusplus
87 }
88 #endif
89 
90 #endif /* HW_AES_H */
91