1537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/**************************************************************************** 2537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani **************************************************************************** 3537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** 4537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** This header was automatically generated from a Linux kernel header 5537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** of the same name, to make information necessary for userspace to 6537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** call into the kernel available to libc. It contains only constants, 7537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** structures, and macros generated from the original header, and thus, 8537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** contains no copyrightable information. 9537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** 10537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** To edit the content of this header, modify the corresponding 11537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** source file (e.g. under external/kernel-headers/original/) then 12537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** run bionic/libc/kernel/tools/update_all.py 13537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** 14537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** Any manual change here will be lost the next time this script will 15537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** be run. You've been warned! 16537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani *** 17537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani **************************************************************************** 18537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ****************************************************************************/ 19537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#ifndef __LINUX_MSM_CAM_SENSOR_H 20537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define __LINUX_MSM_CAM_SENSOR_H 21537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#ifdef MSM_CAMERA_BIONIC 22537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#include <sys/types.h> 23537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#endif 25537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#include <linux/types.h> 26537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#include <linux/v4l2-mediabus.h> 27537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#include <linux/i2c.h> 28537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define I2C_SEQ_REG_SETTING_MAX 5 30537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define I2C_SEQ_REG_DATA_MAX 20 31537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_CID 16 32537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MSM_SENSOR_MCLK_8HZ 8000000 33537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MSM_SENSOR_MCLK_16HZ 16000000 35537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MSM_SENSOR_MCLK_24HZ 24000000 36537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define GPIO_OUT_LOW (0 << 1) 37537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define GPIO_OUT_HIGH (1 << 1) 38537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_EMBED_DATA 0x12 40537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_RESERVED_DATA_0 0x13 41537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_YUV422_8 0x1E 42537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_RAW8 0x2A 43537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_RAW10 0x2B 45537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_RAW12 0x2C 46537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_DECODE_6BIT 0 47537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_DECODE_8BIT 1 48537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_DECODE_10BIT 2 50537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define CSI_DECODE_DPCM_10_8_10 5 51537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_SENSOR_NAME 32 52537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_ACT_MOD_NAME_SIZE 32 53537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_ACT_NAME_SIZE 32 55537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define NUM_ACTUATOR_DIR 2 56537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_ACTUATOR_SCENARIO 8 57537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_ACTUATOR_REGION 5 58537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_ACTUATOR_INIT_SET 12 60537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_ACTUATOR_REG_TBL_SIZE 8 61537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MOVE_NEAR 0 62537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MOVE_FAR 1 63537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MAX_EEPROM_NAME 32 65537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_camera_i2c_reg_addr_type { 66537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_BYTE_ADDR = 1, 67537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_WORD_ADDR, 68537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_3B_ADDR, 70537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 71537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_camera_i2c_data_type { 72537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_BYTE_DATA = 1, 73537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_WORD_DATA, 75537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_SET_BYTE_MASK, 76537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_UNSET_BYTE_MASK, 77537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_SET_WORD_MASK, 78537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_UNSET_WORD_MASK, 80537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_I2C_SET_BYTE_WRITE_MASK_DATA, 81537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 82537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_sensor_power_seq_type_t { 83537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_CLK, 85537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_GPIO, 86537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_VREG, 87537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_I2C_MUX, 88537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 90537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_sensor_clk_type_t { 91537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_CAM_MCLK, 92537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_CAM_CLK, 93537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_CAM_CLK_MAX, 95537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 96537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_sensor_power_seq_gpio_t { 97537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_GPIO_RESET, 98537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_GPIO_STANDBY, 100b8950166b8e6eb29e0711d2f6d92cad4096a5b36insup.choi SENSOR_GPIO_VANA, 101b8950166b8e6eb29e0711d2f6d92cad4096a5b36insup.choi SENSOR_GPIO_VDIG, 102b8950166b8e6eb29e0711d2f6d92cad4096a5b36insup.choi SENSOR_GPIO_VIO, 103b8950166b8e6eb29e0711d2f6d92cad4096a5b36insup.choi/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104b8950166b8e6eb29e0711d2f6d92cad4096a5b36insup.choi SENSOR_GPIO_VCM, 105d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev SENSOR_GPIO_OIS_LDO_EN, 106d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev SENSOR_GPIO_OIS_RESET, 107537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SENSOR_GPIO_MAX, 108d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 110537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_camera_vreg_name_t { 111537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAM_VDIG, 112537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAM_VIO, 113d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAM_VANA, 115537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAM_VAF, 116537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAM_VREG_MAX, 117537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 118d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_sensor_resolution_t { 120537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_FULL, 121537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_QTR, 122537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_2, 123d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_3, 125537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_4, 126537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_5, 127537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_6, 128d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_RES_7, 130537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_SENSOR_INVALID_RES, 131537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 132537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum sensor_sub_module_t { 133d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_SENSOR, 135537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_CHROMATIX, 136537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_ACTUATOR, 137537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_EEPROM, 138d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_LED_FLASH, 140537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_STROBE_FLASH, 141537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_CSID, 142537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_CSID_3D, 143d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_CSIPHY, 145537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_CSIPHY_3D, 146537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani SUB_MODULE_MAX, 147537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 148d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum csid_cfg_type_t { 150537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CSID_INIT, 151537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CSID_CFG, 152537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CSID_RELEASE, 153d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 155537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum csiphy_cfg_type_t { 156537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CSIPHY_INIT, 157537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CSIPHY_CFG, 158d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CSIPHY_RELEASE, 160537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 161537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum camera_vreg_type { 162537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani REG_LDO, 163d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani REG_VS, 165537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani REG_GPIO, 166537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 167537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_sensor_power_setting { 168d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_sensor_power_seq_type_t seq_type; 170537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t seq_val; 171537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani long config_val; 172537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t delay; 173d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani void *data[10]; 175537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 176537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_sensor_power_setting_array { 177537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_sensor_power_setting *power_setting; 178d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t size; 180537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 181537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_sensor_id_info_t { 182537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t sensor_id_reg_addr; 183d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t sensor_id; 185537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 186537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_sensor_slave_info { 187537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t slave_addr; 188d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_camera_i2c_reg_addr_type addr_type; 190537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_sensor_id_info_t sensor_id_info; 191537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_sensor_power_setting_array power_setting_array; 192537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 193d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_i2c_reg_array { 195537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_addr; 196537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_data; 197537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 198d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_i2c_reg_setting { 200537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_i2c_reg_array *reg_setting; 201537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t size; 202537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_camera_i2c_reg_addr_type addr_type; 203d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_camera_i2c_data_type data_type; 205537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t delay; 206537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 207537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_i2c_seq_reg_array { 208d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_addr; 210537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t reg_data[I2C_SEQ_REG_DATA_MAX]; 211537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_data_size; 212537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 213d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_i2c_seq_reg_setting { 215537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_i2c_seq_reg_array *reg_setting; 216537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t size; 217537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_camera_i2c_reg_addr_type addr_type; 218d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t delay; 220537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 221a8dacd55667c4b495110f04338067794a6d50ee2Devin Kimstruct msm_camera_i2c_array_write_config { 222a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim struct msm_camera_i2c_reg_setting conf_array; 223d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim uint16_t slave_addr; 225a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim}; 226a8dacd55667c4b495110f04338067794a6d50ee2Devin Kimstruct msm_camera_i2c_read_config { 227a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim uint16_t slave_addr; 228d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim uint16_t reg_addr; 230a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim enum msm_camera_i2c_data_type data_type; 231a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim uint16_t *data; 232a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim}; 233d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 234537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_csid_vc_cfg { 235537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t cid; 236537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t dt; 237537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t decode_format; 238d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 239537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 240537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_csid_lut_params { 241537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t num_cid; 242537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csid_vc_cfg *vc_cfg[MAX_CID]; 243d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 245537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_csid_params { 246537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t lane_cnt; 247537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t lane_assign; 248d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 249537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t phy_sel; 250537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csid_lut_params lut_params; 251537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 252537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_csiphy_params { 253d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 254537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t lane_cnt; 255537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t settle_cnt; 256537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t lane_mask; 257537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t combo_mode; 258d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 259537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t csid_core; 260537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 261537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_csi2_params { 262537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csid_params csid_params; 263d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 264537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csiphy_params csiphy_params; 265537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 266537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_camera_csi_lane_params { 267537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t csi_lane_assign; 268d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 269537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t csi_lane_mask; 270537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 271537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct csi_lane_params_t { 272537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t csi_lane_assign; 273d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 274537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t csi_lane_mask; 275537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t csi_if; 276537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t csid_core[2]; 277537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t csi_phy_sel; 278d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 279537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 280537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_sensor_info_t { 281537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani char sensor_name[MAX_SENSOR_NAME]; 282537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int32_t session_id; 283d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 284537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int32_t subdev_id[SUB_MODULE_MAX]; 285537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 286d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchevstruct msm_sensor_ois_info_t { 287d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev char ois_provider[MAX_SENSOR_NAME]; 288d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 289d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev int16_t gyro[2]; 290d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev int16_t target[2]; 291d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev int16_t hall[2]; 292d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint8_t is_stable; 293d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 294d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 295d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchevenum ois_mode_t { 296d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_MODE_PREVIEW_CAPTURE, 297d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_MODE_VIDEO, 298a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 299d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_MODE_CAPTURE, 300d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_MODE_CENTERING_ONLY, 301d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_MODE_CENTERING_OFF 302d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 303d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 304d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchevenum ois_ver_t { 305d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_VER_RELEASE, 306d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_VER_CALIBRATION, 307d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev OIS_VER_DEBUG 308d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 309d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 310537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct camera_vreg_t { 311537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani const char *reg_name; 312537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum camera_vreg_type type; 313a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 314d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev int min_voltage; 315537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int max_voltage; 316537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int op_mode; 317537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t delay; 318a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 319d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 320537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum camb_position_t { 321537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani BACK_CAMERA_B, 322537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani FRONT_CAMERA_B, 323a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 324d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 325537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum camerab_mode_t { 326537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAMERA_MODE_2D_B = (1<<0), 327537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CAMERA_MODE_3D_B = (1<<1) 328a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 329d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 330537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_sensor_init_params { 331537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int modes_supported; 332537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum camb_position_t position; 333a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 334d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint32_t sensor_mount_angle; 335d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev int ois_supported; 336537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 337537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct sensorb_cfg_data { 338d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 339537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int cfgtype; 340537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani union { 341537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_sensor_info_t sensor_info; 342537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_sensor_init_params sensor_init_params; 343d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 344d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev struct msm_sensor_ois_info_t ois_info; 345537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani void *setting; 346537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani } cfg; 347537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 348d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 349537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct csid_cfg_data { 350537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum csid_cfg_type_t cfgtype; 351537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani union { 352537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t csid_version; 353d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 354537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csid_params *csid_params; 355537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani } cfg; 356537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 357537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct csiphy_cfg_data { 358d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 359537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum csiphy_cfg_type_t cfgtype; 360537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani union { 361537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csiphy_params *csiphy_params; 362537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_camera_csi_lane_params *csi_lane_params; 363d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 364537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani } cfg; 365537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 366537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum eeprom_cfg_type_t { 36792b8da1af686c72bde47254e7fcd4b17e39be634Ajay Dudani CFG_EEPROM_GET_INFO, 368d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 36992b8da1af686c72bde47254e7fcd4b17e39be634Ajay Dudani CFG_EEPROM_GET_CAL_DATA, 37092b8da1af686c72bde47254e7fcd4b17e39be634Ajay Dudani CFG_EEPROM_READ_CAL_DATA, 371537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_EEPROM_WRITE_DATA, 372537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 373d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 374537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct eeprom_get_t { 375537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t num_bytes; 376537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 377537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct eeprom_read_t { 378d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 379537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t *dbuffer; 380537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t num_bytes; 381537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 382537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct eeprom_write_t { 383d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 384537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t *dbuffer; 385537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t num_bytes; 386537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 387537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_eeprom_cfg_data { 388d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 389537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum eeprom_cfg_type_t cfgtype; 390537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t is_supported; 391537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani union { 392537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani char eeprom_name[MAX_SENSOR_NAME]; 393d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 394537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct eeprom_get_t get_data; 395537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct eeprom_read_t read_data; 396537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct eeprom_write_t write_data; 397537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani } cfg; 398d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 399537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 400537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_sensor_cfg_type_t { 401537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_SLAVE_INFO, 402a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim CFG_SLAVE_READ_I2C, 403d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 404537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_WRITE_I2C_ARRAY, 405a8dacd55667c4b495110f04338067794a6d50ee2Devin Kim CFG_SLAVE_WRITE_I2C_ARRAY, 406537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_WRITE_I2C_SEQ_ARRAY, 407537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_POWER_UP, 408d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 409537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_POWER_DOWN, 410537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_STOP_STREAM_SETTING, 411537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_GET_SENSOR_INFO, 412537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_GET_SENSOR_INIT_PARAMS, 413d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 414537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_INIT_SETTING, 415537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_RESOLUTION, 416537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_STOP_STREAM, 417537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_START_STREAM, 418d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 419d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev CFG_OIS_ON, 420d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev CFG_OIS_OFF, 421d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev CFG_GET_OIS_INFO, 422d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev CFG_SET_OIS_MODE, 423d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 424d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev CFG_OIS_MOVE_LENS 425537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 426537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_actuator_cfg_type_t { 427537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_GET_ACTUATOR_INFO, 428537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 429537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_ACTUATOR_INFO, 430537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_SET_DEFAULT_FOCUS, 431537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani CFG_MOVE_FOCUS, 432537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 433537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 434537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum actuator_type { 435537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_VCM, 436537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_PIEZO, 437537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 438537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 439537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_actuator_data_type { 440537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_ACTUATOR_BYTE_DATA = 1, 441537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_ACTUATOR_WORD_DATA, 442537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 443537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 444537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_actuator_addr_type { 445537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_ACTUATOR_BYTE_ADDR = 1, 446537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_ACTUATOR_WORD_ADDR, 447537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 448537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 449537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct reg_settings_t { 450537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_addr; 451537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_data; 452537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 453537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 454537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct region_params_t { 455537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t step_bound[2]; 456537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t code_per_step; 457537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 458537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 459537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct damping_params_t { 460537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t damping_step; 461537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t damping_delay; 462537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t hw_params; 463537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 464537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 465537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_actuator_move_params_t { 466537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int8_t dir; 467537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int8_t sign_dir; 468537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 469537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int16_t dest_step_pos; 470537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int32_t num_steps; 471d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev int32_t num_steps_inf_pos; 472537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct damping_params_t *ringing_params; 473537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 474d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 475537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_actuator_tuning_params_t { 476537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int16_t initial_code; 477537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t pwd_step; 478537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 479d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint16_t region_size; 480537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t total_steps; 481537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct region_params_t *region_params; 482537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 483537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 484d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchevstruct msm_actuator_params_t { 485537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum actuator_type act_type; 486537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t reg_tbl_size; 487537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t data_size; 488537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 489d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint16_t init_setting_size; 490537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t i2c_addr; 491537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_actuator_addr_type i2c_addr_type; 492537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_actuator_data_type i2c_data_type; 493537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 494d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev struct msm_actuator_reg_params_t *reg_tbl_params; 495537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct reg_settings_t *init_settings; 496537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 497537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_actuator_set_info_t { 498537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 499d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev struct msm_actuator_params_t actuator_params; 500537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_actuator_tuning_params_t af_tuning_params; 501537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 502537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_actuator_get_info_t { 503537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 504d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint32_t focal_length_num; 505537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t focal_length_den; 506537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t f_number_num; 507537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t f_number_den; 508537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 509d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint32_t f_pix_num; 510537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t f_pix_den; 511537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t total_f_dist_num; 512537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t total_f_dist_den; 513537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 514d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint32_t hor_view_angle_num; 515537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t hor_view_angle_den; 516537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t ver_view_angle_num; 517537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint32_t ver_view_angle_den; 518537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 519d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 520537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum af_camera_name { 521537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_MAIN_CAM_0, 522537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_MAIN_CAM_1, 523537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 524d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev ACTUATOR_MAIN_CAM_2, 525537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_MAIN_CAM_3, 526537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_MAIN_CAM_4, 527537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_MAIN_CAM_5, 528537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 529d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev ACTUATOR_WEB_CAM_0, 530537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_WEB_CAM_1, 531537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani ACTUATOR_WEB_CAM_2, 532537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 533537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 534d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchevstruct msm_actuator_cfg_data { 535537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani int cfgtype; 536537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint8_t is_af_supported; 537537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani union { 538537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 539d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev struct msm_actuator_move_params_t move; 540537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_actuator_set_info_t set_info; 541537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani struct msm_actuator_get_info_t get_info; 542537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum af_camera_name cam_name; 543537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 544d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev } cfg; 545537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 546537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_actuator_write_type { 547537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_ACTUATOR_WRITE_HW_DAMP, 548537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 549d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev MSM_ACTUATOR_WRITE_DAC, 550537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 551537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanistruct msm_actuator_reg_params_t { 552537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_actuator_write_type reg_write_type; 553537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 554d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev uint32_t hw_mask; 555537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t reg_addr; 556537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t hw_shift; 557537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani uint16_t data_shift; 558537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 559d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev}; 560537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudanienum msm_camera_led_config_t { 561537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_LED_OFF, 562537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_LED_LOW, 563537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 564d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev MSM_CAMERA_LED_HIGH, 565537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_LED_INIT, 566537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani MSM_CAMERA_LED_RELEASE, 567537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 568537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 569d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchevstruct msm_camera_led_cfg_t { 570537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani enum msm_camera_led_config_t cfgtype; 571537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani}; 572537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define VIDIOC_MSM_SENSOR_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct sensorb_cfg_data) 573537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 574d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev#define VIDIOC_MSM_SENSOR_RELEASE _IO('V', BASE_VIDIOC_PRIVATE + 2) 575537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define VIDIOC_MSM_SENSOR_GET_SUBDEV_ID _IOWR('V', BASE_VIDIOC_PRIVATE + 3, uint32_t) 576537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define VIDIOC_MSM_CSIPHY_IO_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct csid_cfg_data) 577537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define VIDIOC_MSM_CSID_IO_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct csiphy_cfg_data) 578537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 579d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev#define VIDIOC_MSM_ACTUATOR_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct msm_actuator_cfg_data) 580537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define VIDIOC_MSM_FLASH_LED_DATA_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 7, struct msm_camera_led_cfg_t) 581537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define VIDIOC_MSM_EEPROM_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 8, struct msm_eeprom_cfg_data) 582537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani#define MSM_V4L2_PIX_FMT_META v4l2_fourcc('M', 'E', 'T', 'A') 583537a84edd4d8369012dbe56730096d1eb3e0401dAjay Dudani/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 584d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev#endif 585d1d83fe741fda73cc77dca3112b8e2c1034ba98dIliyan Malchev 586