aboutsummaryrefslogtreecommitdiffstats
path: root/include/media
diff options
context:
space:
mode:
Diffstat (limited to 'include/media')
-rw-r--r--include/media/ad5820.h41
-rw-r--r--include/media/ar0832_main.h106
-rw-r--r--include/media/nvc.h284
-rw-r--r--include/media/nvc_focus.h63
-rw-r--r--include/media/nvc_image.h194
-rw-r--r--include/media/nvc_torch.h43
-rw-r--r--include/media/ov14810.h47
-rw-r--r--include/media/ov2710.h47
-rw-r--r--include/media/ov5650.h93
-rw-r--r--include/media/ov9726.h62
-rw-r--r--include/media/pwc-ioctl.h324
-rw-r--r--include/media/sh532u.h319
-rw-r--r--include/media/soc380.h59
-rw-r--r--include/media/ssl3250a.h38
-rw-r--r--include/media/tegra_camera.h55
-rw-r--r--include/media/tegra_dtv.h134
-rw-r--r--include/media/tps61050.h36
17 files changed, 1945 insertions, 0 deletions
diff --git a/include/media/ad5820.h b/include/media/ad5820.h
new file mode 100644
index 00000000000..c3e71011340
--- /dev/null
+++ b/include/media/ad5820.h
@@ -0,0 +1,41 @@
1/*
2 * Copyright (C) 2010-2011 NVIDIA Corporation.
3 *
4 * Contributors:
5 * Sachin Nikam <snikam@nvidia.com>
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
19 * 02111-1307, USA
20 */
21
22#ifndef __AD5820_H__
23#define __AD5820_H__
24
25#include <linux/ioctl.h> /* For IOCTL macros */
26
27#define AD5820_IOCTL_GET_CONFIG _IOR('o', 1, struct ad5820_config)
28#define AD5820_IOCTL_SET_POSITION _IOW('o', 2, u32)
29
30struct ad5820_config {
31 __u32 settle_time;
32 __u32 actuator_range;
33 __u32 pos_low;
34 __u32 pos_high;
35 float focal_length;
36 float fnumber;
37 float max_aperture;
38};
39
40#endif /* __AD5820_H__ */
41
diff --git a/include/media/ar0832_main.h b/include/media/ar0832_main.h
new file mode 100644
index 00000000000..f5e3713b46f
--- /dev/null
+++ b/include/media/ar0832_main.h
@@ -0,0 +1,106 @@
1/*
2* ar0832_main.h
3*
4* Copyright (c) 2011, NVIDIA, All Rights Reserved.
5*
6* This file is licensed under the terms of the GNU General Public License
7* version 2. This program is licensed "as is" without any warranty of any
8* kind, whether express or implied.
9*/
10
11#ifndef __AR0832_MAIN_H__
12#define __AR0832_MAIN_H__
13
14#include <linux/ioctl.h> /* For IOCTL macros */
15
16#define AR0832_IOCTL_SET_MODE _IOW('o', 0x01, struct ar0832_mode)
17#define AR0832_IOCTL_SET_FRAME_LENGTH _IOW('o', 0x02, __u32)
18#define AR0832_IOCTL_SET_COARSE_TIME _IOW('o', 0x03, __u32)
19#define AR0832_IOCTL_SET_GAIN _IOW('o', 0x04, __u16)
20#define AR0832_IOCTL_GET_STATUS _IOR('o', 0x05, __u8)
21#define AR0832_IOCTL_GET_OTP _IOR('o', 0x06, struct ar0832_otp_data)
22#define AR0832_IOCTL_TEST_PATTERN _IOW('o', 0x07, enum ar0832_test_pattern)
23#define AR0832_IOCTL_SET_POWER_ON _IOW('o', 0x08, struct ar0832_mode)
24#define AR0832_IOCTL_SET_SENSOR_REGION _IOW('o', 0x09, struct ar0832_stereo_region)
25
26#define AR0832_FOCUSER_IOCTL_GET_CONFIG _IOR('o', 0x10, struct ar0832_focuser_config)
27#define AR0832_FOCUSER_IOCTL_SET_POSITION _IOW('o', 0x11, __u32)
28
29#define AR0832_IOCTL_GET_SENSOR_ID _IOR('o', 0x12, __u16)
30
31#define AR0832_SENSOR_ID_8141 0x1006
32#define AR0832_SENSOR_ID_8140 0x3006
33
34enum ar0832_test_pattern {
35 TEST_PATTERN_NONE,
36 TEST_PATTERN_COLORBARS,
37 TEST_PATTERN_CHECKERBOARD
38};
39
40struct ar0832_otp_data {
41 /* Only the first 5 bytes are actually used. */
42 __u8 sensor_serial_num[6];
43 __u8 part_num[8];
44 __u8 lens_id[1];
45 __u8 manufacture_id[2];
46 __u8 factory_id[2];
47 __u8 manufacture_date[9];
48 __u8 manufacture_line[2];
49
50 __u32 module_serial_num;
51 __u8 focuser_liftoff[2];
52 __u8 focuser_macro[2];
53 __u8 reserved1[12];
54 __u8 shutter_cal[16];
55 __u8 reserved2[183];
56
57 /* Big-endian. CRC16 over 0x00-0x41 (inclusive) */
58 __u16 crc;
59 __u8 reserved3[3];
60 __u8 auto_load[2];
61} __attribute__ ((packed));
62
63struct ar0832_mode {
64 int xres;
65 int yres;
66 __u32 frame_length;
67 __u32 coarse_time;
68 __u16 gain;
69 int stereo;
70};
71
72struct ar0832_point{
73 int x;
74 int y;
75};
76
77struct ar0832_reg {
78 __u16 addr;
79 __u16 val;
80};
81
82struct ar0832_stereo_region {
83 int camera_index;
84 struct ar0832_point image_start;
85 struct ar0832_point image_end;
86};
87
88struct ar0832_focuser_config {
89 __u32 settle_time;
90 __u32 actuator_range;
91 __u32 pos_low;
92 __u32 pos_high;
93 __u32 focal_length;
94 __u32 fnumber;
95 __u32 max_aperture;
96};
97
98#ifdef __KERNEL__
99struct ar0832_platform_data {
100 int (*power_on)(int is_stereo);
101 int (*power_off)(int is_stereo);
102 char *id;
103};
104#endif /* __KERNEL__ */
105
106#endif
diff --git a/include/media/nvc.h b/include/media/nvc.h
new file mode 100644
index 00000000000..9b24b0ea019
--- /dev/null
+++ b/include/media/nvc.h
@@ -0,0 +1,284 @@
1/* Copyright (C) 2012 NVIDIA Corporation.
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 as
5 * published by the Free Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program; if not, write to the Free Software
14 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
15 * 02111-1307, USA
16 */
17
18#ifndef __NVC_H__
19#define __NVC_H__
20
21#include <linux/ioctl.h>
22
23#define NVC_INT2FLOAT_DIVISOR_1K 1000
24#define NVC_INT2FLOAT_DIVISOR_1M 1000000
25#define NVC_INT2FLOAT_DIVISOR 1000
26
27struct nvc_param {
28 int param;
29 __u32 sizeofvalue;
30 void *p_value;
31} __packed;
32
33enum nvc_params {
34 NVC_PARAM_EXPOSURE = 0,
35 NVC_PARAM_GAIN,
36 NVC_PARAM_FRAMERATE,
37 NVC_PARAM_MAX_FRAMERATE,
38 NVC_PARAM_INPUT_CLOCK,
39 NVC_PARAM_LOCUS,
40 NVC_PARAM_FLASH_CAPS,
41 NVC_PARAM_FLASH_LEVEL,
42 NVC_PARAM_FLASH_PIN_STATE,
43 NVC_PARAM_TORCH_CAPS,
44 NVC_PARAM_TORCH_LEVEL,
45 NVC_PARAM_FOCAL_LEN,
46 NVC_PARAM_MAX_APERTURE,
47 NVC_PARAM_FNUMBER,
48 NVC_PARAM_EXPOSURE_LIMITS,
49 NVC_PARAM_GAIN_LIMITS,
50 NVC_PARAM_FRAMERATE_LIMITS,
51 NVC_PARAM_FRAME_RATES,
52 NVC_PARAM_CLOCK_LIMITS,
53 NVC_PARAM_EXP_LATCH_TIME,