Re: [PATCH v5 6/7] of: Implement simplified graph binding for single port devices

From: Philipp Zabel
Date: Tue Mar 04 2014 - 05:04:55 EST


Am Dienstag, den 04.03.2014, 11:06 +0200 schrieb Tomi Valkeinen:
> On 27/02/14 19:35, Philipp Zabel wrote:
> > For simple devices with only one port, it can be made implicit.
> > The endpoint node can be a direct child of the device node.
>
> <snip>
>
> > @@ -2105,9 +2112,11 @@ struct device_node *of_graph_get_remote_port_parent(
> > /* Get remote endpoint node. */
> > np = of_parse_phandle(node, "remote-endpoint", 0);
> >
> > - /* Walk 3 levels up only if there is 'ports' node. */
> > + /* Walk 3 levels up only if there is 'ports' node */
> > for (depth = 3; depth && np; depth--) {
> > np = of_get_next_parent(np);
> > + if (depth == 3 && of_node_cmp(np->name, "port"))
> > + break;
> > if (depth == 2 && of_node_cmp(np->name, "ports"))
> > break;
> > }
>
> This function becomes a bit funny. Would it be clearer just to do
> something like:
>
> np = of_parse_phandle(node, "remote-endpoint", 0);
>
> np = of_get_next_parent(np);
> if (of_node_cmp(np->name, "port") != 0)
> return np;
>
> np = of_get_next_parent(np);
> if (of_node_cmp(np->name, "ports") != 0)
> return np;
>
> np = of_get_next_parent(np);
> return np;

I'm not sure if this was initially crafted to reduce the number of
function calls, but rolled out it certainly is easier to read. I'll
change this as you suggest.

thanks
Philipp

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/