psa_drv_se_t
crypto_se_driver.h
uint32_t uint32_t psa_drv_se_t::private_hal_version private_hal_version psa_drv_se_t::private_hal_version

The version of the driver HAL that this driver implements. This is a protection against loading driver binaries built against a different version of this specification. Use PSA_DRV_SE_HAL_VERSION.

size_t size_t psa_drv_se_t::private_persistent_data_size private_persistent_data_size psa_drv_se_t::private_persistent_data_size

The size of the driver's persistent data in bytes.

This can be 0 if the driver does not need persistent data.

See the documentation of psa_drv_se_context_t::persistent_data for more information about why and how a driver can use persistent data.

psa_drv_se_init_t psa_drv_se_init_t psa_drv_se_t::private_p_init private_p_init psa_drv_se_t::private_p_init

The driver initialization function.

This function is called once during the initialization of the PSA Cryptography subsystem, before any other function of the driver is called. If this function returns a failure status, the driver will be unusable, at least until the next system reset.

If this field is `NULL`, it is equivalent to a function that does nothing and returns PSA_SUCCESS.

const psa_drv_se_key_management_t * const psa_drv_se_key_management_t* psa_drv_se_t::private_key_management private_key_management psa_drv_se_t::private_key_management
const psa_drv_se_mac_t * const psa_drv_se_mac_t* psa_drv_se_t::private_mac private_mac psa_drv_se_t::private_mac
const psa_drv_se_cipher_t * const psa_drv_se_cipher_t* psa_drv_se_t::private_cipher private_cipher psa_drv_se_t::private_cipher
const psa_drv_se_aead_t * const psa_drv_se_aead_t* psa_drv_se_t::private_aead private_aead psa_drv_se_t::private_aead
const psa_drv_se_asymmetric_t * const psa_drv_se_asymmetric_t* psa_drv_se_t::private_asymmetric private_asymmetric psa_drv_se_t::private_asymmetric
const psa_drv_se_key_derivation_t * const psa_drv_se_key_derivation_t* psa_drv_se_t::private_derivation private_derivation psa_drv_se_t::private_derivation

A structure containing pointers to all the entry points of a secure element driver.

Future versions of this specification may add extra substructures at the end of this structure.

psa_drv_se_aead_t
private_p_decrypt
private_p_encrypt
psa_drv_se_asymmetric_t
private_p_decrypt
private_p_encrypt
private_p_sign
private_p_verify
psa_drv_se_cipher_t
private_p_ecb
private_p_setup
psa_drv_se_context_t
psa_drv_se_key_derivation_t
private_p_setup
psa_drv_se_key_management_t
private_p_allocate
private_p_destroy
private_p_export
private_p_export_public
private_p_generate
private_p_import
private_p_validate_slot_number
psa_drv_se_mac_t
private_p_mac
private_p_mac_verify
private_p_setup
psa_drv_se_t
private_p_init
private_key_management
private_mac
private_cipher
private_aead
private_asymmetric
private_derivation
- psa_drv_se_t
  private_aead
- psa_drv_se_t
  private_asymmetric
- psa_drv_se_t
  private_cipher
- psa_drv_se_t
  private_derivation
- psa_drv_se_t
  private_hal_version
- psa_drv_se_t
  private_key_management
- psa_drv_se_t
  private_mac
- psa_drv_se_t
  private_p_init
- psa_drv_se_t
  private_persistent_data_size