hwmon/ltc2990: Generalise DT to fwnode support

ltc2990 will now use device_property_read_u32_array() instead of
of_property_read_u32_array() - allowing the use of software nodes
via fwnode_create_software_node().

This allows code using i2c_new_device() to specify a default
measurement mode for the LTC2990 via fwnode_create_software_node().

Signed-off-by: Max Staudt <max@enpas.org>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Link: https://lore.kernel.org/r/20190819121618.16557-2-max@enpas.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
Max Staudt 2019-08-19 14:16:17 +02:00 коммит произвёл Guenter Roeck
Родитель 10b1f2a9d4
Коммит 06a1c69cf5
1 изменённых файлов: 5 добавлений и 5 удалений

Просмотреть файл

@ -13,7 +13,7 @@
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/of.h> #include <linux/property.h>
#define LTC2990_STATUS 0x00 #define LTC2990_STATUS 0x00
#define LTC2990_CONTROL 0x01 #define LTC2990_CONTROL 0x01
@ -206,7 +206,6 @@ static int ltc2990_i2c_probe(struct i2c_client *i2c,
int ret; int ret;
struct device *hwmon_dev; struct device *hwmon_dev;
struct ltc2990_data *data; struct ltc2990_data *data;
struct device_node *of_node = i2c->dev.of_node;
if (!i2c_check_functionality(i2c->adapter, I2C_FUNC_SMBUS_BYTE_DATA | if (!i2c_check_functionality(i2c->adapter, I2C_FUNC_SMBUS_BYTE_DATA |
I2C_FUNC_SMBUS_WORD_DATA)) I2C_FUNC_SMBUS_WORD_DATA))
@ -218,9 +217,10 @@ static int ltc2990_i2c_probe(struct i2c_client *i2c,
data->i2c = i2c; data->i2c = i2c;
if (of_node) { if (dev_fwnode(&i2c->dev)) {
ret = of_property_read_u32_array(of_node, "lltc,meas-mode", ret = device_property_read_u32_array(&i2c->dev,
data->mode, 2); "lltc,meas-mode",
data->mode, 2);
if (ret < 0) if (ret < 0)
return ret; return ret;