1db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/****************************************************************************
2db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ****************************************************************************
3db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***
4db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   This header was automatically generated from a Linux kernel header
5db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   of the same name, to make information necessary for userspace to
6db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   call into the kernel available to libc.  It contains only constants,
7db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   structures, and macros generated from the original header, and thus,
8db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   contains no copyrightable information.
9db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***
10db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   To edit the content of this header, modify the corresponding
11db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   source file (e.g. under external/kernel-headers/original/) then
12db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   run bionic/libc/kernel/tools/update_all.py
13db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***
14db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   Any manual change here will be lost the next time this script will
15db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***   be run. You've been warned!
16db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ***
17db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ****************************************************************************
18db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann ****************************************************************************/
19c15a6b003394494149ef7d65ae35c38755cb8b93Jiyoung Shin#ifndef FIMC_IS_METADATA_H_
20c15a6b003394494149ef7d65ae35c38755cb8b93Jiyoung Shin#define FIMC_IS_METADATA_H_
2113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct rational {
22db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t num;
23db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t den;
25db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
26db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann#define CAMERA2_MAX_AVAILABLE_MODE 21
27db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann#define CAMERA2_MAX_FACES 16
28db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann#define CAMERA2_FACE_DETECTION_THRESHOLD 35
3013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum metadata_mode {
31db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann METADATA_MODE_NONE,
32db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann METADATA_MODE_FULL
33db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
3413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
3513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_request_ctl {
36db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t id;
37db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum metadata_mode metadataMode;
38db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t outputStreams[16];
40db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t frameCount;
4113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
4213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_request_dm {
43db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t id;
45db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum metadata_mode metadataMode;
46db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t frameCount;
47db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
48db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum optical_stabilization_mode {
50db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann OPTICAL_STABILIZATION_MODE_OFF,
51db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann OPTICAL_STABILIZATION_MODE_ON
5213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
53db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum lens_facing {
55db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann LENS_FACING_BACK,
56db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann LENS_FACING_FRONT
5713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
58db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
5913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_lens_ctl {
60db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t focusDistance;
61db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float aperture;
62db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float focalLength;
63db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float filterDensity;
65db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum optical_stabilization_mode opticalStabilizationMode;
66db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
6713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_lens_dm {
68db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t focusDistance;
70db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float aperture;
71db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float focalLength;
72db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float filterDensity;
73db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum optical_stabilization_mode opticalStabilizationMode;
75db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float focusRange[2];
76db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
7713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_lens_sm {
78db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float minimumFocusDistance;
80db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float hyperfocalDistance;
81db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float availableFocalLength[2];
82db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float availableApertures;
83db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float availableFilterDensities;
85db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum optical_stabilization_mode availableOpticalStabilization;
86db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t shadingMapSize;
87db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float shadingMap[3][40][30];
88db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t geometricCorrectionMapSize;
90db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float geometricCorrectionMap[2][3][40][30];
91db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum lens_facing facing;
92db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float position[2];
93db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
9413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
95db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmannenum sensor_colorfilterarrangement {
96db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_COLORFILTERARRANGEMENT_RGGB,
97db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_COLORFILTERARRANGEMENT_GRBG,
98db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_COLORFILTERARRANGEMENT_GBRG,
100db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_COLORFILTERARRANGEMENT_BGGR,
101db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_COLORFILTERARRANGEMENT_RGB
102db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
103db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
10413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum sensor_ref_illuminant {
105db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_DAYLIGHT = 1,
106db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_FLUORESCENT = 2,
107db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_TUNGSTEN = 3,
108db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_FLASH = 4,
110db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_FINE_WEATHER = 9,
111db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_CLOUDY_WEATHER = 10,
112db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_SHADE = 11,
113db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_DAYLIGHT_FLUORESCENT = 12,
115db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_DAY_WHITE_FLUORESCENT = 13,
116db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_COOL_WHITE_FLUORESCENT = 14,
117db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_WHITE_FLUORESCENT = 15,
118db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_STANDARD_A = 17,
120db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_STANDARD_B = 18,
121db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_STANDARD_C = 19,
122db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_D55 = 20,
123db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_D65 = 21,
125db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_D75 = 22,
126db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_D50 = 23,
127db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SENSOR_ILLUMINANT_ISO_STUDIO_TUNGSTEN = 24
128db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
13013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_sensor_ctl {
131db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t exposureTime;
132db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t frameDuration;
133db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t sensitivity;
135db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
13613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_sensor_dm {
137db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t exposureTime;
138db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t frameDuration;
140db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t sensitivity;
141db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t timeStamp;
14213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
143db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
14413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_sensor_sm {
145db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t exposureTimeRange[2];
146db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxFrameDuration;
147db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t availableSensitivities[10];
148db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum sensor_colorfilterarrangement colorFilterArrangement;
150db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float physicalSize[2];
151db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t pixelArraySize[2];
152db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t activeArraySize[4];
153db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t whiteLevel;
155db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t blackLevelPattern[4];
156db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational colorTransform1[9];
157db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational colorTransform2[9];
158db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum sensor_ref_illuminant referenceIlluminant1;
160db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum sensor_ref_illuminant referenceIlluminant2;
161db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational forwardMatrix1[9];
162db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational forwardMatrix2[9];
163db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational calibrationTransform1[9];
165db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational calibrationTransform2[9];
166db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational baseGainFactor;
167db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxAnalogSensitivity;
168db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float noiseModelCoefficients[2];
170db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t orientation;
171db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
17213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum flash_mode {
173db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann CAM2_FLASH_MODE_NOP = 0,
175db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann CAM2_FLASH_MODE_OFF = 1,
176db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann CAM2_FLASH_MODE_SINGLE,
177db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann CAM2_FLASH_MODE_TORCH,
178db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann CAM2_FLASH_MODE_BEST
18013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
18113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_flash_ctl {
182db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum flash_mode flashMode;
183db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t firingPower;
185db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t firingTime;
18613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
18713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_flash_dm {
188db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum flash_mode flashMode;
190db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t firingPower;
191db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t firingTime;
192db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t firingStable;
193db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t decision;
195db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
19613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_flash_sm {
197db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t available;
198db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t chargeDuration;
20013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
2019dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangenum processing_mode {
202db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann PROCESSING_MODE_OFF = 1,
203db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann PROCESSING_MODE_FAST,
205db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann PROCESSING_MODE_HIGH_QUALITY
20613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
20713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_hotpixel_ctl {
208db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
21013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
21113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_hotpixel_dm {
212db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
213db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
21413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
21513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_demosaic_ctl {
216db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
21713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
218db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
21913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_demosaic_dm {
220db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
22113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
22213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_noisereduction_ctl {
223db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
225db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t strength;
22613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
22713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_noisereduction_dm {
228db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
230db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t strength;
231db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
23213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_shading_ctl {
233db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
23513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
23613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_shading_dm {
237db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
238db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
23913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
24013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_geometric_ctl {
241db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
24213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
243db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_geometric_dm {
245db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
24613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
24713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum colorcorrection_mode {
248db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_FAST = 1,
250db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_HIGH_QUALITY,
251db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_TRANSFORM_MATRIX,
252db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_MONO,
253db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_NEGATIVE,
255db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_SOLARIZE,
256db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_SEPIA,
257db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_POSTERIZE,
258db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_WHITEBOARD,
260db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_BLACKBOARD,
261db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann COLORCORRECTION_MODE_EFFECT_AQUA
262db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
263db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
26413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_colorcorrection_ctl {
265db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum colorcorrection_mode mode;
266db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float transform[9];
267db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t hue;
268db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t saturation;
270db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t brightness;
27113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
27213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_colorcorrection_dm {
273db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum colorcorrection_mode mode;
275db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float transform[9];
276db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t hue;
277db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t saturation;
278db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t brightness;
28013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
281ad37861e56882dcb5fa42beb9dba60637d6e3c0fSungjoong Kangstruct camera2_colorcorrection_sm {
282db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t availableModes[CAMERA2_MAX_AVAILABLE_MODE];
283db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t hueRange[2];
285db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t saturationRange[2];
286db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t brightnessRange[2];
287db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
288db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
28913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum tonemap_mode {
290db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann TONEMAP_MODE_FAST = 1,
291db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann TONEMAP_MODE_HIGH_QUALITY,
292db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann TONEMAP_MODE_CONTRAST_CURVE
293db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
29513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_tonemap_ctl {
296db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum tonemap_mode mode;
297db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float curveRed[64];
298db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float curveGreen[64];
300db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float curveBlue[64];
30113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
30213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_tonemap_dm {
303db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum tonemap_mode mode;
305db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float curveRed[64];
306db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float curveGreen[64];
307db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann float curveBlue[64];
308db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
30913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
31013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_tonemap_sm {
311db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxCurvePoints;
31213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
313db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
31413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_edge_ctl {
315db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
316db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t strength;
31713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
318db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
31913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_edge_dm {
320db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum processing_mode mode;
321db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t strength;
322db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
323db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
32413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum scaler_availableformats {
325db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SCALER_FORMAT_BAYER_RAW,
326db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SCALER_FORMAT_YV12,
327db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SCALER_FORMAT_NV21,
328db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SCALER_FORMAT_JPEG,
330db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann SCALER_FORMAT_UNKNOWN
33113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
33213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_scaler_ctl {
333db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t cropRegion[3];
33513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
33613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_scaler_dm {
337db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t cropRegion[3];
338db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
33913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
34013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_scaler_sm {
341db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum scaler_availableformats availableFormats[4];
342db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t availableRawSizes;
343db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t availableRawMinDurations;
345db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t availableProcessedSizes[8];
346db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t availableProcessedMinDurations[8];
347db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t availableJpegSizes[8][2];
348db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t availableJpegMinDurations[8];
350db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t availableMaxDigitalZoom[8];
351db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
35213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_jpeg_ctl {
353db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t quality;
355db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t thumbnailSize[2];
356db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t thumbnailQuality;
357db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann double gpsCoordinates[3];
358db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t gpsProcessingMethod;
360db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t gpsTimestamp;
361db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t orientation;
362db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
363db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
36413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_jpeg_dm {
365db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t quality;
366db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t thumbnailSize[2];
367db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t thumbnailQuality;
368db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann double gpsCoordinates[3];
370db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t gpsProcessingMethod;
371db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t gpsTimestamp;
372db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t orientation;
373db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
37513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_jpeg_sm {
376db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t availableThumbnailSizes[8][2];
377db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxSize;
378db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
38013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum facedetect_mode {
381db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann FACEDETECT_MODE_OFF = 1,
382db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann FACEDETECT_MODE_SIMPLE,
383db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann FACEDETECT_MODE_FULL
38513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
3869dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangenum stats_mode {
387db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann STATS_MODE_OFF = 1,
388db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
389db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann STATS_MODE_ON
39013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
39113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_stats_ctl {
392db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum facedetect_mode faceDetectMode;
393db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum stats_mode histogramMode;
395db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum stats_mode sharpnessMapMode;
39613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
39713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_stats_dm {
398db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum facedetect_mode faceDetectMode;
400db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t faceRectangles[CAMERA2_MAX_FACES][4];
401db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t faceScores[CAMERA2_MAX_FACES];
402db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t faceLandmarks[CAMERA2_MAX_FACES][6];
403db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t faceIds[CAMERA2_MAX_FACES];
405db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum stats_mode histogramMode;
406db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t histogram[3 * 256];
407db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum stats_mode sharpnessMapMode;
408db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
409db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
4109dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangstruct camera2_stats_sm {
411db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t availableFaceDetectModes[CAMERA2_MAX_AVAILABLE_MODE];
412db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxFaceCount;
413db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t histogramBucketCount;
415db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxHistogramCount;
416db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t sharpnessMapSize[2];
417db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxSharpnessMapValue;
418db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
419db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
4209dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangenum aa_capture_intent {
421db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CAPTURE_INTENT_CUSTOM = 0,
422db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CAPTURE_INTENT_PREVIEW,
423db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CAPTURE_INTENT_STILL_CAPTURE,
425db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CAPTURE_INTENT_VIDEO_RECORD,
426db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CAPTURE_INTENT_VIDEO_SNAPSHOT,
427db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CAPTURE_INTENT_ZERO_SHUTTER_LAG
428db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
429db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
43013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum aa_mode {
431db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CONTROL_NONE = 0,
432db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CONTROL_OFF,
433db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
434db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CONTROL_AUTO,
435db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_CONTROL_USE_SCENE_MODE
4369dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kang};
4379dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangenum aa_scene_mode {
438db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
439db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_UNSUPPORTED = 1,
440db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_FACE_PRIORITY,
441db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_ACTION,
442db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_PORTRAIT,
443db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
444db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_LANDSCAPE,
445db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_NIGHT,
446db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_NIGHT_PORTRAIT,
447db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_THEATRE,
448db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
449db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_BEACH,
450db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_SNOW,
451db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_SUNSET,
452db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_STEADYPHOTO,
453db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
454db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_FIREWORKS,
455db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_SPORTS,
456db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_PARTY,
457db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_CANDLELIGHT,
458db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_BARCODE,
460db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_NIGHT_CAPTURE,
461db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_SCENE_MODE_MAX
462db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
463db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
4649dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangenum aa_effect_mode {
465db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_OFF = 1,
466db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_MONO,
467db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_NEGATIVE,
468db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
469db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_SOLARIZE,
470db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_SEPIA,
471db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_POSTERIZE,
472db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_WHITEBOARD,
473db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
474db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_BLACKBOARD,
475db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_EFFECT_AQUA
476db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
47713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum aa_aemode {
478db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
479db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AEMODE_OFF = 1,
480db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AEMODE_LOCKED,
481db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AEMODE_ON,
482db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AEMODE_ON_AUTO_FLASH,
483db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
484db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AEMODE_ON_ALWAYS_FLASH,
485db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AEMODE_ON_AUTO_FLASH_REDEYE
486db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
487ad37861e56882dcb5fa42beb9dba60637d6e3c0fSungjoong Kangenum aa_ae_flashmode {
488db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
489db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_FLASHMODE_NOP = 0,
490db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_FLASHMODE_OFF = 1,
491db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_FLASHMODE_ON,
492db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_FLASHMODE_AUTO,
493db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
494db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_FLASHMODE_CAPTURE,
495db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_FLASHMODE_ON_ALWAYS
496db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
49713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum aa_ae_antibanding_mode {
498db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
499db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AE_ANTIBANDING_OFF = 1,
500db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AE_ANTIBANDING_50HZ,
501db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AE_ANTIBANDING_60HZ,
502db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AE_ANTIBANDING_AUTO
503db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
50413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
50513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum aa_awbmode {
506db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_OFF = 1,
507db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_LOCKED,
508db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
509db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_AUTO,
510db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_INCANDESCENT,
511db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_FLUORESCENT,
512db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_WARM_FLUORESCENT,
513db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
514db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_DAYLIGHT,
515db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_CLOUDY_DAYLIGHT,
516db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_TWILIGHT,
517db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AWBMODE_WB_SHADE
518db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
519db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
52013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum aa_afmode {
521db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann NO_CHANGE = 0,
522db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_OFF = 1,
523db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
524db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_AUTO,
525db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_MACRO,
526db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_CONTINUOUS_VIDEO,
527db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_CONTINUOUS_PICTURE,
528db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
529db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_INFINITY,
530db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_AUTO_FACE,
531db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_CONTINUOUS_VIDEO_FACE,
532db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_CONTINUOUS_PICTURE_FACE,
533db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
534db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_MANUAL,
535db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFMODE_EDOF
536db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
53713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangenum aa_afstate {
538db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
539db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFSTATE_INACTIVE = 1,
540db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFSTATE_PASSIVE_SCAN,
541db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFSTATE_ACTIVE_SCAN,
542db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFSTATE_AF_ACQUIRED_FOCUS,
543db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
544db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_AFSTATE_AF_FAILED_FOCUS
54513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
54663be2dac454f121ae105580d9c5d3e785f289ffeYounghwan Jooenum ae_state {
547db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AE_STATE_INACTIVE = 1,
548db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
549db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AE_STATE_SEARCHING,
550db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AE_STATE_CONVERGED,
551db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AE_STATE_LOCKED,
552db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AE_STATE_FLASH_REQUIRED,
553db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
554db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AE_STATE_PRECAPTURE
555db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
55663be2dac454f121ae105580d9c5d3e785f289ffeYounghwan Jooenum awb_state {
557db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AWB_STATE_INACTIVE = 1,
558db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
559db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AWB_STATE_SEARCHING,
560db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AWB_STATE_CONVERGED,
561db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AWB_STATE_LOCKED
56263be2dac454f121ae105580d9c5d3e785f289ffeYounghwan Joo};
563db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
564ad37861e56882dcb5fa42beb9dba60637d6e3c0fSungjoong Kangenum aa_isomode {
565db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_ISOMODE_AUTO = 1,
566db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AA_ISOMODE_MANUAL,
567ad37861e56882dcb5fa42beb9dba60637d6e3c0fSungjoong Kang};
568db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
56953f62ad92ec5a5d11114420ca83cb122c38c2ef1Younghwan Jooenum ae_lockmode {
570db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AEMODE_LOCK_OFF = 0,
571db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AEMODE_LOCK_ON,
57253f62ad92ec5a5d11114420ca83cb122c38c2ef1Younghwan Joo};
573db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
57453f62ad92ec5a5d11114420ca83cb122c38c2ef1Younghwan Jooenum awb_lockmode {
575db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AWBMODE_LOCK_OFF = 0,
576db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann AWBMODE_LOCK_ON,
57753f62ad92ec5a5d11114420ca83cb122c38c2ef1Younghwan Joo};
578db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
57913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_aa_ctl {
580db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_capture_intent captureIntent;
581db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_mode mode;
582db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_scene_mode sceneMode;
583db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
584db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t videoStabilizationMode;
585db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_aemode aeMode;
586db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t aeRegions[5];
587db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann int32_t aeExpCompensation;
588db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
589db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t aeTargetFpsRange[2];
590db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_ae_antibanding_mode aeAntibandingMode;
591db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_ae_flashmode aeflashMode;
592db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_awbmode awbMode;
593db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
594db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t awbRegions[5];
595db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_afmode afMode;
596db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t afRegions[5];
597db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t afTrigger;
598db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
599db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_isomode isoMode;
600db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t isoValue;
601db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
60213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_aa_dm {
603db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
604db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_mode mode;
605db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_effect_mode effectMode;
606db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_scene_mode sceneMode;
607db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t videoStabilizationMode;
608db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
609db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_aemode aeMode;
610db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t aeRegions[5];
611db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum ae_state aeState;
612db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_ae_flashmode aeflashMode;
613db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
614db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_awbmode awbMode;
615db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t awbRegions[5];
616db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum awb_state awbState;
617db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_afmode afMode;
618db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
619db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t afRegions[5];
620db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_afstate afState;
621db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum aa_isomode isoMode;
622db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t isoValue;
623db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
624db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
62513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_aa_sm {
626db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t availableSceneModes[CAMERA2_MAX_AVAILABLE_MODE];
627db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t availableEffects[CAMERA2_MAX_AVAILABLE_MODE];
628db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
629db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxRegions;
630db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t aeAvailableModes[CAMERA2_MAX_AVAILABLE_MODE];
631db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct rational aeCompensationStep;
632db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann int32_t aeCompensationRange[2];
633db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
634db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t aeAvailableTargetFpsRanges[CAMERA2_MAX_AVAILABLE_MODE][2];
635db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t aeAvailableAntibandingModes[CAMERA2_MAX_AVAILABLE_MODE];
636db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t awbAvailableModes[CAMERA2_MAX_AVAILABLE_MODE];
637db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t afAvailableModes[CAMERA2_MAX_AVAILABLE_MODE];
638db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
639db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t availableVideoStabilizationModes[4];
640db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t isoRange[2];
641db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
64213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_lens_usm {
643db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
644db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t focusDistanceFrameDelay;
64513d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
64613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_sensor_usm {
647db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t exposureTimeFrameDelay;
648db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
649db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t frameDurationFrameDelay;
650db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t sensitivityFrameDelay;
65113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
65213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_flash_usm {
653db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
654db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t flashModeFrameDelay;
655db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t firingPowerFrameDelay;
656db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t firingTimeFrameDelay;
65713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
658db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
65913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_ctl {
660db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_request_ctl request;
661db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_ctl lens;
662db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_sensor_ctl sensor;
663db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
664db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_flash_ctl flash;
665db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_hotpixel_ctl hotpixel;
666db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_demosaic_ctl demosaic;
667db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_noisereduction_ctl noise;
668db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
669db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_shading_ctl shading;
670db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_geometric_ctl geometric;
671db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_colorcorrection_ctl color;
672db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_tonemap_ctl tonemap;
673db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
674db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_edge_ctl edge;
675db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_scaler_ctl scaler;
676db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_jpeg_ctl jpeg;
677db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_stats_ctl stats;
678db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
679db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_aa_ctl aa;
680db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
68113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_dm {
682db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_request_dm request;
683db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
684db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_dm lens;
685db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_sensor_dm sensor;
686db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_flash_dm flash;
687db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_hotpixel_dm hotpixel;
688db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
689db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_demosaic_dm demosaic;
690db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_noisereduction_dm noise;
691db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_shading_dm shading;
692db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_geometric_dm geometric;
693db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
694db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_colorcorrection_dm color;
695db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_tonemap_dm tonemap;
696db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_edge_dm edge;
697db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_scaler_dm scaler;
698db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
699db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_jpeg_dm jpeg;
700db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_stats_dm stats;
701db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_aa_dm aa;
702db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
703db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
70413d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_sm {
705db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_sm lens;
706db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_sensor_sm sensor;
707db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_flash_sm flash;
708db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
709db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_colorcorrection_sm color;
710db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_tonemap_sm tonemap;
711db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_scaler_sm scaler;
712db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_jpeg_sm jpeg;
713db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
714db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_stats_sm stats;
715db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_aa_sm aa;
716db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_usm lensUd;
717db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_sensor_usm sensorUd;
718db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
719db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_flash_usm flashUd;
720db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
72113d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_lens_uctl {
722db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_ctl ctl;
723db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
724db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxPos;
725db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t slewRate;
726db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
72713d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_lens_udm {
728db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
729db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t maxPos;
730db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t slewRate;
731db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
73213d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_sensor_uctl {
733db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
734db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_sensor_ctl ctl;
735db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint64_t dynamicFrameDuration;
736db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
7379dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangstruct camera2_scaler_uctl {
738db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
739db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t sccTargetAddress[4];
740db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t scpTargetAddress[4];
741db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
7429dd63e1fc352306d6680c517b7ce9936683c78c4Sungjoong Kangstruct camera2_flash_uctl {
743db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
744db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_flash_ctl ctl;
745db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
74613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_uctl {
747db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t uUpdateBitMap;
748db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
749db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t uFrameNumber;
750db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_uctl lensUd;
751db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_sensor_uctl sensorUd;
752db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_flash_uctl flashUd;
753db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
754db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_scaler_uctl scalerUd;
755db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
75613d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_udm {
757db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_lens_udm lens;
758db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
75913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kang};
76013d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_shot {
761db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_ctl ctl;
762db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_dm dm;
763db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
764db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_uctl uctl;
765db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_udm udm;
766db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t magicNumber;
767db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
768db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
76913d8c7b4650fb7897b4291ed9b3d57b19f7d1ccdSungjoong Kangstruct camera2_shot_ext {
770db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t setfile;
771db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t request_sensor;
772db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t request_scc;
773db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
774db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t request_scp;
775db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t drc_bypass;
776db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t dis_bypass;
777db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t dnr_bypass;
778db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
779db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t fd_bypass;
780db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t reserved[20];
781db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t timeZone[10][2];
782db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann struct camera2_shot shot;
783db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
784db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t gpsProcessingMethod[32];
785db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t isReprocessing;
786db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint8_t reprocessInput;
787db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum ae_lockmode ae_lock;
788db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
789db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann enum awb_lockmode awb_lock;
79048728d495b8aa54d3c6cc95229f49f3135107aecSungjoong Kang enum aa_awbmode awb_mode_dm;
791db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann};
792feb7df4c2d6e953395eef7b4389ab2e142df9613Sungjoong Kangstruct camera2_stream {
793db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79448728d495b8aa54d3c6cc95229f49f3135107aecSungjoong Kang uint32_t address;
795db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t fcount;
796db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t rcount;
797db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann uint32_t findex;
798db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79948728d495b8aa54d3c6cc95229f49f3135107aecSungjoong Kang};
800db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann#define CAM_LENS_CMD (0x1 << 0x0)
801db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann#define CAM_SENSOR_CMD (0x1 << 0x1)
802db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann#define CAM_FLASH_CMD (0x1 << 0x2)
803db7d80d7a4d9ef6c8fbca602a78531f82f72f0a2Greg Hackmann/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
80448728d495b8aa54d3c6cc95229f49f3135107aecSungjoong Kang#endif
80548728d495b8aa54d3c6cc95229f49f3135107aecSungjoong Kang
806