On 30/01/2025 14:01, Alexander Stein wrote: > + > +static int imx_ocotp_grant_access(struct ocotp_priv *priv, struct device_node *parent) > +{ > + struct device *dev = priv->dev; > + > + for_each_available_child_of_node_scoped(parent, child) { > + struct of_phandle_args args; > + u32 id, idx = 0; > + > + while (!of_parse_phandle_with_args(child, "access-controllers", > + "#access-controller-cells", > + idx++, &args)) { > + of_node_put(args.np); > + if (args.np != dev->of_node) You are using args.np after dropping the reference. > + continue; > + > + /* Only support one cell */ > + if (args.args_count != 1) { > + dev_err(dev, "wrong args count\n"); > + continue; > + } > + Best regards, Krzysztof