diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc index 4fda725c22..5f9d8006d3 100644 --- a/payloads/external/Makefile.inc +++ b/payloads/external/Makefile.inc @@ -135,6 +135,7 @@ payloads/external/tianocore/tianocore/Build/UEFIPAYLOAD.fd tianocore: $(DOTCONFI CONFIG_TIANOCORE_DEBUG=$(CONFIG_TIANOCORE_DEBUG) \ CONFIG_TIANOCORE_TARGET_IA32=$(CONFIG_TIANOCORE_TARGET_IA32) \ CONFIG_TIANOCORE_USE_8254_TIMER=$(CONFIG_TIANOCORE_USE_8254_TIMER) \ + CONFIG_TIANOCORE_BOOTSPLASH_FILE=$(CONFIG_TIANOCORE_BOOTSPLASH_FILE) \ GCC_CC_x86_32=$(GCC_CC_x86_32) \ GCC_CC_x86_64=$(GCC_CC_x86_64) \ GCC_CC_arm=$(GCC_CC_arm) \ diff --git a/payloads/external/tianocore/Kconfig b/payloads/external/tianocore/Kconfig index 4347edb9d2..d8b7d9251d 100644 --- a/payloads/external/tianocore/Kconfig +++ b/payloads/external/tianocore/Kconfig @@ -87,4 +87,24 @@ config TIANOCORE_USE_8254_TIMER help Use 8254 Timer for legacy support. +config TIANOCORE_BOOTSPLASH_IMAGE + bool "Use a custom bootsplash image" + depends on TIANOCORE_STABLE + help + Select this option if you have a bootsplash image that you would + like to be used. If this option is not selected, the default + coreboot logo (European Brown Hare) will used. + +config TIANOCORE_BOOTSPLASH_FILE + string "Tianocore Bootsplash path and filename" + depends on TIANOCORE_BOOTSPLASH_IMAGE + default "bootsplash.bmp" + help + The path and filename of the file to use as graphical bootsplash + screen. The file format must be uncompressed BMP, and the file's + resolution must be less than the native resolution of the display. + + If an absolute path is not given, the path will assumed to be + relative to the coreboot root directory. + endif diff --git a/payloads/external/tianocore/Makefile b/payloads/external/tianocore/Makefile index 87c48b1e0d..06e8b68f1d 100644 --- a/payloads/external/tianocore/Makefile +++ b/payloads/external/tianocore/Makefile @@ -81,6 +81,15 @@ checktools: build: update checktools unset CC; $(MAKE) -C $(project_dir)/BaseTools echo " build $(project_name) $(TAG-y)" + if [ -n $(CONFIG_TIANOCORE_BOOTSPLASH_FILE) ]; then \ + echo " Copying custom bootsplash image"; \ + case "$(CONFIG_TIANOCORE_BOOTSPLASH_FILE)" in \ + /*) cp $(CONFIG_TIANOCORE_BOOTSPLASH_FILE) \ + $(project_dir)/CorebootPayloadPkg/Logo/Logo.bmp;; \ + *) cp $(top)/$(CONFIG_TIANOCORE_BOOTSPLASH_FILE) \ + $(project_dir)/CorebootPayloadPkg/Logo/Logo.bmp;; \ + esac \ + fi; \ cd $(project_dir); \ export EDK_TOOLS_PATH=$(project_dir)/BaseTools; \ export WORKSPACE=$(project_dir); \ @@ -90,7 +99,8 @@ build: update checktools cat ../tools_def.txt >> $(project_dir)/Conf/tools_def.txt; \ fi; \ build $(BUILD_STR); \ - mv $(project_dir)/Build/CorebootPayloadPkg*/*/FV/UEFIPAYLOAD.fd $(project_dir)/Build/UEFIPAYLOAD.fd + mv $(project_dir)/Build/CorebootPayloadPkg*/*/FV/UEFIPAYLOAD.fd $(project_dir)/Build/UEFIPAYLOAD.fd; \ + git checkout CorebootPayloadPkg/Logo/Logo.bmp > /dev/null 2>&1 clean: test -d $(project_dir) && (cd $(project_dir); rm -rf Build; rm -f Conf/tools_def.txt) || exit 0