{drivers, lib}: Move BMP_LOGO Kconfig options to common library

This commit relocates the BMP_LOGO related Kconfig options from the
FSP1.1 and FSP2.0 drivers to the common library (lib/).

This change:

-   Centralizes the BMP_LOGO configuration, making it accessible to
    all drivers and platforms.
-   Removes duplicate Kconfig entries from the FSP drivers.
-   Prepares for future refactoring where BMP_LOGO will be handled
    entirely within the library, enabling its use by both FSP and
    non-FSP platforms.

The following Kconfig options are moved under "Boot Logo Configuration"
menu option:

-   `BMP_LOGO`
-   `BMP_LOGO_COMPRESS_LZMA`
-   `BMP_LOGO_COMPRESS_LZ4`
-   `BMP_LOGO_FILE_NAME`
-   `HAVE_BMP_LOGO_COMPRESS_LZMA`
-   `HAVE_CUSTOM_BMP_LOGO`

BUG=b:400738815
TEST=Able to build and boot google/brox.

Change-Id: I9bbfade9b919cfbd0b689a67c988ed8c65deb597
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86730
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
Reviewed-by: Dinesh Gehlot <digehlot@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Subrata Banik 2025-03-05 12:05:29 +00:00
commit efb1806d3d
4 changed files with 46 additions and 60 deletions

View file

@ -78,16 +78,4 @@ config SKIP_FSP_CAR
help
Selected by platforms that implement their own CAR setup.
config BMP_LOGO
bool "Enable logo"
default n
help
Uses the FSP to display the boot logo. This method supports a
BMP file only. The uncompressed size can be up to 1 MB.
config BMP_LOGO_FILE_NAME
string "Logo file"
depends on BMP_LOGO
default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/logo.bmp"
endif #PLATFORM_USES_FSP1_1

View file

@ -36,10 +36,4 @@ fsp.bin-options := --xip $(TXTIBB)
fsp.bin-COREBOOT-position := $(CONFIG_FSP_LOC)
endif
# Add logo to the cbfs image
cbfs-files-$(CONFIG_BMP_LOGO) += logo.bmp
logo.bmp-file := $(call strip_quotes,$(CONFIG_BMP_LOGO_FILE_NAME))
logo.bmp-type := raw
logo.bmp-compression := LZMA
endif

View file

@ -265,48 +265,6 @@ config FSP_PLATFORM_MEMORY_SETTINGS_VERSIONS
This allows deployed systems to bump their version number
with the same FSP which will trigger a retrain of the memory.
config BMP_LOGO
bool "Enable logo"
default n
help
Uses the FSP to display the boot logo. This method supports a
BMP file only. The uncompressed size can be up to 1 MB. The logo can
be compressed based on either `BMP_LOGO_COMPRESS_*` configs (default LZMA).
config HAVE_BMP_LOGO_COMPRESS_LZMA
bool
depends on BMP_LOGO
default y
choice
prompt "BMP Logo compression"
depends on BMP_LOGO
default BMP_LOGO_COMPRESS_LZMA if HAVE_BMP_LOGO_COMPRESS_LZMA
default BMP_LOGO_COMPRESS_LZ4
config BMP_LOGO_COMPRESS_LZMA
bool "Use LZMA compression for BMP logo"
help
This option enables the use of LZMA compression for the BMP logo.
LZMA is a lossless compression algorithm that can significantly reduce
the size of the logo, without sacrificing quality.
If this option is not enabled, the BMP logo will be uncompressed.
config BMP_LOGO_COMPRESS_LZ4
bool "Compress BMP logo using LZ4"
help
This option enables compression of the BMP logo using the LZ4 algorithm.
Although the size reduction is not as efficient as LZMA compression, however,
it can also make the boot process slightly faster compared to the LZMA.
endchoice
config BMP_LOGO_FILE_NAME
string "Logo file"
depends on BMP_LOGO
default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/logo.bmp"
config FSP_COMPRESS_FSP_S_LZMA
bool

View file

@ -156,10 +156,56 @@ config PROBE_RAM
When enabled it will be possible to detect usable RAM using probe_ram
function.
menu "Boot Logo Configuration"
config BMP_LOGO
bool "Enable logo"
default n
help
Uses the FSP to display the boot logo. This method supports a
BMP file only. The uncompressed size can be up to 1 MB. The logo can
be compressed based on either `BMP_LOGO_COMPRESS_*` configs (default LZMA).
config HAVE_CUSTOM_BMP_LOGO
def_bool n
depends on BMP_LOGO
config HAVE_BMP_LOGO_COMPRESS_LZMA
bool
depends on BMP_LOGO
default y
choice
prompt "BMP Logo compression"
depends on BMP_LOGO
default BMP_LOGO_COMPRESS_LZMA if HAVE_BMP_LOGO_COMPRESS_LZMA
default BMP_LOGO_COMPRESS_LZ4
config BMP_LOGO_COMPRESS_LZMA
bool "Use LZMA compression for BMP logo"
help
This option enables the use of LZMA compression for the BMP logo.
LZMA is a lossless compression algorithm that can significantly reduce
the size of the logo, without sacrificing quality.
If this option is not enabled, the BMP logo will be uncompressed.
config BMP_LOGO_COMPRESS_LZ4
bool "Compress BMP logo using LZ4"
help
This option enables compression of the BMP logo using the LZ4 algorithm.
Although the size reduction is not as efficient as LZMA compression, however,
it can also make the boot process slightly faster compared to the LZMA.
endchoice
config BMP_LOGO_FILE_NAME
string "Logo file"
depends on BMP_LOGO
default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/logo.bmp"
endmenu
config HAVE_EARLY_POWEROFF_SUPPORT
bool
help