public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
From: Marco Felsch <m.felsch@pengutronix.de>
To: mchehab@kernel.org, sakari.ailus@linux.intel.com,
	hans.verkuil@cisco.com, jacopo+renesas@jmondi.org,
	robh+dt@kernel.org, laurent.pinchart@ideasonboard.com
Cc: devicetree@vger.kernel.org, kernel@pengutronix.de,
	linux-media@vger.kernel.org
Subject: [PATCH v13 05/21] media: v4l2-fwnode: simplify v4l2_fwnode_parse_link
Date: Thu, 12 Mar 2020 11:31:40 +0100	[thread overview]
Message-ID: <20200312103156.3178-6-m.felsch@pengutronix.de> (raw)
In-Reply-To: <20200312103156.3178-1-m.felsch@pengutronix.de>

This helper was introduced before those helpers where awailable. Convert
it to cleanup the code and improbe readability.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
 drivers/media/v4l2-core/v4l2-fwnode.c | 25 +++++++++----------------
 1 file changed, 9 insertions(+), 16 deletions(-)

diff --git a/drivers/media/v4l2-core/v4l2-fwnode.c b/drivers/media/v4l2-core/v4l2-fwnode.c
index d56eee9c09b8..316e19615d88 100644
--- a/drivers/media/v4l2-core/v4l2-fwnode.c
+++ b/drivers/media/v4l2-core/v4l2-fwnode.c
@@ -557,33 +557,26 @@ int v4l2_fwnode_endpoint_alloc_parse(struct fwnode_handle *fwnode,
 }
 EXPORT_SYMBOL_GPL(v4l2_fwnode_endpoint_alloc_parse);
 
-int v4l2_fwnode_parse_link(struct fwnode_handle *__fwnode,
+int v4l2_fwnode_parse_link(struct fwnode_handle *fwnode,
 			   struct v4l2_fwnode_link *link)
 {
-	const char *port_prop = "reg";
-	struct fwnode_handle *fwnode;
+	struct fwnode_endpoint fwep;
 
 	memset(link, 0, sizeof(*link));
 
-	fwnode = fwnode_get_parent(__fwnode);
-	fwnode_property_read_u32(fwnode, port_prop, &link->local_port);
-	fwnode = fwnode_get_next_parent(fwnode);
-	if (is_of_node(fwnode) && of_node_name_eq(to_of_node(fwnode), "ports"))
-		fwnode = fwnode_get_next_parent(fwnode);
-	link->local_node = fwnode;
+	fwnode_graph_parse_endpoint(fwnode, &fwep);
+	link->local_port = fwep.port;
+	link->local_node = fwnode_graph_get_port_parent(fwnode);
 
-	fwnode = fwnode_graph_get_remote_endpoint(__fwnode);
+	fwnode = fwnode_graph_get_remote_endpoint(fwnode);
 	if (!fwnode) {
 		fwnode_handle_put(fwnode);
 		return -ENOLINK;
 	}
 
-	fwnode = fwnode_get_parent(fwnode);
-	fwnode_property_read_u32(fwnode, port_prop, &link->remote_port);
-	fwnode = fwnode_get_next_parent(fwnode);
-	if (is_of_node(fwnode) && of_node_name_eq(to_of_node(fwnode), "ports"))
-		fwnode = fwnode_get_next_parent(fwnode);
-	link->remote_node = fwnode;
+	fwnode_graph_parse_endpoint(fwnode, &fwep);
+	link->remote_port = fwep.port;
+	link->remote_node = fwnode_graph_get_port_parent(fwnode);
 
 	return 0;
 }
-- 
2.20.1


  parent reply	other threads:[~2020-03-12 10:32 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-12 10:31 [PATCH v13 00/19] TVP5150 Features and Fixes Marco Felsch
2020-03-12 10:31 ` [PATCH v13 01/21] dt-bindings: connector: analog: add sdtv standards property Marco Felsch
2020-03-12 10:31 ` [PATCH v13 02/21] dt-bindings: display: add sdtv-standards defines Marco Felsch
2020-03-12 10:31 ` [PATCH v13 03/21] media: v4l: link dt-bindings and uapi Marco Felsch
2020-03-12 10:31 ` [PATCH v13 04/21] media: v4l2-fwnode: fix v4l2_fwnode_parse_link handling Marco Felsch
2020-03-12 10:37   ` Sakari Ailus
2020-03-12 10:42   ` Sakari Ailus
2020-03-12 10:43     ` Sakari Ailus
2020-03-12 11:14       ` Marco Felsch
2020-03-12 10:31 ` Marco Felsch [this message]
2020-03-12 10:31 ` [PATCH v13 06/21] media: v4l2-fwnode: add endpoint id field to v4l2_fwnode_link Marco Felsch
2020-03-12 10:31 ` [PATCH v13 07/21] media: v4l2-fwnode: add v4l2_fwnode_connector Marco Felsch
2020-03-12 10:31 ` [PATCH v13 08/21] media: v4l2-fwnode: add initial connector parsing support Marco Felsch
2020-03-12 10:31 ` [PATCH v13 09/21] partial revert of "[media] tvp5150: add HW input connectors support" Marco Felsch
2020-03-12 10:31 ` [PATCH v13 10/21] media: tvp5150: add input source selection of_graph support Marco Felsch
2020-03-12 10:31 ` [PATCH v13 11/21] media: dt-bindings: tvp5150: Add input port connectors DT bindings Marco Felsch
2020-03-12 10:31 ` [PATCH v13 12/21] media: tvp5150: fix set_selection rectangle handling Marco Felsch
2020-03-12 10:31 ` [PATCH v13 13/21] media: tvp5150: add FORMAT_TRY support for get/set selection handlers Marco Felsch
2020-03-12 10:31 ` [PATCH v13 14/21] media: tvp5150: initialize subdev before parsing device tree Marco Felsch
2020-03-12 10:31 ` [PATCH v13 15/21] media: tvp5150: move irq en-/disable into runtime-pm ops Marco Felsch
2020-03-12 10:31 ` [PATCH v13 16/21] media: tvp5150: add v4l2-event support Marco Felsch
2020-03-12 10:31 ` [PATCH v13 17/21] media: tvp5150: add subdev open/close callbacks Marco Felsch
2020-03-12 10:31 ` [PATCH v13 18/21] media: dt-bindings: tvp5150: cleanup bindings stlye Marco Felsch
2020-03-12 10:31 ` [PATCH v13 19/21] media: dt-bindings: tvp5150: add optional sdtv standards documentation Marco Felsch
2020-03-12 10:31 ` [PATCH v13 20/21] media: tvp5150: add support to limit sdtv standards Marco Felsch
2020-03-12 10:31 ` [PATCH v13 21/21] media: tvp5150: make debug output more readable Marco Felsch

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=20200312103156.3178-6-m.felsch@pengutronix.de \
    --to=m.felsch@pengutronix.de \
    --cc=devicetree@vger.kernel.org \
    --cc=hans.verkuil@cisco.com \
    --cc=jacopo+renesas@jmondi.org \
    --cc=kernel@pengutronix.de \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=sakari.ailus@linux.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox