Author: stepan
Date: 2009-05-24 16:56:59 +0200 (Sun, 24 May 2009)
New Revision: 98

Modified:
   trunk/filo/Makefile
   trunk/filo/i386/linux_load.c
Log:
This update contains two fixes for FILO when used with newer libpayload
versions. 
- don't unconditionally use coreboot memory entries from libpayload, but
  instead only look at those that are memory.
- specify architecture include for multi platform libpayload
- sort symbol table (cosmetical but maybe useful)

Signed-off-by: Stefan Reinauer <[email protected]>
Acked-by: Stefan Reinauer <[email protected]>



Modified: trunk/filo/Makefile
===================================================================
--- trunk/filo/Makefile 2009-05-24 14:54:19 UTC (rev 97)
+++ trunk/filo/Makefile 2009-05-24 14:56:59 UTC (rev 98)
@@ -76,7 +76,7 @@
 LIBGCC = $(shell $(CC) $(CFLAGS) -print-libgcc-file-name)
 
 OBJS     := $(patsubst %,$(obj)/%,$(TARGETS-y))
-INCLUDES := -I$(INCPAYLOAD) -Iinclude -I$(ARCHDIR-y)/include -Ibuild
+INCLUDES := -I$(INCPAYLOAD) -I$(INCPAYLOAD)/$(ARCHDIR-y) -Iinclude 
-I$(ARCHDIR-y)/include -Ibuild
 INCLUDES += -I$(GCCINCDIR)
 
 try-run= $(shell set -e; \
@@ -107,7 +107,7 @@
 
 $(TARGET): $(obj)/filo $(obj)/util/ebchecksum
        $(Q)cp $(obj)/filo $@
-       $(Q)$(NM) $(obj)/filo > $(obj)/filo.map
+       $(Q)$(NM) $(obj)/filo | sort > $(obj)/filo.map
        $(Q)printf "  STRIP   $(subst $(shell pwd)/,,$(@))\n"
        $(Q)$(STRIP) -s $@
        $(Q)printf "  EBCHECK $(subst $(shell pwd)/,,$(@))\n"

Modified: trunk/filo/i386/linux_load.c
===================================================================
--- trunk/filo/i386/linux_load.c        2009-05-24 14:54:19 UTC (rev 97)
+++ trunk/filo/i386/linux_load.c        2009-05-24 14:56:59 UTC (rev 98)
@@ -271,9 +271,9 @@
            /* Convert to BIOS e820 style */
            linux_map->addr = filo_map->base;
            linux_map->size = filo_map->size;
-           linux_map->type = E820_RAM;
-           debug("%016Lx - %016Lx\n", linux_map->addr,
-                   linux_map->addr + linux_map->size);
+           linux_map->type = filo_map->type;
+           debug("%016Lx - %016Lx (%d)\n", linux_map->addr,
+                   linux_map->addr + linux_map->size, linux_map->type);
            params->e820_map_nr = i+1;
        }
 
@@ -284,6 +284,7 @@
                ramtop = (u32) end;
        }
     }
+
     debug("ramtop=%#x\n", ramtop);
     /* Size of memory above 1MB in KB */
     params->alt_mem_k = (ramtop - (1<<20)) >> 10;


-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to