coreboot/src/soc/intel
Subrata Banik 78d15d9a12 drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering
This patch introduces `USE_COREBOOT_FOR_BMP_RENDERING`, a Kconfig option
allowing platforms to choose coreboot to use its native bitmap (BMP)
logo image rendering and skip using the FSP for this purpose during
the boot process.

By default this option is disabled (default 'n'), therefore, the FSP
is utilized for displaying the BMP logo by populating the necessary
FSP UPD parameters.

Select this option for platforms that will use a coreboot native
implementation for BMP rendering (note: the native coreboot rendering
path is still under development/to be implemented).

This Kconfig provides the switch for such future integration.

Key changes:
- A new boolean Kconfig `USE_COREBOOT_FOR_BMP_RENDERING` is added under
  `drivers/intel/fsp2_0/Kconfig`. It depends on `BMP_LOGO` and
  defaults to 'n'.
- The help text clarifies that selecting this option will skip FSP-based
  BMP rendering. Deselection implies a fallback to the FSP based
  implementation.
- The function `soc_load_logo`, previously responsible for populating
  FSP UPD parameters for the logo, is renamed to `soc_load_logo_by_fsp`.
  This clarifies its role is specific to FSP-driven logo display.
- The call to `soc_load_logo_by_fsp` in `fsp2_0/silicon_init.c` is
  now conditional on `CONFIG(BMP_LOGO)` being enabled but the new
  `CONFIG(USE_COREBOOT_FOR_BMP_RENDERING)` remains disabled.
- Implementations and calls to the renamed function are updated across
  relevant SoC directories (AMD Mendocino, Intel Alder Lake, Apollolake,
  Cannon Lake, Meteor Lake, Panther Lake, Skylake).

This change offers platforms greater flexibility in managing BMP logo
display, allowing them to either leverage FSP capabilities or integrate
with coreboot's native methods as they become available.

BUG=b:409718202
TEST=Built and booted google/fatcat. Verified boot splash was rendered
by FSP as `USE_COREBOOT_FOR_BMP_RENDERING` was set to `n`.

Change-Id: Ieda085df02263b9bf4bdd8f5d0e2137bef75def9
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87513
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
2025-05-08 16:51:25 +00:00
..
alderlake drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering 2025-05-08 16:51:25 +00:00
apollolake drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering 2025-05-08 16:51:25 +00:00
baytrail soc/intel/baytrail: Add microcode for '06-37-08' SOCs 2025-02-03 18:59:45 +00:00
braswell tree: Handle NULL pointer returned by smm_get_save_state() 2025-01-20 03:26:26 +00:00
broadwell soc/intel/broadwell: Add CFR objects for existing options 2025-04-25 14:24:27 +00:00
cannonlake drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering 2025-05-08 16:51:25 +00:00
common soc/intel/cmn/cse_lite: Fix handling of soft disable state 2025-05-06 15:06:35 +00:00
denverton_ns tree: remove duplicated includes 2025-04-20 05:13:57 +00:00
elkhartlake soc/intel/elkhartlake: Hook up S0ix setting to option API 2025-05-08 12:27:06 +00:00
jasperlake soc/intel/jasperlake: Hook up S0ix setting to option API 2025-05-08 12:27:12 +00:00
meteorlake drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering 2025-05-08 16:51:25 +00:00
pantherlake drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering 2025-05-08 16:51:25 +00:00
skylake drivers/intel/fsp2_0: Add Kconfig to select FSP for BMP rendering 2025-05-08 16:51:25 +00:00
snowridge soc/intel/common/block: Add const qualifier for input of pirq ops 2024-12-09 13:55:53 +00:00
tigerlake soc/intel/tigerlake: Hook up S0ix setting to option API 2025-05-08 12:27:37 +00:00
xeon_sp smmrelocate: Drop unused parameter 2025-04-23 21:02:27 +00:00
Makefile.mk soc/intel: Rename Makefiles from .inc to .mk 2024-01-24 10:02:22 +00:00