[coreboot] [commit] r4987 - in trunk: src/arch/i386 util/cbfstool

svn at coreboot.org svn at coreboot.org
Mon Dec 21 14:50:37 CET 2009


Author: oxygene
Date: 2009-12-21 14:50:37 +0100 (Mon, 21 Dec 2009)
New Revision: 4987

Modified:
   trunk/src/arch/i386/Makefile.inc
   trunk/util/cbfstool/cbfstool.c
Log:
Allow user to specify the size of a newly created cbfs image
to be stated in kilobytes or megabytes. Usage is
cbfstool coreboot.rom create 1048576 coreboot.bootblock
cbfstool coreboot.rom create 1024k coreboot.bootblock
cbfstool coreboot.rom create 1m coreboot.bootblock
to get an 1048576 bytes = 1024kb = 1mb image.

Kconfig also uses this instead of calculating bytes from kilobytes itself.

Signed-off-by: Patrick Georgi <patrick.georgi at coresystems.de>
Acked-by: Peter Stuge <peter at stuge.se>


Modified: trunk/src/arch/i386/Makefile.inc
===================================================================
--- trunk/src/arch/i386/Makefile.inc	2009-12-21 12:32:29 UTC (rev 4986)
+++ trunk/src/arch/i386/Makefile.inc	2009-12-21 13:50:37 UTC (rev 4987)
@@ -14,7 +14,7 @@
 
 $(obj)/coreboot.rom: $(obj)/coreboot.bootblock $(obj)/coreboot_ram $(CBFSTOOL)
 	rm -f $@
-	$(CBFSTOOL) $@ create $(shell expr 1024 \* $(CONFIG_COREBOOT_ROMSIZE_KB)) $(obj)/coreboot.bootblock
+	$(CBFSTOOL) $@ create $(CONFIG_COREBOOT_ROMSIZE_KB)K $(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-12-21 12:32:29 UTC (rev 4986)
+++ trunk/util/cbfstool/cbfstool.c	2009-12-21 13:50:37 UTC (rev 4987)
@@ -192,7 +192,14 @@
 		return 1;
 	}
 
-	uint32_t size = strtoul(argv[3], NULL, 0);
+	char* suffix;
+	uint32_t size = strtoul(argv[3], &suffix, 0);
+	if (tolower(suffix[0])=='k') {
+		size *= 1024;
+	}
+	if (tolower(suffix[0])=='m') {
+		size *= 1024 * 1024;
+	}
 	char *bootblock = argv[4];
 	uint32_t align = 0;
 





More information about the coreboot mailing list