]> granicus.if.org Git - esp-idf/commit
aes/sha/mpi: Bugfix a use of shared registers.
authorKonstantin Kondrashov <konstantin@espressif.com>
Mon, 29 Oct 2018 15:55:02 +0000 (23:55 +0800)
committerbot <bot@espressif.com>
Mon, 5 Nov 2018 04:22:47 +0000 (04:22 +0000)
commit8bba3485289c7d4053e742f9808cc1a6359e546a
treef2f555cab916351b548eef296149f3bceb06438b
parentfb7ba1baa068a2267ef54b7105cf3c8a004fe4eb
aes/sha/mpi: Bugfix a use of shared registers.

This commit resolves a blocking in esp_aes_block function.

Introduce:
The problem was in the fact that AES is switched off at the moment when he should give out the processed data. But because of the disabled, the operation can not be completed successfully, there is an infinite hang. The reason for this behavior is that the registers for controlling the inclusion of AES, SHA, MPI have shared registers and they were not protected from sharing.

Fix some related issue with shared using of AES SHA RSA accelerators.

Closes: https://github.com/espressif/esp-idf/issues/2295#issuecomment-432898137
.gitlab-ci.yml
components/driver/periph_ctrl.c
components/esp32/hwcrypto/aes.c
components/esp32/hwcrypto/sha.c
components/esp32/test/test_aes_sha_rsa.c [new file with mode: 0644]
components/mbedtls/port/esp_bignum.c
components/soc/esp32/include/soc/periph_defs.h