aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2009-02-13 05:48:21 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-03-30 11:42:46 -0400
commit1b6f1d9603a46a73ceed8daf7a3285559727fec3 (patch)
treeaa6a3cfbd2a136f8695007a7b78aa6023c60938b
parentee6f78cd03caae54baafb2e79a39b4aee90e6931 (diff)
V4L/DVB (10542): v4l2-subdev: add querystd and g_input_status
In order to convert the v4l1 zoran and vino i2c drivers to v4l2 these extra ops are required. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/video/v4l2-subdev.c4
-rw-r--r--include/media/v4l2-common.h3
-rw-r--r--include/media/v4l2-subdev.h2
3 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/video/v4l2-subdev.c b/drivers/media/video/v4l2-subdev.c
index 158bc55de166..923ec8d01991 100644
--- a/drivers/media/video/v4l2-subdev.c
+++ b/drivers/media/video/v4l2-subdev.c
@@ -104,6 +104,10 @@ int v4l2_subdev_command(struct v4l2_subdev *sd, unsigned cmd, void *arg)
104 return v4l2_subdev_call(sd, video, g_fmt, arg); 104 return v4l2_subdev_call(sd, video, g_fmt, arg);
105 case VIDIOC_INT_S_STD_OUTPUT: 105 case VIDIOC_INT_S_STD_OUTPUT:
106 return v4l2_subdev_call(sd, video, s_std_output, *(v4l2_std_id *)arg); 106 return v4l2_subdev_call(sd, video, s_std_output, *(v4l2_std_id *)arg);
107 case VIDIOC_QUERYSTD:
108 return v4l2_subdev_call(sd, video, querystd, arg);
109 case VIDIOC_INT_G_INPUT_STATUS:
110 return v4l2_subdev_call(sd, video, g_input_status, arg);
107 case VIDIOC_STREAMON: 111 case VIDIOC_STREAMON:
108 return v4l2_subdev_call(sd, video, s_stream, 1); 112 return v4l2_subdev_call(sd, video, s_stream, 1);
109 case VIDIOC_STREAMOFF: 113 case VIDIOC_STREAMOFF:
diff --git a/include/media/v4l2-common.h b/include/media/v4l2-common.h
index 0f864f8daaf2..1637cc302697 100644
--- a/include/media/v4l2-common.h
+++ b/include/media/v4l2-common.h
@@ -297,4 +297,7 @@ struct v4l2_crystal_freq {
297 a v4l2_gpio struct if a direction is also needed. */ 297 a v4l2_gpio struct if a direction is also needed. */
298#define VIDIOC_INT_S_GPIO _IOW('d', 117, u32) 298#define VIDIOC_INT_S_GPIO _IOW('d', 117, u32)
299 299
300/* Get input status. Same as the status field in the v4l2_input struct. */
301#define VIDIOC_INT_G_INPUT_STATUS _IOR('d', 118, u32)
302
300#endif /* V4L2_COMMON_H_ */ 303#endif /* V4L2_COMMON_H_ */
diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h
index 9c1663d91224..cd640c6f039b 100644
--- a/include/media/v4l2-subdev.h
+++ b/include/media/v4l2-subdev.h
@@ -115,6 +115,8 @@ struct v4l2_subdev_video_ops {
115 int (*g_vbi_data)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_data *vbi_data); 115 int (*g_vbi_data)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_data *vbi_data);
116 int (*g_sliced_vbi_cap)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_cap *cap); 116 int (*g_sliced_vbi_cap)(struct v4l2_subdev *sd, struct v4l2_sliced_vbi_cap *cap);
117 int (*s_std_output)(struct v4l2_subdev *sd, v4l2_std_id std); 117 int (*s_std_output)(struct v4l2_subdev *sd, v4l2_std_id std);
118 int (*querystd)(struct v4l2_subdev *sd, v4l2_std_id *std);
119 int (*g_input_status)(struct v4l2_subdev *sd, u32 *status);
118 int (*s_stream)(struct v4l2_subdev *sd, int enable); 120 int (*s_stream)(struct v4l2_subdev *sd, int enable);
119 int (*s_fmt)(struct v4l2_subdev *sd, struct v4l2_format *fmt); 121 int (*s_fmt)(struct v4l2_subdev *sd, struct v4l2_format *fmt);
120 int (*g_fmt)(struct v4l2_subdev *sd, struct v4l2_format *fmt); 122 int (*g_fmt)(struct v4l2_subdev *sd, struct v4l2_format *fmt);