LPCOpen Platform for LPC18XX/43XX microcontrollers: C:/w/lpcopen_docs/software/lpc_core/lpc_chip/chip_18xx_43xx/aes_18xx_43xx.c File Reference

| LPCOpen Platform for LPC18XX/43XX microcontrollers 18XX43XX LPCOpen Platform for the NXP LPC18XX/43XX family of Microcontrollers

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Macros | Typedefs | Functions | Variables
aes_18xx_43xx.c File Reference
`#include "chip.h"`

Go to the source code of this file.

## Macros
#define | BOOTROM_BASE 0x10400100
#define | AES_API_TABLE_OFFSET 0x2

## Typedefs
typedef void(* | V_FP_V )(void)
typedef uint32_t(* | U32_FP_V )(void)

## 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...

## Variables
static unsigned long * | BOOTROM_API_TABLE
static uint32_t(* | aes_SetMode )(CHIP_AES_OP_MODE_T AesMode)
static void(* | aes_LoadKey1 )(void)
static void(* | aes_LoadKey2 )(void)
static void(* | aes_LoadKeyRNG )(void)
static void(* | aes_LoadKeySW )(uint8_t *pKey)
static void(* | aes_LoadIV_SW )(uint8_t *pVector)
static void(* | aes_LoadIV_IC )(void)
static uint32_t(* | aes_Operate )(uint8_t *pDatOut, uint8_t *pDatIn, uint32_t size)
static uint32_t(* | aes_ProgramKey1 )(uint8_t *pKey)
static uint32_t(* | aes_ProgramKey2 )(uint8_t *pKey)
static uint32_t(* | aes_Config_DMA )(uint32_t channel_id)
static uint32_t(* | aes_Operate_DMA )(uint32_t channel_id, uint8_t *dataOutAddr, uint8_t *dataInAddr, uint32_t size)
static uint32_t(* | aes_Get_Status_DMA )(uint32_t channel_id)

## Macro Definition Documentation

#define AES_API_TABLE_OFFSET 0x2

Definition at line 39 of file aes_18xx_43xx.c.

#define BOOTROM_BASE 0x10400100

Definition at line 38 of file aes_18xx_43xx.c.

## Typedef Documentation

typedef uint32_t(* U32_FP_V)(void)

Definition at line 42 of file aes_18xx_43xx.c.

typedef void(* V_FP_V)(void)

Definition at line 41 of file aes_18xx_43xx.c.

## Variable Documentation

uint32_t(* aes_Config_DMA)(uint32_t channel_id)
| static

Definition at line 64 of file aes_18xx_43xx.c.

uint32_t(* aes_Get_Status_DMA)(uint32_t channel_id)
| static

Definition at line 66 of file aes_18xx_43xx.c.

void(* aes_LoadIV_IC)(void)
| static

Definition at line 60 of file aes_18xx_43xx.c.

void(* aes_LoadIV_SW)(uint8_t *pVector)
| static

Definition at line 59 of file aes_18xx_43xx.c.

void(* aes_LoadKey1)(void)
| static

Definition at line 55 of file aes_18xx_43xx.c.

void(* aes_LoadKey2)(void)
| static

Definition at line 56 of file aes_18xx_43xx.c.

void(* aes_LoadKeyRNG)(void)
| static

Definition at line 57 of file aes_18xx_43xx.c.

void(* aes_LoadKeySW)(uint8_t *pKey)
| static

Definition at line 58 of file aes_18xx_43xx.c.

uint32_t(* aes_Operate)(uint8_t *pDatOut, uint8_t *pDatIn, uint32_t size)
| static

Definition at line 61 of file aes_18xx_43xx.c.

uint32_t(* aes_Operate_DMA)(uint32_t channel_id, uint8_t *dataOutAddr, uint8_t *dataInAddr, uint32_t size)
| static

Definition at line 65 of file aes_18xx_43xx.c.

uint32_t(* aes_ProgramKey1)(uint8_t *pKey)
| static

Definition at line 62 of file aes_18xx_43xx.c.

uint32_t(* aes_ProgramKey2)(uint8_t *pKey)
| static

Definition at line 63 of file aes_18xx_43xx.c.

uint32_t(* aes_SetMode)(CHIP_AES_OP_MODE_T AesMode)
| static

Definition at line 54 of file aes_18xx_43xx.c.

unsigned long* BOOTROM_API_TABLE
| static

Definition at line 44 of file aes_18xx_43xx.c.