aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRonald G. Minnich <rminnich@gmail.com>2013-02-20 14:13:01 -0800
committerRonald G. Minnich <rminnich@gmail.com>2013-02-21 01:10:18 +0100
commitc8fadd9f465428cb2470d78c72b77766acb058d9 (patch)
treeb49fe740759d2541b386bbc65b2173325e4b767f /src
parenta8ae1c66f919a41c8756d0cdb09a77243d1121eb (diff)
ARMV7: create a correct LB_SERIAL table entry
If CONFIG_CONSOLE_SERIAL is set, and we can call the standard function and get a non-zero uart address, then we create an lb table entry. The code was mostly right, just needed a tweak. Change-Id: I5b36c7b4e580a23319b7ba92cc8ad61592b1757a Signed-off-by: Ronald G. Minnich <rminnich@gmail.com> Reviewed-on: http://review.coreboot.org/2466 Tested-by: build bot (Jenkins) Reviewed-by: David Hendricks <dhendrix@chromium.org>
Diffstat (limited to 'src')
-rw-r--r--src/arch/armv7/boot/coreboot_table.c13
-rw-r--r--src/mainboard/emulation/qemu-armv7/Kconfig1
-rw-r--r--src/mainboard/emulation/qemu-armv7/uart.c4
3 files changed, 6 insertions, 12 deletions
diff --git a/src/arch/armv7/boot/coreboot_table.c b/src/arch/armv7/boot/coreboot_table.c
index 044f3d51e0..2810a5e990 100644
--- a/src/arch/armv7/boot/coreboot_table.c
+++ b/src/arch/armv7/boot/coreboot_table.c
@@ -110,18 +110,7 @@ static struct lb_memory *lb_memory(struct lb_header *header)
static struct lb_serial *lb_serial(struct lb_header *header)
{
-#if CONFIG_CONSOLE_SERIAL8250
- struct lb_record *rec;
- struct lb_serial *serial;
- rec = lb_new_record(header);
- serial = (struct lb_serial *)rec;
- serial->tag = LB_TAG_SERIAL;
- serial->size = sizeof(*serial);
- serial->type = LB_SERIAL_TYPE_IO_MAPPED;
- serial->baseaddr = CONFIG_TTYS0_BASE;
- serial->baud = CONFIG_TTYS0_BAUD;
- return serial;
-#elif CONFIG_CONSOLE_SERIAL8250MEM
+#if CONFIG_CONSOLE_SERIAL
if (uartmem_getbaseaddr()) {
struct lb_record *rec;
struct lb_serial *serial;
diff --git a/src/mainboard/emulation/qemu-armv7/Kconfig b/src/mainboard/emulation/qemu-armv7/Kconfig
index 38b1da249a..b66761d512 100644
--- a/src/mainboard/emulation/qemu-armv7/Kconfig
+++ b/src/mainboard/emulation/qemu-armv7/Kconfig
@@ -25,6 +25,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
select ARCH_ARMV7
select CPU_ARMLTD_CORTEX_A9
+ select HAVE_UART_MEMORY_MAPPED
select DEFAULT_EARLY_CONSOLE
select HAVE_UART_SPECIAL
select BOARD_ROMSIZE_KB_4096
diff --git a/src/mainboard/emulation/qemu-armv7/uart.c b/src/mainboard/emulation/qemu-armv7/uart.c
index 29887777d7..dfe5d0ac12 100644
--- a/src/mainboard/emulation/qemu-armv7/uart.c
+++ b/src/mainboard/emulation/qemu-armv7/uart.c
@@ -39,6 +39,10 @@ static const struct console_driver pl011_uart_console __console = {
.tx_flush = pl011_uart_tx_flush,
};
+uint32_t uartmem_getbaseaddr(void)
+{
+ return VEXPRESS_UART0_IO_ADDRESS;
+}
#else
void uart_init(void)
{