diff --git a/flashrom.c b/flashrom.c index 100fc480a..b6f52fa55 100644 --- a/flashrom.c +++ b/flashrom.c @@ -1900,13 +1900,6 @@ int prepare_flash_access(struct flashctx *const flash, return 1; } - if ((write_it || erase_it) && !flash->flags.force) { - if (!can_change_target_regions(flash)) { - msg_cerr("At least one target region is not fully writable. Aborting.\n"); - return 1; - } - } - if (map_flash(flash) != 0) return 1; @@ -1930,6 +1923,13 @@ int prepare_flash_access(struct flashctx *const flash, if (ret && bp_func) bp_func(flash); + if ((write_it || erase_it) && !flash->flags.force) { + if (!can_change_target_regions(flash)) { + msg_cerr("At least one target region is not fully writable. Aborting.\n"); + return 1; + } + } + flash->address_high_byte = -1; flash->in_4ba_mode = false;