diff options
author | Sureshnaidu Laveti <lsuresh@codeaurora.org> | 2016-04-27 17:25:11 -0700 |
---|---|---|
committer | Kyle Yan <kyan@codeaurora.org> | 2016-06-14 14:45:00 -0700 |
commit | f0c5be8a96d56845c9ad2ef04f348195d4611827 (patch) | |
tree | 616aeff02d1146ea66500a67696d01e07c603c0a /include/uapi | |
parent | 4e9f522a76cf1a109dd1cbfa02eef13d4a27d46e (diff) |
msm: sensor: Add support for downloading OIS coefficient and framework
Add OIS framework and coefficient download in OIS driver.
Change-Id: Iff8e1c0367d13bb0d89946d81fb79427b6ef070e
Signed-off-by: Sureshnaidu Laveti <lsuresh@codeaurora.org>
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/media/msm_cam_sensor.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/include/uapi/media/msm_cam_sensor.h b/include/uapi/media/msm_cam_sensor.h index d83e00876fd5..5d340b9a2523 100644 --- a/include/uapi/media/msm_cam_sensor.h +++ b/include/uapi/media/msm_cam_sensor.h @@ -342,6 +342,13 @@ enum msm_actuator_cfg_type_t { CFG_ACTUATOR_INIT, }; +struct msm_ois_opcode { + uint32_t prog; + uint32_t coeff; + uint32_t pheripheral; + uint32_t memory; +}; + enum msm_ois_cfg_type_t { CFG_OIS_INIT, CFG_OIS_POWERDOWN, @@ -350,6 +357,11 @@ enum msm_ois_cfg_type_t { CFG_OIS_I2C_WRITE_SEQ_TABLE, }; +enum msm_ois_cfg_download_type_t { + CFG_OIS_DOWNLOAD, + CFG_OIS_DATA_CONFIG, +}; + enum msm_ois_i2c_operation { MSM_OIS_WRITE = 0, MSM_OIS_POLL, @@ -448,6 +460,11 @@ enum af_camera_name { ACTUATOR_WEB_CAM_2, }; +struct msm_ois_slave_info { + char ois_name[MAX_OIS_NAME_SIZE]; + uint32_t i2c_addr; + struct msm_ois_opcode opcode; +}; struct msm_ois_cfg_data { int cfgtype; union { @@ -456,6 +473,11 @@ struct msm_ois_cfg_data { } cfg; }; +struct msm_ois_cfg_download_data { + int cfgtype; + struct msm_ois_slave_info slave_info; +}; + struct msm_actuator_set_position_t { uint16_t number_of_steps; uint32_t hw_params; @@ -560,5 +582,8 @@ struct sensor_init_cfg_data { #define VIDIOC_MSM_FLASH_CFG \ _IOWR('V', BASE_VIDIOC_PRIVATE + 13, struct msm_flash_cfg_data_t) +#define VIDIOC_MSM_OIS_CFG_DOWNLOAD \ + _IOWR('V', BASE_VIDIOC_PRIVATE + 14, struct msm_ois_cfg_download_data) + #endif |