aboutsummaryrefslogtreecommitdiff
path: root/src/drivers/oxford/oxpcie/oxpcie_early.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers/oxford/oxpcie/oxpcie_early.c')
-rw-r--r--src/drivers/oxford/oxpcie/oxpcie_early.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/drivers/oxford/oxpcie/oxpcie_early.c b/src/drivers/oxford/oxpcie/oxpcie_early.c
index d04e9d4df0..4f6f9649f5 100644
--- a/src/drivers/oxford/oxpcie/oxpcie_early.c
+++ b/src/drivers/oxford/oxpcie/oxpcie_early.c
@@ -21,6 +21,7 @@
#include <arch/io.h>
#include <arch/early_variables.h>
#include <delay.h>
+#include <uart.h>
#include <uart8250.h>
#include <device/pci_def.h>
@@ -116,7 +117,14 @@ void oxford_init(void)
/* Now the UART initialization */
u32 uart0_base = CONFIG_OXFORD_OXPCIE_BASE_ADDRESS + 0x1000;
- uart8250_mem_init(uart0_base, (4000000 / CONFIG_TTYS0_BAUD));
+ unsigned int div = uart_baudrate_divisor(default_baudrate(),
+ uart_platform_refclk(), 16);
+ uart8250_mem_init(uart0_base, div);
}
#endif
+
+unsigned int uart_platform_refclk(void)
+{
+ return 62500000;
+}