blob: 5708b8fc0db0dffd52b113266ced7a73ae79439a [file] [log] [blame]
Greg Hackmanndb7d80d2012-09-26 14:05:35 -07001/****************************************************************************
2 ****************************************************************************
3 ***
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.
9 ***
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
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
Jiho Chang20c51682012-03-24 05:37:21 +090019#ifndef __LINUX_V4L2_SUBDEV_H
20#define __LINUX_V4L2_SUBDEV_H
Jiho Chang20c51682012-03-24 05:37:21 +090021#include <linux/ioctl.h>
22#include <linux/types.h>
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Jiho Chang20c51682012-03-24 05:37:21 +090024#include "v4l2-mediabus.h"
Jiho Chang20c51682012-03-24 05:37:21 +090025enum v4l2_subdev_format_whence {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070026 V4L2_SUBDEV_FORMAT_TRY = 0,
27 V4L2_SUBDEV_FORMAT_ACTIVE = 1,
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Jiho Chang20c51682012-03-24 05:37:21 +090029};
Jiho Chang20c51682012-03-24 05:37:21 +090030struct v4l2_subdev_format {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070031 __u32 which;
32 __u32 pad;
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 struct v4l2_mbus_framefmt format;
35 __u32 reserved[8];
Jiho Chang20c51682012-03-24 05:37:21 +090036};
Jiho Chang20c51682012-03-24 05:37:21 +090037struct v4l2_subdev_crop {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 __u32 which;
40 __u32 pad;
41 struct v4l2_rect rect;
42 __u32 reserved[8];
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Jiho Chang20c51682012-03-24 05:37:21 +090044};
Jiho Chang20c51682012-03-24 05:37:21 +090045struct v4l2_subdev_mbus_code_enum {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070046 __u32 pad;
47 __u32 index;
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49 __u32 code;
50 __u32 reserved[9];
Jiho Chang20c51682012-03-24 05:37:21 +090051};
Jiho Chang20c51682012-03-24 05:37:21 +090052struct v4l2_subdev_frame_size_enum {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54 __u32 index;
55 __u32 pad;
56 __u32 code;
57 __u32 min_width;
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59 __u32 max_width;
60 __u32 min_height;
61 __u32 max_height;
62 __u32 reserved[9];
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Jiho Chang20c51682012-03-24 05:37:21 +090064};
Jiho Chang20c51682012-03-24 05:37:21 +090065struct v4l2_subdev_frame_interval {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070066 __u32 pad;
67 struct v4l2_fract interval;
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 __u32 reserved[9];
Jiho Chang20c51682012-03-24 05:37:21 +090070};
Jiho Chang20c51682012-03-24 05:37:21 +090071struct v4l2_subdev_frame_interval_enum {
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070072 __u32 index;
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74 __u32 pad;
75 __u32 code;
76 __u32 width;
77 __u32 height;
78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 struct v4l2_fract interval;
80 __u32 reserved[9];
Jiho Chang20c51682012-03-24 05:37:21 +090081};
Greg Hackmanndb7d80d2012-09-26 14:05:35 -070082#define VIDIOC_SUBDEV_G_FMT _IOWR('V', 4, struct v4l2_subdev_format)
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84#define VIDIOC_SUBDEV_S_FMT _IOWR('V', 5, struct v4l2_subdev_format)
85#define VIDIOC_SUBDEV_G_FRAME_INTERVAL _IOWR('V', 21, struct v4l2_subdev_frame_interval)
86#define VIDIOC_SUBDEV_S_FRAME_INTERVAL _IOWR('V', 22, struct v4l2_subdev_frame_interval)
87#define VIDIOC_SUBDEV_ENUM_MBUS_CODE _IOWR('V', 2, struct v4l2_subdev_mbus_code_enum)
88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89#define VIDIOC_SUBDEV_ENUM_FRAME_SIZE _IOWR('V', 74, struct v4l2_subdev_frame_size_enum)
90#define VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL _IOWR('V', 75, struct v4l2_subdev_frame_interval_enum)
91#define VIDIOC_SUBDEV_G_CROP _IOWR('V', 59, struct v4l2_subdev_crop)
92#define VIDIOC_SUBDEV_S_CROP _IOWR('V', 60, struct v4l2_subdev_crop)
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Jiho Chang20c51682012-03-24 05:37:21 +090094#endif