1 /****************************************************************************
2 ****************************************************************************
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
17 ****************************************************************************
18 ****************************************************************************/
19 #ifndef FIMC_IS_METADATA_H_
20 #define FIMC_IS_METADATA_H_
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
26 #define CAMERA2_MAX_AVAILABLE_MODE 21
27 #define CAMERA2_MAX_FACES 16
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 #define CAMERA2_FACE_DETECTION_THRESHOLD 35
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
35 struct camera2_request_ctl
{
37 enum metadata_mode metadataMode
;
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 uint8_t outputStreams
[16];
42 struct camera2_request_dm
{
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
45 enum metadata_mode metadataMode
;
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 enum optical_stabilization_mode
{
50 OPTICAL_STABILIZATION_MODE_OFF
,
51 OPTICAL_STABILIZATION_MODE_ON
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 struct camera2_lens_ctl
{
60 uint32_t focusDistance
;
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
65 enum optical_stabilization_mode opticalStabilizationMode
;
67 struct camera2_lens_dm
{
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 uint32_t focusDistance
;
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 enum optical_stabilization_mode opticalStabilizationMode
;
77 struct camera2_lens_sm
{
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 float minimumFocusDistance
;
80 float hyperfocalDistance
;
81 float availableFocalLength
[2];
82 float availableApertures
;
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 float availableFilterDensities
;
85 enum optical_stabilization_mode availableOpticalStabilization
;
86 uint32_t shadingMapSize
;
87 float shadingMap
[3][40][30];
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89 uint32_t geometricCorrectionMapSize
;
90 float geometricCorrectionMap
[2][3][40][30];
91 enum lens_facing facing
;
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
95 enum sensor_colorfilterarrangement
{
96 SENSOR_COLORFILTERARRANGEMENT_RGGB
,
97 SENSOR_COLORFILTERARRANGEMENT_GRBG
,
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99 SENSOR_COLORFILTERARRANGEMENT_GBRG
,
100 SENSOR_COLORFILTERARRANGEMENT_BGGR
,
101 SENSOR_COLORFILTERARRANGEMENT_RGB
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104 enum sensor_ref_illuminant
{
105 SENSOR_ILLUMINANT_DAYLIGHT
= 1,
106 SENSOR_ILLUMINANT_FLUORESCENT
= 2,
107 SENSOR_ILLUMINANT_TUNGSTEN
= 3,
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109 SENSOR_ILLUMINANT_FLASH
= 4,
110 SENSOR_ILLUMINANT_FINE_WEATHER
= 9,
111 SENSOR_ILLUMINANT_CLOUDY_WEATHER
= 10,
112 SENSOR_ILLUMINANT_SHADE
= 11,
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114 SENSOR_ILLUMINANT_DAYLIGHT_FLUORESCENT
= 12,
115 SENSOR_ILLUMINANT_DAY_WHITE_FLUORESCENT
= 13,
116 SENSOR_ILLUMINANT_COOL_WHITE_FLUORESCENT
= 14,
117 SENSOR_ILLUMINANT_WHITE_FLUORESCENT
= 15,
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119 SENSOR_ILLUMINANT_STANDARD_A
= 17,
120 SENSOR_ILLUMINANT_STANDARD_B
= 18,
121 SENSOR_ILLUMINANT_STANDARD_C
= 19,
122 SENSOR_ILLUMINANT_D55
= 20,
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 SENSOR_ILLUMINANT_D65
= 21,
125 SENSOR_ILLUMINANT_D75
= 22,
126 SENSOR_ILLUMINANT_D50
= 23,
127 SENSOR_ILLUMINANT_ISO_STUDIO_TUNGSTEN
= 24
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
130 struct camera2_sensor_ctl
{
131 uint64_t exposureTime
;
132 uint64_t frameDuration
;
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 uint32_t sensitivity
;
136 struct camera2_sensor_dm
{
137 uint64_t exposureTime
;
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 uint64_t frameDuration
;
140 uint32_t sensitivity
;
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144 struct camera2_sensor_sm
{
145 uint32_t exposureTimeRange
[2];
146 uint32_t maxFrameDuration
;
147 uint32_t availableSensitivities
[10];
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 enum sensor_colorfilterarrangement colorFilterArrangement
;
150 float physicalSize
[2];
151 uint32_t pixelArraySize
[2];
152 uint32_t activeArraySize
[4];
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
155 uint32_t blackLevelPattern
[4];
156 struct rational colorTransform1
[9];
157 struct rational colorTransform2
[9];
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159 enum sensor_ref_illuminant referenceIlluminant1
;
160 enum sensor_ref_illuminant referenceIlluminant2
;
161 struct rational forwardMatrix1
[9];
162 struct rational forwardMatrix2
[9];
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164 struct rational calibrationTransform1
[9];
165 struct rational calibrationTransform2
[9];
166 struct rational baseGainFactor
;
167 uint32_t maxAnalogSensitivity
;
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169 float noiseModelCoefficients
[2];
170 uint32_t orientation
;
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174 CAM2_FLASH_MODE_NOP
= 0,
175 CAM2_FLASH_MODE_OFF
= 1,
176 CAM2_FLASH_MODE_SINGLE
,
177 CAM2_FLASH_MODE_TORCH
,
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
181 struct camera2_flash_ctl
{
182 enum flash_mode flashMode
;
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 uint32_t firingPower
;
187 struct camera2_flash_dm
{
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189 enum flash_mode flashMode
;
190 uint32_t firingPower
;
192 uint32_t firingStable
;
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
196 struct camera2_flash_sm
{
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 uint64_t chargeDuration
;
201 enum processing_mode
{
202 PROCESSING_MODE_OFF
= 1,
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204 PROCESSING_MODE_FAST
,
205 PROCESSING_MODE_HIGH_QUALITY
207 struct camera2_hotpixel_ctl
{
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209 enum processing_mode mode
;
211 struct camera2_hotpixel_dm
{
212 enum processing_mode mode
;
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
215 struct camera2_demosaic_ctl
{
216 enum processing_mode mode
;
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219 struct camera2_demosaic_dm
{
220 enum processing_mode mode
;
222 struct camera2_noisereduction_ctl
{
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224 enum processing_mode mode
;
227 struct camera2_noisereduction_dm
{
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229 enum processing_mode mode
;
232 struct camera2_shading_ctl
{
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234 enum processing_mode mode
;
236 struct camera2_shading_dm
{
237 enum processing_mode mode
;
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
240 struct camera2_geometric_ctl
{
241 enum processing_mode mode
;
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244 struct camera2_geometric_dm
{
245 enum processing_mode mode
;
247 enum colorcorrection_mode
{
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249 COLORCORRECTION_MODE_FAST
= 1,
250 COLORCORRECTION_MODE_HIGH_QUALITY
,
251 COLORCORRECTION_MODE_TRANSFORM_MATRIX
,
252 COLORCORRECTION_MODE_EFFECT_MONO
,
253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254 COLORCORRECTION_MODE_EFFECT_NEGATIVE
,
255 COLORCORRECTION_MODE_EFFECT_SOLARIZE
,
256 COLORCORRECTION_MODE_EFFECT_SEPIA
,
257 COLORCORRECTION_MODE_EFFECT_POSTERIZE
,
258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259 COLORCORRECTION_MODE_EFFECT_WHITEBOARD
,
260 COLORCORRECTION_MODE_EFFECT_BLACKBOARD
,
261 COLORCORRECTION_MODE_EFFECT_AQUA
263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264 struct camera2_colorcorrection_ctl
{
265 enum colorcorrection_mode mode
;
268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
272 struct camera2_colorcorrection_dm
{
273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274 enum colorcorrection_mode mode
;
278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
281 struct camera2_colorcorrection_sm
{
282 uint8_t availableModes
[CAMERA2_MAX_AVAILABLE_MODE
];
283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284 uint32_t hueRange
[2];
285 uint32_t saturationRange
[2];
286 uint32_t brightnessRange
[2];
288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
290 TONEMAP_MODE_FAST
= 1,
291 TONEMAP_MODE_HIGH_QUALITY
,
292 TONEMAP_MODE_CONTRAST_CURVE
293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
295 struct camera2_tonemap_ctl
{
296 enum tonemap_mode mode
;
298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299 float curveGreen
[64];
302 struct camera2_tonemap_dm
{
303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304 enum tonemap_mode mode
;
306 float curveGreen
[64];
308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
310 struct camera2_tonemap_sm
{
311 uint32_t maxCurvePoints
;
313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314 struct camera2_edge_ctl
{
315 enum processing_mode mode
;
318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319 struct camera2_edge_dm
{
320 enum processing_mode mode
;
323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324 enum scaler_availableformats
{
325 SCALER_FORMAT_BAYER_RAW
,
328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
330 SCALER_FORMAT_UNKNOWN
332 struct camera2_scaler_ctl
{
333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334 uint32_t cropRegion
[3];
336 struct camera2_scaler_dm
{
337 uint32_t cropRegion
[3];
338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
340 struct camera2_scaler_sm
{
341 enum scaler_availableformats availableFormats
[4];
342 uint32_t availableRawSizes
;
343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344 uint64_t availableRawMinDurations
;
345 uint32_t availableProcessedSizes
[8];
346 uint64_t availableProcessedMinDurations
[8];
347 uint32_t availableJpegSizes
[8][2];
348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349 uint64_t availableJpegMinDurations
[8];
350 uint32_t availableMaxDigitalZoom
[8];
352 struct camera2_jpeg_ctl
{
353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
355 uint32_t thumbnailSize
[2];
356 uint32_t thumbnailQuality
;
357 double gpsCoordinates
[3];
358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359 uint32_t gpsProcessingMethod
;
360 uint64_t gpsTimestamp
;
361 uint32_t orientation
;
363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364 struct camera2_jpeg_dm
{
366 uint32_t thumbnailSize
[2];
367 uint32_t thumbnailQuality
;
368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369 double gpsCoordinates
[3];
370 uint32_t gpsProcessingMethod
;
371 uint64_t gpsTimestamp
;
372 uint32_t orientation
;
373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
375 struct camera2_jpeg_sm
{
376 uint32_t availableThumbnailSizes
[8][2];
378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
380 enum facedetect_mode
{
381 FACEDETECT_MODE_OFF
= 1,
382 FACEDETECT_MODE_SIMPLE
,
383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
391 struct camera2_stats_ctl
{
392 enum facedetect_mode faceDetectMode
;
393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394 enum stats_mode histogramMode
;
395 enum stats_mode sharpnessMapMode
;
397 struct camera2_stats_dm
{
398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399 enum facedetect_mode faceDetectMode
;
400 uint32_t faceRectangles
[CAMERA2_MAX_FACES
][4];
401 uint8_t faceScores
[CAMERA2_MAX_FACES
];
402 uint32_t faceLandmarks
[CAMERA2_MAX_FACES
][6];
403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404 uint32_t faceIds
[CAMERA2_MAX_FACES
];
405 enum stats_mode histogramMode
;
406 uint32_t histogram
[3 * 256];
407 enum stats_mode sharpnessMapMode
;
408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
410 struct camera2_stats_sm
{
411 uint8_t availableFaceDetectModes
[CAMERA2_MAX_AVAILABLE_MODE
];
412 uint32_t maxFaceCount
;
413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414 uint32_t histogramBucketCount
;
415 uint32_t maxHistogramCount
;
416 uint32_t sharpnessMapSize
[2];
417 uint32_t maxSharpnessMapValue
;
418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
420 enum aa_capture_intent
{
421 AA_CAPTURE_INTENT_CUSTOM
= 0,
422 AA_CAPTURE_INTENT_PREVIEW
,
423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424 AA_CAPTURE_INTENT_STILL_CAPTURE
,
425 AA_CAPTURE_INTENT_VIDEO_RECORD
,
426 AA_CAPTURE_INTENT_VIDEO_SNAPSHOT
,
427 AA_CAPTURE_INTENT_ZERO_SHUTTER_LAG
428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
435 AA_CONTROL_USE_SCENE_MODE
438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
439 AA_SCENE_MODE_UNSUPPORTED
= 1,
440 AA_SCENE_MODE_FACE_PRIORITY
,
441 AA_SCENE_MODE_ACTION
,
442 AA_SCENE_MODE_PORTRAIT
,
443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
444 AA_SCENE_MODE_LANDSCAPE
,
446 AA_SCENE_MODE_NIGHT_PORTRAIT
,
447 AA_SCENE_MODE_THEATRE
,
448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
451 AA_SCENE_MODE_SUNSET
,
452 AA_SCENE_MODE_STEADYPHOTO
,
453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
454 AA_SCENE_MODE_FIREWORKS
,
455 AA_SCENE_MODE_SPORTS
,
457 AA_SCENE_MODE_CANDLELIGHT
,
458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459 AA_SCENE_MODE_BARCODE
,
460 AA_SCENE_MODE_NIGHT_CAPTURE
,
463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
464 enum aa_effect_mode
{
468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
472 AA_EFFECT_WHITEBOARD
,
473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
474 AA_EFFECT_BLACKBOARD
,
478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
482 AA_AEMODE_ON_AUTO_FLASH
,
483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
484 AA_AEMODE_ON_ALWAYS_FLASH
,
485 AA_AEMODE_ON_AUTO_FLASH_REDEYE
487 enum aa_ae_flashmode
{
488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
489 AA_FLASHMODE_NOP
= 0,
490 AA_FLASHMODE_OFF
= 1,
493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
494 AA_FLASHMODE_CAPTURE
,
495 AA_FLASHMODE_ON_ALWAYS
497 enum aa_ae_antibanding_mode
{
498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
499 AA_AE_ANTIBANDING_OFF
= 1,
500 AA_AE_ANTIBANDING_50HZ
,
501 AA_AE_ANTIBANDING_60HZ
,
502 AA_AE_ANTIBANDING_AUTO
503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
510 AA_AWBMODE_WB_INCANDESCENT
,
511 AA_AWBMODE_WB_FLUORESCENT
,
512 AA_AWBMODE_WB_WARM_FLUORESCENT
,
513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
514 AA_AWBMODE_WB_DAYLIGHT
,
515 AA_AWBMODE_WB_CLOUDY_DAYLIGHT
,
516 AA_AWBMODE_WB_TWILIGHT
,
518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
526 AA_AFMODE_CONTINUOUS_VIDEO
,
527 AA_AFMODE_CONTINUOUS_PICTURE
,
528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
531 AA_AFMODE_CONTINUOUS_VIDEO_FACE
,
532 AA_AFMODE_CONTINUOUS_PICTURE_FACE
,
533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
539 AA_AFSTATE_INACTIVE
= 1,
540 AA_AFSTATE_PASSIVE_SCAN
,
541 AA_AFSTATE_ACTIVE_SCAN
,
542 AA_AFSTATE_AF_ACQUIRED_FOCUS
,
543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
544 AA_AFSTATE_AF_FAILED_FOCUS
547 AE_STATE_INACTIVE
= 1,
548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
552 AE_STATE_FLASH_REQUIRED
,
553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
557 AWB_STATE_INACTIVE
= 1,
558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
575 AWBMODE_LOCK_OFF
= 0,
578 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
579 struct camera2_aa_ctl
{
580 enum aa_capture_intent captureIntent
;
582 enum aa_scene_mode sceneMode
;
583 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
584 uint32_t videoStabilizationMode
;
585 enum aa_aemode aeMode
;
586 uint32_t aeRegions
[5];
587 int32_t aeExpCompensation
;
588 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
589 uint32_t aeTargetFpsRange
[2];
590 enum aa_ae_antibanding_mode aeAntibandingMode
;
591 enum aa_ae_flashmode aeflashMode
;
592 enum aa_awbmode awbMode
;
593 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
594 uint32_t awbRegions
[5];
595 enum aa_afmode afMode
;
596 uint32_t afRegions
[5];
598 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
599 enum aa_isomode isoMode
;
602 struct camera2_aa_dm
{
603 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
605 enum aa_effect_mode effectMode
;
606 enum aa_scene_mode sceneMode
;
607 uint32_t videoStabilizationMode
;
608 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
609 enum aa_aemode aeMode
;
610 uint32_t aeRegions
[5];
611 enum ae_state aeState
;
612 enum aa_ae_flashmode aeflashMode
;
613 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
614 enum aa_awbmode awbMode
;
615 uint32_t awbRegions
[5];
616 enum awb_state awbState
;
617 enum aa_afmode afMode
;
618 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
619 uint32_t afRegions
[5];
620 enum aa_afstate afState
;
621 enum aa_isomode isoMode
;
623 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
625 struct camera2_aa_sm
{
626 uint8_t availableSceneModes
[CAMERA2_MAX_AVAILABLE_MODE
];
627 uint8_t availableEffects
[CAMERA2_MAX_AVAILABLE_MODE
];
628 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
630 uint8_t aeAvailableModes
[CAMERA2_MAX_AVAILABLE_MODE
];
631 struct rational aeCompensationStep
;
632 int32_t aeCompensationRange
[2];
633 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
634 uint32_t aeAvailableTargetFpsRanges
[CAMERA2_MAX_AVAILABLE_MODE
][2];
635 uint8_t aeAvailableAntibandingModes
[CAMERA2_MAX_AVAILABLE_MODE
];
636 uint8_t awbAvailableModes
[CAMERA2_MAX_AVAILABLE_MODE
];
637 uint8_t afAvailableModes
[CAMERA2_MAX_AVAILABLE_MODE
];
638 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
639 uint8_t availableVideoStabilizationModes
[4];
640 uint32_t isoRange
[2];
642 struct camera2_lens_usm
{
643 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
644 uint32_t focusDistanceFrameDelay
;
646 struct camera2_sensor_usm
{
647 uint32_t exposureTimeFrameDelay
;
648 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
649 uint32_t frameDurationFrameDelay
;
650 uint32_t sensitivityFrameDelay
;
652 struct camera2_flash_usm
{
653 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
654 uint32_t flashModeFrameDelay
;
655 uint32_t firingPowerFrameDelay
;
656 uint64_t firingTimeFrameDelay
;
658 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
660 struct camera2_request_ctl request
;
661 struct camera2_lens_ctl lens
;
662 struct camera2_sensor_ctl sensor
;
663 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
664 struct camera2_flash_ctl flash
;
665 struct camera2_hotpixel_ctl hotpixel
;
666 struct camera2_demosaic_ctl demosaic
;
667 struct camera2_noisereduction_ctl noise
;
668 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
669 struct camera2_shading_ctl shading
;
670 struct camera2_geometric_ctl geometric
;
671 struct camera2_colorcorrection_ctl color
;
672 struct camera2_tonemap_ctl tonemap
;
673 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
674 struct camera2_edge_ctl edge
;
675 struct camera2_scaler_ctl scaler
;
676 struct camera2_jpeg_ctl jpeg
;
677 struct camera2_stats_ctl stats
;
678 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
679 struct camera2_aa_ctl aa
;
682 struct camera2_request_dm request
;
683 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
684 struct camera2_lens_dm lens
;
685 struct camera2_sensor_dm sensor
;
686 struct camera2_flash_dm flash
;
687 struct camera2_hotpixel_dm hotpixel
;
688 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
689 struct camera2_demosaic_dm demosaic
;
690 struct camera2_noisereduction_dm noise
;
691 struct camera2_shading_dm shading
;
692 struct camera2_geometric_dm geometric
;
693 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
694 struct camera2_colorcorrection_dm color
;
695 struct camera2_tonemap_dm tonemap
;
696 struct camera2_edge_dm edge
;
697 struct camera2_scaler_dm scaler
;
698 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
699 struct camera2_jpeg_dm jpeg
;
700 struct camera2_stats_dm stats
;
701 struct camera2_aa_dm aa
;
703 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
705 struct camera2_lens_sm lens
;
706 struct camera2_sensor_sm sensor
;
707 struct camera2_flash_sm flash
;
708 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
709 struct camera2_colorcorrection_sm color
;
710 struct camera2_tonemap_sm tonemap
;
711 struct camera2_scaler_sm scaler
;
712 struct camera2_jpeg_sm jpeg
;
713 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
714 struct camera2_stats_sm stats
;
715 struct camera2_aa_sm aa
;
716 struct camera2_lens_usm lensUd
;
717 struct camera2_sensor_usm sensorUd
;
718 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
719 struct camera2_flash_usm flashUd
;
721 struct camera2_lens_uctl
{
722 struct camera2_lens_ctl ctl
;
723 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
727 struct camera2_lens_udm
{
728 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
732 struct camera2_sensor_uctl
{
733 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
734 struct camera2_sensor_ctl ctl
;
735 uint64_t dynamicFrameDuration
;
737 struct camera2_scaler_uctl
{
738 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
739 uint32_t sccTargetAddress
[4];
740 uint32_t scpTargetAddress
[4];
742 struct camera2_flash_uctl
{
743 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
744 struct camera2_flash_ctl ctl
;
746 struct camera2_uctl
{
747 uint32_t uUpdateBitMap
;
748 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
749 uint32_t uFrameNumber
;
750 struct camera2_lens_uctl lensUd
;
751 struct camera2_sensor_uctl sensorUd
;
752 struct camera2_flash_uctl flashUd
;
753 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
754 struct camera2_scaler_uctl scalerUd
;
757 struct camera2_lens_udm lens
;
758 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
760 struct camera2_shot
{
761 struct camera2_ctl ctl
;
762 struct camera2_dm dm
;
763 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
764 struct camera2_uctl uctl
;
765 struct camera2_udm udm
;
766 uint32_t magicNumber
;
768 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
769 struct camera2_shot_ext
{
771 uint32_t request_sensor
;
772 uint32_t request_scc
;
773 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
774 uint32_t request_scp
;
778 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
780 uint32_t reserved
[20];
781 uint32_t timeZone
[10][2];
782 struct camera2_shot shot
;
783 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
784 uint8_t gpsProcessingMethod
[32];
785 uint8_t isReprocessing
;
786 uint8_t reprocessInput
;
787 enum ae_lockmode ae_lock
;
788 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
789 enum awb_lockmode awb_lock
;
790 enum aa_awbmode awb_mode_dm
;
792 struct camera2_stream
{
793 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
798 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
800 #define CAM_LENS_CMD (0x1 << 0x0)
801 #define CAM_SENSOR_CMD (0x1 << 0x1)
802 #define CAM_FLASH_CMD (0x1 << 0x2)
803 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */