summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEric Nelson <eric.nelson@boundarydevices.com>2013-05-14 16:29:23 -0700
committerTroy Kisky <troy.kisky@boundarydevices.com>2014-04-24 18:59:16 -0700
commit4aa74bbb934d3f299d4a2fe1c73c99b1d5afcfee (patch)
tree6e9c6bc62f9d47552c6954798e132a24acc172dc /include
parent78c2dd59e44d0c54d1704b336ab52392e1e8f128 (diff)
Raybiz auto-focus V3
Diffstat (limited to 'include')
-rw-r--r--include/media/v4l2-int-device.h2
-rw-r--r--include/uapi/linux/mxc_v4l2.h5
-rw-r--r--include/uapi/linux/v4l2-controls.h8
-rw-r--r--include/uapi/linux/videodev2.h9
4 files changed, 24 insertions, 0 deletions
diff --git a/include/media/v4l2-int-device.h b/include/media/v4l2-int-device.h
index e6aa2318367b..8d18a5d55866 100644
--- a/include/media/v4l2-int-device.h
+++ b/include/media/v4l2-int-device.h
@@ -187,6 +187,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,
/*
*
@@ -291,6 +292,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);
diff --git a/include/uapi/linux/mxc_v4l2.h b/include/uapi/linux/mxc_v4l2.h
index 49345fea15ec..248d67643042 100644
--- a/include/uapi/linux/mxc_v4l2.h
+++ b/include/uapi/linux/mxc_v4l2.h
@@ -48,6 +48,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/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
index 69bd5bb0d5af..aabd2413d68e 100644
--- a/include/uapi/linux/v4l2-controls.h
+++ b/include/uapi/linux/v4l2-controls.h
@@ -630,6 +630,14 @@ enum v4l2_exposure_auto_type {
#define V4L2_CID_AUTO_EXPOSURE_BIAS (V4L2_CID_CAMERA_CLASS_BASE+19)
#define V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE (V4L2_CID_CAMERA_CLASS_BASE+20)
+
+/* 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)
+
+
enum v4l2_auto_n_preset_white_balance {
V4L2_WHITE_BALANCE_MANUAL = 0,
V4L2_WHITE_BALANCE_AUTO = 1,
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
index f40b41c7e108..8e590e11ee95 100644
--- a/include/uapi/linux/videodev2.h
+++ b/include/uapi/linux/videodev2.h
@@ -1227,6 +1227,13 @@ struct v4l2_ext_controls {
struct v4l2_ext_control *controls;
};
+struct v4l2_send_command_control {
+ __u32 id;
+ __u32 value0;
+ __u32 value1;
+ char debug[256];
+};
+
#define V4L2_CTRL_ID_MASK (0x0fffffff)
#define V4L2_CTRL_ID2CLASS(id) ((id) & 0x0fff0000UL)
#define V4L2_CTRL_DRIVER_PRIV(id) (((id) & 0xffff) >= 0x1000)
@@ -1957,6 +1964,8 @@ struct v4l2_create_buffers {
Never use these in applications! */
#define VIDIOC_DBG_G_CHIP_INFO _IOWR('V', 102, struct v4l2_dbg_chip_info)
+#define VIDIOC_SEND_COMMAND _IOWR('V', 103, 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! */