This is an automated email from the ASF dual-hosted git repository.

acassis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 7951410bc77a78d21f4ffc38d3b5bdf247bf052c
Author: Eren Terzioglu <[email protected]>
AuthorDate: Mon Jan 19 12:05:18 2026 +0100

    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 <[email protected]>
---
 .../risc-v/esp32c3/esp32-c3-zero/src/esp32c3_bringup.c  |  4 ++++
 .../esp32c3/esp32c3-devkit/configs/crypto/defconfig     |  4 ++--
 .../risc-v/esp32c3/esp32c3-devkit/src/esp32c3_bringup.c | 17 +++++++++++++++--
 .../esp32c6/esp32c6-devkitc/configs/crypto/defconfig    |  4 ++--
 .../esp32c6/esp32c6-devkitc/src/esp32c6_bringup.c       | 17 +++++++++++++++--
 .../esp32h2/esp32h2-devkit/configs/crypto/defconfig     |  4 ++--
 .../risc-v/esp32h2/esp32h2-devkit/src/esp32h2_bringup.c | 17 +++++++++++++++--
 .../esp32p4-function-ev-board/configs/crypto/defconfig  |  9 +++++++--
 8 files changed, 62 insertions(+), 14 deletions(-)

diff --git a/boards/risc-v/esp32c3/esp32-c3-zero/src/esp32c3_bringup.c 
b/boards/risc-v/esp32c3/esp32-c3-zero/src/esp32c3_bringup.c
index a4f3f310865..5d837e27c55 100644
--- a/boards/risc-v/esp32c3/esp32-c3-zero/src/esp32c3_bringup.c
+++ b/boards/risc-v/esp32c3/esp32-c3-zero/src/esp32c3_bringup.c
@@ -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
diff --git a/boards/risc-v/esp32c3/esp32c3-devkit/configs/crypto/defconfig 
b/boards/risc-v/esp32c3/esp32c3-devkit/configs/crypto/defconfig
index 5ed4c25f2c0..cf12dd42469 100644
--- a/boards/risc-v/esp32c3/esp32c3-devkit/configs/crypto/defconfig
+++ b/boards/risc-v/esp32c3/esp32c3-devkit/configs/crypto/defconfig
@@ -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
diff --git a/boards/risc-v/esp32c3/esp32c3-devkit/src/esp32c3_bringup.c 
b/boards/risc-v/esp32c3/esp32c3-devkit/src/esp32c3_bringup.c
index d586caab418..3d3a5fa09f8 100644
--- a/boards/risc-v/esp32c3/esp32c3-devkit/src/esp32c3_bringup.c
+++ b/boards/risc-v/esp32c3/esp32c3-devkit/src/esp32c3_bringup.c
@@ -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
diff --git a/boards/risc-v/esp32c6/esp32c6-devkitc/configs/crypto/defconfig 
b/boards/risc-v/esp32c6/esp32c6-devkitc/configs/crypto/defconfig
index c08d741ca03..997c4b73f67 100644
--- a/boards/risc-v/esp32c6/esp32c6-devkitc/configs/crypto/defconfig
+++ b/boards/risc-v/esp32c6/esp32c6-devkitc/configs/crypto/defconfig
@@ -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
diff --git a/boards/risc-v/esp32c6/esp32c6-devkitc/src/esp32c6_bringup.c 
b/boards/risc-v/esp32c6/esp32c6-devkitc/src/esp32c6_bringup.c
index c5ef8206937..79e34a11ac7 100644
--- a/boards/risc-v/esp32c6/esp32c6-devkitc/src/esp32c6_bringup.c
+++ b/boards/risc-v/esp32c6/esp32c6-devkitc/src/esp32c6_bringup.c
@@ -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
diff --git a/boards/risc-v/esp32h2/esp32h2-devkit/configs/crypto/defconfig 
b/boards/risc-v/esp32h2/esp32h2-devkit/configs/crypto/defconfig
index 2aba6c7dc1e..0b41c4401f4 100644
--- a/boards/risc-v/esp32h2/esp32h2-devkit/configs/crypto/defconfig
+++ b/boards/risc-v/esp32h2/esp32h2-devkit/configs/crypto/defconfig
@@ -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
diff --git a/boards/risc-v/esp32h2/esp32h2-devkit/src/esp32h2_bringup.c 
b/boards/risc-v/esp32h2/esp32h2-devkit/src/esp32h2_bringup.c
index 8dae31d1fb4..efba1214cf8 100644
--- a/boards/risc-v/esp32h2/esp32h2-devkit/src/esp32h2_bringup.c
+++ b/boards/risc-v/esp32h2/esp32h2-devkit/src/esp32h2_bringup.c
@@ -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
diff --git 
a/boards/risc-v/esp32p4/esp32p4-function-ev-board/configs/crypto/defconfig 
b/boards/risc-v/esp32p4/esp32p4-function-ev-board/configs/crypto/defconfig
index 75fc2372767..9474a7a6c0d 100644
--- a/boards/risc-v/esp32p4/esp32p4-function-ev-board/configs/crypto/defconfig
+++ b/boards/risc-v/esp32p4/esp32p4-function-ev-board/configs/crypto/defconfig
@@ -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

Reply via email to