All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
To: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	sakari.ailus@linux.intel.com,
	Jacopo Mondi <jacopo+renesas@jmondi.org>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	niklas.soderlund+renesas@ragnatech.se,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	satish.nagireddy@getcruise.com, Tomasz Figa <tfiga@chromium.org>
Cc: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Subject: [PATCH v16 02/20] media: add V4L2_SUBDEV_FL_STREAMS
Date: Thu, 15 Dec 2022 14:16:16 +0200	[thread overview]
Message-ID: <20221215121634.287100-3-tomi.valkeinen@ideasonboard.com> (raw)
In-Reply-To: <20221215121634.287100-1-tomi.valkeinen@ideasonboard.com>

Add subdev flag V4L2_SUBDEV_FL_STREAMS. It is used to indicate that the
subdev supports the new API with multiplexed streams (routing, stream
configs).

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
 include/media/v4l2-subdev.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h
index 2f80c9c818ed..4be0a590c7c7 100644
--- a/include/media/v4l2-subdev.h
+++ b/include/media/v4l2-subdev.h
@@ -879,6 +879,17 @@ struct v4l2_subdev_internal_ops {
  * should set this flag.
  */
 #define V4L2_SUBDEV_FL_HAS_EVENTS		(1U << 3)
+/*
+ * Set this flag if this subdev supports multiplexed streams. This means
+ * that the driver supports routing and handles the stream parameter in its
+ * v4l2_subdev_pad_ops handlers. More specifically, this means:
+ *
+ * - Centrally managed subdev active state is enabled
+ * - Legacy pad config is _not_ supported (state->pads is NULL)
+ * - Routing ioctls are available
+ * - Multiple streams per pad are supported
+ */
+#define V4L2_SUBDEV_FL_STREAMS			(1U << 4)
 
 struct regulator_bulk_data;
 
-- 
2.34.1


  parent reply	other threads:[~2022-12-15 12:17 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-15 12:16 [PATCH v16 00/20] v4l: routing and streams support Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 01/20] media: v4l2-subdev: Sort includes Tomi Valkeinen
2022-12-15 12:16 ` Tomi Valkeinen [this message]
2023-01-09 11:56   ` [PATCH v16 02/20] media: add V4L2_SUBDEV_FL_STREAMS Laurent Pinchart
2022-12-15 12:16 ` [PATCH v16 03/20] media: add V4L2_SUBDEV_CAP_STREAMS Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 04/20] media: Documentation: Add GS_ROUTING documentation Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 05/20] media: subdev: Add [GS]_ROUTING subdev ioctls and operations Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 06/20] media: subdev: Require code change to enable [GS]_ROUTING Tomi Valkeinen
2023-01-12 13:35   ` Sakari Ailus
2023-01-15 12:40   ` [PATCH v16.1] " Tomi Valkeinen
2023-01-15 15:34     ` Laurent Pinchart
2023-01-15 15:34       ` Laurent Pinchart
2022-12-15 12:16 ` [PATCH v16 07/20] media: subdev: add v4l2_subdev_has_pad_interdep() Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 08/20] media: subdev: add v4l2_subdev_set_routing helper() Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 09/20] media: subdev: Add for_each_active_route() macro Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 10/20] media: Documentation: add multiplexed streams documentation Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 11/20] media: subdev: add stream based configuration Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 12/20] media: subdev: use streams in v4l2_subdev_link_validate() Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 13/20] media: subdev: add "opposite" stream helper funcs Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 14/20] media: subdev: add streams to v4l2_subdev_get_fmt() helper function Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 15/20] media: subdev: add v4l2_subdev_set_routing_with_fmt() helper Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 16/20] media: subdev: add v4l2_subdev_routing_validate() helper Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 17/20] media: v4l2-subdev: Add v4l2_subdev_state_xlate_streams() helper Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 18/20] media: v4l2-subdev: Add subdev .(enable|disable)_streams() operations Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 19/20] media: v4l2-subdev: Add v4l2_subdev_s_stream_helper() function Tomi Valkeinen
2022-12-15 12:16 ` [PATCH v16 20/20] media: Add stream to frame descriptor Tomi Valkeinen
2023-01-10  9:17 ` [PATCH 1/1] media: Documentation: Update documentation for streams Sakari Ailus
2023-01-10 11:26   ` Tomi Valkeinen
2023-01-11 10:42     ` Sakari Ailus
2023-01-11 11:09 ` [PATCH v2 " Sakari Ailus
2023-01-11 14:08   ` Tomi Valkeinen
2023-01-12 11:48 ` [PATCH v3 " Sakari Ailus
2023-01-12 12:01   ` Tomi Valkeinen
2023-01-16 10:27 ` [PATCH v4 " Sakari Ailus

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=20221215121634.287100-3-tomi.valkeinen@ideasonboard.com \
    --to=tomi.valkeinen@ideasonboard.com \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=jacopo+renesas@jmondi.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=niklas.soderlund+renesas@ragnatech.se \
    --cc=sakari.ailus@linux.intel.com \
    --cc=satish.nagireddy@getcruise.com \
    --cc=tfiga@chromium.org \
    /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.