diff options
author | Vivek Veenam <vveenam@codeaurora.org> | 2016-06-27 16:50:33 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-09-16 10:29:29 -0700 |
commit | 3951ec5f08ca7e620c897a91559acfb1c8e2befa (patch) | |
tree | 1006096f66f454d13b79de5b14cc76816ad0fc28 /include/uapi/media | |
parent | 1dc1147122c7370f924bec6758b3dc425cbd4701 (diff) |
msm: camera: Add a driver to control IR CUT device
This driver is able to control a IR CUT device. The interface to
user space is:
CFG_IR_CUT_INIT
CFG_IR_CUT_OFF
CFG_IR_CUT_ON
CFG_IR_CUT_RELEASE
Change-Id: I30d1c4e6c40b8e58a70f06db9e05231b4c7f676f
Signed-off-by: Vivek Veenam <vveenam@codeaurora.org>
Diffstat (limited to 'include/uapi/media')
-rw-r--r-- | include/uapi/media/msm_cam_sensor.h | 7 | ||||
-rw-r--r-- | include/uapi/media/msm_camsensor_sdk.h | 20 | ||||
-rw-r--r-- | include/uapi/media/msmb_camera.h | 3 |
3 files changed, 29 insertions, 1 deletions
diff --git a/include/uapi/media/msm_cam_sensor.h b/include/uapi/media/msm_cam_sensor.h index c4ee5a119cc1..4302497da245 100644 --- a/include/uapi/media/msm_cam_sensor.h +++ b/include/uapi/media/msm_cam_sensor.h @@ -295,6 +295,10 @@ struct msm_ir_led_cfg_data_t { int32_t pwm_period_ns; }; +struct msm_ir_cut_cfg_data_t { + enum msm_ir_cut_cfg_type_t cfg_type; +}; + struct msm_eeprom_cfg_data { enum eeprom_cfg_type_t cfgtype; uint8_t is_supported; @@ -607,5 +611,8 @@ struct sensor_init_cfg_data { #define VIDIOC_MSM_IR_LED_CFG \ _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_ir_led_cfg_data_t) +#define VIDIOC_MSM_IR_CUT_CFG \ + _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_ir_cut_cfg_data_t) + #endif diff --git a/include/uapi/media/msm_camsensor_sdk.h b/include/uapi/media/msm_camsensor_sdk.h index fb33c871f784..ad0825e33217 100644 --- a/include/uapi/media/msm_camsensor_sdk.h +++ b/include/uapi/media/msm_camsensor_sdk.h @@ -114,6 +114,15 @@ enum msm_sensor_power_seq_gpio_t { SENSOR_GPIO_MAX, }; +enum msm_ir_cut_filter_gpio_t { + IR_CUT_FILTER_GPIO_P = 0, + IR_CUT_FILTER_GPIO_M, + IR_CUT_FILTER_GPIO_MAX, +}; +#define IR_CUT_FILTER_GPIO_P IR_CUT_FILTER_GPIO_P +#define IR_CUT_FILTER_GPIO_M IR_CUT_FILTER_GPIO_M +#define R_CUT_FILTER_GPIO_MAX IR_CUT_FILTER_GPIO_MAX + enum msm_camera_vreg_name_t { CAM_VDIG, CAM_VIO, @@ -193,6 +202,17 @@ enum msm_ir_led_cfg_type_t { #define CFG_IR_LED_OFF CFG_IR_LED_OFF #define CFG_IR_LED_ON CFG_IR_LED_ON +enum msm_ir_cut_cfg_type_t { + CFG_IR_CUT_INIT = 0, + CFG_IR_CUT_RELEASE, + CFG_IR_CUT_OFF, + CFG_IR_CUT_ON, +}; +#define CFG_IR_CUT_INIT CFG_IR_CUT_INIT +#define CFG_IR_CUT_RELEASE CFG_IR_CUT_RELEASE +#define CFG_IR_CUT_OFF CFG_IR_CUT_OFF +#define CFG_IR_CUT_ON CFG_IR_CUT_ON + enum msm_sensor_output_format_t { MSM_SENSOR_BAYER, MSM_SENSOR_YCBCR, diff --git a/include/uapi/media/msmb_camera.h b/include/uapi/media/msmb_camera.h index cd8e065318bb..071331ef6882 100644 --- a/include/uapi/media/msmb_camera.h +++ b/include/uapi/media/msmb_camera.h @@ -49,7 +49,8 @@ #define MSM_CAMERA_SUBDEV_OIS 15 #define MSM_CAMERA_SUBDEV_FLASH 16 #define MSM_CAMERA_SUBDEV_IR_LED 17 -#define MSM_CAMERA_SUBDEV_EXT 18 +#define MSM_CAMERA_SUBDEV_IR_CUT 18 +#define MSM_CAMERA_SUBDEV_EXT 19 #define MSM_MAX_CAMERA_SENSORS 5 |