58 typedef void (*mxc_aes_complete_t) (
void* req,
int result);
79 MXC_AES_ENCRYPT_EXT_KEY = 0,
80 MXC_AES_DECRYPT_EXT_KEY = 1,
81 MXC_AES_DECRYPT_INT_KEY = 2
88 typedef struct _mxc_aes_cipher_req_t {
108 int MXC_AES_Init (
void);
115 void MXC_AES_EnableInt (uint32_t interrupt);
122 void MXC_AES_DisableInt (uint32_t interrupt);
129 int MXC_AES_IsBusy (
void);
136 int MXC_AES_Shutdown (
void);
142 void MXC_AES_DMACallback (
int ch,
int error);
147 void MXC_AES_GenerateKey (
void);
154 void MXC_AES_SetKeySize (mxc_aes_keys_t key);
161 mxc_aes_keys_t MXC_AES_GetKeySize (
void);
167 void MXC_AES_FlushInputFIFO (
void);
173 void MXC_AES_FlushOutputFIFO (
void);
179 void MXC_AES_Start (
void);
186 uint32_t MXC_AES_GetFlags (
void);
193 void MXC_AES_ClearFlags (uint32_t flags);
232 int MXC_AES_TXDMAConfig (
void *src_addr,
int len);
241 int MXC_AES_RXDMAConfig (
void *dest_addr,
int len);
278 void MXC_AES_SetExtKey(
const void* key, mxc_aes_keys_t len);
mxc_aes_complete_t callback
Callback function.
Definition: aes.h:94
#define MXC_S_AES_CTRL_KEY_SIZE_AES128
Definition: aes_regs.h:137
mxc_aes_enc_type_t encryption
Encrytion type or mxc_aes_enc_type_t.
Definition: aes.h:93
uint32_t * resultData
Pointer to encrypted data.
Definition: aes.h:91
#define MXC_S_AES_CTRL_KEY_SIZE_AES256
Definition: aes_regs.h:141
uint32_t * inputData
Pointer to input data.
Definition: aes.h:90
#define MXC_S_AES_CTRL_KEY_SIZE_AES192
Definition: aes_regs.h:139
uint32_t length
Length of the data.
Definition: aes.h:89
Structure used to set up AES request.
Definition: aes.h:88
mxc_aes_keys_t keySize
Size of AES key.
Definition: aes.h:92