summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinconf-generic.c
diff options
context:
space:
mode:
authorPeng Fan <peng.fan@nxp.com>2024-05-04 15:20:15 +0200
committerLinus Walleij <linus.walleij@linaro.org>2024-06-26 11:59:22 +0200
commitd7f5120a944a5b515d6307c8cbfcd4f1fde543fb (patch)
tree8c23b9c0a4898d486840a2501cd0c63c71cf0103 /drivers/pinctrl/pinconf-generic.c
parentpinctrl: bcm: bcm63xx: Use scope based of_node_put() cleanups (diff)
downloadlinux-d7f5120a944a5b515d6307c8cbfcd4f1fde543fb.tar.xz
linux-d7f5120a944a5b515d6307c8cbfcd4f1fde543fb.zip
pinctrl: pinconf-generic: Use scope based of_node_put() cleanups
Use scope based of_node_put() cleanup to simplify code. Signed-off-by: Peng Fan <peng.fan@nxp.com> Link: https://lore.kernel.org/20240504-pinctrl-cleanup-v2-17-26c5f2dc1181@nxp.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinconf-generic.c')
-rw-r--r--drivers/pinctrl/pinconf-generic.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/pinctrl/pinconf-generic.c b/drivers/pinctrl/pinconf-generic.c
index 80de389199bd..a499b8af5c1f 100644
--- a/drivers/pinctrl/pinconf-generic.c
+++ b/drivers/pinctrl/pinconf-generic.c
@@ -382,7 +382,6 @@ int pinconf_generic_dt_node_to_map(struct pinctrl_dev *pctldev,
unsigned int *num_maps, enum pinctrl_map_type type)
{
unsigned int reserved_maps;
- struct device_node *np;
int ret;
reserved_maps = 0;
@@ -394,13 +393,11 @@ int pinconf_generic_dt_node_to_map(struct pinctrl_dev *pctldev,
if (ret < 0)
goto exit;
- for_each_available_child_of_node(np_config, np) {
+ for_each_available_child_of_node_scoped(np_config, np) {
ret = pinconf_generic_dt_subnode_to_map(pctldev, np, map,
&reserved_maps, num_maps, type);
- if (ret < 0) {
- of_node_put(np);
+ if (ret < 0)
goto exit;
- }
}
return 0;