思澈科技软件开发工具包  2.20

Macros

#define HAL_AES_busy()   (hwp_aes_acc->STATUS & AES_ACC_STATUS_BUSY)
 

Functions

int HAL_AES_init (uint32_t *key, int key_size, uint32_t *iv, uint32_t mode)
 Initialize AES hardware block. More...
 
HAL_StatusTypeDef HAL_AES_run (uint8_t enc, uint8_t *in_data, uint8_t *out_data, int size)
 run AES hardware enc/dec More...
 
HAL_StatusTypeDef HAL_AES_run_IT (uint8_t enc, uint8_t *in_data, uint8_t *out_data, int size)
 run AES hardware enc/dec, generate interrupt when done. More...
 
int HAL_AES_reset (void)
 Reset AES hardware block. More...
 
void HAL_AES_IRQHandler (void)
 AES IRQ handler.
 

Detailed Description

AES_exported_constants

Macro Definition Documentation

◆ HAL_AES_busy

#define HAL_AES_busy ( )    (hwp_aes_acc->STATUS & AES_ACC_STATUS_BUSY)

Test whether AES hardware block is busy.

Function Documentation

◆ HAL_AES_init()

int HAL_AES_init ( uint32_t *  key,
int  key_size,
uint32_t *  iv,
uint32_t  mode 
)

Initialize AES hardware block.

Parameters
keyaes key, must be 32bit aligned
key_sizeaes key size in bytes
ivinitial vector, must be 32bit aligned
modeaes mode
Return values
0if successful, otherwise -1

◆ HAL_AES_reset()

int HAL_AES_reset ( void  )

Reset AES hardware block.

Return values
0if successful, otherwise -1

◆ HAL_AES_run()

HAL_StatusTypeDef HAL_AES_run ( uint8_t  enc,
uint8_t *  in_data,
uint8_t *  out_data,
int  size 
)

run AES hardware enc/dec

Parameters
enc1:encoding, 0:decoding
in_datainput data, input data could not in ITCM or Retention memory
out_dataoutput data, output data could not in ITCM or Retention memory
sizelength of input/output data in bytes, must be multiple of 16 bytes.
Return values
HAL_OKif successful, otherwise HAL_ERROR

◆ HAL_AES_run_IT()

HAL_StatusTypeDef HAL_AES_run_IT ( uint8_t  enc,
uint8_t *  in_data,
uint8_t *  out_data,
int  size 
)

run AES hardware enc/dec, generate interrupt when done.

Parameters
enc1:encoding, 0:decoding
in_datainput data, input data could not in ITCM or Retention memory
out_dataoutput data, output data could not in ITCM or Retention memory
sizelength of input/output data in bytes, must be multiple of 16 bytes.
Return values
HAL_OKif successful, otherwise HAL_ERROR