summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2013-09-26 16:13:08 -0700
committerIsaac Christensen <isaac.christensen@se-eng.com>2014-08-28 01:40:48 +0200
commit9135cb4542dd0e11bb672a438bd18e673e58a323 (patch)
tree79cf1d076072e067676075aec709a65786604ac9
parent7f0747562ed43b8461aae6960f2615d2b84b6387 (diff)
libpayload: Change CONFIG_X86_SERIAL_CONSOLE to CONFIG_8250_SERIAL_CONSOLE
While the 8250 compatible serial port driver is primarily useful on x86 systems because it works with the legacy x86 com ports, some devices which aren't x86 based have 8250 compatible UARTs as well. This change renames the CONFIG_X86_SERIAL_CONSOLE option to the more general and direct CONFIG_8250_SERIAL_CONSOLE and fixes up the dependencies so that non-x86 systems can enable the driver, although it will default to on on x86 and off otherwise. Also, the default IO port address that's added to the sysinfo structure on x86 and which is intended to be overwritten by a value in the coreboot tables is not used on ARM. That variable is adjusted so that it's more clear it's a default value, and made dependent on x86 since that's the only place its value is actually used. Change-Id: Ifeaade0e7bd76d382426e947275a9c933da4930e Signed-off-by: Gabe Black <gabeblack@google.com> Reviewed-on: https://chromium-review.googlesource.com/170834 Reviewed-by: Hung-Te Lin <hungte@chromium.org> Commit-Queue: Gabe Black <gabeblack@chromium.org> Tested-by: Gabe Black <gabeblack@chromium.org> (cherry picked from commit 9a10e39a2da3cb0bfb316c0869cf5025078e287f) Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com> Reviewed-on: http://review.coreboot.org/6655 Reviewed-by: Ronald G. Minnich <rminnich@gmail.com> Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rw-r--r--payloads/libpayload/Config.in14
-rw-r--r--payloads/libpayload/configs/defconfig2
-rw-r--r--payloads/libpayload/drivers/Makefile.inc2
-rw-r--r--payloads/libpayload/tests/libpayload-config.h2
4 files changed, 11 insertions, 9 deletions
diff --git a/payloads/libpayload/Config.in b/payloads/libpayload/Config.in
index f28f9b874e..e3e064e87e 100644
--- a/payloads/libpayload/Config.in
+++ b/payloads/libpayload/Config.in
@@ -162,14 +162,16 @@ config SERIAL_CONSOLE
bool "See output on the serial port console"
default y
-config X86_SERIAL_CONSOLE
- bool
- depends on ARCH_X86 && SERIAL_CONSOLE
- default y
+config 8250_SERIAL_CONSOLE
+ bool "8250, 16450, 16550, 16550A compatible serial port driver"
+ depends on SERIAL_CONSOLE
+ default y if ARCH_X86
+ default n if !ARCH_X86
config SERIAL_IOBASE
- hex "I/O base for the serial port (default 0x3f8)"
- depends on X86_SERIAL_CONSOLE
+ ## This default is currently not used on non-x86 systems.
+ hex "Default I/O base for the serial port (default 0x3f8)"
+ depends on SERIAL_CONSOLE && ARCH_X86
default 0x3f8
config SERIAL_SET_SPEED
diff --git a/payloads/libpayload/configs/defconfig b/payloads/libpayload/configs/defconfig
index 5804ed8985..aef9fc30c2 100644
--- a/payloads/libpayload/configs/defconfig
+++ b/payloads/libpayload/configs/defconfig
@@ -36,7 +36,7 @@ CONFIG_LP_LZMA=y
# CONFIG_LP_SKIP_CONSOLE_INIT is not set
CONFIG_LP_CBMEM_CONSOLE=y
CONFIG_LP_SERIAL_CONSOLE=y
-CONFIG_LP_X86_SERIAL_CONSOLE=y
+CONFIG_LP_8250_SERIAL_CONSOLE=y
CONFIG_LP_SERIAL_IOBASE=0x3f8
# CONFIG_LP_SERIAL_SET_SPEED is not set
# CONFIG_LP_SERIAL_ACS_FALLBACK is not set
diff --git a/payloads/libpayload/drivers/Makefile.inc b/payloads/libpayload/drivers/Makefile.inc
index b31e341efb..881c80118c 100644
--- a/payloads/libpayload/drivers/Makefile.inc
+++ b/payloads/libpayload/drivers/Makefile.inc
@@ -33,7 +33,7 @@ libc-$(CONFIG_LP_PCI) += pci.c
libc-$(CONFIG_LP_SPEAKER) += speaker.c
-libc-$(CONFIG_LP_X86_SERIAL_CONSOLE) += serial.c
+libc-$(CONFIG_LP_8250_SERIAL_CONSOLE) += serial.c
libc-$(CONFIG_LP_PC_KEYBOARD) += keyboard.c
diff --git a/payloads/libpayload/tests/libpayload-config.h b/payloads/libpayload/tests/libpayload-config.h
index 68995b8461..cce7c4cf8a 100644
--- a/payloads/libpayload/tests/libpayload-config.h
+++ b/payloads/libpayload/tests/libpayload-config.h
@@ -15,7 +15,7 @@
#define CONFIG_LP_STORAGE_ATA 1
#define CONFIG_LP_ARCH_SPECIFIC_OPTIONS 1
#define CONFIG_LP_STORAGE_AHCI_ONLY_TESTED 1
-#define CONFIG_LP_X86_SERIAL_CONSOLE 1
+#define CONFIG_LP_8250_SERIAL_CONSOLE 1
#define CONFIG_LP_PDCURSES 1
#define CONFIG_LP_NVRAM 1
#define CONFIG_LP_PC_KEYBOARD_LAYOUT_US 1