summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Rudolph <siro@das-labor.org>2017-01-08 09:57:47 +0100
committerNico Huber <nico.h@gmx.de>2017-02-04 17:36:21 +0100
commit8a06cc7ec8094325b9f710870f646d2a5cb9eb22 (patch)
tree66c5a9acb94dcf8a0f7d1420128e434427579892
parent4a282b84192d4b8ba62521c0dc87db1872853ab0 (diff)
util/ifdtool: Fix ICH Gbe unlock
With coreboot 4.4 switched to "Descriptor mode" for Lenovo T500 it automatically unlocks all flash regions. For Gbe region the "Requester ID" was hardcoded resulting in *dead* Gbe. Keep board specific "Requester ID" while unlocking Gbe region. Allows Lenovo T500 to boot with IFD "Descriptor mode" with unlocked flash regions. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Change-Id: Ia4b5d1928e84bee42182fc83020e3a13fadc93c4 Reviewed-on: https://review.coreboot.org/18055 Tested-by: build bot (Jenkins) Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
-rw-r--r--util/ifdtool/ifdtool.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/util/ifdtool/ifdtool.c b/util/ifdtool/ifdtool.c
index 45dd97cd42..73f89425f1 100644
--- a/util/ifdtool/ifdtool.c
+++ b/util/ifdtool/ifdtool.c
@@ -876,7 +876,8 @@ static void unlock_descriptor(char *filename, char *image, int size)
} else {
fmba->flmstr1 = 0xffff0000;
fmba->flmstr2 = 0xffff0000;
- fmba->flmstr3 = 0x08080118;
+ /* Keep chipset specific Requester ID */
+ fmba->flmstr3 = 0x08080000 | (fmba->flmstr3 & 0xffff);
}
write_image(filename, image, size);