payloads/seabios: Add Hardware IRQ Kconfig

Certain boards require SeaBIOS' HARDWARE_IRQ option to be
deselected in order for the platform to boot. Add a Kconfig
to allow selection of HARDWARE_IRQ enablement, and write to
SeaBIOS' .config file in cases where it needs to be disabled.
Deselect the option for google/rambi variants so they boot
with boards defaults.

Test: build/boot google/clapper, verify board boots vs hanging
at boot menu prompt.

Change-Id: I23e9b30d2d1042c86bd10f134d6fe361edaf8cb2
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39869
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
This commit is contained in:
Matt DeVillier 2020-03-26 21:13:24 -05:00 committed by Patrick Georgi
parent f213f17992
commit 9d821fa1d1
3 changed files with 18 additions and 0 deletions

View File

@ -51,6 +51,16 @@ config SEABIOS_THREAD_OPTIONROMS
variations during option ROM code execution. It is not variations during option ROM code execution. It is not
known if all option ROMs will behave properly with this option. known if all option ROMs will behave properly with this option.
config SEABIOS_HARDWARE_IRQ
prompt "Hardware Interrupts"
default y
bool
help
Program and support hardware interrupts using the i8259
programmable interrupt controller (PIC). Deselected by
boards which would otherwise hang at the boot menu (eg,
google/rambi).
config SEABIOS_VGA_COREBOOT config SEABIOS_VGA_COREBOOT
prompt "Include generated option rom that implements legacy VGA BIOS compatibility" prompt "Include generated option rom that implements legacy VGA BIOS compatibility"
default y if !VENDOR_EMULATION default y if !VENDOR_EMULATION

View File

@ -72,6 +72,9 @@ endif
ifneq ($(CONFIG_SEABIOS_DEBUG_LEVEL),-1) ifneq ($(CONFIG_SEABIOS_DEBUG_LEVEL),-1)
echo "CONFIG_DEBUG_LEVEL=$(CONFIG_SEABIOS_DEBUG_LEVEL)" >> seabios/.config echo "CONFIG_DEBUG_LEVEL=$(CONFIG_SEABIOS_DEBUG_LEVEL)" >> seabios/.config
endif endif
ifneq ($(CONFIG_SEABIOS_HARDWARE_IRQ),y)
echo "# CONFIG_HARDWARE_IRQ is not set" >> seabios/.config
endif
# This shows how to force a previously set .config option *off* # This shows how to force a previously set .config option *off*
# echo "# CONFIG_SMBIOS is not set" >> seabios/.config # echo "# CONFIG_SMBIOS is not set" >> seabios/.config
$(MAKE) -C seabios olddefconfig OUT=out/ $(MAKE) -C seabios olddefconfig OUT=out/

View File

@ -77,6 +77,11 @@ config MAINBOARD_SMBIOS_MANUFACTURER
default "GOOGLE" default "GOOGLE"
config CONSOLE_SERIAL config CONSOLE_SERIAL
bool
default n
config SEABIOS_HARDWARE_IRQ
bool
default n default n
endif # BOARD_GOOGLE_BASEBOARD_RAMBI endif # BOARD_GOOGLE_BASEBOARD_RAMBI