Angus Gratton
50e0a54630
esp32 hwcrypto: Use spinlock instead of lock to protect AES
...
More than doubles performance of mbedTLS AES self-tests.
2017-08-25 16:08:03 +10:00
Angus Gratton
2624e10055
esp32 hwcrypto: Use AES registers directly
2017-08-25 16:08:03 +10:00
Angus Gratton
e256fb6d96
hwcrypto: Use DPORT-safe accesses with AES
2017-08-25 16:08:03 +10:00
Tian Hao
26a3cb93c7
component/soc : move dport access header files to soc
...
1. move dport access header files to soc
2. reduce dport register write protection. Only protect read operation
2017-05-09 18:06:00 +08:00
Tian Hao
f7e8856520
component/esp32 : fix dualcore bug
...
1. When dual core cpu run access DPORT register, must do protection.
2. If access DPORT register, must use DPORT_REG_READ/DPORT_REG_WRITE and DPORT_XXX register operation macro.
2017-05-08 21:53:43 +08:00
Angus Gratton
2561b68af8
hwcrypto: Fixes for disabling one hardware unit causing reset of a different unit
...
ROM functions reset related units, but this can have problems in a
multithreaded environment.
2016-11-22 20:42:38 +11:00
Angus Gratton
2211759cc0
hwcrypto aes: Fix bugs w/ ECB decrypt, CFB modes
2016-09-08 17:02:52 +08:00
Angus Gratton
d951ab2661
hwcrypto aes: Performance tweak, only write key to hardware once
...
Shaves ~10% off time to compute AES-CBC
2016-09-08 16:47:37 +08:00
Angus Gratton
0a970e3a25
hwcrypto: Match API completely to mbedTLS naming conventions
2016-09-08 16:47:31 +08:00
Angus Gratton
0647d1e922
esp32 hwcrypto: Rework hardware crypto locking
...
Should protect against concurrent use of hardware crypto primitives,
with good performance.
Not necessary to call esp_aes_acquire_hardware(),
esp_sha_acquire_hardware(), etc when using these APIs. These are
provided for external users calling the hardware crypto hardware
directly, to coexist with this implementation.
2016-09-08 16:47:13 +08:00
Angus Gratton
4167b68eef
esp32: Move hardware crypto implementation/headers to hwcrypto directories
2016-09-08 16:46:28 +08:00