Commit 234c0740 authored by Javier Carrasco's avatar Javier Carrasco Committed by Guenter Roeck

hwmon: (ltc2991) use device_for_each_child_node_scoped()

Switch to the _scoped() version introduced in commit 365130fd
("device property: Introduce device_for_each_child_node_scoped()")
to remove the need for manual calling of fwnode_handle_put() in the
paths where the code exits the loop early.
Signed-off-by: default avatarJavier Carrasco <javier.carrasco.cruz@gmail.com>
Link: https://lore.kernel.org/r/20240404-hwmon_device_for_each_child_node_scoped-v1-1-53997abde43c@gmail.comSigned-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 55076454
...@@ -284,7 +284,6 @@ static const struct regmap_config ltc2991_regmap_config = { ...@@ -284,7 +284,6 @@ static const struct regmap_config ltc2991_regmap_config = {
static int ltc2991_init(struct ltc2991_state *st, struct device *dev) static int ltc2991_init(struct ltc2991_state *st, struct device *dev)
{ {
struct fwnode_handle *child;
int ret; int ret;
u32 val, addr; u32 val, addr;
u8 v5_v8_reg_data = 0, v1_v4_reg_data = 0; u8 v5_v8_reg_data = 0, v1_v4_reg_data = 0;
...@@ -294,17 +293,13 @@ static int ltc2991_init(struct ltc2991_state *st, struct device *dev) ...@@ -294,17 +293,13 @@ static int ltc2991_init(struct ltc2991_state *st, struct device *dev)
return dev_err_probe(dev, ret, return dev_err_probe(dev, ret,
"failed to enable regulator\n"); "failed to enable regulator\n");
device_for_each_child_node(dev, child) { device_for_each_child_node_scoped(dev, child) {
ret = fwnode_property_read_u32(child, "reg", &addr); ret = fwnode_property_read_u32(child, "reg", &addr);
if (ret < 0) { if (ret < 0)
fwnode_handle_put(child);
return ret; return ret;
}
if (addr > 3) { if (addr > 3)
fwnode_handle_put(child);
return -EINVAL; return -EINVAL;
}
ret = fwnode_property_read_u32(child, ret = fwnode_property_read_u32(child,
"shunt-resistor-micro-ohms", "shunt-resistor-micro-ohms",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment