[coreboot] [PATCH] Add option 'compress ramstage'

Sven Schnelle svens at stackframe.org
Mon May 2 16:13:33 CEST 2011


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>
---
 Makefile.inc |    4 ++++
 src/Kconfig  |    8 ++++++++
 2 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/Makefile.inc b/Makefile.inc
index 6c4a16a..6267539 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -85,7 +85,11 @@ cbfs-files-handler= \
 
 #######################################################################
 # 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)
diff --git a/src/Kconfig b/src/Kconfig
index 76e77f8..a782315 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -98,6 +98,14 @@ config USE_OPTION_TABLE
 	  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 BIOS flash
+	  is connected through a slow Link (i.e. SPI)
+
 endmenu
 
 source src/mainboard/Kconfig
-- 
1.7.4.4





More information about the coreboot mailing list