Author: oxygene Date: 2009-05-13 11:49:44 +0200 (Wed, 13 May 2009) New Revision: 95
Modified: trunk/filo/i386/segment.c Log: Only use CB_MEM_RAM entries of the memory map to determine the target of the FILO relocation routine.
Without that, FILO considers reserved areas as valid targets, too (eg. somewhere in the PCI BARs)
Modified: trunk/filo/i386/segment.c =================================================================== --- trunk/filo/i386/segment.c 2009-04-29 19:22:07 UTC (rev 94) +++ trunk/filo/i386/segment.c 2009-05-13 09:49:44 UTC (rev 95) @@ -22,6 +22,7 @@ */
#include <libpayload.h> +#include <coreboot_tables.h> #include <config.h> #include "segment.h"
@@ -73,6 +74,8 @@
new_base = 0; for (i = 0; i < info->n_memranges; i++) { + if (info->memrange[i].type != CB_MEM_RAM) + continue; if (info->memrange[i].base >= 1ULL<<32) continue; segsize = info->memrange[i].size;