The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Thu Nov 08 11:45:42 2018 +0000
Revision:
171:3a7713b1edbc
Parent:
TARGET_DISCO_L496AG/TARGET_STM/TARGET_STM32L4/device/stm32l4xx_hal_cryp_ex.h@165:d1b4690b3f8b
mbed library. Release version 164

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 165:d1b4690b3f8b 1 /**
AnnaBridge 165:d1b4690b3f8b 2 ******************************************************************************
AnnaBridge 165:d1b4690b3f8b 3 * @file stm32l4xx_hal_cryp_ex.h
AnnaBridge 165:d1b4690b3f8b 4 * @author MCD Application Team
AnnaBridge 165:d1b4690b3f8b 5 * @brief Header file of CRYPEx HAL module.
AnnaBridge 165:d1b4690b3f8b 6 ******************************************************************************
AnnaBridge 165:d1b4690b3f8b 7 * @attention
AnnaBridge 165:d1b4690b3f8b 8 *
AnnaBridge 165:d1b4690b3f8b 9 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
AnnaBridge 165:d1b4690b3f8b 10 *
AnnaBridge 165:d1b4690b3f8b 11 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 165:d1b4690b3f8b 12 * are permitted provided that the following conditions are met:
AnnaBridge 165:d1b4690b3f8b 13 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 165:d1b4690b3f8b 14 * this list of conditions and the following disclaimer.
AnnaBridge 165:d1b4690b3f8b 15 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 165:d1b4690b3f8b 16 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 165:d1b4690b3f8b 17 * and/or other materials provided with the distribution.
AnnaBridge 165:d1b4690b3f8b 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 165:d1b4690b3f8b 19 * may be used to endorse or promote products derived from this software
AnnaBridge 165:d1b4690b3f8b 20 * without specific prior written permission.
AnnaBridge 165:d1b4690b3f8b 21 *
AnnaBridge 165:d1b4690b3f8b 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 165:d1b4690b3f8b 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 165:d1b4690b3f8b 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 165:d1b4690b3f8b 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 165:d1b4690b3f8b 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 165:d1b4690b3f8b 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 165:d1b4690b3f8b 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 165:d1b4690b3f8b 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 165:d1b4690b3f8b 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 165:d1b4690b3f8b 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 165:d1b4690b3f8b 32 *
AnnaBridge 165:d1b4690b3f8b 33 ******************************************************************************
AnnaBridge 165:d1b4690b3f8b 34 */
AnnaBridge 165:d1b4690b3f8b 35
AnnaBridge 165:d1b4690b3f8b 36 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 165:d1b4690b3f8b 37 #ifndef __STM32L4xx_HAL_CRYP_EX_H
AnnaBridge 165:d1b4690b3f8b 38 #define __STM32L4xx_HAL_CRYP_EX_H
AnnaBridge 165:d1b4690b3f8b 39
AnnaBridge 165:d1b4690b3f8b 40 #ifdef __cplusplus
AnnaBridge 165:d1b4690b3f8b 41 extern "C" {
AnnaBridge 165:d1b4690b3f8b 42 #endif
AnnaBridge 165:d1b4690b3f8b 43
AnnaBridge 165:d1b4690b3f8b 44 #if defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L462xx) || defined(STM32L485xx) || defined(STM32L486xx) || defined(STM32L4A6xx) || defined(STM32L4S5xx) || defined(STM32L4S7xx) || defined(STM32L4S9xx)
AnnaBridge 165:d1b4690b3f8b 45
AnnaBridge 165:d1b4690b3f8b 46
AnnaBridge 165:d1b4690b3f8b 47 /* Includes ------------------------------------------------------------------*/
AnnaBridge 165:d1b4690b3f8b 48 #include "stm32l4xx_hal_def.h"
AnnaBridge 165:d1b4690b3f8b 49
AnnaBridge 165:d1b4690b3f8b 50 /** @addtogroup STM32L4xx_HAL_Driver
AnnaBridge 165:d1b4690b3f8b 51 * @{
AnnaBridge 165:d1b4690b3f8b 52 */
AnnaBridge 165:d1b4690b3f8b 53
AnnaBridge 165:d1b4690b3f8b 54 /** @addtogroup CRYPEx
AnnaBridge 165:d1b4690b3f8b 55 * @{
AnnaBridge 165:d1b4690b3f8b 56 */
AnnaBridge 165:d1b4690b3f8b 57
AnnaBridge 165:d1b4690b3f8b 58 /* Exported types ------------------------------------------------------------*/
AnnaBridge 165:d1b4690b3f8b 59 /* Exported constants --------------------------------------------------------*/
AnnaBridge 165:d1b4690b3f8b 60 /* Exported functions --------------------------------------------------------*/
AnnaBridge 165:d1b4690b3f8b 61
AnnaBridge 165:d1b4690b3f8b 62 /** @addtogroup CRYPEx_Exported_Functions
AnnaBridge 165:d1b4690b3f8b 63 * @{
AnnaBridge 165:d1b4690b3f8b 64 */
AnnaBridge 165:d1b4690b3f8b 65
AnnaBridge 165:d1b4690b3f8b 66 /** @addtogroup CRYPEx_Exported_Functions_Group1
AnnaBridge 165:d1b4690b3f8b 67 * @{
AnnaBridge 165:d1b4690b3f8b 68 */
AnnaBridge 165:d1b4690b3f8b 69
AnnaBridge 165:d1b4690b3f8b 70 /* CallBack functions ********************************************************/
AnnaBridge 165:d1b4690b3f8b 71 void HAL_CRYPEx_ComputationCpltCallback(CRYP_HandleTypeDef *hcryp);
AnnaBridge 165:d1b4690b3f8b 72
AnnaBridge 165:d1b4690b3f8b 73 /**
AnnaBridge 165:d1b4690b3f8b 74 * @}
AnnaBridge 165:d1b4690b3f8b 75 */
AnnaBridge 165:d1b4690b3f8b 76
AnnaBridge 165:d1b4690b3f8b 77 /** @addtogroup CRYPEx_Exported_Functions_Group2
AnnaBridge 165:d1b4690b3f8b 78 * @{
AnnaBridge 165:d1b4690b3f8b 79 */
AnnaBridge 165:d1b4690b3f8b 80
AnnaBridge 165:d1b4690b3f8b 81 /* AES encryption/decryption processing functions ****************************/
AnnaBridge 165:d1b4690b3f8b 82 HAL_StatusTypeDef HAL_CRYPEx_AES(CRYP_HandleTypeDef *hcryp, uint8_t *pInputData, uint16_t Size, uint8_t *pOutputData, uint32_t Timeout);
AnnaBridge 165:d1b4690b3f8b 83 HAL_StatusTypeDef HAL_CRYPEx_AES_IT(CRYP_HandleTypeDef *hcryp, uint8_t *pInputData, uint16_t Size, uint8_t *pOutputData);
AnnaBridge 165:d1b4690b3f8b 84 HAL_StatusTypeDef HAL_CRYPEx_AES_DMA(CRYP_HandleTypeDef *hcryp, uint8_t *pInputData, uint16_t Size, uint8_t *pOutputData);
AnnaBridge 165:d1b4690b3f8b 85
AnnaBridge 165:d1b4690b3f8b 86 /* AES encryption/decryption/authentication processing functions *************/
AnnaBridge 165:d1b4690b3f8b 87 HAL_StatusTypeDef HAL_CRYPEx_AES_Auth(CRYP_HandleTypeDef *hcryp, uint8_t *pInputData, uint64_t Size, uint8_t *pOutputData, uint32_t Timeout);
AnnaBridge 165:d1b4690b3f8b 88 HAL_StatusTypeDef HAL_CRYPEx_AES_Auth_IT(CRYP_HandleTypeDef *hcryp, uint8_t *pInputData, uint64_t Size, uint8_t *pOutputData);
AnnaBridge 165:d1b4690b3f8b 89 HAL_StatusTypeDef HAL_CRYPEx_AES_Auth_DMA(CRYP_HandleTypeDef *hcryp, uint8_t *pInputData, uint64_t Size, uint8_t *pOutputData);
AnnaBridge 165:d1b4690b3f8b 90
AnnaBridge 165:d1b4690b3f8b 91 /**
AnnaBridge 165:d1b4690b3f8b 92 * @}
AnnaBridge 165:d1b4690b3f8b 93 */
AnnaBridge 165:d1b4690b3f8b 94
AnnaBridge 165:d1b4690b3f8b 95 /** @addtogroup CRYPEx_Exported_Functions_Group3
AnnaBridge 165:d1b4690b3f8b 96 * @{
AnnaBridge 165:d1b4690b3f8b 97 */
AnnaBridge 165:d1b4690b3f8b 98
AnnaBridge 165:d1b4690b3f8b 99 /* AES suspension/resumption functions ***************************************/
AnnaBridge 165:d1b4690b3f8b 100 void HAL_CRYPEx_Read_IVRegisters(CRYP_HandleTypeDef *hcryp, uint8_t* Output);
AnnaBridge 165:d1b4690b3f8b 101 void HAL_CRYPEx_Write_IVRegisters(CRYP_HandleTypeDef *hcryp, uint8_t* Input);
AnnaBridge 165:d1b4690b3f8b 102 void HAL_CRYPEx_Read_SuspendRegisters(CRYP_HandleTypeDef *hcryp, uint8_t* Output);
AnnaBridge 165:d1b4690b3f8b 103 void HAL_CRYPEx_Write_SuspendRegisters(CRYP_HandleTypeDef *hcryp, uint8_t* Input);
AnnaBridge 165:d1b4690b3f8b 104 void HAL_CRYPEx_Read_KeyRegisters(CRYP_HandleTypeDef *hcryp, uint8_t* Output, uint32_t KeySize);
AnnaBridge 165:d1b4690b3f8b 105 void HAL_CRYPEx_Write_KeyRegisters(CRYP_HandleTypeDef *hcryp, uint8_t* Input, uint32_t KeySize);
AnnaBridge 165:d1b4690b3f8b 106 void HAL_CRYPEx_Read_ControlRegister(CRYP_HandleTypeDef *hcryp, uint8_t* Output);
AnnaBridge 165:d1b4690b3f8b 107 void HAL_CRYPEx_Write_ControlRegister(CRYP_HandleTypeDef *hcryp, uint8_t* Input);
AnnaBridge 165:d1b4690b3f8b 108 void HAL_CRYPEx_ProcessSuspend(CRYP_HandleTypeDef *hcryp);
AnnaBridge 165:d1b4690b3f8b 109
AnnaBridge 165:d1b4690b3f8b 110 /**
AnnaBridge 165:d1b4690b3f8b 111 * @}
AnnaBridge 165:d1b4690b3f8b 112 */
AnnaBridge 165:d1b4690b3f8b 113
AnnaBridge 165:d1b4690b3f8b 114
AnnaBridge 165:d1b4690b3f8b 115 /**
AnnaBridge 165:d1b4690b3f8b 116 * @}
AnnaBridge 165:d1b4690b3f8b 117 */
AnnaBridge 165:d1b4690b3f8b 118
AnnaBridge 165:d1b4690b3f8b 119 /* Private functions -----------------------------------------------------------*/
AnnaBridge 165:d1b4690b3f8b 120 /** @addtogroup CRYPEx_Private_Functions CRYPEx Private Functions
AnnaBridge 165:d1b4690b3f8b 121 * @{
AnnaBridge 165:d1b4690b3f8b 122 */
AnnaBridge 165:d1b4690b3f8b 123 HAL_StatusTypeDef CRYP_AES_Auth_IT(CRYP_HandleTypeDef *hcryp);
AnnaBridge 165:d1b4690b3f8b 124
AnnaBridge 165:d1b4690b3f8b 125 /**
AnnaBridge 165:d1b4690b3f8b 126 * @}
AnnaBridge 165:d1b4690b3f8b 127 */
AnnaBridge 165:d1b4690b3f8b 128
AnnaBridge 165:d1b4690b3f8b 129
AnnaBridge 165:d1b4690b3f8b 130 /**
AnnaBridge 165:d1b4690b3f8b 131 * @}
AnnaBridge 165:d1b4690b3f8b 132 */
AnnaBridge 165:d1b4690b3f8b 133
AnnaBridge 165:d1b4690b3f8b 134 /**
AnnaBridge 165:d1b4690b3f8b 135 * @}
AnnaBridge 165:d1b4690b3f8b 136 */
AnnaBridge 165:d1b4690b3f8b 137
AnnaBridge 165:d1b4690b3f8b 138 #endif /* defined (STM32L442xx) || defined (STM32L443xx) || defined (STM32L462xx) || defined(STM32L485xx) || defined(STM32L486xx) || defined(STM32L4A6xx) || defined(STM32L4S5xx) || defined(STM32L4S7xx) || defined(STM32L4S9xx) */
AnnaBridge 165:d1b4690b3f8b 139
AnnaBridge 165:d1b4690b3f8b 140 #ifdef __cplusplus
AnnaBridge 165:d1b4690b3f8b 141 }
AnnaBridge 165:d1b4690b3f8b 142 #endif
AnnaBridge 165:d1b4690b3f8b 143
AnnaBridge 165:d1b4690b3f8b 144 #endif /* __STM32L4xx_HAL_CRYP_EX_H */
AnnaBridge 165:d1b4690b3f8b 145
AnnaBridge 165:d1b4690b3f8b 146 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/