SHA2 driver implementation for the CC26X2 family.
============================================================================
This file should only be included in the board file to fill the SHA2_config struct.
The CC26XX family has a dedicated hardware crypto accelerator. It is capable of multiple AES block cipher modes of operation as well as SHA2 operations. Only one operation can be carried out on the accerator at a time. Mutual exclusion is implemented at the driver level and coordinated between all drivers relying onthe accelerator. It is transparent to the application and only noted ensure sensible access timeouts are set.
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 paramter validation coverage is achieved by turning on assertions when compiling the driver.
#include <stdint.h>
#include <stdbool.h>
#include <ti/drivers/Power.h>
#include <ti/drivers/SHA2.h>
#include <ti/drivers/cryptoutils/cryptokey/CryptoKey.h>
#include <ti/devices/DeviceFamily.h>
#include <DeviceFamily_constructPath(driverlib/crypto.h)>
#include <ti/drivers/dpl/HwiP.h>
#include <ti/drivers/dpl/SwiP.h>
#include <ti/drivers/dpl/SemaphoreP.h>
Go to the source code of this file.
Data Structures | |
struct | SHA2CC26X2_HWAttrs_ |
SHA2CC26XX Hardware Attributes. More... | |
struct | SHA2CC26X2_Object_ |
SHA2CC26XX Object. More... | |
Typedefs | |
typedef struct SHA2CC26X2_HWAttrs_ | SHA2CC26X2_HWAttrs |
SHA2CC26XX Hardware Attributes. More... | |
typedef struct SHA2CC26X2_Object_ | SHA2CC26X2_Object |
SHA2CC26XX Object. More... | |
typedef struct SHA2CC26X2_HWAttrs_ SHA2CC26X2_HWAttrs |
SHA2CC26XX Hardware Attributes.
SHA226XX hardware attributes should be included in the board file and pointed to by the SHA2_config struct.
typedef struct SHA2CC26X2_Object_ SHA2CC26X2_Object |
SHA2CC26XX Object.
The application must not access any member variables of this structure!