33 #ifndef ti_drivers_trng_TRNGCC26X4_s__include 34 #define ti_drivers_trng_TRNGCC26X4_s__include 41 #include <ti/sysbios/psa/SecureCB.h> 43 #include <third_party/tfm/interface/include/psa/crypto_types.h> 44 #include <third_party/tfm/interface/include/psa/service.h> 46 #include "ti_drivers_config.h" 58 #define TRNG_S_MSG_TYPE_CONSTRUCT (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 0U))) 59 #define TRNG_S_MSG_TYPE_OPEN (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 1U))) 60 #define TRNG_S_MSG_TYPE_REGISTER_CALLBACKS \ 61 (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 2U))) 62 #define TRNG_S_MSG_TYPE_CLOSE (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 3U))) 63 #define TRNG_S_MSG_TYPE_GENERATE_KEY (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 4U))) 64 #define TRNG_S_MSG_TYPE_GET_RANDOM_BYTES (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 5U))) 65 #define TRNG_S_MSG_TYPE_CANCEL_OPERATION (CRYPTO_S_MSG_TYPE_INDEX_TRNG | ((int32_t)1 << (CRYPTO_S_MSG_TYPE_SHIFT + 6U))) 71 #ifndef CONFIG_TRNG_S_CONFIG_POOL_SIZE 72 #define CONFIG_TRNG_S_CONFIG_POOL_SIZE 1 75 #define TRNG_SECURE_CALLBACK_COUNT (CONFIG_TI_DRIVERS_TRNG_COUNT + CONFIG_TRNG_S_CONFIG_POOL_SIZE) size_t randomBytesSize
Definition: TRNGCC26X4_s.h:142
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:129
int_fast16_t returnValue
Definition: TRNGCC26X4_s.h:94
uint8_t * randomBytes
Definition: TRNGCC26X4_s.h:95
uint_least8_t index
Definition: TRNGCC26X4_s.h:116
TRNG Parameters.
Definition: TRNG.h:426
TRNG_s_CryptoKeySecureCallback * cryptoKeyCallback
Definition: TRNGCC26X4_s.h:123
Definition: TRNGCC26X4_s.h:80
int_fast16_t returnValue
Definition: TRNGCC26X4_s.h:85
TRNG Global configuration.
Definition: TRNG.h:320
Definition: TRNGCC26X4_s.h:89
CryptoKey datastructure.
Definition: CryptoKey.h:192
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:122
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:93
Definition: TRNGCC26X4_s.h:114
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:84
void * randomBytes
Definition: TRNGCC26X4_s.h:141
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:140
SecureCB_Object object
Definition: TRNGCC26X4_s.h:91
Definition: TRNGCC26X4_s.h:127
TRNG_Config * config
Definition: TRNGCC26X4_s.h:110
int_fast16_t TRNGCC26XX_s_setSamplesPerCycle(TRNG_Handle handle, uint32_t samplesPerCycle)
Fast veneer to set the number of entropy generation cycles before the results are returned...
const TRNG_Params * params
Definition: TRNGCC26X4_s.h:111
CryptoKey * entropy
Definition: TRNGCC26X4_s.h:86
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:134
TRNG_s_RandomBytesSecureCallback * randomBytesCallback
Definition: TRNGCC26X4_s.h:124
Definition: TRNGCC26X4_s.h:120
Definition: TRNGCC26X4_s.h:145
Definition: TRNGCC26X4_s.h:132
psa_status_t TRNG_s_handlePsaMsg(psa_msg_t *msg)
Handles PSA messages for TRNG secure driver.
SecureCB_Object object
Definition: TRNGCC26X4_s.h:82
Definition: TRNGCC26X4_s.h:108
const TRNG_Params * params
Definition: TRNGCC26X4_s.h:117
size_t randomBytesSize
Definition: TRNGCC26X4_s.h:96
void TRNG_s_init(void)
Initializes the TRNG secure driver.
CryptoKey * entropy
Definition: TRNGCC26X4_s.h:135
Definition: TRNGCC26X4_s.h:138
TRNG_Handle handle
Definition: TRNGCC26X4_s.h:147