boards/risc-v/espressif: Add AES accelerator board support

Add AES accelerator board support for esp32[-c3|-c6|-h2|-p4]

Signed-off-by: Eren Terzioglu <eren.terzioglu@espressif.com>
This commit is contained in:
Eren Terzioglu
2026-01-19 12:05:18 +01:00
committed by Alan C. Assis
parent 76f69c7a8c
commit 7951410bc7
8 changed files with 62 additions and 14 deletions
@@ -129,6 +129,10 @@
# include "espressif/esp_sha.h"
#endif
#ifdef CONFIG_ESPRESSIF_AES_ACCELERATOR
# include "espressif/esp_aes.h"
#endif
#ifdef CONFIG_MMCSD_SPI
# include "esp_board_mmcsd.h"
#endif
@@ -8,8 +8,6 @@
# CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_HEXDUMP is not set
# CONFIG_TESTING_CRYPTO_3DES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CTR is not set
# CONFIG_TESTING_CRYPTO_AES_XTS is not set
# CONFIG_TESTING_CRYPTO_HASH_HUGE_BLOCK is not set
CONFIG_ALLOW_BSD_COMPONENTS=y
@@ -29,9 +27,11 @@ CONFIG_BOARDCTL_RESET=y
CONFIG_BOARD_LOOPSPERMSEC=15000
CONFIG_BUILTIN=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_CRYPTODEV=y
CONFIG_CRYPTO_CRYPTODEV_HARDWARE=y
CONFIG_CRYPTO_RANDOM_POOL=y
CONFIG_ESPRESSIF_AES_ACCELERATOR=y
CONFIG_ESPRESSIF_SHA_ACCELERATOR=y
CONFIG_FS_PROCFS=y
CONFIG_IDLETHREAD_STACKSIZE=2048
@@ -124,6 +124,10 @@
# include "espressif/esp_sha.h"
#endif
#ifdef CONFIG_ESPRESSIF_AES_ACCELERATOR
# include "espressif/esp_aes.h"
#endif
#ifdef CONFIG_MMCSD_SPI
# include "esp_board_mmcsd.h"
#endif
@@ -191,14 +195,23 @@ int esp_bringup(void)
}
#endif
#if defined(CONFIG_ESPRESSIF_SHA_ACCELERATOR) && \
!defined(CONFIG_CRYPTO_CRYPTODEV_HARDWARE)
#if !defined(CONFIG_CRYPTO_CRYPTODEV_HARDWARE)
# if defined(CONFIG_ESPRESSIF_SHA_ACCELERATOR)
ret = esp_sha_init();
if (ret < 0)
{
syslog(LOG_ERR,
"ERROR: Failed to initialize SHA: %d\n", ret);
}
# endif
# if defined(CONFIG_ESPRESSIF_AES_ACCELERATOR)
ret = esp_aes_init();
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: Failed to initialize AES: %d\n", ret);
}
# endif
#endif
#ifdef CONFIG_ESPRESSIF_MWDT0
@@ -8,8 +8,6 @@
# CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_HEXDUMP is not set
# CONFIG_TESTING_CRYPTO_3DES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CTR is not set
# CONFIG_TESTING_CRYPTO_AES_XTS is not set
# CONFIG_TESTING_CRYPTO_HASH_HUGE_BLOCK is not set
CONFIG_ALLOW_BSD_COMPONENTS=y
@@ -30,9 +28,11 @@ CONFIG_BOARDCTL_RESET=y
CONFIG_BOARD_LOOPSPERMSEC=15000
CONFIG_BUILTIN=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_CRYPTODEV=y
CONFIG_CRYPTO_CRYPTODEV_HARDWARE=y
CONFIG_CRYPTO_RANDOM_POOL=y
CONFIG_ESPRESSIF_AES_ACCELERATOR=y
CONFIG_ESPRESSIF_SHA_ACCELERATOR=y
CONFIG_FS_PROCFS=y
CONFIG_IDLETHREAD_STACKSIZE=2048
@@ -131,6 +131,10 @@
# include "espressif/esp_sha.h"
#endif
#ifdef CONFIG_ESPRESSIF_AES_ACCELERATOR
# include "espressif/esp_aes.h"
#endif
#ifdef CONFIG_NET_OA_TC6
# include "esp_board_oa_tc6.h"
#endif
@@ -209,14 +213,23 @@ int esp_bringup(void)
}
#endif
#if defined(CONFIG_ESPRESSIF_SHA_ACCELERATOR) && \
!defined(CONFIG_CRYPTO_CRYPTODEV_HARDWARE)
#if !defined(CONFIG_CRYPTO_CRYPTODEV_HARDWARE)
# if defined(CONFIG_ESPRESSIF_SHA_ACCELERATOR)
ret = esp_sha_init();
if (ret < 0)
{
syslog(LOG_ERR,
"ERROR: Failed to initialize SHA: %d\n", ret);
}
# endif
# if defined(CONFIG_ESPRESSIF_AES_ACCELERATOR)
ret = esp_aes_init();
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: Failed to initialize AES: %d\n", ret);
}
# endif
#endif
#ifdef CONFIG_ESPRESSIF_MWDT0
@@ -8,8 +8,6 @@
# CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_HEXDUMP is not set
# CONFIG_TESTING_CRYPTO_3DES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CTR is not set
# CONFIG_TESTING_CRYPTO_AES_XTS is not set
# CONFIG_TESTING_CRYPTO_HASH_HUGE_BLOCK is not set
CONFIG_ALLOW_BSD_COMPONENTS=y
@@ -29,9 +27,11 @@ CONFIG_BOARDCTL_RESET=y
CONFIG_BOARD_LOOPSPERMSEC=15000
CONFIG_BUILTIN=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_CRYPTODEV=y
CONFIG_CRYPTO_CRYPTODEV_HARDWARE=y
CONFIG_CRYPTO_RANDOM_POOL=y
CONFIG_ESPRESSIF_AES_ACCELERATOR=y
CONFIG_ESPRESSIF_SHA_ACCELERATOR=y
CONFIG_FS_PROCFS=y
CONFIG_IDLETHREAD_STACKSIZE=2048
@@ -121,6 +121,10 @@
# include "espressif/esp_sha.h"
#endif
#ifdef CONFIG_ESPRESSIF_AES_ACCELERATOR
# include "espressif/esp_aes.h"
#endif
#ifdef CONFIG_MMCSD_SPI
# include "esp_board_mmcsd.h"
#endif
@@ -188,14 +192,23 @@ int esp_bringup(void)
}
#endif
#if defined(CONFIG_ESPRESSIF_SHA_ACCELERATOR) && \
!defined(CONFIG_CRYPTO_CRYPTODEV_HARDWARE)
#if !defined(CONFIG_CRYPTO_CRYPTODEV_HARDWARE)
# if defined(CONFIG_ESPRESSIF_SHA_ACCELERATOR)
ret = esp_sha_init();
if (ret < 0)
{
syslog(LOG_ERR,
"ERROR: Failed to initialize SHA: %d\n", ret);
}
# endif
# if defined(CONFIG_ESPRESSIF_AES_ACCELERATOR)
ret = esp_aes_init();
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: Failed to initialize AES: %d\n", ret);
}
# endif
#endif
#ifdef CONFIG_ESPRESSIF_MWDT0
@@ -8,9 +8,8 @@
# CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_HEXDUMP is not set
# CONFIG_TESTING_CRYPTO_3DES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CBC is not set
# CONFIG_TESTING_CRYPTO_AES_CTR is not set
# CONFIG_TESTING_CRYPTO_AES_XTS is not set
# CONFIG_TESTING_CRYPTO_HASH_HUGE_BLOCK is not set
CONFIG_ALLOW_BSD_COMPONENTS=y
CONFIG_ARCH="risc-v"
CONFIG_ARCH_BOARD="esp32p4-function-ev-board"
@@ -27,9 +26,11 @@ CONFIG_BOARDCTL_RESET=y
CONFIG_BOARD_LOOPSPERMSEC=15000
CONFIG_BUILTIN=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_CRYPTODEV=y
CONFIG_CRYPTO_CRYPTODEV_HARDWARE=y
CONFIG_CRYPTO_RANDOM_POOL=y
CONFIG_ESPRESSIF_AES_ACCELERATOR=y
CONFIG_ESPRESSIF_SHA_ACCELERATOR=y
CONFIG_EXPERIMENTAL=y
CONFIG_FS_PROCFS=y
@@ -54,6 +55,10 @@ CONFIG_START_YEAR=2019
CONFIG_SYSTEM_DUMPSTACK=y
CONFIG_SYSTEM_NSH=y
CONFIG_TESTING_CRYPTO=y
CONFIG_TESTING_CRYPTO_HASH=y
CONFIG_TESTING_CRYPTO_HASH_DISABLE_MD5=y
CONFIG_TESTING_CRYPTO_HASH_DISABLE_SHA512=y
CONFIG_TESTING_CRYPTO_STACKSIZE=4096
CONFIG_TESTING_GETPRIME=y
CONFIG_TESTING_OSTEST=y
CONFIG_UART0_SERIAL_CONSOLE=y