linux-media.vger.kernel.org archive mirror
 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 v10 02/14] media: v4l2-fwnode: add v4l2_fwnode_connector
Date: Fri, 30 Aug 2019 12:16:34 +0200	[thread overview]
Message-ID: <20190830101646.6530-3-m.felsch@pengutronix.de> (raw)
In-Reply-To: <20190830101646.6530-1-m.felsch@pengutronix.de>

Currently every driver needs to parse the connector endpoints by it self.
This is the initial work to make this generic. A generic connector has
common members and connector specific members. The common members are:
  - type
  - label (optional)
  - links
  - nr_of_links

The specific members are stored within a union, since only one of them
can be available at the time. Since this is the initial support the
patch adds only the analog-connector specific ones.

Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
---
[1] https://patchwork.kernel.org/cover/10794703/

v10:
- drop unused V4L2_CONN_HDMI support

v8:
- rename CON -> CONN
- supported_tvnorms_stds -> sdtv_stds and adapt description

v7:
- fix spelling issues
- constify label
- support variable label size
- replace single remote_port/id members by links member of variable
  size
- squash v4l2-connector into v4l2-fwnode

@Jacopo: I dropped your r b tag because I changed the port/id logic.

v6:
- fix some spelling and style issues
- rm unnecessary comments
- drop vga and dvi connector
- fix misspelt connector

v2-v4:
- nothing since the patch was squashed from series [1] into this
  series.

 include/media/v4l2-fwnode.h | 43 +++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/include/media/v4l2-fwnode.h b/include/media/v4l2-fwnode.h
index f6a7bcd13197..65da646b579e 100644
--- a/include/media/v4l2-fwnode.h
+++ b/include/media/v4l2-fwnode.h
@@ -123,6 +123,49 @@ struct v4l2_fwnode_link {
 	unsigned int remote_port;
 };
 
+/**
+ * enum v4l2_connector_type - connector type
+ * @V4L2_CONN_UNKNOWN:   unknown connector type, no V4L2 connector configuration
+ * @V4L2_CONN_COMPOSITE: analog composite connector
+ * @V4L2_CONN_SVIDEO:    analog svideo connector
+ */
+enum v4l2_connector_type {
+	V4L2_CONN_UNKNOWN,
+	V4L2_CONN_COMPOSITE,
+	V4L2_CONN_SVIDEO,
+};
+
+/**
+ * struct v4l2_fwnode_connector_analog - analog connector data structure
+ * @sdtv_stds: sdtv standards this connector supports, set to V4L2_STD_ALL
+ *             if no restrictions are specified.
+ */
+struct v4l2_fwnode_connector_analog {
+	v4l2_std_id sdtv_stds;
+};
+
+/**
+ * struct v4l2_fwnode_connector - the connector data structure
+ * @label: optional connector label
+ * @type: connector type
+ * @links: list of &struct v4l2_fwnode_link links the connector is connected to
+ * @nr_of_links: total number of links
+ * @connector: connector configuration
+ * @connector.analog: analog connector configuration
+ *                    &struct v4l2_fwnode_connector_analog
+ */
+struct v4l2_fwnode_connector {
+	const char *label;
+	enum v4l2_connector_type type;
+	struct v4l2_fwnode_link *links;
+	unsigned int nr_of_links;
+
+	union {
+		struct v4l2_fwnode_connector_analog analog;
+		/* future connectors */
+	} connector;
+};
+
 /**
  * v4l2_fwnode_endpoint_parse() - parse all fwnode node properties
  * @fwnode: pointer to the endpoint's fwnode handle
-- 
2.20.1


  parent reply	other threads:[~2019-08-30 10:17 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-30 10:16 [PATCH v10 00/14] TVP5150 features and fixes Marco Felsch
2019-08-30 10:16 ` [PATCH v10 01/14] dt-bindings: connector: analog: add sdtv standards property Marco Felsch
2019-09-27  9:09   ` Hans Verkuil
2019-09-27 10:01     ` Marco Felsch
2019-08-30 10:16 ` Marco Felsch [this message]
2019-08-30 10:16 ` [PATCH v10 03/14] media: v4l2-fwnode: add initial connector parsing support Marco Felsch
2019-10-02  7:03   ` Sakari Ailus
2019-10-02  8:07     ` Marco Felsch
2019-10-22 10:17       ` Marco Felsch
2019-10-23 10:57       ` Sakari Ailus
2019-10-23 12:21         ` Marco Felsch
2019-10-24 12:02           ` Sakari Ailus
2019-11-08  8:58             ` Marco Felsch
2019-11-15 23:06               ` Sakari Ailus
2019-11-19 11:15                 ` Marco Felsch
2019-11-27  8:26                   ` Marco Felsch
2019-11-27 12:24                     ` Sakari Ailus
2019-12-10  9:50                       ` Marco Felsch
2020-01-07 11:56                         ` Marco Felsch
2020-01-07 13:49                         ` Sakari Ailus
2020-01-07 14:00                           ` Marco Felsch
2020-01-07 14:03                             ` Sakari Ailus
2019-11-27 12:21                   ` Sakari Ailus
2019-08-30 10:16 ` [PATCH v10 04/14] partial revert of "[media] tvp5150: add HW input connectors support" Marco Felsch
2019-08-30 10:16 ` [PATCH v10 05/14] media: tvp5150: add input source selection of_graph support Marco Felsch
2019-09-27  8:54   ` Hans Verkuil
2019-09-27 12:09     ` Marco Felsch
2019-08-30 10:16 ` [PATCH v10 06/14] media: dt-bindings: tvp5150: Add input port connectors DT bindings Marco Felsch
2019-08-30 10:16 ` [PATCH v10 07/14] media: tvp5150: fix set_selection rectangle handling Marco Felsch
2019-09-27 12:13   ` Marco Felsch
2019-09-27 12:14     ` Hans Verkuil
2019-08-30 10:16 ` [PATCH v10 08/14] media: tvp5150: add FORMAT_TRY support for get/set selection handlers Marco Felsch
2019-09-27  9:01   ` Hans Verkuil
2019-09-27 10:57     ` Marco Felsch
2019-09-27 11:05       ` Hans Verkuil
2019-08-30 10:16 ` [PATCH v10 09/14] media: tvp5150: initialize subdev before parsing device tree Marco Felsch
2019-08-30 10:16 ` [PATCH v10 10/14] media: tvp5150: add s_power callback Marco Felsch
2019-08-30 10:16 ` [PATCH v10 11/14] media: dt-bindings: tvp5150: cleanup bindings stlye Marco Felsch
2019-08-30 10:16 ` [PATCH v10 12/14] media: dt-bindings: tvp5150: add optional sdtv standards documentation Marco Felsch
2019-08-30 10:16 ` [PATCH v10 13/14] media: tvp5150: add support to limit sdtv standards Marco Felsch
2019-09-27  8:52   ` Hans Verkuil
2019-09-27 12:09     ` Marco Felsch
2019-08-30 10:16 ` [PATCH v10 14/14] 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=20190830101646.6530-3-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;
as well as URLs for NNTP newsgroup(s).