mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
pinctrl: sprd: 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-5-26c5f2dc1181@nxp.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
8fa99c0035
commit
794e5dc533
@ -934,7 +934,6 @@ static int sprd_pinctrl_parse_dt(struct sprd_pinctrl *sprd_pctl)
|
||||
{
|
||||
struct sprd_pinctrl_soc_info *info = sprd_pctl->info;
|
||||
struct device_node *np = sprd_pctl->dev->of_node;
|
||||
struct device_node *child, *sub_child;
|
||||
struct sprd_pin_group *grp;
|
||||
const char **temp;
|
||||
int ret;
|
||||
@ -962,25 +961,20 @@ static int sprd_pinctrl_parse_dt(struct sprd_pinctrl *sprd_pctl)
|
||||
temp = info->grp_names;
|
||||
grp = info->groups;
|
||||
|
||||
for_each_child_of_node(np, child) {
|
||||
for_each_child_of_node_scoped(np, child) {
|
||||
ret = sprd_pinctrl_parse_groups(child, sprd_pctl, grp);
|
||||
if (ret) {
|
||||
of_node_put(child);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
*temp++ = grp->name;
|
||||
grp++;
|
||||
|
||||
if (of_get_child_count(child) > 0) {
|
||||
for_each_child_of_node(child, sub_child) {
|
||||
for_each_child_of_node_scoped(child, sub_child) {
|
||||
ret = sprd_pinctrl_parse_groups(sub_child,
|
||||
sprd_pctl, grp);
|
||||
if (ret) {
|
||||
of_node_put(sub_child);
|
||||
of_node_put(child);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
*temp++ = grp->name;
|
||||
grp++;
|
||||
|
Loading…
Reference in New Issue
Block a user