[PATCH 1/2] hwmon: (ltc2991) use device_for_each_child_node_scoped()

From: Javier Carrasco
Date: Thu Apr 04 2024 - 07:14:06 EST


Switch to the _scoped() version introduced in commit 365130fd47af
("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: Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx>
---
drivers/hwmon/ltc2991.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/drivers/hwmon/ltc2991.c b/drivers/hwmon/ltc2991.c
index 80a6e391f266..3286775de6e8 100644
--- a/drivers/hwmon/ltc2991.c
+++ b/drivers/hwmon/ltc2991.c
@@ -284,7 +284,6 @@ static const struct regmap_config ltc2991_regmap_config = {

static int ltc2991_init(struct ltc2991_state *st, struct device *dev)
{
- struct fwnode_handle *child;
int ret;
u32 val, addr;
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)
return dev_err_probe(dev, ret,
"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);
- if (ret < 0) {
- fwnode_handle_put(child);
+ if (ret < 0)
return ret;
- }

- if (addr > 3) {
- fwnode_handle_put(child);
+ if (addr > 3)
return -EINVAL;
- }

ret = fwnode_property_read_u32(child,
"shunt-resistor-micro-ohms",

--
2.40.1