On 05/10/2021 10:57, Tomi Valkeinen wrote: > Add subdev flag V4L2_SUBDEV_FL_MULTIPLEXED. 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@xxxxxxxxxxxxxxxx> > --- > 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 b3a72c98a2d3..7f9c83fac020 100644 > --- a/include/media/v4l2-subdev.h > +++ b/include/media/v4l2-subdev.h > @@ -888,6 +888,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 active state is enabled > + * - Legacy pad config is _not_ supported (state->pads) > + * - Routing ioctls are available > + * - Multiple streams per pad are supported > + */ > +#define V4L2_SUBDEV_FL_MULTIPLEXED (1U << 4) This is an internal kAPI flag. But wouldn't it be useful to have this as an entity flag instead? E.g. MEDIA_ENT_FL_MULTIPLEXED Or perhaps as a Sub-Device Capabilities Flag V4L2_SUBDEV_CAP_MULTIPLEXED. Or a combination. It is useful if you can detect this from userspace without having to call G_ROUTING to see if that exists. You can ignore this if something like that is added in later patches. Regards, Hans > > struct regulator_bulk_data; > >