diff options
author | Evan Benn <evanbenn@chromium.org> | 2023-01-16 16:12:44 +1100 |
---|---|---|
committer | Edward O'Callaghan <quasisec@chromium.org> | 2023-02-06 00:33:11 +0000 |
commit | 72e62750c8734bcf2d99da2dc3b5dc1d0cb38b5a (patch) | |
tree | 59b62901955fd84ac670e65db5e4d669ca0a2c2c /util/flashrom_tester/src | |
parent | 69bbe7986c17111015034871da63f2ceea6ad45b (diff) | |
download | flashrom-72e62750c8734bcf2d99da2dc3b5dc1d0cb38b5a.tar.gz flashrom-72e62750c8734bcf2d99da2dc3b5dc1d0cb38b5a.tar.bz2 flashrom-72e62750c8734bcf2d99da2dc3b5dc1d0cb38b5a.zip |
flashrom_tester: Rewrite IOOpts to support more operations
flashrom cli supports include regions for all of read write and verify,
as well as omitting the read/write/verify file if an include region with
file is specified. Use an enum to allow only one operation at a time.
Unify the read and write region implementations.
BUG=b:235916336
BRANCH=None
TEST=None
Change-Id: I1cb46bb1b26949fd9c19949c43708a8b652e00da
Signed-off-by: Evan Benn <evanbenn@chromium.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/71973
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
Diffstat (limited to 'util/flashrom_tester/src')
-rw-r--r-- | util/flashrom_tester/src/tests.rs | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/util/flashrom_tester/src/tests.rs b/util/flashrom_tester/src/tests.rs index 13ba0501..847bfece 100644 --- a/util/flashrom_tester/src/tests.rs +++ b/util/flashrom_tester/src/tests.rs @@ -283,12 +283,11 @@ fn partial_lock_test(section: LayoutNames) -> impl Fn(&mut TestEnv) -> TestResul env.wp.set_hw(true)?; // Check that we cannot write to the protected region. - let rws = flashrom::ROMWriteSpecifics { - layout_file: Some(&env.layout_file), - write_file: Some(env.random_data_file()), - name_file: Some(wp_section_name), - }; - if env.cmd.write_file_with_layout(&rws).is_ok() { + if env + .cmd + .write_from_file_region(env.random_data_file(), wp_section_name, &env.layout_file) + .is_ok() + { return Err( "Section should be locked, should not have been overwritable with random data" .into(), @@ -301,12 +300,11 @@ fn partial_lock_test(section: LayoutNames) -> impl Fn(&mut TestEnv) -> TestResul // Check that we can write to the non protected region. let (non_wp_section_name, _, _) = utils::layout_section(env.layout(), section.get_non_overlapping_section()); - let rws = flashrom::ROMWriteSpecifics { - layout_file: Some(&env.layout_file), - write_file: Some(env.random_data_file()), - name_file: Some(non_wp_section_name), - }; - env.cmd.write_file_with_layout(&rws)?; + env.cmd.write_from_file_region( + env.random_data_file(), + non_wp_section_name, + &env.layout_file, + )?; Ok(()) } |