drivers/intel/fsp2_0: Add 1-bpp monochrome option for VGA mode 12

Add a new Kconfig option, FSP_VGA_MODE12_MONOCHROME, to allow the
system to use a 1-bit-per-pixel (1bpp) planar VGA buffer during FSP
initialization instead of the standard 4bpp buffer. This is useful
in romstage where every byte is critical.

When this option is enabled, the FSP is expected to handle the
internal replication of the 1bpp data across the other three
color planes to render the monochrome image.

Key changes:
- Introduce FSP_VGA_MODE12_MONOCHROME Kconfig option.
- Automatically select FSP_VGA_MODE12 when the monochrome option is
used.
- Set FSP_VGA_MODE12_BPP to 0x1 when FSP_VGA_MODE12_MONOCHROME is
selected.

BUG=b:406725440
TEST=Verify VGA text rotation on Google/Felino.

Change-Id: Ie77c40025c13e52188439fffedc834c26338bfe3
Signed-off-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90072
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
This commit is contained in:
Kapil Porwal 2025-11-17 22:11:35 +05:30 committed by Matt DeVillier
commit e9c47bf99e

View file

@ -507,8 +507,20 @@ config FSP_VGA_MODE12
help
Select this if the FSP supports VGA mode 12.
config FSP_VGA_MODE12_MONOCHROME
bool
default n
depends on VGA || ROMSTAGE_VGA
select FSP_VGA_MODE12
help
Select this if the FSP supports monochrome VGA mode 12. This implies
that FSP can accept 1 bit-per-pixel planar buffer instead of 4 to save
the crucial space. The FSP internally replicates the pixel data to other
3 planes.
config FSP_VGA_MODE12_BPP
hex
default 0x1 if FSP_VGA_MODE12_MONOCHROME
default 0x4 if FSP_VGA_MODE12
default 0x0
help