Message ID | 20221215121634.287100-3-tomi.valkeinen@ideasonboard.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | v4l: routing and streams support | expand |
Hi Tomi, Thank you for the patch. On Thu, Dec 15, 2022 at 02:16:16PM +0200, Tomi Valkeinen wrote: > 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 I wonder, as a sanity check, should the subdev core verify that the s_routing operation is available when this flag is set ? This could be done on top, so Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > + * - Multiple streams per pad are supported > + */ > +#define V4L2_SUBDEV_FL_STREAMS (1U << 4) > > struct regulator_bulk_data; >
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;
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(+)