feat(mbedtls/sha): New API for setting SHA mode

This commit is contained in:
harshal.patil
2025-05-26 14:27:12 +05:30
parent afdf1a31c8
commit fe78370ec9
32 changed files with 279 additions and 135 deletions

View File

@@ -39,6 +39,16 @@ static inline void sha_ll_reset_register(void)
PCR.ecdsa_conf.ecdsa_rst_en = 0;
}
/**
* @brief Load the mode for the SHA engine
*
* @param sha_type The SHA algorithm type
*/
static inline void sha_ll_set_mode(esp_sha_type sha_type)
{
REG_WRITE(SHA_MODE_REG, sha_type);
}
/**
* @brief Start a new SHA block conversions (no initial hash in HW)
*
@@ -46,7 +56,7 @@ static inline void sha_ll_reset_register(void)
*/
static inline void sha_ll_start_block(esp_sha_type sha_type)
{
REG_WRITE(SHA_MODE_REG, sha_type);
(void) sha_type;
REG_WRITE(SHA_START_REG, 1);
}
@@ -57,29 +67,23 @@ static inline void sha_ll_start_block(esp_sha_type sha_type)
*/
static inline void sha_ll_continue_block(esp_sha_type sha_type)
{
REG_WRITE(SHA_MODE_REG, sha_type);
(void) sha_type;
REG_WRITE(SHA_CONTINUE_REG, 1);
}
/**
* @brief Start a new SHA message conversion using DMA (no initial hash in HW)
*
* @param sha_type The SHA algorithm type
*/
static inline void sha_ll_start_dma(esp_sha_type sha_type)
static inline void sha_ll_start_dma(void)
{
REG_WRITE(SHA_MODE_REG, sha_type);
REG_WRITE(SHA_DMA_START_REG, 1);
}
/**
* @brief Continue a SHA message conversion using DMA (initial hash in HW)
*
* @param sha_type The SHA algorithm type
*/
static inline void sha_ll_continue_dma(esp_sha_type sha_type)
static inline void sha_ll_continue_dma(void)
{
REG_WRITE(SHA_MODE_REG, sha_type);
REG_WRITE(SHA_DMA_CONTINUE_REG, 1);
}