From 751b02a49ce096b5e125ad5011af8060f300159e Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Fri, 2 Nov 2018 13:36:49 -0500 Subject: [PATCH] drivers: serial: uart_miv: Convert to use DTS Update the uart_miv driver to get params like name, addr, baud-rate, clock freq from DTS generated defines. Fixup related board and soc code as needed. Signed-off-by: Kumar Gala --- boards/riscv32/m2gl025_miv/board.h | 2 -- .../riscv32/m2gl025_miv/m2gl025_miv_defconfig | 3 --- drivers/serial/Kconfig.miv | 22 ------------------- drivers/serial/uart_miv.c | 9 ++++---- soc/riscv32/riscv-privilege/miv/soc.h | 1 - 5 files changed, 4 insertions(+), 33 deletions(-) diff --git a/boards/riscv32/m2gl025_miv/board.h b/boards/riscv32/m2gl025_miv/board.h index 6bd63cb3032..1961f0cb0ce 100644 --- a/boards/riscv32/m2gl025_miv/board.h +++ b/boards/riscv32/m2gl025_miv/board.h @@ -9,6 +9,4 @@ #include -#define uart_miv_port_0_clk_freq 66000000 - #endif /* __INC_BOARD_H */ diff --git a/boards/riscv32/m2gl025_miv/m2gl025_miv_defconfig b/boards/riscv32/m2gl025_miv/m2gl025_miv_defconfig index a5e7b1ac3dc..484326156cb 100644 --- a/boards/riscv32/m2gl025_miv/m2gl025_miv_defconfig +++ b/boards/riscv32/m2gl025_miv/m2gl025_miv_defconfig @@ -6,10 +6,7 @@ CONFIG_CONSOLE=y CONFIG_SERIAL=y CONFIG_UART_MIV=y CONFIG_UART_MIV_PORT_0=y -CONFIG_UART_MIV_PORT_0_BAUD_RATE=115200 -CONFIG_UART_MIV_PORT_0_NAME="uart0" CONFIG_UART_CONSOLE=y -CONFIG_UART_CONSOLE_ON_DEV_NAME="uart0" CONFIG_PLIC=y CONFIG_RISCV_MACHINE_TIMER=y CONFIG_GPIO=n diff --git a/drivers/serial/Kconfig.miv b/drivers/serial/Kconfig.miv index 89eaebb3b71..6da9dec62fc 100644 --- a/drivers/serial/Kconfig.miv +++ b/drivers/serial/Kconfig.miv @@ -16,25 +16,3 @@ menuconfig UART_MIV_PORT_0 help This tells the driver to configure the UART port at boot, depending on the additional configuration options below. - -config UART_MIV_PORT_0_NAME - string "Port 0 Device Name" - default "uart0" - depends on UART_MIV_PORT_0 - help - This is the device name for UART, and is included in the device - struct. - -config UART_MIV_PORT_0_BAUD_RATE - int "Port 0 Baud Rate" - default 0 - depends on UART_MIV_PORT_0 - help - The baud rate for UART port to be set to at boot. - -config UART_MIV_PORT_0_IRQ_PRIORITY - int "Port 0 Interrupt Priority" - default 1 - depends on UART_MIV_PORT_0 - help - Port 0 Interrupt Priority diff --git a/drivers/serial/uart_miv.c b/drivers/serial/uart_miv.c index 48ae3f7e1d3..9de9e6aef66 100644 --- a/drivers/serial/uart_miv.c +++ b/drivers/serial/uart_miv.c @@ -7,7 +7,6 @@ #include #include #include -#include /* UART REGISTERS DEFINITIONS */ @@ -391,16 +390,16 @@ static void uart_miv_irq_cfg_func_0(struct device *dev); #endif static const struct uart_miv_device_config uart_miv_dev_cfg_0 = { - .uart_addr = MIV_UART_0_BASE_ADDR, - .sys_clk_freq = uart_miv_port_0_clk_freq, + .uart_addr = CONFIG_MIV_UART_0_BASE_ADDR, + .sys_clk_freq = CONFIG_MIV_UART_0_CLOCK_FREQUENCY, .line_config = MIV_UART_0_LINECFG, - .baud_rate = CONFIG_UART_MIV_PORT_0_BAUD_RATE, + .baud_rate = CONFIG_MIV_UART_0_BAUD_RATE, #ifdef CONFIG_UART_INTERRUPT_DRIVEN .cfg_func = uart_miv_irq_cfg_func_0, #endif }; -DEVICE_AND_API_INIT(uart_miv_0, CONFIG_UART_MIV_PORT_0_NAME, +DEVICE_AND_API_INIT(uart_miv_0, CONFIG_MIV_UART_0_NAME, uart_miv_init, &uart_miv_data_0, &uart_miv_dev_cfg_0, PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEVICE, (void *)&uart_miv_driver_api); diff --git a/soc/riscv32/riscv-privilege/miv/soc.h b/soc/riscv32/riscv-privilege/miv/soc.h index 963a15023e8..68076dc8960 100644 --- a/soc/riscv32/riscv-privilege/miv/soc.h +++ b/soc/riscv32/riscv-privilege/miv/soc.h @@ -38,7 +38,6 @@ #define MIV_GPIO_31_IRQ (RISCV_MAX_GENERIC_IRQ + 31) /* UART Configuration */ -#define MIV_UART_0_BASE_ADDR 0x70001000 #define MIV_UART_0_LINECFG 0x1 /* GPIO Configuration */