Piotr Król would like Michał Żygowski to review this change.

View Change

payloads/iPXE: add iPXE serial enable option

Since SeaBIOS 1.11.0 implements serial console and etc/sercon-port
runtime config file is present in CBFS, SeaBIOS additionally
redirects iPXE output to configured IO port. For boards which use
the same UART for SeaBIOS and iPXE console it causes doubled
output.

The option is enabled by default and passes UART configuration
to iPXE Makefile as before. When unselected, only SeaBIOS handles
printing output from iPXE.

Change-Id: Ia3c74cfbee4f816782161fcff286a14f46be78c5
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Signed-off-by: Piotr Król <piotr.krol@3mdeb.com>
---
M payloads/external/Makefile.inc
M payloads/external/iPXE/Kconfig
2 files changed, 16 insertions(+), 1 deletion(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/02/27302/1
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc
index 3943db9..1d3e7a1 100644
--- a/payloads/external/Makefile.inc
+++ b/payloads/external/Makefile.inc
@@ -234,6 +234,12 @@
IPXE_UART=COM$(call int-add,$(CONFIG_UART_FOR_CONSOLE) 1)
endif

+ifeq ($(CONFIG_PXE_SERIAL_CONSOLE),y)
+IPXE_SERIAL_CONSOLE = $(CONFIG_CONSOLE_SERIAL)$(CONFIG_DRIVERS_UART_8250IO)
+else
+IPXE_SERIAL_CONSOLE = n
+endif
+
cbfs-files-$(CONFIG_PXE_ROM)$(CONFIG_BUILD_IPXE) += pci$(CONFIG_PXE_ROM_ID).rom
pci$(CONFIG_PXE_ROM_ID).rom-file := $(PXE_ROM_FILE)
pci$(CONFIG_PXE_ROM_ID).rom-type := raw
@@ -244,7 +250,7 @@
PXE_ROM_PCI_ID=$(PXE_ROM_PCI_ID) \
CONFIG_IPXE_MASTER=$(CONFIG_IPXE_MASTER) \
CONFIG_IPXE_STABLE=$(CONFIG_IPXE_STABLE) \
- CONSOLE_SERIAL=$(CONFIG_CONSOLE_SERIAL)$(CONFIG_DRIVERS_UART_8250IO) \
+ CONSOLE_SERIAL=$(IPXE_SERIAL_CONSOLE) \
IPXE_UART=$(IPXE_UART) \
CONFIG_TTYS0_BAUD=$(CONFIG_TTYS0_BAUD) \
MFLAGS= MAKEFLAGS=
diff --git a/payloads/external/iPXE/Kconfig b/payloads/external/iPXE/Kconfig
index 82114107..ce0a7ae 100644
--- a/payloads/external/iPXE/Kconfig
+++ b/payloads/external/iPXE/Kconfig
@@ -78,5 +78,14 @@

Under GNU/Linux you can run `lspci -nn` to list the IDs of your PCI devices.

+config PXE_SERIAL_CONSOLE
+ bool "Enable iPXE serial console"
+ def_bool y
+ help
+ Enable/disable iPXE serial console. Since SeaBIOS supports serial
+ console this option might be helpful to avoid duplicated output.
+
+ Unselect to let only SeaBIOS handle printing output.
+
endmenu
endif

To view, visit change 27302. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia3c74cfbee4f816782161fcff286a14f46be78c5
Gerrit-Change-Number: 27302
Gerrit-PatchSet: 1
Gerrit-Owner: Piotr Król <piotr.krol@3mdeb.com>
Gerrit-Reviewer: Michał Żygowski <michal.zygowski@3mdeb.com>