Re: [PATCH v3 4/4] device property: Move fwnode graph ops to firmware specific locations
From: Rob Herring <hidden>
Date: 2017-03-20 21:15:53
Also in:
linux-acpi
On Thu, Mar 16, 2017 at 8:34 AM, Sakari Ailus [off-list ref] wrote:
Move firmware specific implementations of the fwnode graph operations to firmware specific locations. Signed-off-by: Sakari Ailus <sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org> --- drivers/acpi/property.c | 61 ++++++++++++++++++++++++++++++++ drivers/base/property.c | 92 +++---------------------------------------------- drivers/of/base.c | 70 +++++++++++++++++++++++++++++++++++++ include/linux/fwnode.h | 16 +++++++++ 4 files changed, 152 insertions(+), 87 deletions(-)
As I've mentioned before, this is just propagating APIs I would like to get rid of. See my series cleaning up DRM users[1].
quoted hunk
diff --git a/drivers/of/base.c b/drivers/of/base.c index e483dd1..a8686a8 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c@@ -2624,6 +2624,71 @@ static struct fwnode_handle *of_fwnode_get_named_child_node( return NULL; } +static struct fwnode_handle *of_fwnode_graph_get_next_endpoint( + struct fwnode_handle *fwnode, struct fwnode_handle *prev) +{ + struct device_node *node; + + node = of_graph_get_next_endpoint(to_of_node(fwnode), + to_of_node(prev)); + if (node) + return of_fwnode_handle(node); + + return NULL; +}
For example, most callers of of_graph_get_next_endpoint really just want port=0, endpoint=0 and then they want the remote node. As the assignment of port and endpoint numbers are fixed for a device, drivers should be explicit about which port/endpoint they want. The actual handle to either the port or endpoint nodes are mostly irrelevant. We only really need the endpoint node handles when we have properties in the endpoints. Rob [1] https://lkml.org/lkml/2017/2/9/592 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html