* RSA cleanup & API consistency change, part 2
* RSA cleanup & API consistency change, part 3
* Add async tests
* Fix async for ESP32
* Merge impl blocks
* Backtrack on some mutability changes
* Use Acquire/Release ordering
* Fwd to write_multi_start instead of duplicating impl
* use `State` for both blocking and async operations, remove async version of SpiDmaBus in favour of being generic over the mode
* reuse wait_for_idle more
* changelog
* rename generic params for consistency
* Add duplex mode to SpiDmaBus
* implement HalfDuplexReadWrite for SpiDmaBus
* Docs on new async APIs
* Limit half duplex transfers to the capacity of the DmaBuf
* docs
* rebase tests
* address review comments
* remove duplex traits from spi
* fix tests
* spi docs rejig
* s/InUse/TemporarilyRemoved/g
Making these available straight from `gpio` aligns it with other Embassy
implementations (mainly nrf and stm32).
Signed-off-by: Priit Laes <plaes@plaes.org>
* feat(SHA): Refactor SHA to use trait. Implement Digest traits for SHA
* Fix CI. Fix wrong sha mode for esp32
* Save hash register for interleaving operation
An example (wip) `sha_fuzz.rs` was added to test different functionalities of the SHA driver and to ensure proper functionning under all cases.
* Use random data when testing SHA
* fix(SHA): Buffer words until a full block before writing to memory
This fixes interleaving operations by buffering words into the SHA context until a full block can be processed.
* Fix(SHA): Use correct length padding for SHA384 and SHA512.
- This fixes a long running issue with SHA384 and SHA512, where some digest of specific sizes wouldn't compute correctly, by changing the padding length of the size field.
* Re-export digest for convenience
* Remove completed TODO
* Remove SHA peripheral requirement.
- Document safety of the SHA driver.
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
* Add more SPI DMA HIL tests (blocking and async)
* move test repetitions into loops instead, add a description about why PCNT is used, import embedded_hal_async::spi
* clean up
* Clean up almost all clippy violations
* Remove redundant variable from context
* Do not clone configs
* Do not collect all config symbols into a vec needlessly
* Do not allocate so many strings
* Fix typos
* Add a function to detect debugger connection
* Do not reset USB peripheral
* Changelog
* Fix different register names
* Reuse xtensa_lx::is_debugger_attached
* Further clean up embassy_timers_executors
* Do not delay for so long
* Print timer values on assert failure
* Clean up some more
* Retry test a few times to counteract probe-rs halting us
* Fix formatting
* WIP state
* More fixes
* Roll back `esp-storage` changes
* Small fixes
Will not work, needs another patch for PACs
* update pacs dep
* Lint
* Get rid of unnecessary if-else
fix
* New pacs version
* Update probe-rs
* Differentiate jobs
* Explicitly print that probe-rs's execution failed
* Do not capture stdin/stderr
* Pre-build xtask binary
* Use current_directory
* Print more info when a file can't be read
* Do not erase flash after a failure
* get_time: fail faster
* Make xtask runnable
* Updated to latest release (`0.6.0`) for `embassy-executor`
* update changelog
* update hil-test version of embassy-executor to 0.6.0
* update embassy-executor in `examples`
* reflect esp_hal change in `OneShotTimer` to not have a lifetime.
* update changelog
* revert OneShotTimer changes
* Add failing test
Fix the name of the test fn
* Fix interrupt executor looping
* Fix formatting
* Fix changelog reference
* Move changelog to the right crate
* Remove dead code