Microchip® Advanced Software Framework

stb_armcrypto.h File Reference

Declarations for security tool box required for ARM crypto engine.

Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.

#include "pal.h"

Macros

#define AES_BLOCKSIZE   (16)
 Size of AES blocks. More...
 
#define AES_DIR_DECRYPT   (1)
 Defines AES direction as decryption. More...
 
#define AES_DIR_ENCRYPT   (0)
 Defines AES direction as encryption. More...
 
#define AES_KEYSIZE   (16)
 Size of AES key. More...
 

Functions

void sal_aes_restart (void)
 Re-inits key and state after a sleep or TRX reset. More...
 

#define AES_BLOCKSIZE   (16)

Size of AES blocks.

#define AES_DIR_DECRYPT   (1)

Defines AES direction as decryption.

#define AES_DIR_ENCRYPT   (0)

Defines AES direction as encryption.

#define AES_KEYSIZE   (16)

Size of AES key.

void sal_aes_restart ( void  )

Re-inits key and state after a sleep or TRX reset.

This function re-initializes the AES key and the state of the AES engine after TRX sleep or reset. The contents of AES registers AES_CON and AES_CON_MIRROR are restored, the next AES operation started with sal_aes_wrrd() will be executed correctly. However, the contents of SRAM buffers is destroyed, in general. When using sal_aes_wrrd(), call sal_aes_read() to get the result of the last AES operation BEFORE you put the transceiver unit to sleep state!

References AES_BASE_ADDR, AES_BLOCKSIZE, aes_buf, AES_DIR_ENCRYPT, AES_KEYSIZE, AES_MODE_KEY, dec_key, enc_key, last_dir, RG_AES_CTRL, setup_flag, SR_AES_MODE, SR_MASK, and trx_sram_write().