Macros | |
#define | HAL_HASH_busy() (hwp_aes_acc->STATUS & AES_ACC_STATUS_BUSY) |
Functions | |
int | HAL_HASH_init (uint32_t *iv, uint8_t algo, uint32_t length) |
Initialize AES Hash hardware block. More... | |
HAL_StatusTypeDef | HAL_HASH_run (uint8_t *in_data, int size, int final) |
run Hash hardware More... | |
HAL_StatusTypeDef | HAL_HASH_run_IT (uint8_t *in_data, int size, int final) |
run Hash hardware, return immediately, generate AES HASH interrupt when done. More... | |
void | HAL_HASH_result (uint8_t *out_data) |
Get hash result. More... | |
int | HAL_HASH_reset (void) |
Reset AES HASH hardware block. More... | |
void | HAL_HASH_IRQHandler (void) |
AES HASH IRQ handler. | |
HASH_exported_constants
#define HAL_HASH_busy | ( | ) | (hwp_aes_acc->STATUS & AES_ACC_STATUS_BUSY) |
Test whether AES hardware block is busy.
int HAL_HASH_init | ( | uint32_t * | iv, |
uint8_t | algo, | ||
uint32_t | length | ||
) |
Initialize AES Hash hardware block.
iv | initial vector, must be 32bit aligned, if NULL, use algorithm default initial vector. |
algo | hash algorithm |
length | finished length |
0 | if successful, otherwise -1 |
int HAL_HASH_reset | ( | void | ) |
Reset AES HASH hardware block.
0 | if successful, otherwise -1 |
void HAL_HASH_result | ( | uint8_t * | out_data | ) |
Get hash result.
out_data | output data, Size of out_data depends on hash algorithm |
HAL_StatusTypeDef HAL_HASH_run | ( | uint8_t * | in_data, |
int | size, | ||
int | final | ||
) |
run Hash hardware
in_data | input data, input data could not in ITCM or Retention memory |
size | length of input data in bytes. |
final | Last block |
HAL_OK | if successful, otherwise HAL_ERROR |
HAL_StatusTypeDef HAL_HASH_run_IT | ( | uint8_t * | in_data, |
int | size, | ||
int | final | ||
) |
run Hash hardware, return immediately, generate AES HASH interrupt when done.
in_data | input data, input data could not in ITCM or Retention memory |
size | length of input data in bytes. |
final | Last block |
HAL_OK | if successful, otherwise HAL_ERROR |