Michał Żygowski has uploaded this change for review.

View Change

bootsplash: Allow bootsplash compression

TEST=include BMP bootsplash and select the compression, boot Protectli
FW6 with SeaBIOS and observe the bootsplash on the screen

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Id9abc6f72e3f82ce60cd06376cdc4f49f0198823
---
M Makefile.inc
M src/Kconfig
2 files changed, 16 insertions(+), 0 deletions(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/06/42806/1
diff --git a/Makefile.inc b/Makefile.inc
index 7f61a5e..af931f7 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -1218,9 +1218,16 @@
revision-type := raw

BOOTSPLASH_SUFFIX=$(suffix $(call strip_quotes,$(CONFIG_BOOTSPLASH_FILE)))
+ifeq ($(CONFIG_COMPRESS_BOOTSPLASH),)
cbfs-files-$(CONFIG_BOOTSPLASH_IMAGE) += bootsplash$(BOOTSPLASH_SUFFIX)
bootsplash$(BOOTSPLASH_SUFFIX)-file := $(call strip_quotes,$(CONFIG_BOOTSPLASH_FILE))
bootsplash$(BOOTSPLASH_SUFFIX)-type := bootsplash
+else
+cbfs-files-$(CONFIG_BOOTSPLASH_IMAGE) += bootsplash$(BOOTSPLASH_SUFFIX).lzma
+bootsplash$(BOOTSPLASH_SUFFIX).lzma-file := $(call strip_quotes,$(CONFIG_BOOTSPLASH_FILE))
+bootsplash$(BOOTSPLASH_SUFFIX).lzma-compression := $(CBFS_COMPRESS_FLAG)
+bootsplash$(BOOTSPLASH_SUFFIX).lzma-type := bootsplash
+endif

# Ensure that no payload segment overlaps with memory regions used by ramstage
# (not for x86 since it can relocate itself in that case)
diff --git a/src/Kconfig b/src/Kconfig
index 1b49e2b..ec3a274 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -315,6 +315,15 @@
This will only add the image to the ROM. To actually run it check
options under 'Display' section.

+config COMPRESS_BOOTSPLASH
+ bool "Compress bootsplash image"
+ depends on PAYLOAD_SEABIOS
+ help
+ The bootsplash image can be compressed with LZMA. This is especially
+ useful when BMP bootsplash is used and occupies too much SPI flash
+ space. The bootsplash CBFS file name will be compressed and suffixed
+ with lzma extension to indicate SeaBIOS to decompress it when loaded.
+
config BOOTSPLASH_FILE
string "Bootsplash path and filename"
depends on BOOTSPLASH_IMAGE

To view, visit change 42806. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Id9abc6f72e3f82ce60cd06376cdc4f49f0198823
Gerrit-Change-Number: 42806
Gerrit-PatchSet: 1
Gerrit-Owner: Michał Żygowski <michal.zygowski@3mdeb.com>
Gerrit-MessageType: newchange