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