static int pnv_php_populate_changeset(struct of_changeset *ocs,
struct device_node *dn)
{
- struct device_node *child;
- int ret = 0;
+ int ret;
- for_each_child_of_node(dn, child) {
+ for_each_child_of_node_scoped(dn, child) {
ret = of_changeset_attach_node(ocs, child);
- if (ret) {
- of_node_put(child);
- break;
- }
+ if (ret)
+ return ret;
ret = pnv_php_populate_changeset(ocs, child);
- if (ret) {
- of_node_put(child);
- break;
- }
+ if (ret)
+ return ret;
}
- return ret;
+ return 0;
}
static void *pnv_php_add_one_pdn(struct device_node *dn, void *data)