From e1e817969056a5e82b4fbff49dc8dd52606e8f54 Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Mon, 27 Jun 2022 11:35:27 -0500 Subject: [PATCH] modbus: serial: Convert to DEVICE_DT_GET Move to using DEVICE_DT_GET so we can phase out DT_LABEL. Signed-off-by: Kumar Gala --- subsys/modbus/modbus_core.c | 2 +- subsys/modbus/modbus_internal.h | 2 -- subsys/modbus/modbus_serial.c | 6 ++---- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/subsys/modbus/modbus_core.c b/subsys/modbus/modbus_core.c index b35dfb0dbde..749f14ef08d 100644 --- a/subsys/modbus/modbus_core.c +++ b/subsys/modbus/modbus_core.c @@ -35,7 +35,7 @@ DT_INST_FOREACH_STATUS_OKAY(MB_RTU_DEFINE_GPIO_CFGS) (&prop##_cfg_##inst), (NULL)) #define MODBUS_DT_GET_SERIAL_DEV(inst) { \ - .dev_name = DT_INST_BUS_LABEL(inst), \ + .dev = DEVICE_DT_GET(DT_INST_BUS(inst)), \ .de = MB_RTU_ASSIGN_GPIO_CFG(inst, de_gpios), \ .re = MB_RTU_ASSIGN_GPIO_CFG(inst, re_gpios), \ }, diff --git a/subsys/modbus/modbus_internal.h b/subsys/modbus/modbus_internal.h index 7b11288a333..f115caa5391 100644 --- a/subsys/modbus/modbus_internal.h +++ b/subsys/modbus/modbus_internal.h @@ -81,8 +81,6 @@ #define MODBUS_ADU_PROTO_ID 0x0000 struct modbus_serial_config { - /* UART device name */ - const char *dev_name; /* UART device */ const struct device *dev; /* RTU timeout (maximum inter-frame delay) */ diff --git a/subsys/modbus/modbus_serial.c b/subsys/modbus/modbus_serial.c index 3d6f403352d..a8b65291781 100644 --- a/subsys/modbus/modbus_serial.c +++ b/subsys/modbus/modbus_serial.c @@ -516,10 +516,8 @@ int modbus_serial_init(struct modbus_context *ctx, return -ENOTSUP; } - cfg->dev = device_get_binding(cfg->dev_name); - if (cfg->dev == NULL) { - LOG_ERR("Failed to get UART device %s", - cfg->dev_name); + if (!device_is_ready(cfg->dev)) { + LOG_ERR("Bus device %s is not ready", cfg->dev->name); return -ENODEV; }