drivers: serial: NXP: Convert clock control to use DEVICE_DT_GET

Replace device_get_binding with DEVICE_DT_GET for getting access
to the clock controller device.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This commit is contained in:
Kumar Gala 2021-02-11 19:23:55 -06:00 committed by Maureen Helm
commit 09c054b13c
5 changed files with 15 additions and 45 deletions

View file

@ -16,7 +16,7 @@
struct uart_mcux_config {
UART_Type *base;
char *clock_name;
const struct device *clock_dev;
clock_control_subsys_t clock_subsys;
#ifdef CONFIG_UART_INTERRUPT_DRIVEN
void (*irq_config_func)(const struct device *dev);
@ -37,16 +37,10 @@ static int uart_mcux_configure(const struct device *dev,
const struct uart_mcux_config *config = dev->config;
struct uart_mcux_data *data = dev->data;
uart_config_t uart_config;
const struct device *clock_dev;
uint32_t clock_freq;
status_t retval;
clock_dev = device_get_binding(config->clock_name);
if (clock_dev == NULL) {
return -EINVAL;
}
if (clock_control_get_rate(clock_dev, config->clock_subsys,
if (clock_control_get_rate(config->clock_dev, config->clock_subsys,
&clock_freq)) {
return -EINVAL;
}
@ -363,7 +357,7 @@ static const struct uart_driver_api uart_mcux_driver_api = {
#define UART_MCUX_DECLARE_CFG(n, IRQ_FUNC_INIT) \
static const struct uart_mcux_config uart_mcux_##n##_config = { \
.base = (UART_Type *)DT_INST_REG_ADDR(n), \
.clock_name = DT_INST_CLOCKS_LABEL(n), \
.clock_dev = DEVICE_DT_GET(DT_INST_CLOCKS_CTLR(n)), \
.clock_subsys = (clock_control_subsys_t)DT_INST_CLOCKS_CELL(n, name),\
IRQ_FUNC_INIT \
}

View file

@ -24,7 +24,7 @@
struct mcux_flexcomm_config {
USART_Type *base;
char *clock_name;
const struct device *clock_dev;
clock_control_subsys_t clock_subsys;
uint32_t baud_rate;
#ifdef CONFIG_UART_INTERRUPT_DRIVEN
@ -248,15 +248,9 @@ static int mcux_flexcomm_init(const struct device *dev)
const struct mcux_flexcomm_config *config = dev->config;
usart_config_t usart_config;
uint32_t clock_freq;
const struct device *clock_dev;
/* Get the clock frequency */
clock_dev = device_get_binding(config->clock_name);
if (clock_dev == NULL) {
return -EINVAL;
}
if (clock_control_get_rate(clock_dev, config->clock_subsys,
if (clock_control_get_rate(config->clock_dev, config->clock_subsys,
&clock_freq)) {
return -EINVAL;
}
@ -323,7 +317,7 @@ static const struct uart_driver_api mcux_flexcomm_driver_api = {
#define UART_MCUX_FLEXCOMM_DECLARE_CFG(n, IRQ_FUNC_INIT) \
static const struct mcux_flexcomm_config mcux_flexcomm_##n##_config = { \
.base = (USART_Type *)DT_INST_REG_ADDR(n), \
.clock_name = DT_INST_CLOCKS_LABEL(n), \
.clock_dev = DEVICE_DT_GET(DT_INST_CLOCKS_CTLR(n)), \
.clock_subsys = \
(clock_control_subsys_t)DT_INST_CLOCKS_CELL(n, name),\
.baud_rate = DT_INST_PROP(n, current_speed), \

View file

@ -15,7 +15,7 @@
struct mcux_iuart_config {
UART_Type *base;
const char *clock_name;
const struct device *clock_dev;
clock_control_subsys_t clock_subsys;
uint32_t baud_rate;
#ifdef CONFIG_UART_INTERRUPT_DRIVEN
@ -225,15 +225,9 @@ static int mcux_iuart_init(const struct device *dev)
{
const struct mcux_iuart_config *config = DEV_CFG(dev);
uart_config_t uart_config;
const struct device *clock_dev;
uint32_t clock_freq;
clock_dev = device_get_binding(config->clock_name);
if (clock_dev == NULL) {
return -EINVAL;
}
if (clock_control_get_rate(clock_dev, config->clock_subsys,
if (clock_control_get_rate(config->clock_dev, config->clock_subsys,
&clock_freq)) {
return -EINVAL;
}
@ -305,7 +299,7 @@ static const struct uart_driver_api mcux_iuart_driver_api = {
#define IUART_MCUX_DECLARE_CFG(n, IRQ_FUNC_INIT) \
static const struct mcux_iuart_config mcux_iuart_##n##_config = { \
.base = (UART_Type *) DT_INST_REG_ADDR(n), \
.clock_name = DT_INST_CLOCKS_LABEL(n), \
.clock_dev = DEVICE_DT_GET(DT_INST_CLOCKS_CTLR(n)), \
.clock_subsys = (clock_control_subsys_t)DT_INST_CLOCKS_CELL(n, name),\
.baud_rate = DT_INST_PROP(n, current_speed), \
IRQ_FUNC_INIT \

View file

@ -15,7 +15,7 @@
struct mcux_lpsci_config {
UART0_Type *base;
char *clock_name;
const struct device *clock_dev;
clock_control_subsys_t clock_subsys;
uint32_t baud_rate;
#ifdef CONFIG_UART_INTERRUPT_DRIVEN
@ -236,15 +236,9 @@ static int mcux_lpsci_init(const struct device *dev)
{
const struct mcux_lpsci_config *config = dev->config;
lpsci_config_t uart_config;
const struct device *clock_dev;
uint32_t clock_freq;
clock_dev = device_get_binding(config->clock_name);
if (clock_dev == NULL) {
return -EINVAL;
}
if (clock_control_get_rate(clock_dev, config->clock_subsys,
if (clock_control_get_rate(config->clock_dev, config->clock_subsys,
&clock_freq)) {
return -EINVAL;
}
@ -309,7 +303,7 @@ static const struct uart_driver_api mcux_lpsci_driver_api = {
#define MCUX_LPSCI_DECLARE_CFG(n, IRQ_FUNC_INIT) \
static const struct mcux_lpsci_config mcux_lpsci_##n##_config = { \
.base = (UART0_Type *)DT_INST_REG_ADDR(n), \
.clock_name = DT_INST_CLOCKS_LABEL(n), \
.clock_dev = DEVICE_DT_GET(DT_INST_CLOCKS_CTLR(n)), \
.clock_subsys = (clock_control_subsys_t)DT_INST_CLOCKS_CELL(n, name),\
.baud_rate = DT_INST_PROP(n, current_speed), \
IRQ_FUNC_INIT \

View file

@ -16,7 +16,7 @@
struct mcux_lpuart_config {
LPUART_Type *base;
char *clock_name;
const struct device *clock_dev;
clock_control_subsys_t clock_subsys;
uint32_t baud_rate;
#ifdef CONFIG_UART_INTERRUPT_DRIVEN
@ -239,15 +239,9 @@ static int mcux_lpuart_configure_init(const struct device *dev,
{
const struct mcux_lpuart_config *config = dev->config;
struct mcux_lpuart_data *data = dev->data;
const struct device *clock_dev;
uint32_t clock_freq;
clock_dev = device_get_binding(config->clock_name);
if (clock_dev == NULL) {
return -EINVAL;
}
if (clock_control_get_rate(clock_dev, config->clock_subsys,
if (clock_control_get_rate(config->clock_dev, config->clock_subsys,
&clock_freq)) {
return -EINVAL;
}
@ -429,7 +423,7 @@ static const struct uart_driver_api mcux_lpuart_driver_api = {
#define LPUART_MCUX_DECLARE_CFG(n, IRQ_FUNC_INIT) \
static const struct mcux_lpuart_config mcux_lpuart_##n##_config = { \
.base = (LPUART_Type *) DT_INST_REG_ADDR(n), \
.clock_name = DT_INST_CLOCKS_LABEL(n), \
.clock_dev = DEVICE_DT_GET(DT_INST_CLOCKS_CTLR(n)), \
.clock_subsys = (clock_control_subsys_t)DT_INST_CLOCKS_CELL(n, name),\
.baud_rate = DT_INST_PROP(n, current_speed), \
IRQ_FUNC_INIT \