Data Structures | Macros | Typedefs
AESCMACLPF3.h File Reference

Detailed Description

AESCMAC (CMAC & CBC-MAC) driver implementation for the Low Power F3 family.

==========================================================================

Hardware Accelerator

The Low Power F3 family of devices has dedicated hardware accelerators. CC23XX devices have one dedicated accelerator whereas CC27XX devices have two (Primary and Secondary). Combined they can perform AES encryption operations with 128-bit, 192-bit and 256-bit keys. Only one operation can be carried out on the accelerator at a time. Mutual exclusion is implemented at the driver level and coordinated between all drivers relying on the accelerator. It is transparent to the application and only noted to ensure sensible access timeouts are set.

Implementation Limitations

The following limitations apply to the AESCCMLPF3 Driver for CC27xx device family only:

Runtime Parameter Validation

The driver implementation does not perform runtime checks for most input parameters. Only values that are likely to have a stochastic element to them are checked (such as whether a driver is already open). Higher input parameter validation coverage is achieved by turning on assertions when compiling the driver.

#include <stdbool.h>
#include <stdint.h>
#include <ti/drivers/AESCMAC.h>
#include <ti/drivers/cryptoutils/aes/AESCommonLPF3.h>
#include <ti/drivers/cryptoutils/sharedresources/CryptoResourceLPF3.h>
#include <ti/devices/DeviceFamily.h>
#include <DeviceFamily_constructPath(inc/hw_types.h)>
#include <DeviceFamily_constructPath(driverlib/aes.h)>
Include dependency graph for AESCMACLPF3.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  AESCMACLPF3_Object
 AESCMACLPF3 Object. More...
 

Macros

#define AESCMACLPF3_DEFAULT_AUTOCFG   ((uint32_t)AES_AUTOCFG_AESSRC_TXTXBUF | (uint32_t)AES_AUTOCFG_TRGAES_WRBUF3 | (uint32_t)AES_AUTOCFG_BUSHALT_EN)
 
#define AESCMACLPF3_DMA_CONFIG   ((uint32_t)AES_DMA_ADRCHA_BUF0 | (uint32_t)AES_DMA_TRGCHA_AESSTART)
 
#define AESCBCMACLPF3_DMA_CONFIG   AESCMACLPF3_DMA_CONFIG
 

Typedefs

typedef AESCommonLPF3_HWAttrs AESCMACLPF3_HWAttrs
 AESCMACLPF3 Hardware Attributes. More...
 

Macro Definition Documentation

§ AESCMACLPF3_DEFAULT_AUTOCFG

#define AESCMACLPF3_DEFAULT_AUTOCFG   ((uint32_t)AES_AUTOCFG_AESSRC_TXTXBUF | (uint32_t)AES_AUTOCFG_TRGAES_WRBUF3 | (uint32_t)AES_AUTOCFG_BUSHALT_EN)

§ AESCMACLPF3_DMA_CONFIG

#define AESCMACLPF3_DMA_CONFIG   ((uint32_t)AES_DMA_ADRCHA_BUF0 | (uint32_t)AES_DMA_TRGCHA_AESSTART)

§ AESCBCMACLPF3_DMA_CONFIG

#define AESCBCMACLPF3_DMA_CONFIG   AESCMACLPF3_DMA_CONFIG

Typedef Documentation

§ AESCMACLPF3_HWAttrs

AESCMACLPF3 Hardware Attributes.

AESCMACLPF3 hardware attributes should be included in the board file and pointed to by the AESCMAC_config struct.

© Copyright 1995-2024, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale