From ab806dc30280e7fd735d85cb53e334244da295f7 Mon Sep 17 00:00:00 2001 From: Jerome Forissier Date: Fri, 17 Feb 2017 15:49:51 +0100 Subject: drivers: convert sunxi_uart driver to use struct serial_chip Signed-off-by: Jerome Forissier Reviewed-by: Jens Wiklander Reviewed-by: Etienne Carriere --- core/arch/arm/plat-sunxi/console.c | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'core/arch/arm/plat-sunxi') diff --git a/core/arch/arm/plat-sunxi/console.c b/core/arch/arm/plat-sunxi/console.c index b9853163..499fcd88 100644 --- a/core/arch/arm/plat-sunxi/console.c +++ b/core/arch/arm/plat-sunxi/console.c @@ -30,30 +30,23 @@ #include #include -static vaddr_t console_base(void) -{ - static void *va; - - if (cpu_mmu_enabled()) { - if (!va) - va = phys_to_virt(CONSOLE_UART_BASE, MEM_AREA_IO_SEC); - return (vaddr_t)va; - } - return CONSOLE_UART_BASE; -} - +static struct sunxi_uart_data console_data __early_bss; void console_init(void) { - sunxi_uart_init(console_base()); + sunxi_uart_init(&console_data, CONSOLE_UART_BASE); } void console_putc(int ch) { - sunxi_uart_putc(ch, console_base()); + struct serial_chip *cons = &console_data.chip; + + cons->ops->putc(cons, ch); } void console_flush(void) { - sunxi_uart_flush(console_base()); + struct serial_chip *cons = &console_data.chip; + + cons->ops->flush(cons); } -- cgit v1.2.3