mbed official / mbed

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

Committer:
AnnaBridge
Date:
Fri Feb 16 16:16:41 2018 +0000
Revision:
161:aa5281ff4a02
Parent:
157:e7ca05fa8600
mbed library. Release version 159.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 157:e7ca05fa8600 1 /**
AnnaBridge 157:e7ca05fa8600 2 ******************************************************************************
AnnaBridge 157:e7ca05fa8600 3 * @file stm32l4xx_hal_hash_ex.h
AnnaBridge 157:e7ca05fa8600 4 * @author MCD Application Team
AnnaBridge 157:e7ca05fa8600 5 * @brief Header file of HASH HAL module.
AnnaBridge 157:e7ca05fa8600 6 ******************************************************************************
AnnaBridge 157:e7ca05fa8600 7 * @attention
AnnaBridge 157:e7ca05fa8600 8 *
AnnaBridge 157:e7ca05fa8600 9 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
AnnaBridge 157:e7ca05fa8600 10 *
AnnaBridge 157:e7ca05fa8600 11 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 157:e7ca05fa8600 12 * are permitted provided that the following conditions are met:
AnnaBridge 157:e7ca05fa8600 13 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 157:e7ca05fa8600 14 * this list of conditions and the following disclaimer.
AnnaBridge 157:e7ca05fa8600 15 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 157:e7ca05fa8600 16 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 157:e7ca05fa8600 17 * and/or other materials provided with the distribution.
AnnaBridge 157:e7ca05fa8600 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 157:e7ca05fa8600 19 * may be used to endorse or promote products derived from this software
AnnaBridge 157:e7ca05fa8600 20 * without specific prior written permission.
AnnaBridge 157:e7ca05fa8600 21 *
AnnaBridge 157:e7ca05fa8600 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 157:e7ca05fa8600 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 157:e7ca05fa8600 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 157:e7ca05fa8600 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 157:e7ca05fa8600 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 157:e7ca05fa8600 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 157:e7ca05fa8600 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 157:e7ca05fa8600 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 157:e7ca05fa8600 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 157:e7ca05fa8600 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 157:e7ca05fa8600 32 *
AnnaBridge 157:e7ca05fa8600 33 ******************************************************************************
AnnaBridge 157:e7ca05fa8600 34 */
AnnaBridge 157:e7ca05fa8600 35
AnnaBridge 157:e7ca05fa8600 36 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 157:e7ca05fa8600 37 #ifndef __STM32L4xx_HAL_HASH_EX_H
AnnaBridge 157:e7ca05fa8600 38 #define __STM32L4xx_HAL_HASH_EX_H
AnnaBridge 157:e7ca05fa8600 39
AnnaBridge 157:e7ca05fa8600 40 #ifdef __cplusplus
AnnaBridge 157:e7ca05fa8600 41 extern "C" {
AnnaBridge 157:e7ca05fa8600 42 #endif
AnnaBridge 157:e7ca05fa8600 43
AnnaBridge 161:aa5281ff4a02 44 #if defined (STM32L4A6xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx)
AnnaBridge 157:e7ca05fa8600 45
AnnaBridge 157:e7ca05fa8600 46 /* Includes ------------------------------------------------------------------*/
AnnaBridge 157:e7ca05fa8600 47 #include "stm32l4xx_hal_def.h"
AnnaBridge 157:e7ca05fa8600 48
AnnaBridge 157:e7ca05fa8600 49 /** @addtogroup STM32L4xx_HAL_Driver
AnnaBridge 157:e7ca05fa8600 50 * @{
AnnaBridge 157:e7ca05fa8600 51 */
AnnaBridge 157:e7ca05fa8600 52
AnnaBridge 157:e7ca05fa8600 53 /** @addtogroup HASHEx
AnnaBridge 157:e7ca05fa8600 54 * @{
AnnaBridge 157:e7ca05fa8600 55 */
AnnaBridge 157:e7ca05fa8600 56
AnnaBridge 157:e7ca05fa8600 57 /* Exported types ------------------------------------------------------------*/
AnnaBridge 157:e7ca05fa8600 58 /* Exported constants --------------------------------------------------------*/
AnnaBridge 157:e7ca05fa8600 59 /* Exported macro ------------------------------------------------------------*/
AnnaBridge 157:e7ca05fa8600 60
AnnaBridge 157:e7ca05fa8600 61
AnnaBridge 157:e7ca05fa8600 62 /* Exported functions --------------------------------------------------------*/
AnnaBridge 157:e7ca05fa8600 63
AnnaBridge 157:e7ca05fa8600 64 /** @addtogroup HASHEx_Exported_Functions HASH Extended Exported Functions
AnnaBridge 157:e7ca05fa8600 65 * @{
AnnaBridge 157:e7ca05fa8600 66 */
AnnaBridge 157:e7ca05fa8600 67
AnnaBridge 157:e7ca05fa8600 68 /** @addtogroup HASHEx_Exported_Functions_Group1 HASH extended processing functions in polling mode
AnnaBridge 157:e7ca05fa8600 69 * @{
AnnaBridge 157:e7ca05fa8600 70 */
AnnaBridge 157:e7ca05fa8600 71
AnnaBridge 157:e7ca05fa8600 72 HAL_StatusTypeDef HAL_HASHEx_SHA224_Start(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer, uint32_t Timeout);
AnnaBridge 157:e7ca05fa8600 73 HAL_StatusTypeDef HAL_HASHEx_SHA224_Accumulate(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 74 HAL_StatusTypeDef HAL_HASHEx_SHA256_Start(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer, uint32_t Timeout);
AnnaBridge 157:e7ca05fa8600 75 HAL_StatusTypeDef HAL_HASHEx_SHA256_Accumulate(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 76
AnnaBridge 157:e7ca05fa8600 77 /**
AnnaBridge 157:e7ca05fa8600 78 * @}
AnnaBridge 157:e7ca05fa8600 79 */
AnnaBridge 157:e7ca05fa8600 80
AnnaBridge 157:e7ca05fa8600 81 /** @addtogroup HASHEx_Exported_Functions_Group2 HASH extended processing functions in interrupt mode
AnnaBridge 157:e7ca05fa8600 82 * @{
AnnaBridge 157:e7ca05fa8600 83 */
AnnaBridge 157:e7ca05fa8600 84
AnnaBridge 157:e7ca05fa8600 85 HAL_StatusTypeDef HAL_HASHEx_SHA224_Start_IT(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer);
AnnaBridge 157:e7ca05fa8600 86 HAL_StatusTypeDef HAL_HASHEx_SHA256_Start_IT(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer);
AnnaBridge 157:e7ca05fa8600 87
AnnaBridge 157:e7ca05fa8600 88 /**
AnnaBridge 157:e7ca05fa8600 89 * @}
AnnaBridge 157:e7ca05fa8600 90 */
AnnaBridge 157:e7ca05fa8600 91
AnnaBridge 157:e7ca05fa8600 92 /** @addtogroup HASHEx_Exported_Functions_Group3 HASH extended processing functions in DMA mode
AnnaBridge 157:e7ca05fa8600 93 * @{
AnnaBridge 157:e7ca05fa8600 94 */
AnnaBridge 157:e7ca05fa8600 95 HAL_StatusTypeDef HAL_HASHEx_SHA224_Start_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 96 HAL_StatusTypeDef HAL_HASHEx_SHA224_Finish(HASH_HandleTypeDef *hhash, uint8_t* pOutBuffer, uint32_t Timeout);
AnnaBridge 157:e7ca05fa8600 97 HAL_StatusTypeDef HAL_HASHEx_SHA256_Start_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 98 HAL_StatusTypeDef HAL_HASHEx_SHA256_Finish(HASH_HandleTypeDef *hhash, uint8_t* pOutBuffer, uint32_t Timeout);
AnnaBridge 157:e7ca05fa8600 99
AnnaBridge 157:e7ca05fa8600 100 /**
AnnaBridge 157:e7ca05fa8600 101 * @}
AnnaBridge 157:e7ca05fa8600 102 */
AnnaBridge 157:e7ca05fa8600 103
AnnaBridge 157:e7ca05fa8600 104 /** @addtogroup HASHEx_Exported_Functions_Group4 HMAC extended processing functions in polling mode
AnnaBridge 157:e7ca05fa8600 105 * @{
AnnaBridge 157:e7ca05fa8600 106 */
AnnaBridge 157:e7ca05fa8600 107 HAL_StatusTypeDef HAL_HMACEx_SHA224_Start(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer, uint32_t Timeout);
AnnaBridge 157:e7ca05fa8600 108 HAL_StatusTypeDef HAL_HMACEx_SHA256_Start(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer, uint32_t Timeout);
AnnaBridge 157:e7ca05fa8600 109 /**
AnnaBridge 157:e7ca05fa8600 110 * @}
AnnaBridge 157:e7ca05fa8600 111 */
AnnaBridge 157:e7ca05fa8600 112
AnnaBridge 157:e7ca05fa8600 113 /** @addtogroup HASHEx_Exported_Functions_Group5 HMAC extended processing functions in interrupt mode
AnnaBridge 157:e7ca05fa8600 114 * @{
AnnaBridge 157:e7ca05fa8600 115 */
AnnaBridge 157:e7ca05fa8600 116
AnnaBridge 157:e7ca05fa8600 117 HAL_StatusTypeDef HAL_HMACEx_SHA224_Start_IT(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer);
AnnaBridge 157:e7ca05fa8600 118 HAL_StatusTypeDef HAL_HMACEx_SHA256_Start_IT(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size, uint8_t* pOutBuffer);
AnnaBridge 157:e7ca05fa8600 119
AnnaBridge 157:e7ca05fa8600 120 /**
AnnaBridge 157:e7ca05fa8600 121 * @}
AnnaBridge 157:e7ca05fa8600 122 */
AnnaBridge 157:e7ca05fa8600 123
AnnaBridge 157:e7ca05fa8600 124 /** @addtogroup HASHEx_Exported_Functions_Group6 HMAC extended processing functions in DMA mode
AnnaBridge 157:e7ca05fa8600 125 * @{
AnnaBridge 157:e7ca05fa8600 126 */
AnnaBridge 157:e7ca05fa8600 127
AnnaBridge 157:e7ca05fa8600 128 HAL_StatusTypeDef HAL_HMACEx_SHA224_Start_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 129 HAL_StatusTypeDef HAL_HMACEx_SHA256_Start_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 130
AnnaBridge 157:e7ca05fa8600 131 /**
AnnaBridge 157:e7ca05fa8600 132 * @}
AnnaBridge 157:e7ca05fa8600 133 */
AnnaBridge 157:e7ca05fa8600 134
AnnaBridge 157:e7ca05fa8600 135 /** @addtogroup HASHEx_Exported_Functions_Group7 Multi-buffer HMAC extended processing functions in DMA mode
AnnaBridge 157:e7ca05fa8600 136 * @{
AnnaBridge 157:e7ca05fa8600 137 */
AnnaBridge 157:e7ca05fa8600 138
AnnaBridge 157:e7ca05fa8600 139 HAL_StatusTypeDef HAL_HMACEx_MD5_Step1_2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 140 HAL_StatusTypeDef HAL_HMACEx_MD5_Step2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 141 HAL_StatusTypeDef HAL_HMACEx_MD5_Step2_3_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 142
AnnaBridge 157:e7ca05fa8600 143 HAL_StatusTypeDef HAL_HMACEx_SHA1_Step1_2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 144 HAL_StatusTypeDef HAL_HMACEx_SHA1_Step2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 145 HAL_StatusTypeDef HAL_HMACEx_SHA1_Step2_3_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 146
AnnaBridge 157:e7ca05fa8600 147 HAL_StatusTypeDef HAL_HMACEx_SHA224_Step1_2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 148 HAL_StatusTypeDef HAL_HMACEx_SHA224_Step2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 149 HAL_StatusTypeDef HAL_HMACEx_SHA224_Step2_3_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 150
AnnaBridge 157:e7ca05fa8600 151 HAL_StatusTypeDef HAL_HMACEx_SHA256_Step1_2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 152 HAL_StatusTypeDef HAL_HMACEx_SHA256_Step2_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 153 HAL_StatusTypeDef HAL_HMACEx_SHA256_Step2_3_DMA(HASH_HandleTypeDef *hhash, uint8_t *pInBuffer, uint32_t Size);
AnnaBridge 157:e7ca05fa8600 154
AnnaBridge 157:e7ca05fa8600 155 /**
AnnaBridge 157:e7ca05fa8600 156 * @}
AnnaBridge 157:e7ca05fa8600 157 */
AnnaBridge 157:e7ca05fa8600 158
AnnaBridge 157:e7ca05fa8600 159 /**
AnnaBridge 157:e7ca05fa8600 160 * @}
AnnaBridge 157:e7ca05fa8600 161 */
AnnaBridge 157:e7ca05fa8600 162
AnnaBridge 157:e7ca05fa8600 163 /**
AnnaBridge 157:e7ca05fa8600 164 * @}
AnnaBridge 157:e7ca05fa8600 165 */
AnnaBridge 157:e7ca05fa8600 166
AnnaBridge 157:e7ca05fa8600 167 /**
AnnaBridge 157:e7ca05fa8600 168 * @}
AnnaBridge 157:e7ca05fa8600 169 */
AnnaBridge 157:e7ca05fa8600 170
AnnaBridge 161:aa5281ff4a02 171 #endif /* defined (STM32L4A6xx) || defined (STM32L4S5xx) || defined (STM32L4S7xx) || defined (STM32L4S9xx) */
AnnaBridge 157:e7ca05fa8600 172
AnnaBridge 157:e7ca05fa8600 173 #ifdef __cplusplus
AnnaBridge 157:e7ca05fa8600 174 }
AnnaBridge 157:e7ca05fa8600 175 #endif
AnnaBridge 157:e7ca05fa8600 176
AnnaBridge 157:e7ca05fa8600 177
AnnaBridge 157:e7ca05fa8600 178 #endif /* __STM32L4xx_HAL_HASH_EX_H */
AnnaBridge 157:e7ca05fa8600 179
AnnaBridge 157:e7ca05fa8600 180 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/