Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
[linux-2.6] / drivers / media / Kconfig
1 #
2 # Multimedia device configuration
3 #
4
5 menu "Multimedia devices"
6         depends on HAS_IOMEM
7
8 config VIDEO_DEV
9         tristate "Video For Linux"
10         ---help---
11           Support for audio/video capture and overlay devices and FM radio
12           cards. The exact capabilities of each device vary.
13
14           This kernel includes support for the new Video for Linux Two API,
15           (V4L2) as well as the original system. Drivers and applications
16           need to be rewritten to use V4L2, but drivers for popular cards
17           and applications for most video capture functions already exist.
18
19           Additional info and docs are available on the web at
20           <http://linuxtv.org>
21
22           Documentation for V4L2 is also available on the web at
23           <http://bytesex.org/v4l/>.
24
25           To compile this driver as a module, choose M here: the
26           module will be called videodev.
27
28 config VIDEO_V4L2_COMMON
29         tristate
30         depends on (I2C || I2C=n) && VIDEO_DEV
31         default (I2C || I2C=n) && VIDEO_DEV
32
33 config VIDEO_ALLOW_V4L1
34         bool "Enable Video For Linux API 1 (DEPRECATED)"
35         depends on VIDEO_DEV && VIDEO_V4L2_COMMON
36         default VIDEO_DEV && VIDEO_V4L2_COMMON
37         select VIDEO_V4L1_COMPAT
38         ---help---
39           Enables a compatibility API used by most V4L2 devices to allow
40           its usage with legacy applications that supports only V4L1 api.
41
42           If you are unsure as to whether this is required, answer Y.
43
44 config VIDEO_V4L1_COMPAT
45         bool "Enable Video For Linux API 1 compatible Layer"
46         depends on VIDEO_DEV
47         default VIDEO_DEV
48         ---help---
49           This api were developed to be used at Kernel 2.2 and 2.4, but
50           lacks support for several video standards. There are several
51           drivers at kernel that still depends on it.
52
53           Documentation for the original API is included in the file
54           <Documentation/video4linux/API.html>.
55
56           User tools for this are available from
57           <ftp://ftp.uk.linux.org/pub/linux/video4linux/>.
58
59           If you are unsure as to whether this is required, answer Y.
60
61 config VIDEO_V4L2
62         tristate
63         depends on VIDEO_DEV && VIDEO_V4L2_COMMON
64         default VIDEO_DEV && VIDEO_V4L2_COMMON
65
66 config VIDEO_V4L1
67         tristate
68         depends on VIDEO_DEV && VIDEO_V4L2_COMMON && VIDEO_ALLOW_V4L1
69         default VIDEO_DEV && VIDEO_V4L2_COMMON && VIDEO_ALLOW_V4L1
70
71 source "drivers/media/video/Kconfig"
72
73 source "drivers/media/radio/Kconfig"
74
75 source "drivers/media/dvb/Kconfig"
76
77 source "drivers/media/common/Kconfig"
78
79 config VIDEO_TUNER
80         tristate
81         depends on I2C
82         select TUNER_XC2028 if !VIDEO_TUNER_CUSTOMIZE
83         select TUNER_MT20XX if !VIDEO_TUNER_CUSTOMIZE
84         select TUNER_TDA8290 if !VIDEO_TUNER_CUSTOMIZE
85         select TUNER_TEA5761 if !VIDEO_TUNER_CUSTOMIZE
86         select TUNER_TEA5767 if !VIDEO_TUNER_CUSTOMIZE
87         select TUNER_SIMPLE if !VIDEO_TUNER_CUSTOMIZE
88         select TUNER_TDA9887 if !VIDEO_TUNER_CUSTOMIZE
89
90 menuconfig VIDEO_TUNER_CUSTOMIZE
91         bool "Customize analog tuner modules to build"
92         depends on VIDEO_TUNER
93         help
94           This allows the user to deselect tuner drivers unnecessary
95           for their hardware from the build. Use this option with care
96           as deselecting tuner drivers which are in fact necessary will
97           result in V4L devices which cannot be tuned due to lack of
98           driver support
99
100           If unsure say N.
101
102 if VIDEO_TUNER_CUSTOMIZE
103
104 config TUNER_XC2028
105         tristate "XCeive xc2028/xc3028 tuners"
106         depends on I2C && FW_LOADER
107         default m if VIDEO_TUNER_CUSTOMIZE
108         help
109           Say Y here to include support for the xc2028/xc3028 tuners.
110
111 config TUNER_MT20XX
112         tristate "Microtune 2032 / 2050 tuners"
113         depends on I2C
114         default m if VIDEO_TUNER_CUSTOMIZE
115         help
116           Say Y here to include support for the MT2032 / MT2050 tuner.
117
118 config TUNER_TDA8290
119         tristate "TDA 8290/8295 + 8275(a)/18271 tuner combo"
120         depends on I2C
121         select DVB_TDA827X
122         select DVB_TDA18271
123         default m if VIDEO_TUNER_CUSTOMIZE
124         help
125           Say Y here to include support for Philips TDA8290+8275(a) tuner.
126
127 config TUNER_TEA5761
128         tristate "TEA 5761 radio tuner (EXPERIMENTAL)"
129         depends on I2C && EXPERIMENTAL
130         default m if VIDEO_TUNER_CUSTOMIZE
131         help
132           Say Y here to include support for the Philips TEA5761 radio tuner.
133
134 config TUNER_TEA5767
135         tristate "TEA 5767 radio tuner"
136         depends on I2C
137         default m if VIDEO_TUNER_CUSTOMIZE
138         help
139           Say Y here to include support for the Philips TEA5767 radio tuner.
140
141 config TUNER_SIMPLE
142         tristate "Simple tuner support"
143         depends on I2C
144         select TUNER_TDA9887
145         default m if VIDEO_TUNER_CUSTOMIZE
146         help
147           Say Y here to include support for various simple tuners.
148
149 config TUNER_TDA9887
150         tristate "TDA 9885/6/7 analog IF demodulator"
151         depends on I2C
152         default m if VIDEO_TUNER_CUSTOMIZE
153         help
154           Say Y here to include support for Philips TDA9885/6/7
155           analog IF demodulator.
156
157 endif # VIDEO_TUNER_CUSTOMIZE
158
159 config VIDEOBUF_GEN
160         tristate
161
162 config VIDEOBUF_DMA_SG
163         depends on HAS_DMA
164         select VIDEOBUF_GEN
165         tristate
166
167 config VIDEOBUF_VMALLOC
168         select VIDEOBUF_GEN
169         tristate
170
171 config VIDEOBUF_DVB
172         tristate
173         select VIDEOBUF_GEN
174         select VIDEOBUF_DMA_SG
175
176 config VIDEO_BTCX
177         tristate
178
179 config VIDEO_IR_I2C
180         tristate
181
182 config VIDEO_IR
183         tristate
184         depends on INPUT
185         select VIDEO_IR_I2C if I2C
186
187 config VIDEO_TVEEPROM
188         tristate
189         depends on I2C
190
191 config DAB
192         boolean "DAB adapters"
193         ---help---
194           Allow selecting support for for Digital Audio Broadcasting (DAB)
195           Receiver adapters.
196
197 if DAB
198 config USB_DABUSB
199         tristate "DABUSB driver"
200         depends on USB
201         ---help---
202           A Digital Audio Broadcasting (DAB) Receiver for USB and Linux
203           brought to you by the DAB-Team
204           <http://wwwbode.cs.tum.edu/Par/arch/dab/>.  This driver can be taken
205           as an example for URB-based bulk, control, and isochronous
206           transactions. URB's are explained in
207           <Documentation/usb/URB.txt>.
208
209           To compile this driver as a module, choose M here: the
210           module will be called dabusb.
211 endif # DAB
212
213 endmenu