summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEric Nelson <eric.nelson@boundarydevices.com>2013-05-14 16:29:23 -0700
committerEric Nelson <eric.nelson@boundarydevices.com>2013-06-02 09:51:17 -0700
commitc02c8666503469591d6a61cad5fc88322ed39b9f (patch)
treec2a8098b32a491f297bf60aef95c8a3bff196db5 /include
parentaf469f6323870b9808b2fad957c9a30f25b2d255 (diff)
Raybiz auto-focus V3
Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mxc_v4l2.h5
-rw-r--r--include/linux/videodev2.h16
-rw-r--r--include/media/v4l2-int-device.h2
3 files changed, 23 insertions, 0 deletions
diff --git a/include/linux/mxc_v4l2.h b/include/linux/mxc_v4l2.h
index dd106ff31265..ba2a8d9c96f2 100644
--- a/include/linux/mxc_v4l2.h
+++ b/include/linux/mxc_v4l2.h
@@ -41,6 +41,11 @@
#define V4L2_MXC_ROTATE_90_RIGHT_HFLIP 6
#define V4L2_MXC_ROTATE_90_LEFT 7
+#define V4L2_MXC_CAM_ROTATE_NONE 8
+#define V4L2_MXC_CAM_ROTATE_VERT_FLIP 9
+#define V4L2_MXC_CAM_ROTATE_HORIZ_FLIP 10
+#define V4L2_MXC_CAM_ROTATE_180 11
+
struct v4l2_mxc_offset {
uint32_t u_offset;
uint32_t v_offset;
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index eeeda13b4d53..fd86d753a3ab 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -1021,6 +1021,13 @@ struct v4l2_ext_controls {
struct v4l2_ext_control *controls;
};
+struct v4l2_send_command_control {
+ __u32 id;
+ __u32 value0;
+ __u32 value1;
+ char debug[256];
+};
+
/* Values for ctrl_class field */
#define V4L2_CTRL_CLASS_USER 0x00980000 /* Old-style 'user' controls */
#define V4L2_CTRL_CLASS_MPEG 0x00990000 /* MPEG-compression controls */
@@ -1395,6 +1402,14 @@ enum v4l2_exposure_auto_type {
#define V4L2_CID_IRIS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+17)
#define V4L2_CID_IRIS_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+18)
+#define V4L2_CID_AUTO_EXPOSURE_BIAS (V4L2_CID_CAMERA_CLASS_BASE+19)
+
+/* Backported from Samsung Kernel */
+#define V4L2_CID_AUTO_FOCUS_START (V4L2_CID_CAMERA_CLASS_BASE+28)
+#define V4L2_CID_AUTO_FOCUS_STOP (V4L2_CID_CAMERA_CLASS_BASE+29)
+#define V4L2_CID_AUTO_FOCUS_STATUS (V4L2_CID_CAMERA_CLASS_BASE+30)
+#define V4L2_CID_SEND_COMMAND (V4L2_CID_CAMERA_CLASS_BASE+34)
+
/* FM Modulator class control IDs */
#define V4L2_CID_FM_TX_CLASS_BASE (V4L2_CTRL_CLASS_FM_TX | 0x900)
#define V4L2_CID_FM_TX_CLASS (V4L2_CTRL_CLASS_FM_TX | 1)
@@ -1942,6 +1957,7 @@ struct v4l2_dbg_chip_ident {
#define VIDIOC_DQEVENT _IOR('V', 89, struct v4l2_event)
#define VIDIOC_SUBSCRIBE_EVENT _IOW('V', 90, struct v4l2_event_subscription)
#define VIDIOC_UNSUBSCRIBE_EVENT _IOW('V', 91, struct v4l2_event_subscription)
+#define VIDIOC_SEND_COMMAND _IOWR('V', 92, struct v4l2_send_command_control)
/* Reminder: when adding new ioctls please add support for them to
drivers/media/video/v4l2-compat-ioctl32.c as well! */
diff --git a/include/media/v4l2-int-device.h b/include/media/v4l2-int-device.h
index fbf585561570..f7ebc908cbf8 100644
--- a/include/media/v4l2-int-device.h
+++ b/include/media/v4l2-int-device.h
@@ -186,6 +186,7 @@ enum v4l2_int_ioctl_num {
vidioc_int_querystd_num,
vidioc_int_s_std_num,
vidioc_int_s_video_routing_num,
+ vidioc_int_send_command_num,
/*
*
@@ -290,6 +291,7 @@ V4L2_INT_WRAPPER_1(s_parm, struct v4l2_streamparm, *);
V4L2_INT_WRAPPER_1(querystd, v4l2_std_id, *);
V4L2_INT_WRAPPER_1(s_std, v4l2_std_id, *);
V4L2_INT_WRAPPER_1(s_video_routing, struct v4l2_routing, *);
+V4L2_INT_WRAPPER_1(send_command, struct v4l2_send_command_control, *);
V4L2_INT_WRAPPER_0(dev_init);
V4L2_INT_WRAPPER_0(dev_exit);