Message ID | 20230115124008.293634-1-tomi.valkeinen@ideasonboard.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v16.1] media: subdev: Require code change to enable [GS]_ROUTING | expand |
Hi Tomi, Thank you for the patch. On Sun, Jan 15, 2023 at 02:40:08PM +0200, Tomi Valkeinen wrote: > Streams API is an experimental feature. To use Streams API, the user Nitpicking, I'd write "The Streams API" and "To use the Streams API". I'm sure Sakari can handle this in the second version of the pull request. > needs to change a variable in v4l2-subdev.c and recompile the kernel. > > This commit should be reverted when the Streams API is deemed ready for > production use. > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > > Here's a minor update to the patch: > - Fix unused var warning > - Don't initialize the static var to 0 > > drivers/media/v4l2-core/v4l2-subdev.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/drivers/media/v4l2-core/v4l2-subdev.c b/drivers/media/v4l2-core/v4l2-subdev.c > index 61b429016a2f..a576b22164b0 100644 > --- a/drivers/media/v4l2-core/v4l2-subdev.c > +++ b/drivers/media/v4l2-core/v4l2-subdev.c > @@ -23,6 +23,15 @@ > #include <media/v4l2-fh.h> > #include <media/v4l2-ioctl.h> > > +#if defined(CONFIG_VIDEO_V4L2_SUBDEV_API) > +/* > + * Streams API is an experimental feature. To use Streams API, set > + * 'v4l2_subdev_enable_streams_api' to 1 below. > + */ > + > +static bool v4l2_subdev_enable_streams_api; > +#endif > + > /* > * Maximum stream ID is 63 for now, as we use u64 bitmask to represent a set > * of streams. > @@ -751,6 +760,9 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, > struct v4l2_subdev_routing *routing = arg; > struct v4l2_subdev_krouting *krouting; > > + if (!v4l2_subdev_enable_streams_api) > + return -ENOIOCTLCMD; > + > if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS)) > return -ENOIOCTLCMD; > > @@ -778,6 +790,9 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, > struct v4l2_subdev_krouting krouting = {}; > unsigned int i; > > + if (!v4l2_subdev_enable_streams_api) > + return -ENOIOCTLCMD; > + > if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS)) > return -ENOIOCTLCMD; >
On Sun, Jan 15, 2023 at 05:34:23PM +0200, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Sun, Jan 15, 2023 at 02:40:08PM +0200, Tomi Valkeinen wrote: > > Streams API is an experimental feature. To use Streams API, the user > > Nitpicking, I'd write "The Streams API" and "To use the Streams API". > > I'm sure Sakari can handle this in the second version of the pull > request. > > > needs to change a variable in v4l2-subdev.c and recompile the kernel. > > > > This commit should be reverted when the Streams API is deemed ready for > > production use. > > > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> > > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > > > --- > > > > Here's a minor update to the patch: > > - Fix unused var warning > > - Don't initialize the static var to 0 > > > > drivers/media/v4l2-core/v4l2-subdev.c | 15 +++++++++++++++ > > 1 file changed, 15 insertions(+) > > > > diff --git a/drivers/media/v4l2-core/v4l2-subdev.c b/drivers/media/v4l2-core/v4l2-subdev.c > > index 61b429016a2f..a576b22164b0 100644 > > --- a/drivers/media/v4l2-core/v4l2-subdev.c > > +++ b/drivers/media/v4l2-core/v4l2-subdev.c > > @@ -23,6 +23,15 @@ > > #include <media/v4l2-fh.h> > > #include <media/v4l2-ioctl.h> > > > > +#if defined(CONFIG_VIDEO_V4L2_SUBDEV_API) > > +/* > > + * Streams API is an experimental feature. To use Streams API, set Oh, and here too. > > + * 'v4l2_subdev_enable_streams_api' to 1 below. > > + */ > > + > > +static bool v4l2_subdev_enable_streams_api; > > +#endif > > + > > /* > > * Maximum stream ID is 63 for now, as we use u64 bitmask to represent a set > > * of streams. > > @@ -751,6 +760,9 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, > > struct v4l2_subdev_routing *routing = arg; > > struct v4l2_subdev_krouting *krouting; > > > > + if (!v4l2_subdev_enable_streams_api) > > + return -ENOIOCTLCMD; > > + > > if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS)) > > return -ENOIOCTLCMD; > > > > @@ -778,6 +790,9 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, > > struct v4l2_subdev_krouting krouting = {}; > > unsigned int i; > > > > + if (!v4l2_subdev_enable_streams_api) > > + return -ENOIOCTLCMD; > > + > > if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS)) > > return -ENOIOCTLCMD; > >
diff --git a/drivers/media/v4l2-core/v4l2-subdev.c b/drivers/media/v4l2-core/v4l2-subdev.c index 61b429016a2f..a576b22164b0 100644 --- a/drivers/media/v4l2-core/v4l2-subdev.c +++ b/drivers/media/v4l2-core/v4l2-subdev.c @@ -23,6 +23,15 @@ #include <media/v4l2-fh.h> #include <media/v4l2-ioctl.h> +#if defined(CONFIG_VIDEO_V4L2_SUBDEV_API) +/* + * Streams API is an experimental feature. To use Streams API, set + * 'v4l2_subdev_enable_streams_api' to 1 below. + */ + +static bool v4l2_subdev_enable_streams_api; +#endif + /* * Maximum stream ID is 63 for now, as we use u64 bitmask to represent a set * of streams. @@ -751,6 +760,9 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, struct v4l2_subdev_routing *routing = arg; struct v4l2_subdev_krouting *krouting; + if (!v4l2_subdev_enable_streams_api) + return -ENOIOCTLCMD; + if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS)) return -ENOIOCTLCMD; @@ -778,6 +790,9 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, struct v4l2_subdev_krouting krouting = {}; unsigned int i; + if (!v4l2_subdev_enable_streams_api) + return -ENOIOCTLCMD; + if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS)) return -ENOIOCTLCMD;
Streams API is an experimental feature. To use Streams API, the user needs to change a variable in v4l2-subdev.c and recompile the kernel. This commit should be reverted when the Streams API is deemed ready for production use. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> --- Here's a minor update to the patch: - Fix unused var warning - Don't initialize the static var to 0 drivers/media/v4l2-core/v4l2-subdev.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)