From 72e62750c8734bcf2d99da2dc3b5dc1d0cb38b5a Mon Sep 17 00:00:00 2001 From: Evan Benn Date: Mon, 16 Jan 2023 16:12:44 +1100 Subject: 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 Reviewed-on: https://review.coreboot.org/c/flashrom/+/71973 Tested-by: build bot (Jenkins) Reviewed-by: Peter Marheine Reviewed-by: Edward O'Callaghan --- util/flashrom_tester/src/tests.rs | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'util/flashrom_tester/src') 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(()) } -- cgit v1.2.3