mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-30 00:13:43 +02:00

partial_lock_test (Lock_top_quad, Lock_bottom_quad, Lock_bottom_half, and Lock_top_half) tries to: 1. Disable HWWP 2. Lock partial 3. Enable HWWP 4. Try to write the locked partial and expect a failure ... The 4th step only works on flashrom binary since the binary will set FLASHROM_FLAG_VERIFY_AFTER_WRITE=1 by default and it will error out while verifying. But libflashrom does not set any flag beforehand, so it has FLASHROM_FLAG_VERIFY_AFTER_WRITE=0 and thus it will think the write command works normally and raise no error. This causes the issue that flashrom_tester with libflashrom has been failed until today. To solve this issue, there are two solutions: 1. Take care of the default flags in libflashrom 2. Always pass --noverify to flashrom binary and verify it afterwards. To make both methods more consistent, I fix it with approach 1. BUG=b:304439294 BRANCH=none TEST=flashrom_tester internal --libflashrom Lock_top_quad Change-Id: I7a8ac0c0984fef3cd9e73ed8d8097ddf429e54b2 Signed-off-by: roccochen@chromium.com <roccochen@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/79304 Reviewed-by: Anastasia Klimchuk <aklm@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
41 lines
1007 B
TOML
41 lines
1007 B
TOML
[package]
|
|
name = "flashrom_tester"
|
|
version = "1.6.0"
|
|
authors = ["Edward O'Callaghan <quasisec@chromium.org>",
|
|
"Peter Marheine <pmarheine@chromium.org>"]
|
|
description = "A tool to verify flashrom and flash chip behaviour."
|
|
license = "GPL-2.0-only"
|
|
edition = "2018"
|
|
build = "build.rs"
|
|
|
|
[lib]
|
|
name = "flashrom_tester"
|
|
|
|
[[bin]]
|
|
name = "flashrom_tester"
|
|
required-features = ["cli"]
|
|
|
|
[dependencies]
|
|
atty = "0.2"
|
|
built = { version = "0.5", features = ["chrono"] }
|
|
chrono = { version = "0.4", optional = true }
|
|
clap = { version = "2.33", default-features = false, optional = true }
|
|
flashrom = { path = "flashrom/" }
|
|
libc = "0.2"
|
|
libflashrom = { path = "../../bindings/rust/libflashrom" }
|
|
log = { version = "0.4", features = ["std"] }
|
|
rand = "0.6.4"
|
|
serde_json = "1"
|
|
sys-info = "0.9"
|
|
|
|
[build-dependencies]
|
|
built = { version = "0.5", features = ["chrono"] }
|
|
|
|
[dev-dependencies]
|
|
gag = "1"
|
|
|
|
[features]
|
|
# Features required to build the CLI binary but not the library
|
|
cli = ["chrono", "clap"]
|
|
default = ["cli"]
|