Author: oxygene
Date: 2009-11-11 21:32:23 +0000 (Wed, 11 Nov 2009)
New Revision: 4934
Modified:
trunk/src/arch/i386/Kconfig
trunk/src/arch/i386/Makefile.inc
trunk/util/cbfstool/cbfstool.c
trunk/util/newconfig/config.g
Log:
Rework bootblock size handling:
- don't pretend to create a bootblock as large
as the ROM in Kconfig (it's 64k at most)
- don't pretend to accept a bootblocksize value
in cbfstool create (it ignored it)
- patch up the build systems to keep it working
Signed-off-by: Patrick Georgi <patrick.georgi(a)coresystems.de>
Acked-by: Myles Watson <mylesgw(a)gmail.com>
Acked-by: Peter Stuge <peter(a)stuge.se>
Modified: trunk/src/arch/i386/Kconfig
===================================================================
--- trunk/src/arch/i386/Kconfig 2009-11-11 19:31:53 UTC (rev 4933)
+++ trunk/src/arch/i386/Kconfig 2009-11-11 21:32:23 UTC (rev 4934)
@@ -20,12 +20,7 @@
config ROMBASE
hex
- default 0xffc00000 if COREBOOT_ROMSIZE_KB_4096
- default 0xffe00000 if COREBOOT_ROMSIZE_KB_2048
- default 0xfff00000 if COREBOOT_ROMSIZE_KB_1024
- default 0xfff80000 if COREBOOT_ROMSIZE_KB_512
- default 0xfffc0000 if COREBOOT_ROMSIZE_KB_256
- default 0xfffe0000 if COREBOOT_ROMSIZE_KB_128
+ default 0xffff0000
config ROM_IMAGE_SIZE
hex
Modified: trunk/src/arch/i386/Makefile.inc
===================================================================
--- trunk/src/arch/i386/Makefile.inc 2009-11-11 19:31:53 UTC (rev 4933)
+++ trunk/src/arch/i386/Makefile.inc 2009-11-11 21:32:23 UTC (rev 4934)
@@ -8,14 +8,13 @@
obj-$(CONFIG_HAVE_OPTION_TABLE) += ../../option_table.o
ifdef POST_EVALUATION
-BOOTBLOCK_SIZE=65536
#######################################################################
# Build the final rom image
$(obj)/coreboot.rom: $(obj)/coreboot.bootblock $(obj)/coreboot_ram $(CBFSTOOL)
rm -f $@
- $(CBFSTOOL) $@ create $(shell expr 1024 \* $(CONFIG_COREBOOT_ROMSIZE_KB)) $(BOOTBLOCK_SIZE) $(obj)/coreboot.bootblock
+ $(CBFSTOOL) $@ create $(shell expr 1024 \* $(CONFIG_COREBOOT_ROMSIZE_KB)) $(obj)/coreboot.bootblock
if [ -f fallback/coreboot_apc ]; \
then \
$(CBFSTOOL) $@ add-stage fallback/coreboot_apc fallback/coreboot_apc $(CBFS_COMPRESS_FLAG); \
Modified: trunk/util/cbfstool/cbfstool.c
===================================================================
--- trunk/util/cbfstool/cbfstool.c 2009-11-11 19:31:53 UTC (rev 4933)
+++ trunk/util/cbfstool/cbfstool.c 2009-11-11 21:32:23 UTC (rev 4934)
@@ -187,18 +187,17 @@
{
char *romname = argv[1];
char *cmd = argv[2];
- if (argc < 6) {
+ if (argc < 5) {
printf("not enough arguments to 'create'.\n");
return 1;
}
uint32_t size = strtoul(argv[3], NULL, 0);
- /* ignore bootblock size. we use whatever we get and won't allocate any larger */
- char *bootblock = argv[5];
+ char *bootblock = argv[4];
uint32_t align = 0;
- if (argc > 6)
- align = strtoul(argv[6], NULL, 0);
+ if (argc > 5)
+ align = strtoul(argv[5], NULL, 0);
return create_cbfs_image(romname, size, bootblock, align);
}
@@ -255,7 +254,7 @@
"add FILE NAME TYPE [base address] Add a component\n"
"add-payload FILE NAME [COMP] [base] Add a payload to the ROM\n"
"add-stage FILE NAME [COMP] [base] Add a stage to the ROM\n"
- "create SIZE BSIZE BOOTBLOCK [ALIGN] Create a ROM file\n"
+ "create SIZE BOOTBLOCK [ALIGN] Create a ROM file\n"
"locate FILE NAME ALIGN Find a place for a file of that size\n"
"print Show the contents of the ROM\n");
}
Modified: trunk/util/newconfig/config.g
===================================================================
--- trunk/util/newconfig/config.g 2009-11-11 19:31:53 UTC (rev 4933)
+++ trunk/util/newconfig/config.g 2009-11-11 21:32:23 UTC (rev 4934)
@@ -2295,8 +2295,8 @@
for j in i.roms:
file.write(" %s/coreboot.rom " % j)
file.write("> %s.bootblock\n\n" %i.name)
- file.write("\t./cbfs/cbfstool %s create %s %s %s.bootblock\n"
- %(i.name, romsize, bootblocksize, i.name))
+ file.write("\t./cbfs/cbfstool %s create %s %s.bootblock\n"
+ %(i.name, romsize, i.name))
for j in pciroms:
file.write("\t./cbfs/cbfstool %s add %s pci%04x,%04x.rom optionrom\n" % (i.name, j.name, j.pci_vid, j.pci_did))
for j in i.roms: