Commit e21d6d4c authored by Nuno Sa's avatar Nuno Sa Committed by Guenter Roeck
Browse files

hwmon: (ltc2947) Move to firmware agnostic API



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: default avatarNuno 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: default avatarGuenter Roeck <linux@roeck-us.net>
parent 777c97ff
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -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,7 +1045,7 @@ static int ltc2947_setup(struct ltc2947_data *st)
		if (ret)
			return ret;
	}
	ret = of_property_read_u32(st->dev->of_node,
	ret = device_property_read_u32(st->dev,
				       "adi,accumulation-deadband-microamp",
				       &deadband);
	if (!ret) {
@@ -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,7 +1067,7 @@ 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",
	ret = device_property_read_u32_array(st->dev, "adi,gpio-in-accum",
					     accum, ARRAY_SIZE(accum));
	if (!ret) {
		/*