diff options
Diffstat (limited to 'include/media')
-rw-r--r-- | include/media/adv7183.h | 47 | ||||
-rw-r--r-- | include/media/blackfin/bfin_capture.h | 37 | ||||
-rw-r--r-- | include/media/blackfin/ppi.h | 74 | ||||
-rw-r--r-- | include/media/davinci/vpif_types.h | 2 | ||||
-rw-r--r-- | include/media/gpio-ir-recv.h | 22 | ||||
-rw-r--r-- | include/media/media-device.h | 3 | ||||
-rw-r--r-- | include/media/mt9m032.h | 36 | ||||
-rw-r--r-- | include/media/rc-map.h | 3 | ||||
-rw-r--r-- | include/media/s5p_hdmi.h | 35 | ||||
-rw-r--r-- | include/media/sh_mobile_ceu.h | 2 | ||||
-rw-r--r-- | include/media/sii9234.h | 24 | ||||
-rw-r--r-- | include/media/tuner.h | 1 | ||||
-rw-r--r-- | include/media/v4l2-chip-ident.h | 6 | ||||
-rw-r--r-- | include/media/v4l2-ctrls.h | 14 | ||||
-rw-r--r-- | include/media/v4l2-dev.h | 3 | ||||
-rw-r--r-- | include/media/v4l2-ioctl.h | 5 |
16 files changed, 311 insertions, 3 deletions
diff --git a/include/media/adv7183.h b/include/media/adv7183.h new file mode 100644 index 000000000000..c5c2d377c0a6 --- /dev/null +++ b/include/media/adv7183.h | |||
@@ -0,0 +1,47 @@ | |||
1 | /* | ||
2 | * adv7183.h - definition for adv7183 inputs and outputs | ||
3 | * | ||
4 | * Copyright (c) 2011 Analog Devices Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
18 | */ | ||
19 | |||
20 | #ifndef _ADV7183_H_ | ||
21 | #define _ADV7183_H_ | ||
22 | |||
23 | /* ADV7183 HW inputs */ | ||
24 | #define ADV7183_COMPOSITE0 0 /* CVBS in on AIN1 */ | ||
25 | #define ADV7183_COMPOSITE1 1 /* CVBS in on AIN2 */ | ||
26 | #define ADV7183_COMPOSITE2 2 /* CVBS in on AIN3 */ | ||
27 | #define ADV7183_COMPOSITE3 3 /* CVBS in on AIN4 */ | ||
28 | #define ADV7183_COMPOSITE4 4 /* CVBS in on AIN5 */ | ||
29 | #define ADV7183_COMPOSITE5 5 /* CVBS in on AIN6 */ | ||
30 | #define ADV7183_COMPOSITE6 6 /* CVBS in on AIN7 */ | ||
31 | #define ADV7183_COMPOSITE7 7 /* CVBS in on AIN8 */ | ||
32 | #define ADV7183_COMPOSITE8 8 /* CVBS in on AIN9 */ | ||
33 | #define ADV7183_COMPOSITE9 9 /* CVBS in on AIN10 */ | ||
34 | #define ADV7183_COMPOSITE10 10 /* CVBS in on AIN11 */ | ||
35 | |||
36 | #define ADV7183_SVIDEO0 11 /* Y on AIN1, C on AIN4 */ | ||
37 | #define ADV7183_SVIDEO1 12 /* Y on AIN2, C on AIN5 */ | ||
38 | #define ADV7183_SVIDEO2 13 /* Y on AIN3, C on AIN6 */ | ||
39 | |||
40 | #define ADV7183_COMPONENT0 14 /* Y on AIN1, Pr on AIN4, Pb on AIN5 */ | ||
41 | #define ADV7183_COMPONENT1 15 /* Y on AIN2, Pr on AIN3, Pb on AIN6 */ | ||
42 | |||
43 | /* ADV7183 HW outputs */ | ||
44 | #define ADV7183_8BIT_OUT 0 | ||
45 | #define ADV7183_16BIT_OUT 1 | ||
46 | |||
47 | #endif | ||
diff --git a/include/media/blackfin/bfin_capture.h b/include/media/blackfin/bfin_capture.h new file mode 100644 index 000000000000..2038a8a3f8aa --- /dev/null +++ b/include/media/blackfin/bfin_capture.h | |||
@@ -0,0 +1,37 @@ | |||
1 | #ifndef _BFIN_CAPTURE_H_ | ||
2 | #define _BFIN_CAPTURE_H_ | ||
3 | |||
4 | #include <linux/i2c.h> | ||
5 | |||
6 | struct v4l2_input; | ||
7 | struct ppi_info; | ||
8 | |||
9 | struct bcap_route { | ||
10 | u32 input; | ||
11 | u32 output; | ||
12 | }; | ||
13 | |||
14 | struct bfin_capture_config { | ||
15 | /* card name */ | ||
16 | char *card_name; | ||
17 | /* inputs available at the sub device */ | ||
18 | struct v4l2_input *inputs; | ||
19 | /* number of inputs supported */ | ||
20 | int num_inputs; | ||
21 | /* routing information for each input */ | ||
22 | struct bcap_route *routes; | ||
23 | /* i2c bus adapter no */ | ||
24 | int i2c_adapter_id; | ||
25 | /* i2c subdevice board info */ | ||
26 | struct i2c_board_info board_info; | ||
27 | /* ppi board info */ | ||
28 | const struct ppi_info *ppi_info; | ||
29 | /* ppi control */ | ||
30 | unsigned long ppi_control; | ||
31 | /* ppi interrupt mask */ | ||
32 | u32 int_mask; | ||
33 | /* horizontal blanking clocks */ | ||
34 | int blank_clocks; | ||
35 | }; | ||
36 | |||
37 | #endif | ||
diff --git a/include/media/blackfin/ppi.h b/include/media/blackfin/ppi.h new file mode 100644 index 000000000000..8f72f8a0b3d0 --- /dev/null +++ b/include/media/blackfin/ppi.h | |||
@@ -0,0 +1,74 @@ | |||
1 | /* | ||
2 | * Analog Devices PPI header file | ||
3 | * | ||
4 | * Copyright (c) 2011 Analog Devices Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, | ||
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
18 | */ | ||
19 | |||
20 | #ifndef _PPI_H_ | ||
21 | #define _PPI_H_ | ||
22 | |||
23 | #include <linux/interrupt.h> | ||
24 | |||
25 | #ifdef EPPI_EN | ||
26 | #define PORT_EN EPPI_EN | ||
27 | #define DMA32 0 | ||
28 | #define PACK_EN PACKEN | ||
29 | #endif | ||
30 | |||
31 | struct ppi_if; | ||
32 | |||
33 | struct ppi_params { | ||
34 | int width; | ||
35 | int height; | ||
36 | int bpp; | ||
37 | unsigned long ppi_control; | ||
38 | u32 int_mask; | ||
39 | int blank_clocks; | ||
40 | }; | ||
41 | |||
42 | struct ppi_ops { | ||
43 | int (*attach_irq)(struct ppi_if *ppi, irq_handler_t handler); | ||
44 | void (*detach_irq)(struct ppi_if *ppi); | ||
45 | int (*start)(struct ppi_if *ppi); | ||
46 | int (*stop)(struct ppi_if *ppi); | ||
47 | int (*set_params)(struct ppi_if *ppi, struct ppi_params *params); | ||
48 | void (*update_addr)(struct ppi_if *ppi, unsigned long addr); | ||
49 | }; | ||
50 | |||
51 | enum ppi_type { | ||
52 | PPI_TYPE_PPI, | ||
53 | PPI_TYPE_EPPI, | ||
54 | }; | ||
55 | |||
56 | struct ppi_info { | ||
57 | enum ppi_type type; | ||
58 | int dma_ch; | ||
59 | int irq_err; | ||
60 | void __iomem *base; | ||
61 | const unsigned short *pin_req; | ||
62 | }; | ||
63 | |||
64 | struct ppi_if { | ||
65 | unsigned long ppi_control; | ||
66 | const struct ppi_ops *ops; | ||
67 | const struct ppi_info *info; | ||
68 | bool err_int; | ||
69 | void *priv; | ||
70 | }; | ||
71 | |||
72 | struct ppi_if *ppi_create_instance(const struct ppi_info *info); | ||
73 | void ppi_delete_instance(struct ppi_if *ppi); | ||
74 | #endif | ||
diff --git a/include/media/davinci/vpif_types.h b/include/media/davinci/vpif_types.h index 9929b05cff3a..bd8217c2577c 100644 --- a/include/media/davinci/vpif_types.h +++ b/include/media/davinci/vpif_types.h | |||
@@ -17,6 +17,8 @@ | |||
17 | #ifndef _VPIF_TYPES_H | 17 | #ifndef _VPIF_TYPES_H |
18 | #define _VPIF_TYPES_H | 18 | #define _VPIF_TYPES_H |
19 | 19 | ||
20 | #include <linux/i2c.h> | ||
21 | |||
20 | #define VPIF_CAPTURE_MAX_CHANNELS 2 | 22 | #define VPIF_CAPTURE_MAX_CHANNELS 2 |
21 | 23 | ||
22 | enum vpif_if_type { | 24 | enum vpif_if_type { |
diff --git a/include/media/gpio-ir-recv.h b/include/media/gpio-ir-recv.h new file mode 100644 index 000000000000..67797bf5d432 --- /dev/null +++ b/include/media/gpio-ir-recv.h | |||
@@ -0,0 +1,22 @@ | |||
1 | /* Copyright (c) 2012, Code Aurora Forum. All rights reserved. | ||
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 and | ||
5 | * only version 2 as 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 | |||
13 | #ifndef __GPIO_IR_RECV_H__ | ||
14 | #define __GPIO_IR_RECV_H__ | ||
15 | |||
16 | struct gpio_ir_recv_platform_data { | ||
17 | int gpio_nr; | ||
18 | bool active_low; | ||
19 | }; | ||
20 | |||
21 | #endif /* __GPIO_IR_RECV_H__ */ | ||
22 | |||
diff --git a/include/media/media-device.h b/include/media/media-device.h index 6a27d916c250..eaade9815bb6 100644 --- a/include/media/media-device.h +++ b/include/media/media-device.h | |||
@@ -23,7 +23,6 @@ | |||
23 | #ifndef _MEDIA_DEVICE_H | 23 | #ifndef _MEDIA_DEVICE_H |
24 | #define _MEDIA_DEVICE_H | 24 | #define _MEDIA_DEVICE_H |
25 | 25 | ||
26 | #include <linux/device.h> | ||
27 | #include <linux/list.h> | 26 | #include <linux/list.h> |
28 | #include <linux/mutex.h> | 27 | #include <linux/mutex.h> |
29 | #include <linux/spinlock.h> | 28 | #include <linux/spinlock.h> |
@@ -31,6 +30,8 @@ | |||
31 | #include <media/media-devnode.h> | 30 | #include <media/media-devnode.h> |
32 | #include <media/media-entity.h> | 31 | #include <media/media-entity.h> |
33 | 32 | ||
33 | struct device; | ||
34 | |||
34 | /** | 35 | /** |
35 | * struct media_device - Media device | 36 | * struct media_device - Media device |
36 | * @dev: Parent device | 37 | * @dev: Parent device |
diff --git a/include/media/mt9m032.h b/include/media/mt9m032.h new file mode 100644 index 000000000000..c3a78114d7a6 --- /dev/null +++ b/include/media/mt9m032.h | |||
@@ -0,0 +1,36 @@ | |||
1 | /* | ||
2 | * Driver for MT9M032 CMOS Image Sensor from Micron | ||
3 | * | ||
4 | * Copyright (C) 2010-2011 Lund Engineering | ||
5 | * Contact: Gil Lund <gwlund@lundeng.com> | ||
6 | * Author: Martin Hostettler <martin@neutronstar.dyndns.org> | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or | ||
9 | * modify it under the terms of the GNU General Public License | ||
10 | * version 2 as published by the Free Software Foundation. | ||
11 | * | ||
12 | * This program is distributed in the hope that it will be useful, but | ||
13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
15 | * General Public License for more details. | ||
16 | * | ||
17 | * You should have received a copy of the GNU General Public License | ||
18 | * along with this program; if not, write to the Free Software | ||
19 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA | ||
20 | * 02110-1301 USA | ||
21 | * | ||
22 | */ | ||
23 | |||
24 | #ifndef MT9M032_H | ||
25 | #define MT9M032_H | ||
26 | |||
27 | #define MT9M032_NAME "mt9m032" | ||
28 | #define MT9M032_I2C_ADDR (0xb8 >> 1) | ||
29 | |||
30 | struct mt9m032_platform_data { | ||
31 | u32 ext_clock; | ||
32 | u32 pix_clock; | ||
33 | bool invert_pixclock; | ||
34 | |||
35 | }; | ||
36 | #endif /* MT9M032_H */ | ||
diff --git a/include/media/rc-map.h b/include/media/rc-map.h index f688bde61228..8db6741c1256 100644 --- a/include/media/rc-map.h +++ b/include/media/rc-map.h | |||
@@ -102,8 +102,11 @@ void rc_map_init(void); | |||
102 | #define RC_MAP_IMON_MCE "rc-imon-mce" | 102 | #define RC_MAP_IMON_MCE "rc-imon-mce" |
103 | #define RC_MAP_IMON_PAD "rc-imon-pad" | 103 | #define RC_MAP_IMON_PAD "rc-imon-pad" |
104 | #define RC_MAP_IODATA_BCTV7E "rc-iodata-bctv7e" | 104 | #define RC_MAP_IODATA_BCTV7E "rc-iodata-bctv7e" |
105 | #define RC_MAP_IT913X_V1 "rc-it913x-v1" | ||
106 | #define RC_MAP_IT913X_V2 "rc-it913x-v2" | ||
105 | #define RC_MAP_KAIOMY "rc-kaiomy" | 107 | #define RC_MAP_KAIOMY "rc-kaiomy" |
106 | #define RC_MAP_KWORLD_315U "rc-kworld-315u" | 108 | #define RC_MAP_KWORLD_315U "rc-kworld-315u" |
109 | #define RC_MAP_KWORLD_PC150U "rc-kworld-pc150u" | ||
107 | #define RC_MAP_KWORLD_PLUS_TV_ANALOG "rc-kworld-plus-tv-analog" | 110 | #define RC_MAP_KWORLD_PLUS_TV_ANALOG "rc-kworld-plus-tv-analog" |
108 | #define RC_MAP_LEADTEK_Y04G0051 "rc-leadtek-y04g0051" | 111 | #define RC_MAP_LEADTEK_Y04G0051 "rc-leadtek-y04g0051" |
109 | #define RC_MAP_LIRC "rc-lirc" | 112 | #define RC_MAP_LIRC "rc-lirc" |
diff --git a/include/media/s5p_hdmi.h b/include/media/s5p_hdmi.h new file mode 100644 index 000000000000..361a751f73af --- /dev/null +++ b/include/media/s5p_hdmi.h | |||
@@ -0,0 +1,35 @@ | |||
1 | /* | ||
2 | * Driver header for S5P HDMI chip. | ||
3 | * | ||
4 | * Copyright (c) 2011 Samsung Electronics, Co. Ltd | ||
5 | * Contact: Tomasz Stanislawski <t.stanislaws@samsung.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 as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | |||
13 | #ifndef S5P_HDMI_H | ||
14 | #define S5P_HDMI_H | ||
15 | |||
16 | struct i2c_board_info; | ||
17 | |||
18 | /** | ||
19 | * @hdmiphy_bus: controller id for HDMIPHY bus | ||
20 | * @hdmiphy_info: template for HDMIPHY I2C device | ||
21 | * @mhl_bus: controller id for MHL control bus | ||
22 | * @mhl_info: template for MHL I2C device | ||
23 | * | ||
24 | * NULL pointer for *_info fields indicates that | ||
25 | * the corresponding chip is not present | ||
26 | */ | ||
27 | struct s5p_hdmi_platform_data { | ||
28 | int hdmiphy_bus; | ||
29 | struct i2c_board_info *hdmiphy_info; | ||
30 | int mhl_bus; | ||
31 | struct i2c_board_info *mhl_info; | ||
32 | }; | ||
33 | |||
34 | #endif /* S5P_HDMI_H */ | ||
35 | |||
diff --git a/include/media/sh_mobile_ceu.h b/include/media/sh_mobile_ceu.h index 48413b410f15..a90a765f18da 100644 --- a/include/media/sh_mobile_ceu.h +++ b/include/media/sh_mobile_ceu.h | |||
@@ -18,6 +18,8 @@ struct sh_mobile_ceu_companion { | |||
18 | 18 | ||
19 | struct sh_mobile_ceu_info { | 19 | struct sh_mobile_ceu_info { |
20 | unsigned long flags; | 20 | unsigned long flags; |
21 | int max_width; | ||
22 | int max_height; | ||
21 | struct sh_mobile_ceu_companion *csi2; | 23 | struct sh_mobile_ceu_companion *csi2; |
22 | }; | 24 | }; |
23 | 25 | ||
diff --git a/include/media/sii9234.h b/include/media/sii9234.h new file mode 100644 index 000000000000..6a4a809fe9a3 --- /dev/null +++ b/include/media/sii9234.h | |||
@@ -0,0 +1,24 @@ | |||
1 | /* | ||
2 | * Driver header for SII9234 MHL converter chip. | ||
3 | * | ||
4 | * Copyright (c) 2011 Samsung Electronics, Co. Ltd | ||
5 | * Contact: Tomasz Stanislawski <t.stanislaws@samsung.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 as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | |||
13 | #ifndef SII9234_H | ||
14 | #define SII9234_H | ||
15 | |||
16 | /** | ||
17 | * @gpio_n_reset: GPIO driving nRESET pin | ||
18 | */ | ||
19 | |||
20 | struct sii9234_platform_data { | ||
21 | int gpio_n_reset; | ||
22 | }; | ||
23 | |||
24 | #endif /* SII9234_H */ | ||
diff --git a/include/media/tuner.h b/include/media/tuner.h index 29e1920e7339..926aff9bdf65 100644 --- a/include/media/tuner.h +++ b/include/media/tuner.h | |||
@@ -136,6 +136,7 @@ | |||
136 | #define TUNER_TENA_TNF_5337 86 | 136 | #define TUNER_TENA_TNF_5337 86 |
137 | 137 | ||
138 | #define TUNER_XC4000 87 /* Xceive Silicon Tuner */ | 138 | #define TUNER_XC4000 87 /* Xceive Silicon Tuner */ |
139 | #define TUNER_XC5000C 88 /* Xceive Silicon Tuner */ | ||
139 | 140 | ||
140 | /* tv card specific */ | 141 | /* tv card specific */ |
141 | #define TDA9887_PRESENT (1<<0) | 142 | #define TDA9887_PRESENT (1<<0) |
diff --git a/include/media/v4l2-chip-ident.h b/include/media/v4l2-chip-ident.h index 810a20928a21..7395c815939d 100644 --- a/include/media/v4l2-chip-ident.h +++ b/include/media/v4l2-chip-ident.h | |||
@@ -143,6 +143,9 @@ enum { | |||
143 | /* module saa6588: just ident 6588 */ | 143 | /* module saa6588: just ident 6588 */ |
144 | V4L2_IDENT_SAA6588 = 6588, | 144 | V4L2_IDENT_SAA6588 = 6588, |
145 | 145 | ||
146 | /* module vs6624: just ident 6624 */ | ||
147 | V4L2_IDENT_VS6624 = 6624, | ||
148 | |||
146 | /* module saa6752hs: reserved range 6750-6759 */ | 149 | /* module saa6752hs: reserved range 6750-6759 */ |
147 | V4L2_IDENT_SAA6752HS = 6752, | 150 | V4L2_IDENT_SAA6752HS = 6752, |
148 | V4L2_IDENT_SAA6752HS_AC3 = 6753, | 151 | V4L2_IDENT_SAA6752HS_AC3 = 6753, |
@@ -162,6 +165,9 @@ enum { | |||
162 | /* module adv7180: just ident 7180 */ | 165 | /* module adv7180: just ident 7180 */ |
163 | V4L2_IDENT_ADV7180 = 7180, | 166 | V4L2_IDENT_ADV7180 = 7180, |
164 | 167 | ||
168 | /* module adv7183: just ident 7183 */ | ||
169 | V4L2_IDENT_ADV7183 = 7183, | ||
170 | |||
165 | /* module saa7185: just ident 7185 */ | 171 | /* module saa7185: just ident 7185 */ |
166 | V4L2_IDENT_SAA7185 = 7185, | 172 | V4L2_IDENT_SAA7185 = 7185, |
167 | 173 | ||
diff --git a/include/media/v4l2-ctrls.h b/include/media/v4l2-ctrls.h index eeb3df637144..11e67562b3ac 100644 --- a/include/media/v4l2-ctrls.h +++ b/include/media/v4l2-ctrls.h | |||
@@ -22,7 +22,6 @@ | |||
22 | #define _V4L2_CTRLS_H | 22 | #define _V4L2_CTRLS_H |
23 | 23 | ||
24 | #include <linux/list.h> | 24 | #include <linux/list.h> |
25 | #include <linux/device.h> | ||
26 | #include <linux/videodev2.h> | 25 | #include <linux/videodev2.h> |
27 | 26 | ||
28 | /* forward references */ | 27 | /* forward references */ |
@@ -33,6 +32,7 @@ struct video_device; | |||
33 | struct v4l2_subdev; | 32 | struct v4l2_subdev; |
34 | struct v4l2_subscribed_event; | 33 | struct v4l2_subscribed_event; |
35 | struct v4l2_fh; | 34 | struct v4l2_fh; |
35 | struct poll_table_struct; | ||
36 | 36 | ||
37 | /** struct v4l2_ctrl_ops - The control operations that the driver has to provide. | 37 | /** struct v4l2_ctrl_ops - The control operations that the driver has to provide. |
38 | * @g_volatile_ctrl: Get a new value for this control. Generally only relevant | 38 | * @g_volatile_ctrl: Get a new value for this control. Generally only relevant |
@@ -492,6 +492,18 @@ void v4l2_ctrl_add_event(struct v4l2_ctrl *ctrl, | |||
492 | void v4l2_ctrl_del_event(struct v4l2_ctrl *ctrl, | 492 | void v4l2_ctrl_del_event(struct v4l2_ctrl *ctrl, |
493 | struct v4l2_subscribed_event *sev); | 493 | struct v4l2_subscribed_event *sev); |
494 | 494 | ||
495 | /* Can be used as a vidioc_log_status function that just dumps all controls | ||
496 | associated with the filehandle. */ | ||
497 | int v4l2_ctrl_log_status(struct file *file, void *fh); | ||
498 | |||
499 | /* Can be used as a vidioc_subscribe_event function that just subscribes | ||
500 | control events. */ | ||
501 | int v4l2_ctrl_subscribe_event(struct v4l2_fh *fh, | ||
502 | struct v4l2_event_subscription *sub); | ||
503 | |||
504 | /* Can be used as a poll function that just polls for control events. */ | ||
505 | unsigned int v4l2_ctrl_poll(struct file *file, struct poll_table_struct *wait); | ||
506 | |||
495 | /* Helpers for ioctl_ops. If hdl == NULL then they will all return -EINVAL. */ | 507 | /* Helpers for ioctl_ops. If hdl == NULL then they will all return -EINVAL. */ |
496 | int v4l2_queryctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_queryctrl *qc); | 508 | int v4l2_queryctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_queryctrl *qc); |
497 | int v4l2_querymenu(struct v4l2_ctrl_handler *hdl, struct v4l2_querymenu *qm); | 509 | int v4l2_querymenu(struct v4l2_ctrl_handler *hdl, struct v4l2_querymenu *qm); |
diff --git a/include/media/v4l2-dev.h b/include/media/v4l2-dev.h index c7c40f1d2624..96d22215cc88 100644 --- a/include/media/v4l2-dev.h +++ b/include/media/v4l2-dev.h | |||
@@ -62,6 +62,9 @@ struct v4l2_file_operations { | |||
62 | unsigned int (*poll) (struct file *, struct poll_table_struct *); | 62 | unsigned int (*poll) (struct file *, struct poll_table_struct *); |
63 | long (*ioctl) (struct file *, unsigned int, unsigned long); | 63 | long (*ioctl) (struct file *, unsigned int, unsigned long); |
64 | long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); | 64 | long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); |
65 | #ifdef CONFIG_COMPAT | ||
66 | long (*compat_ioctl32) (struct file *, unsigned int, unsigned long); | ||
67 | #endif | ||
65 | unsigned long (*get_unmapped_area) (struct file *, unsigned long, | 68 | unsigned long (*get_unmapped_area) (struct file *, unsigned long, |
66 | unsigned long, unsigned long, unsigned long); | 69 | unsigned long, unsigned long, unsigned long); |
67 | int (*mmap) (struct file *, struct vm_area_struct *); | 70 | int (*mmap) (struct file *, struct vm_area_struct *); |
diff --git a/include/media/v4l2-ioctl.h b/include/media/v4l2-ioctl.h index 3f5d60fc5df6..3cb939cd03f9 100644 --- a/include/media/v4l2-ioctl.h +++ b/include/media/v4l2-ioctl.h | |||
@@ -11,7 +11,6 @@ | |||
11 | 11 | ||
12 | #include <linux/poll.h> | 12 | #include <linux/poll.h> |
13 | #include <linux/fs.h> | 13 | #include <linux/fs.h> |
14 | #include <linux/device.h> | ||
15 | #include <linux/mutex.h> | 14 | #include <linux/mutex.h> |
16 | #include <linux/compiler.h> /* need __user */ | 15 | #include <linux/compiler.h> /* need __user */ |
17 | #include <linux/videodev2.h> | 16 | #include <linux/videodev2.h> |
@@ -211,6 +210,10 @@ struct v4l2_ioctl_ops { | |||
211 | struct v4l2_encoder_cmd *a); | 210 | struct v4l2_encoder_cmd *a); |
212 | int (*vidioc_try_encoder_cmd) (struct file *file, void *fh, | 211 | int (*vidioc_try_encoder_cmd) (struct file *file, void *fh, |
213 | struct v4l2_encoder_cmd *a); | 212 | struct v4l2_encoder_cmd *a); |
213 | int (*vidioc_decoder_cmd) (struct file *file, void *fh, | ||
214 | struct v4l2_decoder_cmd *a); | ||
215 | int (*vidioc_try_decoder_cmd) (struct file *file, void *fh, | ||
216 | struct v4l2_decoder_cmd *a); | ||
214 | 217 | ||
215 | /* Stream type-dependent parameter ioctls */ | 218 | /* Stream type-dependent parameter ioctls */ |
216 | int (*vidioc_g_parm) (struct file *file, void *fh, | 219 | int (*vidioc_g_parm) (struct file *file, void *fh, |