hwmon: (ltc2947) Move to firmware agnostic API
authorNuno Sa <nuno.sa@analog.com>
Fri, 26 Jul 2024 12:07:33 +0000 (14:07 +0200)
committerGuenter Roeck <linux@roeck-us.net>
Wed, 31 Jul 2024 17:43:52 +0000 (10:43 -0700)
Use the device property APIs so the driver does not depend on OF to
work.

While at it, properly include mod_devicetable for struct of_device_id
and fix some parameter alignment in the changed places.

Signed-off-by: Nuno Sa <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20240726-dev-hwmon-ltc6947-fw-agnostic-v1-1-f7d6cab7d438@analog.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/ltc2947-core.c

index d2ff6e700770d2e86913fd9bd3026b140e55f9c3..244839167e51c8f149b7d0fb7f05dee595a65863 100644 (file)
@@ -11,7 +11,8 @@
 #include <linux/hwmon.h>
 #include <linux/hwmon-sysfs.h>
 #include <linux/module.h>
-#include <linux/of.h>
+#include <linux/mod_devicetable.h>
+#include <linux/property.h>
 #include <linux/regmap.h>
 
 #include "ltc2947.h"
@@ -1034,9 +1035,8 @@ static int ltc2947_setup(struct ltc2947_data *st)
                /* 19.89E-6 * 10E9 */
                st->lsb_energy = 19890;
        }
-       ret = of_property_read_u32_array(st->dev->of_node,
-                                        "adi,accumulator-ctl-pol", accum,
-                                         ARRAY_SIZE(accum));
+       ret = device_property_read_u32_array(st->dev, "adi,accumulator-ctl-pol",
+                                            accum, ARRAY_SIZE(accum));
        if (!ret) {
                u32 accum_reg = LTC2947_ACCUM_POL_1(accum[0]) |
                                LTC2947_ACCUM_POL_2(accum[1]);
@@ -1045,9 +1045,9 @@ static int ltc2947_setup(struct ltc2947_data *st)
                if (ret)
                        return ret;
        }
-       ret = of_property_read_u32(st->dev->of_node,
-                                  "adi,accumulation-deadband-microamp",
-                                  &deadband);
+       ret = device_property_read_u32(st->dev,
+                                      "adi,accumulation-deadband-microamp",
+                                      &deadband);
        if (!ret) {
                /* the LSB is the same as the current, so 3mA */
                ret = regmap_write(st->map, LTC2947_REG_ACCUM_DEADBAND,
@@ -1056,7 +1056,7 @@ static int ltc2947_setup(struct ltc2947_data *st)
                        return ret;
        }
        /* check gpio cfg */
-       ret = of_property_read_u32(st->dev->of_node, "adi,gpio-out-pol", &pol);
+       ret = device_property_read_u32(st->dev, "adi,gpio-out-pol", &pol);
        if (!ret) {
                /* setup GPIO as output */
                u32 gpio_ctl = LTC2947_GPIO_EN(1) | LTC2947_GPIO_FAN_EN(1) |
@@ -1067,8 +1067,8 @@ static int ltc2947_setup(struct ltc2947_data *st)
                if (ret)
                        return ret;
        }
-       ret = of_property_read_u32_array(st->dev->of_node, "adi,gpio-in-accum",
-                                        accum, ARRAY_SIZE(accum));
+       ret = device_property_read_u32_array(st->dev, "adi,gpio-in-accum",
+                                            accum, ARRAY_SIZE(accum));
        if (!ret) {
                /*
                 * Setup the accum options. The gpioctl is already defined as