From cd7e9b55dd9887047555e99ec926a1cf762f52de Mon Sep 17 00:00:00 2001 From: Peter Stuge Date: Mon, 9 Feb 2009 20:26:14 +0000 Subject: [PATCH] flashrom: Fix broken flash chip base address logic Elan SC520 requries us to deal with flash chip base addresses at locations other than top of 4GB. The logic for that was incorrectly triggered also when a board had more than one flash chip. This patch will honor flashbase only when probing for the first flash chip on the board, and look at top of 4GB for later chips. Signed-off-by: Peter Stuge Acked-by: Myles Watson git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3932 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- util/flashrom/flashrom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/flashrom/flashrom.c b/util/flashrom/flashrom.c index e19f7f2ff8..a47bfa0754 100644 --- a/util/flashrom/flashrom.c +++ b/util/flashrom/flashrom.c @@ -121,7 +121,7 @@ struct flashchip *probe_flash(struct flashchip *first_flash, int force) size = getpagesize(); } - base = flashbase ? flashbase : (0xffffffff - size + 1); + base = flashbase && flashchips == first_flash ? flashbase : (0xffffffff - size + 1); flash->virtual_memory = bios = physmap("flash chip", base, size); if (force)