aboutsummaryrefslogtreecommitdiff
path: root/src/drivers/oxford/oxpcie/oxpcie_early.c
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2014-03-15 01:32:55 +0200
committerPatrick Georgi <patrick@georgi-clan.de>2014-04-09 11:19:27 +0200
commitbbf6f3d384caf25efdfeca0fc5eaac13319a6a43 (patch)
tree4f4ae6c11cfef319ef2a91b02d70cd2b64639a0d /src/drivers/oxford/oxpcie/oxpcie_early.c
parentc2610a4a186c6e5a05f6518c2c7a734fde8f6cfd (diff)
console uart: Fill coreboot table entries
Also fixes the reported baudrate to take get_option() into account. Change-Id: Ieadad70b00df02a530b0ccb6fa4e1b51526089f3 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/5310 Tested-by: build bot (Jenkins) Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
Diffstat (limited to 'src/drivers/oxford/oxpcie/oxpcie_early.c')
-rw-r--r--src/drivers/oxford/oxpcie/oxpcie_early.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/drivers/oxford/oxpcie/oxpcie_early.c b/src/drivers/oxford/oxpcie/oxpcie_early.c
index d7f473ed78..7de9da6b46 100644
--- a/src/drivers/oxford/oxpcie/oxpcie_early.c
+++ b/src/drivers/oxford/oxpcie/oxpcie_early.c
@@ -24,7 +24,9 @@
#include <arch/io.h>
#include <arch/early_variables.h>
#include <delay.h>
+#include <boot/coreboot_tables.h>
#include <console/uart.h>
+#include <device/pci.h>
#include <device/pci_def.h>
static unsigned int oxpcie_present CAR_GLOBAL;
@@ -139,9 +141,15 @@ void oxford_remap(u32 new_base)
uart1_base = new_base + 0x2000;
}
-uint32_t uartmem_getbaseaddr(void)
+void uart_fill_lb(void *data)
{
- return uart_platform_base(0);
+ struct lb_serial serial;
+ serial.type = LB_SERIAL_TYPE_MEMORY_MAPPED;
+ serial.baseaddr = uart_platform_base(0);
+ serial.baud = default_baudrate();
+ lb_add_serial(&serial, data);
+
+ lb_add_console(LB_TAG_CONSOLE_SERIAL8250MEM, data);
}
#endif