diff options
author | Jerome Forissier <jerome.forissier@linaro.org> | 2017-02-17 15:49:51 +0100 |
---|---|---|
committer | Jerome Forissier <jerome.forissier@linaro.org> | 2017-03-17 18:23:51 +0100 |
commit | ab806dc30280e7fd735d85cb53e334244da295f7 (patch) | |
tree | f3b3c836b23f512a057739c5e00b34214fe7a18b /core/arch/arm/plat-sunxi | |
parent | 59cfa779ae5675bc94196d2526ec3e9df4cf3059 (diff) |
drivers: convert sunxi_uart driver to use struct serial_chip
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Diffstat (limited to 'core/arch/arm/plat-sunxi')
-rw-r--r-- | core/arch/arm/plat-sunxi/console.c | 23 |
1 files changed, 8 insertions, 15 deletions
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 <mm/core_memprot.h> #include <console.h> -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); } |