Data Structures | Macros | Functions
AESGCMCC26X4_s.h File Reference
#include <stdint.h>
#include <ti/drivers/crypto/CryptoCC26X4_s.h>
#include <ti/drivers/AESGCM.h>
#include <ti/drivers/spe/SecureCallback.h>
#include <third_party/tfm/interface/include/psa/error.h>
#include <third_party/tfm/interface/include/psa/service.h>
Include dependency graph for AESGCMCC26X4_s.h:

Go to the source code of this file.

Data Structures

struct  AESGCM_s_SecureCallback
 
struct  AESGCM_s_ConstructMsg
 
struct  AESGCM_s_OpenMsg
 
struct  AESGCM_s_CallbackMsg
 
struct  AESGCM_s_CloseMsg
 
struct  AESGCM_s_OneStepOperationMsg
 
struct  AESGCM_s_SetupOperationMsg
 
struct  AESGCM_s_SetLengthsMsg
 
struct  AESGCM_s_SetIVMsg
 
struct  AESGCM_s_AddAADMsg
 
struct  AESGCM_s_AddDataMsg
 
struct  AESGCM_s_FinalizeOperationMsg
 
struct  AESGCM_s_CancelOperationMsg
 

Macros

#define AESGCM_S_MSG_TYPE_CONSTRUCT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 0U)))
 
#define AESGCM_S_MSG_TYPE_OPEN   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 1U)))
 
#define AESGCM_S_MSG_TYPE_REGISTER_CALLBACK   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 2U)))
 
#define AESGCM_S_MSG_TYPE_CLOSE   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 3U)))
 
#define AESGCM_S_MSG_TYPE_ONE_STEP_ENCRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 4U)))
 
#define AESGCM_S_MSG_TYPE_ONE_STEP_DECRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 5U)))
 
#define AESGCM_S_MSG_TYPE_SETUP_ENCRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 6U)))
 
#define AESGCM_S_MSG_TYPE_SETUP_DECRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 7U)))
 
#define AESGCM_S_MSG_TYPE_SET_LENGTHS   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 8U)))
 
#define AESGCM_S_MSG_TYPE_SET_IV   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 9U)))
 
#define AESGCM_S_MSG_TYPE_ADD_AAD   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 10U)))
 
#define AESGCM_S_MSG_TYPE_ADD_DATA   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 11U)))
 
#define AESGCM_S_MSG_TYPE_FINALIZE_ENCRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 12U)))
 
#define AESGCM_S_MSG_TYPE_FINALIZE_DECRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 13U)))
 
#define AESGCM_S_MSG_TYPE_CANCEL_OPERATION   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 14U)))
 
#define CONFIG_AESGCM_S_CONFIG_POOL_SIZE   1
 
#define AESGCM_SECURE_CALLBACK_COUNT   (CONFIG_TI_DRIVERS_AESGCM_COUNT + CONFIG_AESGCM_S_CONFIG_POOL_SIZE)
 

Functions

psa_status_t AESGCM_s_handlePsaMsg (psa_msg_t *msg)
 Handles PSA messages for AES GCM secure driver. More...
 
void AESGCM_s_init (void)
 Initializes the AES GCM secure driver. More...
 

Macro Definition Documentation

§ AESGCM_S_MSG_TYPE_CONSTRUCT

#define AESGCM_S_MSG_TYPE_CONSTRUCT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 0U)))

§ AESGCM_S_MSG_TYPE_OPEN

#define AESGCM_S_MSG_TYPE_OPEN   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 1U)))

§ AESGCM_S_MSG_TYPE_REGISTER_CALLBACK

#define AESGCM_S_MSG_TYPE_REGISTER_CALLBACK   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 2U)))

§ AESGCM_S_MSG_TYPE_CLOSE

#define AESGCM_S_MSG_TYPE_CLOSE   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 3U)))

§ AESGCM_S_MSG_TYPE_ONE_STEP_ENCRYPT

#define AESGCM_S_MSG_TYPE_ONE_STEP_ENCRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 4U)))

§ AESGCM_S_MSG_TYPE_ONE_STEP_DECRYPT

#define AESGCM_S_MSG_TYPE_ONE_STEP_DECRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 5U)))

§ AESGCM_S_MSG_TYPE_SETUP_ENCRYPT

#define AESGCM_S_MSG_TYPE_SETUP_ENCRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 6U)))

§ AESGCM_S_MSG_TYPE_SETUP_DECRYPT

#define AESGCM_S_MSG_TYPE_SETUP_DECRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 7U)))

§ AESGCM_S_MSG_TYPE_SET_LENGTHS

#define AESGCM_S_MSG_TYPE_SET_LENGTHS   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 8U)))

§ AESGCM_S_MSG_TYPE_SET_IV

#define AESGCM_S_MSG_TYPE_SET_IV   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 9U)))

§ AESGCM_S_MSG_TYPE_ADD_AAD

#define AESGCM_S_MSG_TYPE_ADD_AAD   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 10U)))

§ AESGCM_S_MSG_TYPE_ADD_DATA

#define AESGCM_S_MSG_TYPE_ADD_DATA   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 11U)))

§ AESGCM_S_MSG_TYPE_FINALIZE_ENCRYPT

#define AESGCM_S_MSG_TYPE_FINALIZE_ENCRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 12U)))

§ AESGCM_S_MSG_TYPE_FINALIZE_DECRYPT

#define AESGCM_S_MSG_TYPE_FINALIZE_DECRYPT   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 13U)))

§ AESGCM_S_MSG_TYPE_CANCEL_OPERATION

#define AESGCM_S_MSG_TYPE_CANCEL_OPERATION   (CRYPTO_S_MSG_TYPE_INDEX_AESGCM | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 14U)))

§ CONFIG_AESGCM_S_CONFIG_POOL_SIZE

#define CONFIG_AESGCM_S_CONFIG_POOL_SIZE   1

§ AESGCM_SECURE_CALLBACK_COUNT

#define AESGCM_SECURE_CALLBACK_COUNT   (CONFIG_TI_DRIVERS_AESGCM_COUNT + CONFIG_AESGCM_S_CONFIG_POOL_SIZE)

Function Documentation

§ AESGCM_s_handlePsaMsg()

psa_status_t AESGCM_s_handlePsaMsg ( psa_msg_t *  msg)

Handles PSA messages for AES GCM secure driver.

Note
This function should be called by secure partition thread only.
Parameters
[in]msgpointer to PSA message
Return values
PSA_SUCCESSif successful.
PSA_ERROR_PROGRAMMER_ERRORif any args point to secure addresses.

§ AESGCM_s_init()

void AESGCM_s_init ( void  )

Initializes the AES GCM secure driver.

Note
This function should be called by secure partition thread only.
© Copyright 1995-2022, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale