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:
Родитель
10b1f2a9d4
Коммит
06a1c69cf5
|
@ -13,7 +13,7 @@
|
|||
#include <linux/i2c.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/property.h>
|
||||
|
||||
#define LTC2990_STATUS 0x00
|
||||
#define LTC2990_CONTROL 0x01
|
||||
|
@ -206,7 +206,6 @@ static int ltc2990_i2c_probe(struct i2c_client *i2c,
|
|||
int ret;
|
||||
struct device *hwmon_dev;
|
||||
struct ltc2990_data *data;
|
||||
struct device_node *of_node = i2c->dev.of_node;
|
||||
|
||||
if (!i2c_check_functionality(i2c->adapter, I2C_FUNC_SMBUS_BYTE_DATA |
|
||||
I2C_FUNC_SMBUS_WORD_DATA))
|
||||
|
@ -218,9 +217,10 @@ static int ltc2990_i2c_probe(struct i2c_client *i2c,
|
|||
|
||||
data->i2c = i2c;
|
||||
|
||||
if (of_node) {
|
||||
ret = of_property_read_u32_array(of_node, "lltc,meas-mode",
|
||||
data->mode, 2);
|
||||
if (dev_fwnode(&i2c->dev)) {
|
||||
ret = device_property_read_u32_array(&i2c->dev,
|
||||
"lltc,meas-mode",
|
||||
data->mode, 2);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче