of: property: Do some clean up with use of __free()

__free() provides a scoped of_node_put() functionality to put the
device_node automatically, and we don't need to call of_node_put()
directly. Let's simplify the code a bit with the use of __free().

Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
Link: https://lore.kernel.org/r/20240830020626.115933-4-zhangzekun11@huawei.com
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
This commit is contained in:
Zhang Zekun 2024-08-30 10:06:26 +08:00 committed by Rob Herring (Arm)
parent 0a543ac529
commit 69b860034c

View File

@ -773,16 +773,11 @@ EXPORT_SYMBOL(of_graph_get_port_parent);
struct device_node *of_graph_get_remote_port_parent(
const struct device_node *node)
{
struct device_node *np, *pp;
/* Get remote endpoint node. */
np = of_graph_get_remote_endpoint(node);
struct device_node *np __free(device_node) =
of_graph_get_remote_endpoint(node);
pp = of_graph_get_port_parent(np);
of_node_put(np);
return pp;
return of_graph_get_port_parent(np);
}
EXPORT_SYMBOL(of_graph_get_remote_port_parent);
@ -1064,19 +1059,15 @@ static void of_link_to_phandle(struct device_node *con_np,
struct device_node *sup_np,
u8 flags)
{
struct device_node *tmp_np = of_node_get(sup_np);
struct device_node *tmp_np __free(device_node) = of_node_get(sup_np);
/* Check that sup_np and its ancestors are available. */
while (tmp_np) {
if (of_fwnode_handle(tmp_np)->dev) {
of_node_put(tmp_np);
if (of_fwnode_handle(tmp_np)->dev)
break;
}
if (!of_device_is_available(tmp_np)) {
of_node_put(tmp_np);
if (!of_device_is_available(tmp_np))
return;
}
tmp_np = of_get_next_parent(tmp_np);
}
@ -1440,16 +1431,13 @@ static int of_link_property(struct device_node *con_np, const char *prop_name)
}
while ((phandle = s->parse_prop(con_np, prop_name, i))) {
struct device_node *con_dev_np;
struct device_node *con_dev_np __free(device_node) =
s->get_con_dev ? s->get_con_dev(con_np) : of_node_get(con_np);
con_dev_np = s->get_con_dev
? s->get_con_dev(con_np)
: of_node_get(con_np);
matched = true;
i++;
of_link_to_phandle(con_dev_np, phandle, s->fwlink_flags);
of_node_put(phandle);
of_node_put(con_dev_np);
}
s++;
}