Hi Tomasz Stanislawski, On Thursday, May 05, 2011 6:40 PM Tomasz Stanislawski wrote: > This patch allows new drivers to work correctly with applications that use > old-style crop API. > The old crop ioctl is simulated by using selection ioctls. > > Signed-off-by: Tomasz Stanislawski <t.stanislaws@xxxxxxxxxxx> > --- > drivers/media/video/v4l2-ioctl.c | 85 +++++++++++++++++++++++++++++++++---- > 1 files changed, 75 insertions(+), 10 deletions(-) > > diff --git a/drivers/media/video/v4l2-ioctl.c b/drivers/media/video/v4l2- > ioctl.c > index aeef966..d0a4073 100644 > --- a/drivers/media/video/v4l2-ioctl.c > +++ b/drivers/media/video/v4l2-ioctl.c > @@ -1723,11 +1723,31 @@ static long __video_do_ioctl(struct file *file, > { > struct v4l2_crop *p = arg; > > - if (!ops->vidioc_g_crop) > + dbgarg(cmd, "type=%s\n", prt_names(p->type, v4l2_type_names)); > + > + if (ops->vidioc_g_crop) { > + ret = ops->vidioc_g_crop(file, fh, p); > + } else > + if (ops->vidioc_g_selection) { > + /* simulate capture crop using selection api */ > + struct v4l2_selection s = { > + .type = p->type, > + .target = V4L2_SEL_CROP_ACTIVE, > + }; > + > + /* crop means compose for output devices */ > + if (p->type == V4L2_BUF_TYPE_VIDEO_OUTPUT) > + s.target = V4L2_SEL_COMPOSE_ACTIVE; > + If it also supports V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE, how about using Macro like V4L2_TYPE_IS_OUTPUT(type) ? [snip] Best regards, Jonghun Han -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html