Skip to content

Invalidate CMOS checksum after flashing #150

Invalidate CMOS checksum after flashing

Invalidate CMOS checksum after flashing #150

Triggered via pull request June 7, 2023 17:13
Status Success
Total duration 3m 9s
Artifacts

ci.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

22 warnings
casting to the same type is unnecessary (`u32` -> `u32`): src/text.rs#L230
warning: casting to the same type is unnecessary (`u32` -> `u32`) --> src/text.rs:230:50 | 230 | self.display.blit(cx, cy, cw as u32, ch as u32); | ^^^^^^^^^ help: try: `ch` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
deref on an immutable reference: src/text.rs#L115
warning: deref on an immutable reference --> src/text.rs:115:43 | 115 | Mode: unsafe { mem::transmute(&*mode.deref()) }, | ^^^^^^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `mode.deref()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref
deref on an immutable reference: src/null.rs#L100
warning: deref on an immutable reference --> src/null.rs:100:43 | 100 | Mode: unsafe { mem::transmute(&*mode.deref()) }, | ^^^^^^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `mode.deref()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref = note: `#[warn(clippy::borrow_deref_ref)]` on by default
method `default` can be confused for the standard trait method `std::default::Default::default`: src/image/mod.rs#L78
warning: method `default` can be confused for the standard trait method `std::default::Default::default` --> src/image/mod.rs:78:5 | 78 | / pub fn default() -> Self { 79 | | Self::new(0, 0) 80 | | } | |_____^ | = help: consider implementing the trait `std::default::Default` or choosing a less ambiguous method name = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait = note: `#[warn(clippy::should_implement_trait)]` on by default
casting to the same type is unnecessary (`usize` -> `usize`): src/display.rs#L73
warning: casting to the same type is unnecessary (`usize` -> `usize`) --> src/display.rs:73:60 | 73 | fast_set32(data_ptr.add(off2), color.data, off1 as usize); | ^^^^^^^^^^^^^ help: try: `off1` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`usize` -> `usize`): src/display.rs#L71
warning: casting to the same type is unnecessary (`usize` -> `usize`) --> src/display.rs:71:21 | 71 | off2 as usize * 4, | ^^^^^^^^^^^^^ help: try: `off2` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
variables can be used directly in the `format!` string: src/app/pci.rs#L103
warning: variables can be used directly in the `format!` string --> src/app/pci.rs:103:20 | 103 | return Err(format!("pci_read func 0x{:x} is greater than 0x7", func)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args help: change this to | 103 - return Err(format!("pci_read func 0x{:x} is greater than 0x7", func)); 103 + return Err(format!("pci_read func 0x{func:x} is greater than 0x7")); |
variables can be used directly in the `format!` string: src/app/pci.rs#L99
warning: variables can be used directly in the `format!` string --> src/app/pci.rs:99:20 | 99 | return Err(format!("pci_read dev 0x{:x} is greater than 0x1f", dev)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args help: change this to | 99 - return Err(format!("pci_read dev 0x{:x} is greater than 0x1f", dev)); 99 + return Err(format!("pci_read dev 0x{dev:x} is greater than 0x1f")); |
casting to the same type is unnecessary (`usize` -> `usize`): src/app/mapper.rs#L11
warning: casting to the same type is unnecessary (`usize` -> `usize`) --> src/app/mapper.rs:11:27 | 11 | Ok(VirtualAddress(address.0 as usize)) | ^^^^^^^^^^^^^^^^^^ help: try: `address.0` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast = note: `#[warn(clippy::unnecessary_cast)]` on by default
variables can be used directly in the `format!` string: src/app/ec.rs#L765
warning: variables can be used directly in the `format!` string --> src/app/ec.rs:765:41 | 765 | let status = shell(&format!( | _________________________________________^ 766 | | "{} {} {} flash", 767 | | FIRMWARENSH, FIRMWAREDIR, command 768 | | ))?; | |_____________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args
variables can be used directly in the `format!` string: src/app/ec.rs#L728
warning: variables can be used directly in the `format!` string --> src/app/ec.rs:728:37 | 728 | let status = shell(&format!( | _____________________________________^ 729 | | "{} {} {} flash", 730 | | FIRMWARENSH, FIRMWAREDIR, command 731 | | ))?; | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args
you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`: src/app/ec.rs#L695
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` --> src/app/ec.rs:695:13 | 695 | / match &self.ec { 696 | | // Make sure EC is unlocked if running System76 EC 697 | | EcKind::System76(_, _) => match unsafe { security_unlock() } { 698 | | Ok(()) => (), ... | 705 | | _ => (), 706 | | } | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match help: try this | 695 ~ if let EcKind::System76(_, _) = &self.ec { match unsafe { security_unlock() } { 696 + Ok(()) => (), 697 + Err(err) => { 698 + println!("{} Failed to unlock: {:?}", self.name(), err); 699 + return Err(Error::DeviceError); 700 + } 701 + } } |
you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`: src/app/ec.rs#L227
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` --> src/app/ec.rs:227:9 | 227 | / match &self.ec { 228 | | EcKind::Pang12(_pmc) => { 229 | | return data.len() == 128 * 1024 230 | | && &data[0x50 ..= 0x05F] == b"ITE EC-V14.6 \0"; 231 | | }, 232 | | _ => (), 233 | | } | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match help: try this | 227 ~ if let EcKind::Pang12(_pmc) = &self.ec { 228 + return data.len() == 128 * 1024 229 + && &data[0x50 ..= 0x05F] == b"ITE EC-V14.6 \0"; 230 + } |
the loop variable `i` is used to index `ymd`: src/app/ec.rs#L156
warning: the loop variable `i` is used to index `ymd` --> src/app/ec.rs:156:26 | 156 | for i in 0..ymd.len() { | ^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop help: consider using an iterator | 156 | for (i, <item>) in ymd.iter_mut().enumerate() { | ~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
the loop variable `i` is used to index `hms`: src/app/ec.rs#L145
warning: the loop variable `i` is used to index `hms` --> src/app/ec.rs:145:26 | 145 | for i in 0..hms.len() { | ^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop = note: `#[warn(clippy::needless_range_loop)]` on by default help: consider using an iterator | 145 | for (i, <item>) in hms.iter_mut().enumerate() { | ~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
you seem to be trying to use `match` for an equality check. Consider using `if`: src/app/ec.rs#L63
warning: you seem to be trying to use `match` for an equality check. Consider using `if` --> src/app/ec.rs:63:17 | 63 | / match table.header.kind { 64 | | 1 => { 65 | | if let Ok(info) = dmi::SystemInfo::from_bytes(&table.data) { 66 | | let index = info.version; ... | 74 | | _ => {} 75 | | } | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match = note: `#[warn(clippy::single_match)]` on by default help: try this | 63 ~ if table.header.kind == 1 { 64 + if let Ok(info) = dmi::SystemInfo::from_bytes(&table.data) { 65 + let index = info.version; 66 + if index > 0 { 67 + if let Some(value) = table.strings.get((index - 1) as usize) { 68 + system_version = value.trim().to_string(); 69 + } 70 + } 71 + } 72 + } |
variables can be used directly in the `format!` string: src/app/bios.rs#L538
warning: variables can be used directly in the `format!` string --> src/app/bios.rs:538:23 | 538 | let cmd = format!("{} {} bios flash", FIRMWARENSH, FIRMWAREDIR); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args help: change this to | 538 - let cmd = format!("{} {} bios flash", FIRMWARENSH, FIRMWAREDIR); 538 + let cmd = format!("{FIRMWARENSH} {FIRMWAREDIR} bios flash"); |
variables can be used directly in the `format!` string: src/app/bios.rs#L51
warning: variables can be used directly in the `format!` string --> src/app/bios.rs:51:28 | 51 | return Err(format!("new region {:#X}:{:#X} is invalid", base, limit)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args help: change this to | 51 - return Err(format!("new region {:#X}:{:#X} is invalid", base, limit)); 51 + return Err(format!("new region {base:#X}:{limit:#X} is invalid")); |
variables can be used directly in the `format!` string: src/app/bios.rs#L40
warning: variables can be used directly in the `format!` string --> src/app/bios.rs:40:28 | 40 | return Err(format!("old region {:#X}:{:#X} is invalid", base, limit)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args = note: `#[warn(clippy::uninlined_format_args)]` on by default help: change this to | 40 - return Err(format!("old region {:#X}:{:#X} is invalid", base, limit)); 40 + return Err(format!("old region {base:#X}:{limit:#X} is invalid")); |
associated function `read` is never used: src/app/cmos.rs#L18
warning: associated function `read` is never used --> src/app/cmos.rs:18:12 | 18 | pub fn read(&mut self, addr: u8) -> u8 { | ^^^^ | = note: `#[warn(dead_code)]` on by default
lint
Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/checkout@v2, actions-rs/clippy-check@v1. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.
build
Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/checkout@v2. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.