Moi, On Tue, Apr 02, 2024 at 02:37:25AM +0300, Laurent Pinchart wrote: > When support for streams was added to the V4L2 subdev API, the > v4l2_subdev_crop structure was extended with a stream field, but the > field was not handled in the core code that translates the > VIDIOC_SUBDEV_[GS]_CROP ioctls to the selection API. Fix it. The field is indeed in the UAPI headers. But do we want to support the CROP IOCTL for streams? Shouldn't the callers be using the [GS]_SELECTION instead? > > Fixes: 2f91e10ee6fd ("media: subdev: add stream based configuration") > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/media/v4l2-core/v4l2-subdev.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/media/v4l2-core/v4l2-subdev.c b/drivers/media/v4l2-core/v4l2-subdev.c > index 4c6198c48dd6..45836f0a2b0a 100644 > --- a/drivers/media/v4l2-core/v4l2-subdev.c > +++ b/drivers/media/v4l2-core/v4l2-subdev.c > @@ -732,6 +732,7 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, > memset(&sel, 0, sizeof(sel)); > sel.which = crop->which; > sel.pad = crop->pad; > + sel.stream = crop->stream; > sel.target = V4L2_SEL_TGT_CROP; > > rval = v4l2_subdev_call( > @@ -756,6 +757,7 @@ static long subdev_do_ioctl(struct file *file, unsigned int cmd, void *arg, > memset(&sel, 0, sizeof(sel)); > sel.which = crop->which; > sel.pad = crop->pad; > + sel.stream = crop->stream; > sel.target = V4L2_SEL_TGT_CROP; > sel.r = crop->rect; > > > base-commit: 39cd87c4eb2b893354f3b850f916353f2658ae6f -- Terveisin, Sakari Ailus