CryptoAuthLib
Microchip CryptoAuthentication Library
ATCAHAL_t Struct Reference

an intermediary data structure to allow the HAL layer to point the standard API functions used by the upper layers to the HAL implementation for the interface. This isolates the upper layers and loosely couples the ATCAIface object from the physical implementation. More...

#include <atca_hal.h>

Data Fields

ATCA_STATUS(* halinit )(void *hal, ATCAIfaceCfg *cfg)
 
ATCA_STATUS(* halpostinit )(ATCAIface iface)
 
ATCA_STATUS(* halsend )(ATCAIface iface, uint8_t *txdata, int txlength)
 
ATCA_STATUS(* halreceive )(ATCAIface iface, uint8_t *rxdata, uint16_t *rxlength)
 
ATCA_STATUS(* halwake )(ATCAIface iface)
 
ATCA_STATUS(* halidle )(ATCAIface iface)
 
ATCA_STATUS(* halsleep )(ATCAIface iface)
 
ATCA_STATUS(* halrelease )(void *hal_data)
 
void * hal_data
 

Detailed Description

an intermediary data structure to allow the HAL layer to point the standard API functions used by the upper layers to the HAL implementation for the interface. This isolates the upper layers and loosely couples the ATCAIface object from the physical implementation.

Field Documentation

◆ hal_data

void* hal_data

◆ halidle

ATCA_STATUS(* halidle) (ATCAIface iface)

◆ halinit

ATCA_STATUS(* halinit) (void *hal, ATCAIfaceCfg *cfg)

◆ halpostinit

ATCA_STATUS(* halpostinit) (ATCAIface iface)

◆ halreceive

ATCA_STATUS(* halreceive) (ATCAIface iface, uint8_t *rxdata, uint16_t *rxlength)

◆ halrelease

ATCA_STATUS(* halrelease) (void *hal_data)

◆ halsend

ATCA_STATUS(* halsend) (ATCAIface iface, uint8_t *txdata, int txlength)

◆ halsleep

ATCA_STATUS(* halsleep) (ATCAIface iface)

◆ halwake

ATCA_STATUS(* halwake) (ATCAIface iface)