All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Scally <djrscally@gmail.com>
To: linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
	linux-media@vger.kernel.org, devel@acpica.org
Cc: rjw@rjwysocki.net, lenb@kernel.org, gregkh@linuxfoundation.org,
	yong.zhi@intel.com, sakari.ailus@linux.intel.com,
	bingbu.cao@intel.com, tian.shu.qiu@intel.com, mchehab@kernel.org,
	robert.moore@intel.com, erik.kaneda@intel.com, pmladek@suse.com,
	rostedt@goodmis.org, sergey.senozhatsky@gmail.com,
	andriy.shevchenko@linux.intel.com, linux@rasmusvillemoes.dk,
	laurent.pinchart+renesas@ideasonboard.com,
	jacopo+renesas@jmondi.org,
	kieran.bingham+renesas@ideasonboard.com,
	hverkuil-cisco@xs4all.nl, m.felsch@pengutronix.de,
	niklas.soderlund+renesas@ragnatech.se, slongerbeam@gmail.com,
	heikki.krogerus@linux.intel.com, linus.walleij@linaro.org,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Subject: [PATCH v3 03/14] property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary
Date: Thu, 24 Dec 2020 01:08:56 +0000	[thread overview]
Message-ID: <20201224010907.263125-4-djrscally@gmail.com> (raw)
In-Reply-To: <20201224010907.263125-1-djrscally@gmail.com>

This function is used to find fwnode endpoints against a device. In
some instances those endpoints are software nodes which are children of
fwnode->secondary. Add support to fwnode_graph_get_endpoint_by_id() to
find those endpoints by recursively calling itself passing the ptr to
fwnode->secondary in the event no endpoint is found for the primary.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Daniel Scally <djrscally@gmail.com>
---
Changes in v3
	- None

 drivers/base/property.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/base/property.c b/drivers/base/property.c
index bc9c634df6df..ddba75d90af2 100644
--- a/drivers/base/property.c
+++ b/drivers/base/property.c
@@ -1163,7 +1163,14 @@ fwnode_graph_get_endpoint_by_id(const struct fwnode_handle *fwnode,
 		best_ep_id = fwnode_ep.id;
 	}
 
-	return best_ep;
+	if (best_ep)
+		return best_ep;
+
+	if (fwnode && !IS_ERR_OR_NULL(fwnode->secondary))
+		return fwnode_graph_get_endpoint_by_id(fwnode->secondary, port,
+						       endpoint, flags);
+
+	return NULL;
 }
 EXPORT_SYMBOL_GPL(fwnode_graph_get_endpoint_by_id);
 
-- 
2.25.1


  parent reply	other threads:[~2020-12-24  1:10 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-24  1:08 [PATCH v3 00/14] Add functionality to ipu3-cio2 driver allowing software_node connections to sensors on platforms designed for Windows Daniel Scally
2020-12-24  1:08 ` [PATCH v3 01/14] software_node: Fix refcounts in software_node_get_next_child() Daniel Scally
2020-12-24  1:08 ` [PATCH v3 02/14] property: Return true in fwnode_device_is_available for NULL ops Daniel Scally
2020-12-24  1:08 ` Daniel Scally [this message]
2020-12-24  1:08 ` [PATCH v3 04/14] software_node: Enforce parent before child ordering of nodes arrays Daniel Scally
2020-12-24  1:08 ` [PATCH v3 05/14] software_node: unregister software_nodes in reverse order Daniel Scally
2020-12-24 12:13   ` Andy Shevchenko
2020-12-24 12:13     ` [Devel] " Andy Shevchenko
2020-12-24 14:00     ` Daniel Scally
2020-12-24 14:12       ` Andy Shevchenko
2020-12-24 14:12         ` [Devel] " Andy Shevchenko
2020-12-24 14:14         ` Daniel Scally
2020-12-24 18:36           ` David Laight
2020-12-28 10:15             ` Andy Shevchenko
2020-12-28 10:15               ` [Devel] " Andy Shevchenko
2020-12-28 21:17               ` Daniel Scally
2020-12-28 16:34   ` Sakari Ailus
2020-12-28 17:47     ` Andy Shevchenko
2020-12-24  1:08 ` [PATCH v3 06/14] include: fwnode.h: Define format macros for ports and endpoints Daniel Scally
2020-12-24 12:17   ` Andy Shevchenko
2020-12-24 12:17     ` [Devel] " Andy Shevchenko
2020-12-24 12:41     ` Laurent Pinchart
2020-12-28 16:30   ` Sakari Ailus
2020-12-28 17:11     ` Sakari Ailus
2020-12-28 21:36       ` Daniel Scally
2020-12-24  1:09 ` [PATCH v3 07/14] software_node: Add support for fwnode_graph*() family of functions Daniel Scally
2020-12-24 12:24   ` Andy Shevchenko
2020-12-24 12:24     ` [Devel] " Andy Shevchenko
2020-12-24 12:55     ` Laurent Pinchart
2020-12-24 13:03       ` Andy Shevchenko
2020-12-24 13:03         ` [Devel] " Andy Shevchenko
2020-12-24 14:21         ` Daniel Scally
2020-12-28 16:41           ` Sakari Ailus
2020-12-28 21:37             ` Daniel Scally
2020-12-26 23:47     ` Daniel Scally
2020-12-24 12:53   ` Laurent Pinchart
2020-12-24 14:24     ` Daniel Scally
2020-12-24  1:09 ` [PATCH v3 08/14] lib/test_printf.c: Use helper function to unwind array of software_nodes Daniel Scally
2020-12-24  1:09 ` [PATCH v3 09/14] ipu3-cio2: Add T: entry to MAINTAINERS Daniel Scally
2020-12-24  1:09 ` [PATCH v3 10/14] ipu3-cio2: Rename ipu3-cio2.c Daniel Scally
2020-12-24  1:09 ` [PATCH v3 11/14] media: v4l2-core: v4l2-async: Check sd->fwnode->secondary in match_fwnode() Daniel Scally
2020-12-24  1:09 ` [PATCH v3 12/14] acpi: Add acpi_dev_get_next_match_dev() and helper macro Daniel Scally
2020-12-24  1:09 ` [PATCH v3 13/14] include: media: v4l2-fwnode: Include v4l2_fwnode_bus_type Daniel Scally
2020-12-24 12:32   ` Andy Shevchenko
2020-12-24 12:32     ` [Devel] " Andy Shevchenko
2020-12-26 23:14     ` Daniel Scally
2020-12-24 12:58   ` Laurent Pinchart
2020-12-24  1:09 ` [PATCH v3 14/14] ipu3-cio2: Add cio2-bridge to ipu3-cio2 driver Daniel Scally
2020-12-24 12:54   ` Andy Shevchenko
2020-12-24 12:54     ` [Devel] " Andy Shevchenko
2020-12-26 23:23     ` Daniel Scally
2020-12-28 17:05     ` Sakari Ailus
2020-12-28 22:37       ` Daniel Scally
2020-12-28 22:54         ` [Devel] " Andy Shevchenko
2020-12-28 22:55           ` Andy Shevchenko
2020-12-28 23:07           ` Laurent Pinchart
2020-12-28 23:54             ` Andy Shevchenko
2020-12-28 23:55               ` [Devel] " Andy Shevchenko
2020-12-29  0:07               ` Laurent Pinchart
2020-12-30 20:47                 ` Andy Shevchenko
2020-12-30 20:48                   ` [Devel] " Andy Shevchenko
2020-12-28 23:30           ` Daniel Scally
2020-12-28 23:47             ` Andy Shevchenko
2020-12-28 23:47               ` [Devel] " Andy Shevchenko
2021-01-02 17:07         ` Sakari Ailus
2021-01-02 17:12           ` Daniel Scally
2021-01-02 17:21             ` Sakari Ailus
2021-01-02 17:24             ` Sakari Ailus
2021-01-02 21:23               ` Daniel Scally
2020-12-28 22:55 [Devel] " Andy Shevchenko
2020-12-28 22:56 ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201224010907.263125-4-djrscally@gmail.com \
    --to=djrscally@gmail.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=bingbu.cao@intel.com \
    --cc=devel@acpica.org \
    --cc=erik.kaneda@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=jacopo+renesas@jmondi.org \
    --cc=kieran.bingham+renesas@ideasonboard.com \
    --cc=laurent.pinchart+renesas@ideasonboard.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=lenb@kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=m.felsch@pengutronix.de \
    --cc=mchehab@kernel.org \
    --cc=niklas.soderlund+renesas@ragnatech.se \
    --cc=pmladek@suse.com \
    --cc=rjw@rjwysocki.net \
    --cc=robert.moore@intel.com \
    --cc=rostedt@goodmis.org \
    --cc=sakari.ailus@linux.intel.com \
    --cc=sergey.senozhatsky@gmail.com \
    --cc=slongerbeam@gmail.com \
    --cc=tian.shu.qiu@intel.com \
    --cc=yong.zhi@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.