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 <kumar.gala@linaro.org>
This commit is contained in:
parent
11cb8778c7
commit
751b02a49c
5 changed files with 4 additions and 33 deletions
|
@ -9,6 +9,4 @@
|
||||||
|
|
||||||
#include <soc.h>
|
#include <soc.h>
|
||||||
|
|
||||||
#define uart_miv_port_0_clk_freq 66000000
|
|
||||||
|
|
||||||
#endif /* __INC_BOARD_H */
|
#endif /* __INC_BOARD_H */
|
||||||
|
|
|
@ -6,10 +6,7 @@ CONFIG_CONSOLE=y
|
||||||
CONFIG_SERIAL=y
|
CONFIG_SERIAL=y
|
||||||
CONFIG_UART_MIV=y
|
CONFIG_UART_MIV=y
|
||||||
CONFIG_UART_MIV_PORT_0=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=y
|
||||||
CONFIG_UART_CONSOLE_ON_DEV_NAME="uart0"
|
|
||||||
CONFIG_PLIC=y
|
CONFIG_PLIC=y
|
||||||
CONFIG_RISCV_MACHINE_TIMER=y
|
CONFIG_RISCV_MACHINE_TIMER=y
|
||||||
CONFIG_GPIO=n
|
CONFIG_GPIO=n
|
||||||
|
|
|
@ -16,25 +16,3 @@ menuconfig UART_MIV_PORT_0
|
||||||
help
|
help
|
||||||
This tells the driver to configure the UART port at boot, depending on
|
This tells the driver to configure the UART port at boot, depending on
|
||||||
the additional configuration options below.
|
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
|
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
#include <kernel.h>
|
#include <kernel.h>
|
||||||
#include <arch/cpu.h>
|
#include <arch/cpu.h>
|
||||||
#include <uart.h>
|
#include <uart.h>
|
||||||
#include <board.h>
|
|
||||||
|
|
||||||
|
|
||||||
/* UART REGISTERS DEFINITIONS */
|
/* UART REGISTERS DEFINITIONS */
|
||||||
|
@ -391,16 +390,16 @@ static void uart_miv_irq_cfg_func_0(struct device *dev);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static const struct uart_miv_device_config uart_miv_dev_cfg_0 = {
|
static const struct uart_miv_device_config uart_miv_dev_cfg_0 = {
|
||||||
.uart_addr = MIV_UART_0_BASE_ADDR,
|
.uart_addr = CONFIG_MIV_UART_0_BASE_ADDR,
|
||||||
.sys_clk_freq = uart_miv_port_0_clk_freq,
|
.sys_clk_freq = CONFIG_MIV_UART_0_CLOCK_FREQUENCY,
|
||||||
.line_config = MIV_UART_0_LINECFG,
|
.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
|
#ifdef CONFIG_UART_INTERRUPT_DRIVEN
|
||||||
.cfg_func = uart_miv_irq_cfg_func_0,
|
.cfg_func = uart_miv_irq_cfg_func_0,
|
||||||
#endif
|
#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,
|
uart_miv_init, &uart_miv_data_0, &uart_miv_dev_cfg_0,
|
||||||
PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEVICE,
|
PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEVICE,
|
||||||
(void *)&uart_miv_driver_api);
|
(void *)&uart_miv_driver_api);
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
#define MIV_GPIO_31_IRQ (RISCV_MAX_GENERIC_IRQ + 31)
|
#define MIV_GPIO_31_IRQ (RISCV_MAX_GENERIC_IRQ + 31)
|
||||||
|
|
||||||
/* UART Configuration */
|
/* UART Configuration */
|
||||||
#define MIV_UART_0_BASE_ADDR 0x70001000
|
|
||||||
#define MIV_UART_0_LINECFG 0x1
|
#define MIV_UART_0_LINECFG 0x1
|
||||||
|
|
||||||
/* GPIO Configuration */
|
/* GPIO Configuration */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue