[coreboot] [commit] r6552 - in trunk: . src

repository service svn at coreboot.org
Mon May 2 21:53:05 CEST 2011


Author: svens
Date: Mon May  2 21:53:04 2011
New Revision: 6552
URL: https://tracker.coreboot.org/trac/coreboot/changeset/6552

Log:
Add option 'compress ramstage'

Add an option to make compression of ramstage configurable. Right now
it is always compressed. On my Thinkpad, the complete boot to grub takes
4s, with around 1s required for decompressing ramstage. This is probably
caused by the fact the decompression does a lot of single byte/word/qword
accesses, which are really slow on SPI buses. So give the user the option
to store ramstage uncompressed, if he has enough memory.

Signed-off-by: Sven Schnelle <svens at stackframe.org>
Acked-by: Patrick Georgi <patrick at georgi-clan.de>

Modified:
   trunk/Makefile.inc
   trunk/src/Kconfig

Modified: trunk/Makefile.inc
==============================================================================
--- trunk/Makefile.inc	Sat Apr 30 02:22:04 2011	(r6551)
+++ trunk/Makefile.inc	Mon May  2 21:53:04 2011	(r6552)
@@ -85,7 +85,11 @@
 
 #######################################################################
 # a variety of flags for our build
+CBFS_COMPRESS_FLAG:=
+ifeq ($(CONFIG_COMPRESS_RAMSTAGE),y)
 CBFS_COMPRESS_FLAG:=l
+endif
+
 CBFS_PAYLOAD_COMPRESS_FLAG:=
 CBFS_PAYLOAD_COMPRESS_NAME:=none
 ifeq ($(CONFIG_COMPRESSED_PAYLOAD_LZMA),y)

Modified: trunk/src/Kconfig
==============================================================================
--- trunk/src/Kconfig	Sat Apr 30 02:22:04 2011	(r6551)
+++ trunk/src/Kconfig	Mon May  2 21:53:04 2011	(r6552)
@@ -98,6 +98,14 @@
 	  Enable this option if coreboot shall read options from the "CMOS"
 	  NVRAM instead of using hard coded values.
 
+config COMPRESS_RAMSTAGE
+	bool "Compress ramstage with LZMA"
+	default y
+	help
+	  Compress ramstage to save memory in the flash image. Note
+	  that decompression might slow down booting if the boot flash
+	  is connected through a slow Link (i.e. SPI)
+
 endmenu
 
 source src/mainboard/Kconfig




More information about the coreboot mailing list