Nikolai Artemiev has uploaded this change for review.

View Change

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");

To view, visit change 74930. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: flashrom
Gerrit-Branch: master
Gerrit-Change-Id: I1774ad64d82ae47cd085df6045e17e283855c01f
Gerrit-Change-Number: 74930
Gerrit-PatchSet: 1
Gerrit-Owner: Nikolai Artemiev <nartemiev@google.com>
Gerrit-MessageType: newchange