![]() |
LPCOpen Platform for LPC18XX/43XX microcontrollers
18XX43XX
LPCOpen Platform for the NXP LPC18XX/43XX family of Microcontrollers
|
Enumerations | |
| enum | CHIP_AES_OP_MODE_T { CHIP_AES_API_CMD_ENCODE_ECB, CHIP_AES_API_CMD_DECODE_ECB, CHIP_AES_API_CMD_ENCODE_CBC, CHIP_AES_API_CMD_DECODE_CBC } |
| AES Engine operation mode. More... | |
Functions | |
| void | Chip_AES_Init (void) |
| Initialize the AES Engine function. More... | |
| uint32_t | Chip_AES_SetMode (CHIP_AES_OP_MODE_T AesMode) |
| Set operation mode in AES Engine. More... | |
| void | Chip_AES_LoadKey (uint32_t keyNum) |
| Load 128-bit AES user key in AES Engine. More... | |
| void | Chip_AES_LoadKeyRNG (void) |
| Load randomly generated key in AES engine. More... | |
| void | Chip_AES_LoadKeySW (uint8_t *pKey) |
| Load 128-bit AES software defined user key in AES Engine. More... | |
| void | Chip_AES_LoadIV_SW (uint8_t *pVector) |
| Load 128-bit AES initialization vector in AES Engine. More... | |
| void | Chip_AES_LoadIV_IC (void) |
| Load IC specific 128-bit AES initialization vector in AES Engine. More... | |
| uint32_t | Chip_AES_Operate (uint8_t *pDatOut, uint8_t *pDatIn, uint32_t Size) |
| Operate AES Engine. More... | |
| uint32_t | Chip_AES_ProgramKey (uint32_t KeyNum, uint8_t *pKey) |
| Program 128-bit AES Key in OTP. More... | |
| uint32_t | Chip_AES_Config_DMA (uint32_t channel_id) |
| Checks for valid AES configuration of the chip and setup DMA channel to process an AES data block. More... | |
| uint32_t | Chip_AES_OperateDMA (uint32_t channel_id, uint8_t *dataOutAddr, uint8_t *dataInAddr, uint32_t size) |
| Checks for valid AES configuration of the chip and enables DMA channel to process an AES data block. More... | |
| uint32_t | Chip_AES_GetStatusDMA (uint32_t channel_id) |
| Read status of DMA channels that process an AES data block. More... | |
| enum CHIP_AES_OP_MODE_T |
AES Engine operation mode.
| Enumerator | |
|---|---|
| CHIP_AES_API_CMD_ENCODE_ECB |
ECB Encode mode |
| CHIP_AES_API_CMD_DECODE_ECB |
ECB Decode mode |
| CHIP_AES_API_CMD_ENCODE_CBC |
CBC Encode mode |
| CHIP_AES_API_CMD_DECODE_CBC |
CBC Decode mode |
Definition at line 47 of file aes_18xx_43xx.h.
| uint32_t Chip_AES_Config_DMA | ( | uint32_t | channel_id | ) |
Checks for valid AES configuration of the chip and setup DMA channel to process an AES data block.
| channel_id | : channel id |
Definition at line 159 of file aes_18xx_43xx.c.
| uint32_t Chip_AES_GetStatusDMA | ( | uint32_t | channel_id | ) |
Read status of DMA channels that process an AES data block.
| channel_id | : channel id |
Definition at line 171 of file aes_18xx_43xx.c.
| void Chip_AES_Init | ( | void | ) |
Initialize the AES Engine function.
Definition at line 73 of file aes_18xx_43xx.c.
| void Chip_AES_LoadIV_IC | ( | void | ) |
Load IC specific 128-bit AES initialization vector in AES Engine.
Definition at line 133 of file aes_18xx_43xx.c.
| void Chip_AES_LoadIV_SW | ( | uint8_t * | pVector | ) |
Load 128-bit AES initialization vector in AES Engine.
| pVector | : Pointer to 16 byte Initialisation vector |
Definition at line 127 of file aes_18xx_43xx.c.
| void Chip_AES_LoadKey | ( | uint32_t | keyNum | ) |
Load 128-bit AES user key in AES Engine.
| keyNum,: | 0 - Load AES 128-bit user key 1, else load user key2 |
Definition at line 104 of file aes_18xx_43xx.c.
| void Chip_AES_LoadKeyRNG | ( | void | ) |
Load randomly generated key in AES engine.
Definition at line 115 of file aes_18xx_43xx.c.
| void Chip_AES_LoadKeySW | ( | uint8_t * | pKey | ) |
Load 128-bit AES software defined user key in AES Engine.
| pKey | : Pointer to 16 byte user key |
Definition at line 121 of file aes_18xx_43xx.c.
| uint32_t Chip_AES_Operate | ( | uint8_t * | pDatOut, |
| uint8_t * | pDatIn, | ||
| uint32_t | Size | ||
| ) |
Operate AES Engine.
| pDatOut | : Pointer to output data stream |
| pDatIn | : Pointer to input data stream |
| Size | : Size of the data stream (128-bit) |
Definition at line 139 of file aes_18xx_43xx.c.
| uint32_t Chip_AES_OperateDMA | ( | uint32_t | channel_id, |
| uint8_t * | dataOutAddr, | ||
| uint8_t * | dataInAddr, | ||
| uint32_t | size | ||
| ) |
Checks for valid AES configuration of the chip and enables DMA channel to process an AES data block.
| channel_id | : channel_id |
| dataOutAddr | : destination address(16 x size of consecutive bytes) |
| dataInAddr | : source address(16 x size of consecutive bytes) |
| size | : number of 128 bit AES blocks |
Definition at line 165 of file aes_18xx_43xx.c.
| uint32_t Chip_AES_ProgramKey | ( | uint32_t | KeyNum, |
| uint8_t * | pKey | ||
| ) |
Program 128-bit AES Key in OTP.
| KeyNum | : Key Number (Select 0 or 1) |
| pKey | : Pointer to AES Key (16 bytes required) |
Definition at line 145 of file aes_18xx_43xx.c.
| uint32_t Chip_AES_SetMode | ( | CHIP_AES_OP_MODE_T | AesMode | ) |
Set operation mode in AES Engine.
| AesMode | : AES Operation Mode |
Definition at line 98 of file aes_18xx_43xx.c.
1.8.3.1