Просмотр исходного кода

mbedtls: Acquire lock before enabling MPI (RSA) hardware
- For ESP32-S3

Laukik Hase 3 лет назад
Родитель
Сommit
ff44ff8050
1 измененных файлов с 5 добавлено и 0 удалено
  1. 5 0
      components/mbedtls/port/esp32s3/bignum.c

+ 5 - 0
components/mbedtls/port/esp32s3/bignum.c

@@ -16,6 +16,7 @@
 #include "soc/system_reg.h"
 #include "soc/periph_defs.h"
 #include <sys/param.h>
+#include "esp_crypto_lock.h"
 
 size_t esp_mpi_hardware_words(size_t words)
 {
@@ -24,6 +25,8 @@ size_t esp_mpi_hardware_words(size_t words)
 
 void esp_mpi_enable_hardware_hw_op( void )
 {
+    esp_crypto_mpi_lock_acquire();
+
     /* Enable RSA hardware */
     periph_module_enable(PERIPH_RSA_MODULE);
 
@@ -43,6 +46,8 @@ void esp_mpi_disable_hardware_hw_op( void )
 
     /* Disable RSA hardware */
     periph_module_disable(PERIPH_RSA_MODULE);
+
+    esp_crypto_mpi_lock_release();
 }
 
 void esp_mpi_interrupt_enable( bool enable )