diff options
author | Nikolai Artemiev <nartemiev@google.com> | 2023-02-21 13:52:32 +1100 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-03-16 02:40:04 +0000 |
commit | 4976c1a60ca660d530e6dcaeb6dbd6fe4403fed7 (patch) | |
tree | f3dc4223f38823b051e8ca6c29fcf9c6a142f126 /tests/futility/test_flash_util.sh | |
parent | e29eac41dce1a5e423d739fc47abfd2b2bda22df (diff) | |
download | vboot-firmware-skyrim-15390.B.tar.gz |
futility: Add `flash` subcommandstabilize-15393.48.Brelease-R113-15393.Bfirmware-skyrim-15390.B
Add a new subcommand for getting/setting flash properties such as
the flash size and writeprotect configuration.
The operations provided by `futility flash` require less information
from the user and are less error prone than the equivalents provided by
`flashrom`.
For example, --wp-enable automatically choses the protection range based
on the firmware image and --wp-status gives a warning if the protection
range does not match the RO firmware region.
BUG=b:268574030
BRANCH=none
TEST=`futility flash --{flash-size,wp-enable,wp-disable,wp-status}`
Co-authored-by: Edward O'Callaghan <quasisec@google.com>
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Signed-off-by: Nikolai Artemiev <nartemiev@google.com>
Change-Id: I36d7468616a5bcdf3c4542d48652bd24c3377a61
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/4279661
Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
Commit-Queue: Edward O'Callaghan <quasisec@chromium.org>
Diffstat (limited to 'tests/futility/test_flash_util.sh')
-rwxr-xr-x | tests/futility/test_flash_util.sh | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/futility/test_flash_util.sh b/tests/futility/test_flash_util.sh new file mode 100755 index 00000000..e18a35cb --- /dev/null +++ b/tests/futility/test_flash_util.sh @@ -0,0 +1,26 @@ +#!/bin/bash -eux +# Copyright 2023 The ChromiumOS Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +me=${0##*/} +TMP="${me}.tmp" + +# Work in scratch directory +cd "${OUTDIR}" + +# 8MB test image +TEST_BIOS="${SCRIPT_DIR}/futility/data/bios_link_mp.bin" +TEST_PROG="dummy:image=${TEST_BIOS},emulate=VARIABLE_SIZE,size=8388608" + +# Test flash size +flash_size=$("${FUTILITY}" flash --flash-size -p "${TEST_PROG}") +[ "${flash_size}" = "Flash size: 0x00800000" ] + +# Test WP status (VARIABLE_SIZE always has WP disabled) +wp_status=$("${FUTILITY}" flash --wp-status -p "${TEST_PROG}") +[ "${wp_status}" = "WP status: disabled" ] + +# Cleanup +rm -f "${TMP}"* +exit 0 |