diff --git a/Cargo.lock b/Cargo.lock index 5176ed0c..454ee100 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -782,13 +782,13 @@ dependencies = [ [[package]] name = "num-derive" -version = "0.3.3" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 1.0.107", + "syn 2.0.13", ] [[package]] diff --git a/framework_lib/Cargo.toml b/framework_lib/Cargo.toml index a98fa1df..e6458363 100644 --- a/framework_lib/Cargo.toml +++ b/framework_lib/Cargo.toml @@ -52,7 +52,7 @@ clap = { version = "4.0", features = ["derive"], optional = true } clap-verbosity-flag = { version = "2.0.1", optional = true } nix = { version = "0.25.0", optional = true } num = { version = "0.4", default-features = false } -num-derive = { version = "0.3", default-features = false } +num-derive = { version = "0.4", default-features = false } num-traits = { version = "0.2", default-features = false } env_logger = { version = "0.10.0", optional = true } log = { version = "0.4", default-features = true } diff --git a/framework_lib/src/ccgx/device.rs b/framework_lib/src/ccgx/device.rs index 8ff20439..432db3b6 100644 --- a/framework_lib/src/ccgx/device.rs +++ b/framework_lib/src/ccgx/device.rs @@ -220,11 +220,7 @@ impl PdController { buffer[params_len..params_len + msgs_len].copy_from_slice(msgs_buffer); buffer[params_len + msgs_len..].copy_from_slice(&addr_bytes); - let data = self.send_ec_command(EcCommands::I2cPassthrough as u16, 0, &buffer); - let data = match data { - Ok(data) => data, - Err(err) => return Err(err), - }; + let data = self.send_ec_command(EcCommands::I2cPassthrough as u16, 0, &buffer)?; let res: _EcI2cPassthruResponse = unsafe { std::ptr::read(data.as_ptr() as *const _) }; let res_data = &data[size_of::<_EcI2cPassthruResponse>()..]; // TODO: Seems to be either one, non-deterministically diff --git a/framework_lib/src/chromium_ec/mod.rs b/framework_lib/src/chromium_ec/mod.rs index 570e2ebd..13a227b5 100644 --- a/framework_lib/src/chromium_ec/mod.rs +++ b/framework_lib/src/chromium_ec/mod.rs @@ -547,11 +547,7 @@ impl CrosEc { pub fn read_ec_flash_chunk(&self, offset: u32, size: u32) -> EcResult> { // TODO: Windows asserts //assert!(size <= 0x80); // TODO: I think this is EC_LPC_HOST_PACKET_SIZE - size_of::() - let data = EcRequestFlashRead { offset, size }.send_command_vec(self); - let data = match data { - Ok(data) => data, - Err(err) => return Err(err), - }; + let data = EcRequestFlashRead { offset, size }.send_command_vec(self)?; // TODO: Windows asserts because it returns more data //debug_assert!(data.len() == size as usize); // Make sure we get back what was requested @@ -773,7 +769,7 @@ impl CrosEc { let utf8 = std::str::from_utf8(&data).unwrap(); let ascii = utf8 .replace(|c: char| !c.is_ascii(), "") - .replace(|c: char| c == '\0', ""); + .replace(['\0'], ""); print!("{}", ascii); console.push_str(ascii.as_str()); @@ -803,7 +799,7 @@ impl CrosEc { let utf8 = std::str::from_utf8(&data).unwrap(); let ascii = utf8 .replace(|c: char| !c.is_ascii(), "") - .replace(|c: char| c == '\0', ""); + .replace(['\0'], ""); Ok(ascii) } diff --git a/framework_lib/src/commandline/mod.rs b/framework_lib/src/commandline/mod.rs index 8266eea7..00c0e4a4 100644 --- a/framework_lib/src/commandline/mod.rs +++ b/framework_lib/src/commandline/mod.rs @@ -516,7 +516,7 @@ fn compare_version(device: Option, version: String, ec: &Cro if let Some(smbios) = get_smbios() { let bios_entries = smbios.collect::(); - let bios = bios_entries.get(0).unwrap(); + let bios = bios_entries.first().unwrap(); if device == Some(HardwareDeviceType::BIOS) { println!("Comparing BIOS version {:?}", bios.version().to_string()); diff --git a/framework_lib/src/power.rs b/framework_lib/src/power.rs index 467cb9df..1f8835a7 100644 --- a/framework_lib/src/power.rs +++ b/framework_lib/src/power.rs @@ -165,7 +165,7 @@ impl From for ReducedPowerInfo { fn read_string(ec: &CrosEc, address: u16) -> String { let bytes = ec.read_memory(address, EC_MEMMAP_TEXT_MAX).unwrap(); - String::from_utf8_lossy(bytes.as_slice()).replace(|c: char| c == '\0', "") + String::from_utf8_lossy(bytes.as_slice()).replace(['\0'], "") } fn read_u32(ec: &CrosEc, address: u16) -> u32 {