mirror of
https://github.com/esp-rs/esp-hal.git
synced 2025-10-02 14:44:42 +00:00
Fix clippy warnings, update READMEs (#284)
* Fix a couple clippy warnings * Create features for architecture-specific depdendencies * README updates
This commit is contained in:
parent
bc4e180a1a
commit
5d48e77d5e
@ -62,11 +62,13 @@ There are a number of other crates within the [esp-rs organization] which can be
|
|||||||
| :-------------: | :----------------------------------------------------------------------------: |
|
| :-------------: | :----------------------------------------------------------------------------: |
|
||||||
| [esp-alloc] | A simple `no_std` heap allocator |
|
| [esp-alloc] | A simple `no_std` heap allocator |
|
||||||
| [esp-backtrace] | Backtrace support for bare-metal applications |
|
| [esp-backtrace] | Backtrace support for bare-metal applications |
|
||||||
|
| [esp-println] | Provides `print!` and `println!` implementations |
|
||||||
| [esp-storage] | Implementation of [embedded-storage] traits to access unencrypted flash memory |
|
| [esp-storage] | Implementation of [embedded-storage] traits to access unencrypted flash memory |
|
||||||
|
|
||||||
[esp-rs organization]: https://github.com/esp-rs
|
[esp-rs organization]: https://github.com/esp-rs
|
||||||
[esp-alloc]: https://github.com/esp-rs/esp-alloc
|
[esp-alloc]: https://github.com/esp-rs/esp-alloc
|
||||||
[esp-backtrace]: https://github.com/esp-rs/esp-backtrace
|
[esp-backtrace]: https://github.com/esp-rs/esp-backtrace
|
||||||
|
[esp-println]: https://github.com/esp-rs/esp-println
|
||||||
[esp-storage]: https://github.com/esp-rs/esp-storage
|
[esp-storage]: https://github.com/esp-rs/esp-storage
|
||||||
[embedded-storage]: https://github.com/rust-embedded-community/embedded-storage
|
[embedded-storage]: https://github.com/rust-embedded-community/embedded-storage
|
||||||
|
|
||||||
|
@ -57,11 +57,11 @@ esp32s2 = { version = "0.6.0", features = ["critical-section"], optional = true
|
|||||||
esp32s3 = { version = "0.9.0", features = ["critical-section"], optional = true }
|
esp32s3 = { version = "0.9.0", features = ["critical-section"], optional = true }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
esp32 = ["esp32/rt" , "procmacros/xtensa", "xtensa-lx-rt/esp32", "xtensa-lx/esp32", "critical-section/restore-state-u32", "lock_api"]
|
esp32 = ["esp32/rt" , "xtensa", "xtensa-lx/esp32", "xtensa-lx-rt/esp32", "lock_api"]
|
||||||
esp32c2 = ["esp32c2/rt", "procmacros/riscv" , "riscv", "riscv-atomic-emulation-trap", "critical-section/restore-state-u8"]
|
esp32c2 = ["esp32c2/rt", "riscv"]
|
||||||
esp32c3 = ["esp32c3/rt", "procmacros/riscv" , "riscv", "riscv-atomic-emulation-trap", "critical-section/restore-state-u8"]
|
esp32c3 = ["esp32c3/rt", "riscv"]
|
||||||
esp32s2 = ["esp32s2/rt", "procmacros/xtensa", "xtensa-lx-rt/esp32s2", "xtensa-lx/esp32s2", "critical-section/restore-state-u32", "esp-synopsys-usb-otg", "usb-device"]
|
esp32s2 = ["esp32s2/rt", "xtensa", "xtensa-lx/esp32s2", "xtensa-lx-rt/esp32s2", "esp-synopsys-usb-otg", "usb-device"]
|
||||||
esp32s3 = ["esp32s3/rt", "procmacros/xtensa", "xtensa-lx-rt/esp32s3", "xtensa-lx/esp32s3", "critical-section/restore-state-u32", "lock_api", "esp-synopsys-usb-otg", "usb-device"]
|
esp32s3 = ["esp32s3/rt", "xtensa", "xtensa-lx/esp32s3", "xtensa-lx-rt/esp32s3", "lock_api", "esp-synopsys-usb-otg", "usb-device"]
|
||||||
|
|
||||||
# Implement the `embedded-hal==1.0.0-alpha.x` traits
|
# Implement the `embedded-hal==1.0.0-alpha.x` traits
|
||||||
eh1 = ["embedded-hal-1", "embedded-hal-nb"]
|
eh1 = ["embedded-hal-1", "embedded-hal-nb"]
|
||||||
@ -76,8 +76,12 @@ ufmt = ["ufmt-write"]
|
|||||||
vectored = ["procmacros/interrupt"]
|
vectored = ["procmacros/interrupt"]
|
||||||
|
|
||||||
# Implement the `embedded-hal-async==1.0.0-alpha.x` traits
|
# Implement the `embedded-hal-async==1.0.0-alpha.x` traits
|
||||||
async = ["embedded-hal-async", "eh1", "embassy-sync"]
|
async = ["embedded-hal-async", "eh1", "embassy-sync"]
|
||||||
embassy = ["embassy-time"]
|
embassy = ["embassy-time"]
|
||||||
|
|
||||||
embassy-time-systick = []
|
embassy-time-systick = []
|
||||||
embassy-time-timg = []
|
embassy-time-timg = []
|
||||||
|
|
||||||
|
# Architecture-specific features (intended for internal use)
|
||||||
|
riscv = ["dep:riscv", "critical-section/restore-state-u8", "procmacros/riscv", "riscv-atomic-emulation-trap"]
|
||||||
|
xtensa = [ "critical-section/restore-state-u32", "procmacros/xtensa"]
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
This crate should not be used directly; you should use one of the device-specific HAL crates instead:
|
This crate should not be used directly; you should use one of the device-specific HAL crates instead:
|
||||||
|
|
||||||
- [esp32-hal](../esp32-hal/README.md)
|
- [esp32-hal](../esp32-hal/README.md)
|
||||||
|
- [esp32c2-hal](../esp32c2-hal/README.md)
|
||||||
- [esp32c3-hal](../esp32c3-hal/README.md)
|
- [esp32c3-hal](../esp32c3-hal/README.md)
|
||||||
- [esp32s2-hal](../esp32s2-hal/README.md)
|
- [esp32s2-hal](../esp32s2-hal/README.md)
|
||||||
- [esp32s3-hal](../esp32s3-hal/README.md)
|
- [esp32s3-hal](../esp32s3-hal/README.md)
|
||||||
|
@ -17,12 +17,12 @@ use crate::pac::SHA;
|
|||||||
|
|
||||||
const ALIGN_SIZE: usize = core::mem::size_of::<u32>();
|
const ALIGN_SIZE: usize = core::mem::size_of::<u32>();
|
||||||
|
|
||||||
// ESP32 does reversed order
|
// ESP32 does reversed order
|
||||||
#[cfg(esp32)]
|
#[cfg(esp32)]
|
||||||
const U32_FROM_BYTES: fn([u8; 4]) -> u32 = u32::from_be_bytes;
|
const U32_FROM_BYTES: fn([u8; 4]) -> u32 = u32::from_be_bytes;
|
||||||
|
|
||||||
#[cfg(not(esp32))]
|
#[cfg(not(esp32))]
|
||||||
const U32_FROM_BYTES: fn([u8; 4]) -> u32 = u32::from_ne_bytes;
|
const U32_FROM_BYTES: fn([u8; 4]) -> u32 = u32::from_ne_bytes;
|
||||||
|
|
||||||
// The alignment helper helps you write to registers that only accepts u32 using
|
// The alignment helper helps you write to registers that only accepts u32 using
|
||||||
// regular u8s (bytes) It keeps a write buffer of 4 u8 (could in theory be 3 but
|
// regular u8s (bytes) It keeps a write buffer of 4 u8 (could in theory be 3 but
|
||||||
@ -292,6 +292,7 @@ impl Sha {
|
|||||||
ShaMode::SHA1 | ShaMode::SHA256 => 64,
|
ShaMode::SHA1 | ShaMode::SHA256 => 64,
|
||||||
#[cfg(not(esp32))]
|
#[cfg(not(esp32))]
|
||||||
ShaMode::SHA224 => 64,
|
ShaMode::SHA224 => 64,
|
||||||
|
#[cfg(not(any(esp32c2, esp32c3)))]
|
||||||
_ => 128,
|
_ => 128,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -493,20 +494,18 @@ impl Sha {
|
|||||||
}
|
}
|
||||||
|
|
||||||
unsafe {
|
unsafe {
|
||||||
|
|
||||||
let digest_ptr = self.output_ptr();
|
let digest_ptr = self.output_ptr();
|
||||||
let out_ptr = output.as_mut_ptr() as *mut u32;
|
let out_ptr = output.as_mut_ptr() as *mut u32;
|
||||||
let digest_out = core::cmp::min(self.digest_length(), output.len()) / ALIGN_SIZE;
|
let digest_out = core::cmp::min(self.digest_length(), output.len()) / ALIGN_SIZE;
|
||||||
for i in 0..digest_out {
|
for i in 0..digest_out {
|
||||||
#[cfg(not(esp32))]
|
#[cfg(not(esp32))]
|
||||||
out_ptr.add(i).write(*digest_ptr.add(i));
|
out_ptr.add(i).write(*digest_ptr.add(i));
|
||||||
// ESP32 does reversed order
|
// ESP32 does reversed order
|
||||||
#[cfg(esp32)]
|
#[cfg(esp32)]
|
||||||
out_ptr.add(i).write((*digest_ptr.add(i)).to_be());
|
out_ptr.add(i).write((*digest_ptr.add(i)).to_be());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -153,21 +153,18 @@ fn check_opt_level() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
match env::var_os("OPT_LEVEL") {
|
if let Some(ref opt_level) = env::var_os("OPT_LEVEL") {
|
||||||
Some(ref opt_level) => {
|
if opt_level == "z" {
|
||||||
if opt_level == "z" {
|
println!(
|
||||||
println!(
|
"{}",
|
||||||
"{}",
|
OPT_LEVEL_Z_MSG
|
||||||
OPT_LEVEL_Z_MSG
|
.lines()
|
||||||
.lines()
|
.into_iter()
|
||||||
.into_iter()
|
.map(|l| format!("cargo:warning={l}"))
|
||||||
.map(|l| format!("cargo:warning={l}"))
|
.collect::<Vec<String>>()
|
||||||
.collect::<Vec<String>>()
|
.join("\n")
|
||||||
.join("\n")
|
);
|
||||||
);
|
exit(1);
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
_ => {}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user