* Add untested basic SHA for esp-sX/cX chips * Fix ptr type inconsistency for S2 * Add ESP32 impl & fix process_buffer latch issue * Add debug example for SHA accelerator * Clean up no-op buffer prints * Test vector parity (on esp32s3) * Checkpoint for converting to alignment helper * Finish refactoring & additional parity tests on esp32s3 * Remove core_intrinsics requirement for now * Fix case where (src.len() % 4) == 3 * Finish sha2 example with performance comparison (12-61x speedup) * Refactor ESP32 to alignment helper & Clean up example * Prevent out-of-bounds reads in ESP32 version * Revert Cargo debug changes * Remove cargo config.toml * Clean up example * Remove common/rust-toolchain & ignore in future * Might as well use actual size_of const * Remove SHA512/SHA384 for C2/C3 * Directly import nb::block! to remove unused import warning & fix c2 feature detect * Remove stray newlines * Fix esp32c2 having SHA256 * ESP32 also has SHA384 * Remove comments that don't have a purpose * Clean up example & finish() handling * Add examples & add ESP32 free() * Update C2/C3 examples to show accurate algorithm used * Fix busy check for ESP32 * Remove outdated TODO comment * Update PAC for ESP3 and (actually) fix busy check * Refactor ESP32 version to reduce search space * Add debug printlns to sha example & clean up comments * Fix ESP32 version, finally Co-authored-by: ferris <ferris@devdroplets.com> Co-authored-by: Jesse Braham <jesse@beta7.io> |
||
|---|---|---|
| .. | ||
| src | ||
| .gitignore | ||
| build.rs | ||
| Cargo.toml | ||
| README.md | ||
esp-hal-common
no_std HAL implementations for the peripherals which are common among Espressif devices. Implements a number of the traits defined by embedded-hal.
This crate should not be used directly; you should use one of the device-specific HAL crates instead:
Documentation
License
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.