58 #ifndef ti_drivers_aesctr_AESCTRLPF3__include 59 #define ti_drivers_aesctr_AESCTRLPF3__include 68 #include <ti/devices/DeviceFamily.h> 70 #if (DeviceFamily_PARENT != DeviceFamily_PARENT_CC35XX) 71 #include DeviceFamily_constructPath(driverlib/aes.h) 74 #if ((DeviceFamily_PARENT == DeviceFamily_PARENT_CC27XX) || (DeviceFamily_PARENT == DeviceFamily_PARENT_CC35XX)) 91 #if (DeviceFamily_PARENT == DeviceFamily_PARENT_CC23X0) || (DeviceFamily_PARENT == DeviceFamily_PARENT_CC27XX) 92 #define AESCTRLPF3_DEFAULT_AUTOCFG \ 93 ((uint32_t)AES_AUTOCFG_AESSRC_BUF | (uint32_t)AES_AUTOCFG_TRGAES_WRBUF3S | \ 94 (uint32_t)AES_AUTOCFG_TRGAES_RDTXT3 | (uint32_t)AES_AUTOCFG_CTRSIZE_CTR128 | \ 95 (uint32_t)AES_AUTOCFG_CTRENDN_BIGENDIAN | (uint32_t)AES_AUTOCFG_BUSHALT_EN) 96 #elif (DeviceFamily_PARENT == DeviceFamily_PARENT_CC35XX) 99 #error "Unsupported DeviceFamily_Parent for AESCTRLPF3!" 114 #if (DeviceFamily_PARENT == DeviceFamily_PARENT_CC23X0) || (DeviceFamily_PARENT == DeviceFamily_PARENT_CC27XX) 115 #define AESCTRLPF3_LAST_BLOCK_AUTOCFG \ 116 ((uint32_t)AES_AUTOCFG_AESSRC_BUF | (uint32_t)AES_AUTOCFG_TRGAES_WRBUF3S | \ 117 (uint32_t)AES_AUTOCFG_CTRSIZE_CTR128 | (uint32_t)AES_AUTOCFG_CTRENDN_BIGENDIAN | \ 118 (uint32_t)AES_AUTOCFG_BUSHALT_EN) 119 #elif (DeviceFamily_PARENT == DeviceFamily_PARENT_CC35XX) 122 #error "Unsupported DeviceFamily_Parent for AESCTRLPF3!" 151 #if ((DeviceFamily_PARENT == DeviceFamily_PARENT_CC27XX) || (DeviceFamily_PARENT == DeviceFamily_PARENT_CC35XX)) 178 void AESCTRLPF3_processData(
const uint8_t *input, uint8_t *output,
size_t inputLength,
bool isOneStepOrFinalOperation);
180 #if (DeviceFamily_PARENT != DeviceFamily_PARENT_CC35XX) 193 const uint8_t *input,
207 AESReadBUF32(&counterOut[0]);
217 AESWriteBUF32(&counterIn[0]);
236 __STATIC_INLINE
bool AESCTR_acquireLock(
AESCTR_Handle handle, uint32_t timeout)
250 __STATIC_INLINE
void AESCTR_releaseLock(
AESCTR_Handle handle)
264 __STATIC_INLINE
void AESCTR_enableThreadSafety(
AESCTR_Handle handle)
267 object->threadSafe =
true;
282 __STATIC_INLINE
void AESCTR_disableThreadSafety(
AESCTR_Handle handle)
285 object->threadSafe =
false;
uint32_t keyAssetID
Definition: AESCTRLPF3.h:158
size_t inputLength
Definition: AESCTRLPF3.h:145
AESCommonLPF3_HWAttrs AESCTRLPF3_HWAttrs
AESCTRLPF3 Hardware Attributes.
Definition: AESCTRLPF3.h:131
bool CryptoResourceLPF3_acquireLock(uint32_t timeout)
void(* AESCTR_CallbackFxn)(AESCTR_Handle handle, int_fast16_t returnValue, AESCTR_OperationUnion *operation, AESCTR_OperationType operationType)
The definition of a callback function used by the AESCTR driver when used in AESCTR_RETURN_BEHAVIOR_C...
Definition: AESCTR.h:758
CryptoKeyKeyStore_PSA driver header.
AES Global configuration.
Definition: AESCommon.h:154
uint8_t * output
Definition: AESCTRLPF3.h:144
AESCTR_OperationType
Enum for the operation types supported by the driver.
Definition: AESCTR.h:715
AESCTRLPF3 Object.
Definition: AESCTRLPF3.h:138
AESCTR_OperationUnion * operation
Definition: AESCTRLPF3.h:147
AESCTR_OperationType operationType
Definition: AESCTRLPF3.h:149
AESCommonLPF3 Hardware Attributes.
Definition: AESCommonLPF3.h:103
psa_key_location_t KeyStore_PSA_KeyLocation
Definition: CryptoKeyKeyStore_PSA.h:251
void CryptoResourceLPF3_releaseLock(void)
AESCommon driver implementation for the Low Power F3 family.
KeyStore_PSA_KeyLocation keyLocation
Definition: AESCTRLPF3.h:159
#define AES_BLOCK_SIZE_WORDS
Definition: AESCommonLPF3.h:86
Shared resources to arbitrate access to the AES engine.
void * object
Definition: AESCommon.h:157
size_t inputLengthRemaining
Definition: AESCTRLPF3.h:146
AESCTR_CallbackFxn callbackFxn
Definition: AESCTRLPF3.h:148
Union containing a reference to a one-step and segmented operation structure.
Definition: AESCTR.h:677
int_fast16_t hsmStatus
The staus of the HSM Boot up process if HSMLPF3_STATUS_SUCCESS, the HSM booted properly. if HSMLPF3_STATUS_ERROR, the HSM did not boot properly.
Definition: AESCTRLPF3.h:157
bool segmentedOperationInProgress
Definition: AESCTRLPF3.h:162
bool threadSafe
Definition: AESCTRLPF3.h:150
const uint8_t * input
Definition: AESCTRLPF3.h:143
AESCommonLPF3 Object.
Definition: AESCommonLPF3.h:125
AESCommonLPF3_Object common
Definition: AESCTRLPF3.h:141