Nikolai Artemiev has uploaded this change for review. ( https://review.coreboot.org/c/flashrom/+/74930 )
Change subject: flashrom: Use WP-based unlocking on opaque masters ......................................................................
flashrom: Use WP-based unlocking on opaque masters
Flashrom only tries to use WP-based unlocking if it detectes that WP operations are supported. However WP support was detected in a way that ignored WP operations provided by opaque masters.
This stopped flashrom from automatically unlocking with some opaque masters, particularly linux_mtd.
BUG=b:280111380 BRANCH=none TEST=Checked flashrom automatically unlocked flash on strongbad (MTD)
Change-Id: I1774ad64d82ae47cd085df6045e17e283855c01f Signed-off-by: Nikolai Artemiev nartemiev@google.com --- M flashrom.c 1 file changed, 23 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/flashrom refs/changes/30/74930/1
diff --git a/flashrom.c b/flashrom.c index 07ed0df..faffe51 100644 --- a/flashrom.c +++ b/flashrom.c @@ -2093,7 +2093,8 @@
/* Given the existence of read locks, we want to unlock for read, erase and write. */ int ret = 1; - if (flash->chip->decode_range != NO_DECODE_RANGE_FUNC) { + if (flash->chip->decode_range != NO_DECODE_RANGE_FUNC || + (flash->mst->buses_supported & BUS_PROG && flash->mst->opaque.wp_write_cfg)) { ret = unlock_flash_wp(flash); if (ret) msg_cerr("Failed to unlock flash status reg with wp support.\n");