Philipp Deppenwiese has uploaded this change for review. ( https://review.coreboot.org/22632
Change subject: payloads/SeaBIOS: Add NO_HARDWARE_IRQ option ......................................................................
payloads/SeaBIOS: Add NO_HARDWARE_IRQ option
Normally support for hardware irq in SeaBIOS is needed for the most platforms. But some like Apollolake require it to be disabled.
Change-Id: I5a5f40c58b595075940e5d6d3d10b06caa322714 Signed-off-by: Philipp Deppenwiese zaolin@das-labor.org --- M payloads/external/Makefile.inc M payloads/external/SeaBIOS/Kconfig M payloads/external/SeaBIOS/Makefile 3 files changed, 16 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/32/22632/1
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc index 453d09e..46bb2a7 100644 --- a/payloads/external/Makefile.inc +++ b/payloads/external/Makefile.inc @@ -92,7 +92,8 @@ CONFIG_SEABIOS_DEBUG_LEVEL=$(CONFIG_SEABIOS_DEBUG_LEVEL) \ CONFIG_DRIVERS_UART_8250MEM_32=$(CONFIG_DRIVERS_UART_8250MEM_32) \ CONFIG_ENABLE_HSUART=$(CONFIG_ENABLE_HSUART) \ - CONFIG_CONSOLE_UART_BASE_ADDRESS=$(CONFIG_CONSOLE_UART_BASE_ADDRESS) + CONFIG_CONSOLE_UART_BASE_ADDRESS=$(CONFIG_CONSOLE_UART_BASE_ADDRESS) \ + SEABIOS_NO_HARDWARE_IRQ=$(SEABIOS_NO_HARDWARE_IRQ)
payloads/external/SeaBIOS/seabios/out/vgabios.bin: seabios payloads/external/SeaBIOS/seabios/.config: payloads/external/SeaBIOS/seabios/out/bios.bin.elf diff --git a/payloads/external/SeaBIOS/Kconfig b/payloads/external/SeaBIOS/Kconfig index 5c0faaa..3ed7a5b 100644 --- a/payloads/external/SeaBIOS/Kconfig +++ b/payloads/external/SeaBIOS/Kconfig @@ -62,6 +62,17 @@ After initializing the GPU, the information about it can be passed to the payload. Provide an option rom that implements this legacy VGA BIOS compatibility requirement.
+config SEABIOS_NO_HARDWARE_IRQ + prompt "Disable IRQ routing support" + default n + bool + help + Program and support hardware interrupts using the i8259 + programmable interrupt controller (PIC). This option must + be enabled in order to support most boot loaders. Only + enable this option if running on peculiar hardware known + not to support irq routing. + config PAYLOAD_CONFIGFILE string "SeaBIOS config file" default "" diff --git a/payloads/external/SeaBIOS/Makefile b/payloads/external/SeaBIOS/Makefile index 8b6b0ed..50c3486 100644 --- a/payloads/external/SeaBIOS/Makefile +++ b/payloads/external/SeaBIOS/Makefile @@ -57,6 +57,9 @@ ifneq ($(CONFIG_SEABIOS_THREAD_OPTIONROMS),y) echo "# CONFIG_THREAD_OPTIONROMS is not set" >> seabios/.config endif +ifneq ($(CONFIG_SEABIOS_NO_HARDWARE_IRQ),y) + echo "# CONFIG_HARDWARE_IRQ is not set" >> seabios/.config +endif ifeq ($(CONFIG_SEABIOS_VGA_COREBOOT),y) echo "CONFIG_VGA_COREBOOT=y" >> seabios/.config echo "CONFIG_BUILD_VGABIOS=y" >> seabios/.config