1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22#define MMAL_PARAMETER_GROUP_COMMON (0<<16)
23
24#define MMAL_PARAMETER_GROUP_CAMERA (1<<16)
25
26#define MMAL_PARAMETER_GROUP_VIDEO (2<<16)
27
28#define MMAL_PARAMETER_GROUP_AUDIO (3<<16)
29
30#define MMAL_PARAMETER_GROUP_CLOCK (4<<16)
31
32#define MMAL_PARAMETER_GROUP_MIRACAST (5<<16)
33
34
35enum mmal_parameter_common_type {
36 MMAL_PARAMETER_UNUSED
37 = MMAL_PARAMETER_GROUP_COMMON,
38 MMAL_PARAMETER_SUPPORTED_ENCODINGS,
39 MMAL_PARAMETER_URI,
40
41
42 MMAL_PARAMETER_CHANGE_EVENT_REQUEST,
43
44
45 MMAL_PARAMETER_ZERO_COPY,
46
47
48 MMAL_PARAMETER_BUFFER_REQUIREMENTS,
49
50 MMAL_PARAMETER_STATISTICS,
51 MMAL_PARAMETER_CORE_STATISTICS,
52 MMAL_PARAMETER_MEM_USAGE,
53 MMAL_PARAMETER_BUFFER_FLAG_FILTER,
54 MMAL_PARAMETER_SEEK,
55 MMAL_PARAMETER_POWERMON_ENABLE,
56 MMAL_PARAMETER_LOGGING,
57 MMAL_PARAMETER_SYSTEM_TIME,
58 MMAL_PARAMETER_NO_IMAGE_PADDING
59};
60
61
62
63enum mmal_parameter_camera_type {
64
65
66 MMAL_PARAMETER_THUMBNAIL_CONFIGURATION
67 = MMAL_PARAMETER_GROUP_CAMERA,
68 MMAL_PARAMETER_CAPTURE_QUALITY,
69 MMAL_PARAMETER_ROTATION,
70 MMAL_PARAMETER_EXIF_DISABLE,
71 MMAL_PARAMETER_EXIF,
72 MMAL_PARAMETER_AWB_MODE,
73 MMAL_PARAMETER_IMAGE_EFFECT,
74 MMAL_PARAMETER_COLOUR_EFFECT,
75 MMAL_PARAMETER_FLICKER_AVOID,
76 MMAL_PARAMETER_FLASH,
77 MMAL_PARAMETER_REDEYE,
78 MMAL_PARAMETER_FOCUS,
79 MMAL_PARAMETER_FOCAL_LENGTHS,
80 MMAL_PARAMETER_EXPOSURE_COMP,
81 MMAL_PARAMETER_ZOOM,
82 MMAL_PARAMETER_MIRROR,
83
84
85 MMAL_PARAMETER_CAMERA_NUM,
86 MMAL_PARAMETER_CAPTURE,
87 MMAL_PARAMETER_EXPOSURE_MODE,
88 MMAL_PARAMETER_EXP_METERING_MODE,
89 MMAL_PARAMETER_FOCUS_STATUS,
90 MMAL_PARAMETER_CAMERA_CONFIG,
91 MMAL_PARAMETER_CAPTURE_STATUS,
92 MMAL_PARAMETER_FACE_TRACK,
93 MMAL_PARAMETER_DRAW_BOX_FACES_AND_FOCUS,
94 MMAL_PARAMETER_JPEG_Q_FACTOR,
95 MMAL_PARAMETER_FRAME_RATE,
96 MMAL_PARAMETER_USE_STC,
97 MMAL_PARAMETER_CAMERA_INFO,
98 MMAL_PARAMETER_VIDEO_STABILISATION,
99 MMAL_PARAMETER_FACE_TRACK_RESULTS,
100 MMAL_PARAMETER_ENABLE_RAW_CAPTURE,
101
102
103 MMAL_PARAMETER_DPF_FILE,
104 MMAL_PARAMETER_ENABLE_DPF_FILE,
105 MMAL_PARAMETER_DPF_FAIL_IS_FATAL,
106 MMAL_PARAMETER_CAPTURE_MODE,
107 MMAL_PARAMETER_FOCUS_REGIONS,
108 MMAL_PARAMETER_INPUT_CROP,
109 MMAL_PARAMETER_SENSOR_INFORMATION,
110 MMAL_PARAMETER_FLASH_SELECT,
111 MMAL_PARAMETER_FIELD_OF_VIEW,
112 MMAL_PARAMETER_HIGH_DYNAMIC_RANGE,
113 MMAL_PARAMETER_DYNAMIC_RANGE_COMPRESSION,
114 MMAL_PARAMETER_ALGORITHM_CONTROL,
115 MMAL_PARAMETER_SHARPNESS,
116 MMAL_PARAMETER_CONTRAST,
117 MMAL_PARAMETER_BRIGHTNESS,
118 MMAL_PARAMETER_SATURATION,
119
120
121 MMAL_PARAMETER_ISO,
122 MMAL_PARAMETER_ANTISHAKE,
123
124
125 MMAL_PARAMETER_IMAGE_EFFECT_PARAMETERS,
126
127
128 MMAL_PARAMETER_CAMERA_BURST_CAPTURE,
129
130
131 MMAL_PARAMETER_CAMERA_MIN_ISO,
132
133
134 MMAL_PARAMETER_CAMERA_USE_CASE,
135
136
137 MMAL_PARAMETER_CAPTURE_STATS_PASS,
138
139
140 MMAL_PARAMETER_CAMERA_CUSTOM_SENSOR_CONFIG,
141
142
143 MMAL_PARAMETER_ENABLE_REGISTER_FILE,
144
145
146 MMAL_PARAMETER_REGISTER_FAIL_IS_FATAL,
147
148
149 MMAL_PARAMETER_CONFIGFILE_REGISTERS,
150
151
152 MMAL_PARAMETER_CONFIGFILE_CHUNK_REGISTERS,
153 MMAL_PARAMETER_JPEG_ATTACH_LOG,
154 MMAL_PARAMETER_ZERO_SHUTTER_LAG,
155 MMAL_PARAMETER_FPS_RANGE,
156 MMAL_PARAMETER_CAPTURE_EXPOSURE_COMP,
157
158
159 MMAL_PARAMETER_SW_SHARPEN_DISABLE,
160 MMAL_PARAMETER_FLASH_REQUIRED,
161 MMAL_PARAMETER_SW_SATURATION_DISABLE,
162 MMAL_PARAMETER_SHUTTER_SPEED,
163 MMAL_PARAMETER_CUSTOM_AWB_GAINS,
164};
165
166struct mmal_parameter_rational {
167 s32 num;
168 s32 den;
169};
170
171enum mmal_parameter_camera_config_timestamp_mode {
172 MMAL_PARAM_TIMESTAMP_MODE_ZERO = 0,
173 MMAL_PARAM_TIMESTAMP_MODE_RAW_STC,
174
175
176 MMAL_PARAM_TIMESTAMP_MODE_RESET_STC,
177
178
179
180
181
182};
183
184struct mmal_parameter_fps_range {
185
186 struct mmal_parameter_rational fps_low;
187
188 struct mmal_parameter_rational fps_high;
189};
190
191
192struct mmal_parameter_camera_config {
193
194 u32 max_stills_w;
195 u32 max_stills_h;
196 u32 stills_yuv422;
197 u32 one_shot_stills;
198
199 u32 max_preview_video_w;
200
201
202 u32 max_preview_video_h;
203 u32 num_preview_video_frames;
204
205
206 u32 stills_capture_circular_buffer_height;
207
208
209
210
211
212
213 u32 fast_preview_resume;
214
215
216
217
218
219 s32 use_stc_timestamp;
220};
221
222enum mmal_parameter_exposuremode {
223 MMAL_PARAM_EXPOSUREMODE_OFF,
224 MMAL_PARAM_EXPOSUREMODE_AUTO,
225 MMAL_PARAM_EXPOSUREMODE_NIGHT,
226 MMAL_PARAM_EXPOSUREMODE_NIGHTPREVIEW,
227 MMAL_PARAM_EXPOSUREMODE_BACKLIGHT,
228 MMAL_PARAM_EXPOSUREMODE_SPOTLIGHT,
229 MMAL_PARAM_EXPOSUREMODE_SPORTS,
230 MMAL_PARAM_EXPOSUREMODE_SNOW,
231 MMAL_PARAM_EXPOSUREMODE_BEACH,
232 MMAL_PARAM_EXPOSUREMODE_VERYLONG,
233 MMAL_PARAM_EXPOSUREMODE_FIXEDFPS,
234 MMAL_PARAM_EXPOSUREMODE_ANTISHAKE,
235 MMAL_PARAM_EXPOSUREMODE_FIREWORKS,
236};
237
238enum mmal_parameter_exposuremeteringmode {
239 MMAL_PARAM_EXPOSUREMETERINGMODE_AVERAGE,
240 MMAL_PARAM_EXPOSUREMETERINGMODE_SPOT,
241 MMAL_PARAM_EXPOSUREMETERINGMODE_BACKLIT,
242 MMAL_PARAM_EXPOSUREMETERINGMODE_MATRIX,
243};
244
245enum mmal_parameter_awbmode {
246 MMAL_PARAM_AWBMODE_OFF,
247 MMAL_PARAM_AWBMODE_AUTO,
248 MMAL_PARAM_AWBMODE_SUNLIGHT,
249 MMAL_PARAM_AWBMODE_CLOUDY,
250 MMAL_PARAM_AWBMODE_SHADE,
251 MMAL_PARAM_AWBMODE_TUNGSTEN,
252 MMAL_PARAM_AWBMODE_FLUORESCENT,
253 MMAL_PARAM_AWBMODE_INCANDESCENT,
254 MMAL_PARAM_AWBMODE_FLASH,
255 MMAL_PARAM_AWBMODE_HORIZON,
256};
257
258enum mmal_parameter_imagefx {
259 MMAL_PARAM_IMAGEFX_NONE,
260 MMAL_PARAM_IMAGEFX_NEGATIVE,
261 MMAL_PARAM_IMAGEFX_SOLARIZE,
262 MMAL_PARAM_IMAGEFX_POSTERIZE,
263 MMAL_PARAM_IMAGEFX_WHITEBOARD,
264 MMAL_PARAM_IMAGEFX_BLACKBOARD,
265 MMAL_PARAM_IMAGEFX_SKETCH,
266 MMAL_PARAM_IMAGEFX_DENOISE,
267 MMAL_PARAM_IMAGEFX_EMBOSS,
268 MMAL_PARAM_IMAGEFX_OILPAINT,
269 MMAL_PARAM_IMAGEFX_HATCH,
270 MMAL_PARAM_IMAGEFX_GPEN,
271 MMAL_PARAM_IMAGEFX_PASTEL,
272 MMAL_PARAM_IMAGEFX_WATERCOLOUR,
273 MMAL_PARAM_IMAGEFX_FILM,
274 MMAL_PARAM_IMAGEFX_BLUR,
275 MMAL_PARAM_IMAGEFX_SATURATION,
276 MMAL_PARAM_IMAGEFX_COLOURSWAP,
277 MMAL_PARAM_IMAGEFX_WASHEDOUT,
278 MMAL_PARAM_IMAGEFX_POSTERISE,
279 MMAL_PARAM_IMAGEFX_COLOURPOINT,
280 MMAL_PARAM_IMAGEFX_COLOURBALANCE,
281 MMAL_PARAM_IMAGEFX_CARTOON,
282};
283
284enum MMAL_PARAM_FLICKERAVOID_T {
285 MMAL_PARAM_FLICKERAVOID_OFF,
286 MMAL_PARAM_FLICKERAVOID_AUTO,
287 MMAL_PARAM_FLICKERAVOID_50HZ,
288 MMAL_PARAM_FLICKERAVOID_60HZ,
289 MMAL_PARAM_FLICKERAVOID_MAX = 0x7FFFFFFF
290};
291
292struct mmal_parameter_awbgains {
293 struct mmal_parameter_rational r_gain;
294 struct mmal_parameter_rational b_gain;
295};
296
297
298enum mmal_parameter_rate_control_mode {
299 MMAL_VIDEO_RATECONTROL_DEFAULT,
300 MMAL_VIDEO_RATECONTROL_VARIABLE,
301 MMAL_VIDEO_RATECONTROL_CONSTANT,
302 MMAL_VIDEO_RATECONTROL_VARIABLE_SKIP_FRAMES,
303 MMAL_VIDEO_RATECONTROL_CONSTANT_SKIP_FRAMES
304};
305
306enum mmal_video_profile {
307 MMAL_VIDEO_PROFILE_H263_BASELINE,
308 MMAL_VIDEO_PROFILE_H263_H320CODING,
309 MMAL_VIDEO_PROFILE_H263_BACKWARDCOMPATIBLE,
310 MMAL_VIDEO_PROFILE_H263_ISWV2,
311 MMAL_VIDEO_PROFILE_H263_ISWV3,
312 MMAL_VIDEO_PROFILE_H263_HIGHCOMPRESSION,
313 MMAL_VIDEO_PROFILE_H263_INTERNET,
314 MMAL_VIDEO_PROFILE_H263_INTERLACE,
315 MMAL_VIDEO_PROFILE_H263_HIGHLATENCY,
316 MMAL_VIDEO_PROFILE_MP4V_SIMPLE,
317 MMAL_VIDEO_PROFILE_MP4V_SIMPLESCALABLE,
318 MMAL_VIDEO_PROFILE_MP4V_CORE,
319 MMAL_VIDEO_PROFILE_MP4V_MAIN,
320 MMAL_VIDEO_PROFILE_MP4V_NBIT,
321 MMAL_VIDEO_PROFILE_MP4V_SCALABLETEXTURE,
322 MMAL_VIDEO_PROFILE_MP4V_SIMPLEFACE,
323 MMAL_VIDEO_PROFILE_MP4V_SIMPLEFBA,
324 MMAL_VIDEO_PROFILE_MP4V_BASICANIMATED,
325 MMAL_VIDEO_PROFILE_MP4V_HYBRID,
326 MMAL_VIDEO_PROFILE_MP4V_ADVANCEDREALTIME,
327 MMAL_VIDEO_PROFILE_MP4V_CORESCALABLE,
328 MMAL_VIDEO_PROFILE_MP4V_ADVANCEDCODING,
329 MMAL_VIDEO_PROFILE_MP4V_ADVANCEDCORE,
330 MMAL_VIDEO_PROFILE_MP4V_ADVANCEDSCALABLE,
331 MMAL_VIDEO_PROFILE_MP4V_ADVANCEDSIMPLE,
332 MMAL_VIDEO_PROFILE_H264_BASELINE,
333 MMAL_VIDEO_PROFILE_H264_MAIN,
334 MMAL_VIDEO_PROFILE_H264_EXTENDED,
335 MMAL_VIDEO_PROFILE_H264_HIGH,
336 MMAL_VIDEO_PROFILE_H264_HIGH10,
337 MMAL_VIDEO_PROFILE_H264_HIGH422,
338 MMAL_VIDEO_PROFILE_H264_HIGH444,
339 MMAL_VIDEO_PROFILE_H264_CONSTRAINED_BASELINE,
340 MMAL_VIDEO_PROFILE_DUMMY = 0x7FFFFFFF
341};
342
343enum mmal_video_level {
344 MMAL_VIDEO_LEVEL_H263_10,
345 MMAL_VIDEO_LEVEL_H263_20,
346 MMAL_VIDEO_LEVEL_H263_30,
347 MMAL_VIDEO_LEVEL_H263_40,
348 MMAL_VIDEO_LEVEL_H263_45,
349 MMAL_VIDEO_LEVEL_H263_50,
350 MMAL_VIDEO_LEVEL_H263_60,
351 MMAL_VIDEO_LEVEL_H263_70,
352 MMAL_VIDEO_LEVEL_MP4V_0,
353 MMAL_VIDEO_LEVEL_MP4V_0b,
354 MMAL_VIDEO_LEVEL_MP4V_1,
355 MMAL_VIDEO_LEVEL_MP4V_2,
356 MMAL_VIDEO_LEVEL_MP4V_3,
357 MMAL_VIDEO_LEVEL_MP4V_4,
358 MMAL_VIDEO_LEVEL_MP4V_4a,
359 MMAL_VIDEO_LEVEL_MP4V_5,
360 MMAL_VIDEO_LEVEL_MP4V_6,
361 MMAL_VIDEO_LEVEL_H264_1,
362 MMAL_VIDEO_LEVEL_H264_1b,
363 MMAL_VIDEO_LEVEL_H264_11,
364 MMAL_VIDEO_LEVEL_H264_12,
365 MMAL_VIDEO_LEVEL_H264_13,
366 MMAL_VIDEO_LEVEL_H264_2,
367 MMAL_VIDEO_LEVEL_H264_21,
368 MMAL_VIDEO_LEVEL_H264_22,
369 MMAL_VIDEO_LEVEL_H264_3,
370 MMAL_VIDEO_LEVEL_H264_31,
371 MMAL_VIDEO_LEVEL_H264_32,
372 MMAL_VIDEO_LEVEL_H264_4,
373 MMAL_VIDEO_LEVEL_H264_41,
374 MMAL_VIDEO_LEVEL_H264_42,
375 MMAL_VIDEO_LEVEL_H264_5,
376 MMAL_VIDEO_LEVEL_H264_51,
377 MMAL_VIDEO_LEVEL_DUMMY = 0x7FFFFFFF
378};
379
380struct mmal_parameter_video_profile {
381 enum mmal_video_profile profile;
382 enum mmal_video_level level;
383};
384
385
386
387enum mmal_parameter_video_type {
388
389 MMAL_PARAMETER_DISPLAYREGION = MMAL_PARAMETER_GROUP_VIDEO,
390
391
392 MMAL_PARAMETER_SUPPORTED_PROFILES,
393
394
395 MMAL_PARAMETER_PROFILE,
396
397
398 MMAL_PARAMETER_INTRAPERIOD,
399
400
401 MMAL_PARAMETER_RATECONTROL,
402
403
404 MMAL_PARAMETER_NALUNITFORMAT,
405
406
407 MMAL_PARAMETER_MINIMISE_FRAGMENTATION,
408
409
410
411
412 MMAL_PARAMETER_MB_ROWS_PER_SLICE,
413
414
415 MMAL_PARAMETER_VIDEO_LEVEL_EXTENSION,
416
417
418 MMAL_PARAMETER_VIDEO_EEDE_ENABLE,
419
420
421 MMAL_PARAMETER_VIDEO_EEDE_LOSSRATE,
422
423
424 MMAL_PARAMETER_VIDEO_REQUEST_I_FRAME,
425
426 MMAL_PARAMETER_VIDEO_INTRA_REFRESH,
427
428
429 MMAL_PARAMETER_VIDEO_IMMUTABLE_INPUT,
430
431
432 MMAL_PARAMETER_VIDEO_BIT_RATE,
433
434
435 MMAL_PARAMETER_VIDEO_FRAME_RATE,
436
437
438 MMAL_PARAMETER_VIDEO_ENCODE_MIN_QUANT,
439
440
441 MMAL_PARAMETER_VIDEO_ENCODE_MAX_QUANT,
442
443
444 MMAL_PARAMETER_VIDEO_ENCODE_RC_MODEL,
445
446 MMAL_PARAMETER_EXTRA_BUFFERS,
447
448
449
450
451 MMAL_PARAMETER_VIDEO_ALIGN_HORIZ,
452
453
454
455
456
457 MMAL_PARAMETER_VIDEO_ALIGN_VERT,
458
459
460 MMAL_PARAMETER_VIDEO_DROPPABLE_PFRAMES,
461
462
463 MMAL_PARAMETER_VIDEO_ENCODE_INITIAL_QUANT,
464
465
466 MMAL_PARAMETER_VIDEO_ENCODE_QP_P,
467
468
469 MMAL_PARAMETER_VIDEO_ENCODE_RC_SLICE_DQUANT,
470
471
472 MMAL_PARAMETER_VIDEO_ENCODE_FRAME_LIMIT_BITS,
473
474
475 MMAL_PARAMETER_VIDEO_ENCODE_PEAK_RATE,
476
477
478
479
480 MMAL_PARAMETER_VIDEO_ENCODE_H264_DISABLE_CABAC,
481
482
483 MMAL_PARAMETER_VIDEO_ENCODE_H264_LOW_LATENCY,
484
485
486 MMAL_PARAMETER_VIDEO_ENCODE_H264_AU_DELIMITERS,
487
488
489 MMAL_PARAMETER_VIDEO_ENCODE_H264_DEBLOCK_IDC,
490
491
492 MMAL_PARAMETER_VIDEO_ENCODE_H264_MB_INTRA_MODE,
493
494
495 MMAL_PARAMETER_VIDEO_ENCODE_HEADER_ON_OPEN,
496
497
498 MMAL_PARAMETER_VIDEO_ENCODE_PRECODE_FOR_QP,
499
500
501 MMAL_PARAMETER_VIDEO_DRM_INIT_INFO,
502
503
504 MMAL_PARAMETER_VIDEO_TIMESTAMP_FIFO,
505
506
507 MMAL_PARAMETER_VIDEO_DECODE_ERROR_CONCEALMENT,
508
509
510 MMAL_PARAMETER_VIDEO_DRM_PROTECT_BUFFER,
511
512
513 MMAL_PARAMETER_VIDEO_DECODE_CONFIG_VD3,
514
515
516 MMAL_PARAMETER_VIDEO_ENCODE_H264_VCL_HRD_PARAMETERS,
517
518
519 MMAL_PARAMETER_VIDEO_ENCODE_H264_LOW_DELAY_HRD_FLAG,
520
521
522 MMAL_PARAMETER_VIDEO_ENCODE_INLINE_HEADER
523};
524
525
526enum mmal_parameter_mirror {
527 MMAL_PARAM_MIRROR_NONE,
528 MMAL_PARAM_MIRROR_VERTICAL,
529 MMAL_PARAM_MIRROR_HORIZONTAL,
530 MMAL_PARAM_MIRROR_BOTH,
531};
532
533enum mmal_parameter_displaytransform {
534 MMAL_DISPLAY_ROT0 = 0,
535 MMAL_DISPLAY_MIRROR_ROT0 = 1,
536 MMAL_DISPLAY_MIRROR_ROT180 = 2,
537 MMAL_DISPLAY_ROT180 = 3,
538 MMAL_DISPLAY_MIRROR_ROT90 = 4,
539 MMAL_DISPLAY_ROT270 = 5,
540 MMAL_DISPLAY_ROT90 = 6,
541 MMAL_DISPLAY_MIRROR_ROT270 = 7,
542};
543
544enum mmal_parameter_displaymode {
545 MMAL_DISPLAY_MODE_FILL = 0,
546 MMAL_DISPLAY_MODE_LETTERBOX = 1,
547};
548
549enum mmal_parameter_displayset {
550 MMAL_DISPLAY_SET_NONE = 0,
551 MMAL_DISPLAY_SET_NUM = 1,
552 MMAL_DISPLAY_SET_FULLSCREEN = 2,
553 MMAL_DISPLAY_SET_TRANSFORM = 4,
554 MMAL_DISPLAY_SET_DEST_RECT = 8,
555 MMAL_DISPLAY_SET_SRC_RECT = 0x10,
556 MMAL_DISPLAY_SET_MODE = 0x20,
557 MMAL_DISPLAY_SET_PIXEL = 0x40,
558 MMAL_DISPLAY_SET_NOASPECT = 0x80,
559 MMAL_DISPLAY_SET_LAYER = 0x100,
560 MMAL_DISPLAY_SET_COPYPROTECT = 0x200,
561 MMAL_DISPLAY_SET_ALPHA = 0x400,
562};
563
564struct mmal_parameter_displayregion {
565
566
567
568
569
570 u32 set;
571
572
573
574
575
576
577
578 u32 display_num;
579
580
581
582
583
584
585 s32 fullscreen;
586
587
588
589 u32 transform;
590
591
592
593
594 struct vchiq_mmal_rect dest_rect;
595
596
597
598
599 struct vchiq_mmal_rect src_rect;
600
601
602
603
604
605 s32 noaspect;
606
607
608
609
610
611
612
613
614
615 u32 mode;
616
617
618
619
620
621 u32 pixel_x;
622
623
624
625
626
627 u32 pixel_y;
628
629
630
631
632 u32 layer;
633
634
635
636
637 s32 copyprotect_required;
638
639
640
641
642 u32 alpha;
643};
644
645#define MMAL_MAX_IMAGEFX_PARAMETERS 5
646
647struct mmal_parameter_imagefx_parameters {
648 enum mmal_parameter_imagefx effect;
649 u32 num_effect_params;
650 u32 effect_parameter[MMAL_MAX_IMAGEFX_PARAMETERS];
651};
652
653#define MMAL_PARAMETER_CAMERA_INFO_MAX_CAMERAS 4
654#define MMAL_PARAMETER_CAMERA_INFO_MAX_FLASHES 2
655#define MMAL_PARAMETER_CAMERA_INFO_MAX_STR_LEN 16
656
657struct mmal_parameter_camera_info_camera_t {
658 u32 port_id;
659 u32 max_width;
660 u32 max_height;
661 u32 lens_present;
662 u8 camera_name[MMAL_PARAMETER_CAMERA_INFO_MAX_STR_LEN];
663};
664
665enum mmal_parameter_camera_info_flash_type_t {
666
667 MMAL_PARAMETER_CAMERA_INFO_FLASH_TYPE_XENON = 0,
668 MMAL_PARAMETER_CAMERA_INFO_FLASH_TYPE_LED = 1,
669 MMAL_PARAMETER_CAMERA_INFO_FLASH_TYPE_OTHER = 2,
670 MMAL_PARAMETER_CAMERA_INFO_FLASH_TYPE_MAX = 0x7FFFFFFF
671};
672
673struct mmal_parameter_camera_info_flash_t {
674 enum mmal_parameter_camera_info_flash_type_t flash_type;
675};
676
677struct mmal_parameter_camera_info_t {
678 u32 num_cameras;
679 u32 num_flashes;
680 struct mmal_parameter_camera_info_camera_t
681 cameras[MMAL_PARAMETER_CAMERA_INFO_MAX_CAMERAS];
682 struct mmal_parameter_camera_info_flash_t
683 flashes[MMAL_PARAMETER_CAMERA_INFO_MAX_FLASHES];
684};
685