[media] media: only show V4L devices based on device type selection
[pandora-kernel.git] / drivers / media / video / Kconfig
1 #
2 # Generic video config states
3 #
4
5 config VIDEO_V4L2
6         tristate
7         depends on VIDEO_DEV && VIDEO_V4L2_COMMON
8         default y
9
10 config VIDEOBUF_GEN
11         tristate
12
13 config VIDEOBUF_DMA_SG
14         depends on HAS_DMA
15         select VIDEOBUF_GEN
16         tristate
17
18 config VIDEOBUF_VMALLOC
19         select VIDEOBUF_GEN
20         tristate
21
22 config VIDEOBUF_DMA_CONTIG
23         depends on HAS_DMA
24         select VIDEOBUF_GEN
25         tristate
26
27 config VIDEOBUF_DVB
28         tristate
29         select VIDEOBUF_GEN
30
31 config VIDEO_BTCX
32         depends on PCI
33         tristate
34
35 config VIDEO_TVEEPROM
36         tristate
37         depends on I2C
38
39 config VIDEO_TUNER
40         tristate
41         depends on MEDIA_TUNER
42
43 config V4L2_MEM2MEM_DEV
44         tristate
45         depends on VIDEOBUF2_CORE
46
47 config VIDEOBUF2_CORE
48         tristate
49
50 config VIDEOBUF2_MEMOPS
51         tristate
52
53 config VIDEOBUF2_DMA_CONTIG
54         select VIDEOBUF2_CORE
55         select VIDEOBUF2_MEMOPS
56         tristate
57
58 config VIDEOBUF2_VMALLOC
59         select VIDEOBUF2_CORE
60         select VIDEOBUF2_MEMOPS
61         tristate
62
63
64 config VIDEOBUF2_DMA_SG
65         #depends on HAS_DMA
66         select VIDEOBUF2_CORE
67         select VIDEOBUF2_MEMOPS
68         tristate
69 #
70 # Multimedia Video device configuration
71 #
72
73 menuconfig VIDEO_CAPTURE_DRIVERS
74         bool "Video capture adapters"
75         depends on VIDEO_V4L2
76         depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT
77         default y
78         ---help---
79           Say Y here to enable selecting the video adapters for
80           webcams, analog TV, and hybrid analog/digital TV.
81           Some of those devices also supports FM radio.
82
83 if VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2
84
85 config VIDEO_ADV_DEBUG
86         bool "Enable advanced debug functionality"
87         default n
88         ---help---
89           Say Y here to enable advanced debugging functionality on some
90           V4L devices.
91           In doubt, say N.
92
93 config VIDEO_FIXED_MINOR_RANGES
94         bool "Enable old-style fixed minor ranges for video devices"
95         default n
96         ---help---
97           Say Y here to enable the old-style fixed-range minor assignments.
98           Only useful if you rely on the old behavior and use mknod instead of udev.
99
100           When in doubt, say N.
101
102 config VIDEO_HELPER_CHIPS_AUTO
103         bool "Autoselect pertinent encoders/decoders and other helper chips"
104         default y if !EXPERT
105         ---help---
106           Most video cards may require additional modules to encode or
107           decode audio/video standards. This option will autoselect
108           all pertinent modules to each selected video module.
109
110           Unselect this only if you know exactly what you are doing, since
111           it may break support on some boards.
112
113           In doubt, say Y.
114
115 config VIDEO_IR_I2C
116         tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO
117         depends on I2C && RC_CORE
118         default y
119         ---help---
120           Most boards have an IR chip directly connected via GPIO. However,
121           some video boards have the IR connected via I2C bus.
122
123           If your board doesn't have an I2C IR chip, you may disable this
124           option.
125
126           In doubt, say Y.
127
128 #
129 # Encoder / Decoder module configuration
130 #
131
132 menu "Encoders, decoders, sensors and other helper chips"
133         visible if !VIDEO_HELPER_CHIPS_AUTO
134
135 comment "Audio decoders, processors and mixers"
136
137 config VIDEO_TVAUDIO
138         tristate "Simple audio decoder chips"
139         depends on VIDEO_V4L2 && I2C
140         ---help---
141           Support for several audio decoder chips found on some bt8xx boards:
142           Philips: tda9840, tda9873h, tda9874h/a, tda9850, tda985x, tea6300,
143                    tea6320, tea6420, tda8425, ta8874z.
144           Microchip: pic16c54 based design on ProVideo PV951 board.
145
146           To compile this driver as a module, choose M here: the
147           module will be called tvaudio.
148
149 config VIDEO_TDA7432
150         tristate "Philips TDA7432 audio processor"
151         depends on VIDEO_V4L2 && I2C
152         ---help---
153           Support for tda7432 audio decoder chip found on some bt8xx boards.
154
155           To compile this driver as a module, choose M here: the
156           module will be called tda7432.
157
158 config VIDEO_TDA9840
159         tristate "Philips TDA9840 audio processor"
160         depends on I2C
161         ---help---
162           Support for tda9840 audio decoder chip found on some Zoran boards.
163
164           To compile this driver as a module, choose M here: the
165           module will be called tda9840.
166
167 config VIDEO_TEA6415C
168         tristate "Philips TEA6415C audio processor"
169         depends on I2C
170         ---help---
171           Support for tea6415c audio decoder chip found on some bt8xx boards.
172
173           To compile this driver as a module, choose M here: the
174           module will be called tea6415c.
175
176 config VIDEO_TEA6420
177         tristate "Philips TEA6420 audio processor"
178         depends on I2C
179         ---help---
180           Support for tea6420 audio decoder chip found on some bt8xx boards.
181
182           To compile this driver as a module, choose M here: the
183           module will be called tea6420.
184
185 config VIDEO_MSP3400
186         tristate "Micronas MSP34xx audio decoders"
187         depends on VIDEO_V4L2 && I2C
188         ---help---
189           Support for the Micronas MSP34xx series of audio decoders.
190
191           To compile this driver as a module, choose M here: the
192           module will be called msp3400.
193
194 config VIDEO_CS5345
195         tristate "Cirrus Logic CS5345 audio ADC"
196         depends on VIDEO_V4L2 && I2C
197         ---help---
198           Support for the Cirrus Logic CS5345 24-bit, 192 kHz
199           stereo A/D converter.
200
201           To compile this driver as a module, choose M here: the
202           module will be called cs5345.
203
204 config VIDEO_CS53L32A
205         tristate "Cirrus Logic CS53L32A audio ADC"
206         depends on VIDEO_V4L2 && I2C
207         ---help---
208           Support for the Cirrus Logic CS53L32A low voltage
209           stereo A/D converter.
210
211           To compile this driver as a module, choose M here: the
212           module will be called cs53l32a.
213
214 config VIDEO_TLV320AIC23B
215         tristate "Texas Instruments TLV320AIC23B audio codec"
216         depends on VIDEO_V4L2 && I2C && EXPERIMENTAL
217         ---help---
218           Support for the Texas Instruments TLV320AIC23B audio codec.
219
220           To compile this driver as a module, choose M here: the
221           module will be called tlv320aic23b.
222
223 config VIDEO_WM8775
224         tristate "Wolfson Microelectronics WM8775 audio ADC with input mixer"
225         depends on VIDEO_V4L2 && I2C
226         ---help---
227           Support for the Wolfson Microelectronics WM8775 high
228           performance stereo A/D Converter with a 4 channel input mixer.
229
230           To compile this driver as a module, choose M here: the
231           module will be called wm8775.
232
233 config VIDEO_WM8739
234         tristate "Wolfson Microelectronics WM8739 stereo audio ADC"
235         depends on VIDEO_V4L2 && I2C
236         ---help---
237           Support for the Wolfson Microelectronics WM8739
238           stereo A/D Converter.
239
240           To compile this driver as a module, choose M here: the
241           module will be called wm8739.
242
243 config VIDEO_VP27SMPX
244         tristate "Panasonic VP27s internal MPX"
245         depends on VIDEO_V4L2 && I2C
246         ---help---
247           Support for the internal MPX of the Panasonic VP27s tuner.
248
249           To compile this driver as a module, choose M here: the
250           module will be called vp27smpx.
251
252 comment "RDS decoders"
253
254 config VIDEO_SAA6588
255         tristate "SAA6588 Radio Chip RDS decoder support"
256         depends on VIDEO_V4L2 && I2C
257
258         help
259           Support for this Radio Data System (RDS) decoder. This allows
260           seeing radio station identification transmitted using this
261           standard.
262
263           To compile this driver as a module, choose M here: the
264           module will be called saa6588.
265
266 comment "Video decoders"
267
268 config VIDEO_ADV7180
269         tristate "Analog Devices ADV7180 decoder"
270         depends on VIDEO_V4L2 && I2C
271         ---help---
272           Support for the Analog Devices ADV7180 video decoder.
273
274           To compile this driver as a module, choose M here: the
275           module will be called adv7180.
276
277 config VIDEO_ADV7183
278         tristate "Analog Devices ADV7183 decoder"
279         depends on VIDEO_V4L2 && I2C
280         ---help---
281           V4l2 subdevice driver for the Analog Devices
282           ADV7183 video decoder.
283
284           To compile this driver as a module, choose M here: the
285           module will be called adv7183.
286
287 config VIDEO_BT819
288         tristate "BT819A VideoStream decoder"
289         depends on VIDEO_V4L2 && I2C
290         ---help---
291           Support for BT819A video decoder.
292
293           To compile this driver as a module, choose M here: the
294           module will be called bt819.
295
296 config VIDEO_BT856
297         tristate "BT856 VideoStream decoder"
298         depends on VIDEO_V4L2 && I2C
299         ---help---
300           Support for BT856 video decoder.
301
302           To compile this driver as a module, choose M here: the
303           module will be called bt856.
304
305 config VIDEO_BT866
306         tristate "BT866 VideoStream decoder"
307         depends on VIDEO_V4L2 && I2C
308         ---help---
309           Support for BT866 video decoder.
310
311           To compile this driver as a module, choose M here: the
312           module will be called bt866.
313
314 config VIDEO_KS0127
315         tristate "KS0127 video decoder"
316         depends on VIDEO_V4L2 && I2C
317         ---help---
318           Support for KS0127 video decoder.
319
320           This chip is used on AverMedia AVS6EYES Zoran-based MJPEG
321           cards.
322
323           To compile this driver as a module, choose M here: the
324           module will be called ks0127.
325
326 config VIDEO_SAA7110
327         tristate "Philips SAA7110 video decoder"
328         depends on VIDEO_V4L2 && I2C
329         ---help---
330           Support for the Philips SAA7110 video decoders.
331
332           To compile this driver as a module, choose M here: the
333           module will be called saa7110.
334
335 config VIDEO_SAA711X
336         tristate "Philips SAA7111/3/4/5 video decoders"
337         depends on VIDEO_V4L2 && I2C
338         ---help---
339           Support for the Philips SAA7111/3/4/5 video decoders.
340
341           To compile this driver as a module, choose M here: the
342           module will be called saa7115.
343
344 config VIDEO_SAA7191
345         tristate "Philips SAA7191 video decoder"
346         depends on VIDEO_V4L2 && I2C
347         ---help---
348           Support for the Philips SAA7191 video decoder.
349
350           To compile this driver as a module, choose M here: the
351           module will be called saa7191.
352
353 config VIDEO_TVP514X
354         tristate "Texas Instruments TVP514x video decoder"
355         depends on VIDEO_V4L2 && I2C
356         ---help---
357           This is a Video4Linux2 sensor-level driver for the TI TVP5146/47
358           decoder. It is currently working with the TI OMAP3 camera
359           controller.
360
361           To compile this driver as a module, choose M here: the
362           module will be called tvp514x.
363
364 config VIDEO_TVP5150
365         tristate "Texas Instruments TVP5150 video decoder"
366         depends on VIDEO_V4L2 && I2C
367         ---help---
368           Support for the Texas Instruments TVP5150 video decoder.
369
370           To compile this driver as a module, choose M here: the
371           module will be called tvp5150.
372
373 config VIDEO_TVP7002
374         tristate "Texas Instruments TVP7002 video decoder"
375         depends on VIDEO_V4L2 && I2C
376         ---help---
377           Support for the Texas Instruments TVP7002 video decoder.
378
379           To compile this driver as a module, choose M here: the
380           module will be called tvp7002.
381
382 config VIDEO_VPX3220
383         tristate "vpx3220a, vpx3216b & vpx3214c video decoders"
384         depends on VIDEO_V4L2 && I2C
385         ---help---
386           Support for VPX322x video decoders.
387
388           To compile this driver as a module, choose M here: the
389           module will be called vpx3220.
390
391 comment "Video and audio decoders"
392
393 config VIDEO_SAA717X
394         tristate "Philips SAA7171/3/4 audio/video decoders"
395         depends on VIDEO_V4L2 && I2C
396         ---help---
397           Support for the Philips SAA7171/3/4 audio/video decoders.
398
399           To compile this driver as a module, choose M here: the
400           module will be called saa717x.
401
402 source "drivers/media/video/cx25840/Kconfig"
403
404 comment "MPEG video encoders"
405
406 config VIDEO_CX2341X
407         tristate "Conexant CX2341x MPEG encoders"
408         depends on VIDEO_V4L2 && VIDEO_V4L2_COMMON
409         ---help---
410           Support for the Conexant CX23416 MPEG encoders
411           and CX23415 MPEG encoder/decoders.
412
413           This module currently supports the encoding functions only.
414
415           To compile this driver as a module, choose M here: the
416           module will be called cx2341x.
417
418 comment "Video encoders"
419
420 config VIDEO_SAA7127
421         tristate "Philips SAA7127/9 digital video encoders"
422         depends on VIDEO_V4L2 && I2C
423         ---help---
424           Support for the Philips SAA7127/9 digital video encoders.
425
426           To compile this driver as a module, choose M here: the
427           module will be called saa7127.
428
429 config VIDEO_SAA7185
430         tristate "Philips SAA7185 video encoder"
431         depends on VIDEO_V4L2 && I2C
432         ---help---
433           Support for the Philips SAA7185 video encoder.
434
435           To compile this driver as a module, choose M here: the
436           module will be called saa7185.
437
438 config VIDEO_ADV7170
439         tristate "Analog Devices ADV7170 video encoder"
440         depends on VIDEO_V4L2 && I2C
441         ---help---
442           Support for the Analog Devices ADV7170 video encoder driver
443
444           To compile this driver as a module, choose M here: the
445           module will be called adv7170.
446
447 config VIDEO_ADV7175
448         tristate "Analog Devices ADV7175 video encoder"
449         depends on VIDEO_V4L2 && I2C
450         ---help---
451           Support for the Analog Devices ADV7175 video encoder driver
452
453           To compile this driver as a module, choose M here: the
454           module will be called adv7175.
455
456 config VIDEO_ADV7343
457         tristate "ADV7343 video encoder"
458         depends on I2C
459         help
460           Support for Analog Devices I2C bus based ADV7343 encoder.
461
462           To compile this driver as a module, choose M here: the
463           module will be called adv7343.
464
465 config VIDEO_AK881X
466         tristate "AK8813/AK8814 video encoders"
467         depends on I2C
468         help
469           Video output driver for AKM AK8813 and AK8814 TV encoders
470
471 comment "Camera sensor devices"
472
473 config VIDEO_APTINA_PLL
474         tristate
475
476 config VIDEO_SMIAPP_PLL
477         tristate
478
479 config VIDEO_OV7670
480         tristate "OmniVision OV7670 sensor support"
481         depends on I2C && VIDEO_V4L2
482         depends on MEDIA_CAMERA_SUPPORT
483         ---help---
484           This is a Video4Linux2 sensor-level driver for the OmniVision
485           OV7670 VGA camera.  It currently only works with the M88ALP01
486           controller.
487
488 config VIDEO_VS6624
489         tristate "ST VS6624 sensor support"
490         depends on VIDEO_V4L2 && I2C
491         depends on MEDIA_CAMERA_SUPPORT
492         ---help---
493           This is a Video4Linux2 sensor-level driver for the ST VS6624
494           camera.
495
496           To compile this driver as a module, choose M here: the
497           module will be called vs6624.
498
499 config VIDEO_MT9M032
500         tristate "MT9M032 camera sensor support"
501         depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
502         depends on MEDIA_CAMERA_SUPPORT
503         select VIDEO_APTINA_PLL
504         ---help---
505           This driver supports MT9M032 camera sensors from Aptina, monochrome
506           models only.
507
508 config VIDEO_MT9P031
509         tristate "Aptina MT9P031 support"
510         depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
511         depends on MEDIA_CAMERA_SUPPORT
512         select VIDEO_APTINA_PLL
513         ---help---
514           This is a Video4Linux2 sensor-level driver for the Aptina
515           (Micron) mt9p031 5 Mpixel camera.
516
517 config VIDEO_MT9T001
518         tristate "Aptina MT9T001 support"
519         depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
520         depends on MEDIA_CAMERA_SUPPORT
521         ---help---
522           This is a Video4Linux2 sensor-level driver for the Aptina
523           (Micron) mt0t001 3 Mpixel camera.
524
525 config VIDEO_MT9V011
526         tristate "Micron mt9v011 sensor support"
527         depends on I2C && VIDEO_V4L2
528         depends on MEDIA_CAMERA_SUPPORT
529         ---help---
530           This is a Video4Linux2 sensor-level driver for the Micron
531           mt0v011 1.3 Mpixel camera.  It currently only works with the
532           em28xx driver.
533
534 config VIDEO_MT9V032
535         tristate "Micron MT9V032 sensor support"
536         depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
537         depends on MEDIA_CAMERA_SUPPORT
538         ---help---
539           This is a Video4Linux2 sensor-level driver for the Micron
540           MT9V032 752x480 CMOS sensor.
541
542 config VIDEO_TCM825X
543         tristate "TCM825x camera sensor support"
544         depends on I2C && VIDEO_V4L2
545         depends on MEDIA_CAMERA_SUPPORT
546         ---help---
547           This is a driver for the Toshiba TCM825x VGA camera sensor.
548           It is used for example in Nokia N800.
549
550 config VIDEO_SR030PC30
551         tristate "Siliconfile SR030PC30 sensor support"
552         depends on I2C && VIDEO_V4L2
553         depends on MEDIA_CAMERA_SUPPORT
554         ---help---
555           This driver supports SR030PC30 VGA camera from Siliconfile
556
557 config VIDEO_NOON010PC30
558         tristate "Siliconfile NOON010PC30 sensor support"
559         depends on I2C && VIDEO_V4L2 && EXPERIMENTAL && VIDEO_V4L2_SUBDEV_API
560         depends on MEDIA_CAMERA_SUPPORT
561         ---help---
562           This driver supports NOON010PC30 CIF camera from Siliconfile
563
564 source "drivers/media/video/m5mols/Kconfig"
565
566 config VIDEO_S5K6AA
567         tristate "Samsung S5K6AAFX sensor support"
568         depends on MEDIA_CAMERA_SUPPORT
569         depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
570         ---help---
571           This is a V4L2 sensor-level driver for Samsung S5K6AA(FX) 1.3M
572           camera sensor with an embedded SoC image signal processor.
573
574 source "drivers/media/video/smiapp/Kconfig"
575
576 comment "Flash devices"
577
578 config VIDEO_ADP1653
579         tristate "ADP1653 flash support"
580         depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
581         depends on MEDIA_CAMERA_SUPPORT
582         ---help---
583           This is a driver for the ADP1653 flash controller. It is used for
584           example in Nokia N900.
585
586 config VIDEO_AS3645A
587         tristate "AS3645A flash driver support"
588         depends on I2C && VIDEO_V4L2 && MEDIA_CONTROLLER
589         depends on MEDIA_CAMERA_SUPPORT
590         ---help---
591           This is a driver for the AS3645A and LM3555 flash controllers. It has
592           build in control for flash, torch and indicator LEDs.
593
594 comment "Video improvement chips"
595
596 config VIDEO_UPD64031A
597         tristate "NEC Electronics uPD64031A Ghost Reduction"
598         depends on VIDEO_V4L2 && I2C
599         ---help---
600           Support for the NEC Electronics uPD64031A Ghost Reduction
601           video chip. It is most often found in NTSC TV cards made for
602           Japan and is used to reduce the 'ghosting' effect that can
603           be present in analog TV broadcasts.
604
605           To compile this driver as a module, choose M here: the
606           module will be called upd64031a.
607
608 config VIDEO_UPD64083
609         tristate "NEC Electronics uPD64083 3-Dimensional Y/C separation"
610         depends on VIDEO_V4L2 && I2C
611         ---help---
612           Support for the NEC Electronics uPD64083 3-Dimensional Y/C
613           separation video chip. It is used to improve the quality of
614           the colors of a composite signal.
615
616           To compile this driver as a module, choose M here: the
617           module will be called upd64083.
618
619 comment "Miscelaneous helper chips"
620
621 config VIDEO_THS7303
622         tristate "THS7303 Video Amplifier"
623         depends on I2C
624         help
625           Support for TI THS7303 video amplifier
626
627           To compile this driver as a module, choose M here: the
628           module will be called ths7303.
629
630 config VIDEO_M52790
631         tristate "Mitsubishi M52790 A/V switch"
632         depends on VIDEO_V4L2 && I2C
633         ---help---
634          Support for the Mitsubishi M52790 A/V switch.
635
636          To compile this driver as a module, choose M here: the
637          module will be called m52790.
638
639 endmenu # encoder / decoder chips
640
641 config VIDEO_VIVI
642         tristate "Virtual Video Driver"
643         depends on VIDEO_DEV && VIDEO_V4L2 && !SPARC32 && !SPARC64
644         depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE
645         select FONT_8x16
646         select VIDEOBUF2_VMALLOC
647         default n
648         ---help---
649           Enables a virtual video driver. This device shows a color bar
650           and a timestamp, as a real device would generate by using V4L2
651           api.
652           Say Y here if you want to test video apps or debug V4L devices.
653           In doubt, say N.
654
655 #
656 # USB Multimedia device configuration
657 #
658
659 menuconfig V4L_USB_DRIVERS
660         bool "V4L USB devices"
661         depends on USB
662         default y
663
664 if V4L_USB_DRIVERS && MEDIA_CAMERA_SUPPORT
665
666         comment "Webcam devices"
667
668 source "drivers/media/video/uvc/Kconfig"
669
670 source "drivers/media/video/gspca/Kconfig"
671
672 source "drivers/media/video/pwc/Kconfig"
673
674 source "drivers/media/video/cpia2/Kconfig"
675
676 config USB_ZR364XX
677         tristate "USB ZR364XX Camera support"
678         depends on VIDEO_V4L2
679         select VIDEOBUF_GEN
680         select VIDEOBUF_VMALLOC
681         ---help---
682           Say Y here if you want to connect this type of camera to your
683           computer's USB port.
684           See <file:Documentation/video4linux/zr364xx.txt> for more info
685           and list of supported cameras.
686
687           To compile this driver as a module, choose M here: the
688           module will be called zr364xx.
689
690 config USB_STKWEBCAM
691         tristate "USB Syntek DC1125 Camera support"
692         depends on VIDEO_V4L2 && EXPERIMENTAL
693         ---help---
694           Say Y here if you want to use this type of camera.
695           Supported devices are typically found in some Asus laptops,
696           with USB id 174f:a311 and 05e1:0501. Other Syntek cameras
697           may be supported by the stk11xx driver, from which this is
698           derived, see <http://sourceforge.net/projects/syntekdriver/>
699
700           To compile this driver as a module, choose M here: the
701           module will be called stkwebcam.
702
703 config USB_S2255
704         tristate "USB Sensoray 2255 video capture device"
705         depends on VIDEO_V4L2
706         select VIDEOBUF_VMALLOC
707         default n
708         help
709           Say Y here if you want support for the Sensoray 2255 USB device.
710           This driver can be compiled as a module, called s2255drv.
711
712 source "drivers/media/video/sn9c102/Kconfig"
713
714 endif # V4L_USB_DRIVERS && MEDIA_CAMERA_SUPPORT
715
716 if V4L_USB_DRIVERS
717
718         comment "Webcam and/or TV USB devices"
719
720 source "drivers/media/video/em28xx/Kconfig"
721
722 endif
723
724 if V4L_USB_DRIVERS && MEDIA_ANALOG_TV_SUPPORT
725
726         comment "TV USB devices"
727
728 source "drivers/media/video/au0828/Kconfig"
729
730 source "drivers/media/video/pvrusb2/Kconfig"
731
732 source "drivers/media/video/hdpvr/Kconfig"
733
734 source "drivers/media/video/tlg2300/Kconfig"
735
736 source "drivers/media/video/cx231xx/Kconfig"
737
738 source "drivers/media/video/tm6000/Kconfig"
739
740 source "drivers/media/video/usbvision/Kconfig"
741
742 endif # V4L_USB_DRIVERS
743
744 #
745 # PCI drivers configuration - No devices here are for webcams
746 #
747
748 menuconfig V4L_PCI_DRIVERS
749         bool "V4L PCI(e) devices"
750         depends on PCI
751         depends on MEDIA_ANALOG_TV_SUPPORT
752         default y
753         ---help---
754           Say Y here to enable support for these PCI(e) drivers.
755
756 if V4L_PCI_DRIVERS
757
758 source "drivers/media/video/bt8xx/Kconfig"
759
760 source "drivers/media/video/cx18/Kconfig"
761
762 source "drivers/media/video/cx23885/Kconfig"
763
764 source "drivers/media/video/cx25821/Kconfig"
765
766 source "drivers/media/video/cx88/Kconfig"
767
768 config VIDEO_HEXIUM_GEMINI
769         tristate "Hexium Gemini frame grabber"
770         depends on PCI && VIDEO_V4L2 && I2C
771         select VIDEO_SAA7146_VV
772         ---help---
773           This is a video4linux driver for the Hexium Gemini frame
774           grabber card by Hexium. Please note that the Gemini Dual
775           card is *not* fully supported.
776
777           To compile this driver as a module, choose M here: the
778           module will be called hexium_gemini.
779
780 config VIDEO_HEXIUM_ORION
781         tristate "Hexium HV-PCI6 and Orion frame grabber"
782         depends on PCI && VIDEO_V4L2 && I2C
783         select VIDEO_SAA7146_VV
784         ---help---
785           This is a video4linux driver for the Hexium HV-PCI6 and
786           Orion frame grabber cards by Hexium.
787
788           To compile this driver as a module, choose M here: the
789           module will be called hexium_orion.
790
791 source "drivers/media/video/ivtv/Kconfig"
792
793 config VIDEO_MEYE
794         tristate "Sony Vaio Picturebook Motion Eye Video For Linux"
795         depends on PCI && SONY_LAPTOP && VIDEO_V4L2
796         ---help---
797           This is the video4linux driver for the Motion Eye camera found
798           in the Vaio Picturebook laptops. Please read the material in
799           <file:Documentation/video4linux/meye.txt> for more information.
800
801           If you say Y or M here, you need to say Y or M to "Sony Laptop
802           Extras" in the misc device section.
803
804           To compile this driver as a module, choose M here: the
805           module will be called meye.
806
807 config VIDEO_MXB
808         tristate "Siemens-Nixdorf 'Multimedia eXtension Board'"
809         depends on PCI && VIDEO_V4L2 && I2C
810         select VIDEO_SAA7146_VV
811         select VIDEO_TUNER
812         select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO
813         select VIDEO_TDA9840 if VIDEO_HELPER_CHIPS_AUTO
814         select VIDEO_TEA6415C if VIDEO_HELPER_CHIPS_AUTO
815         select VIDEO_TEA6420 if VIDEO_HELPER_CHIPS_AUTO
816         ---help---
817           This is a video4linux driver for the 'Multimedia eXtension Board'
818           TV card by Siemens-Nixdorf.
819
820           To compile this driver as a module, choose M here: the
821           module will be called mxb.
822
823 source "drivers/media/video/saa7134/Kconfig"
824
825 source "drivers/media/video/saa7164/Kconfig"
826
827 source "drivers/media/video/zoran/Kconfig"
828
829 config STA2X11_VIP
830         tristate "STA2X11 VIP Video For Linux"
831         depends on STA2X11
832         select VIDEO_ADV7180 if VIDEO_HELPER_CHIPS_AUTO
833         select VIDEOBUF_DMA_CONTIG
834         depends on PCI && VIDEO_V4L2 && VIRT_TO_BUS
835         help
836           Say Y for support for STA2X11 VIP (Video Input Port) capture
837           device.
838
839           To compile this driver as a module, choose M here: the
840           module will be called sta2x11_vip.
841
842 endif # V4L_PCI_DRIVERS
843
844 #
845 # ISA & parallel port drivers configuration
846 #       All devices here are webcam or grabber devices
847 #
848
849 menuconfig V4L_ISA_PARPORT_DRIVERS
850         bool "V4L ISA and parallel port devices"
851         depends on ISA || PARPORT
852         depends on MEDIA_CAMERA_SUPPORT
853         default n
854         ---help---
855           Say Y here to enable support for these ISA and parallel port drivers.
856
857 if V4L_ISA_PARPORT_DRIVERS
858
859 config VIDEO_BWQCAM
860         tristate "Quickcam BW Video For Linux"
861         depends on PARPORT && VIDEO_V4L2
862         help
863           Say Y have if you the black and white version of the QuickCam
864           camera. See the next option for the color version.
865
866           To compile this driver as a module, choose M here: the
867           module will be called bw-qcam.
868
869 config VIDEO_CQCAM
870         tristate "QuickCam Colour Video For Linux"
871         depends on PARPORT && VIDEO_V4L2
872         help
873           This is the video4linux driver for the colour version of the
874           Connectix QuickCam.  If you have one of these cameras, say Y here,
875           otherwise say N.  This driver does not work with the original
876           monochrome QuickCam, QuickCam VC or QuickClip.  It is also available
877           as a module (c-qcam).
878           Read <file:Documentation/video4linux/CQcam.txt> for more information.
879
880 config VIDEO_PMS
881         tristate "Mediavision Pro Movie Studio Video For Linux"
882         depends on ISA && VIDEO_V4L2
883         help
884           Say Y if you have the ISA Mediavision Pro Movie Studio
885           capture card.
886
887           To compile this driver as a module, choose M here: the
888           module will be called pms.
889
890 config VIDEO_W9966
891         tristate "W9966CF Webcam (FlyCam Supra and others) Video For Linux"
892         depends on PARPORT_1284 && PARPORT && VIDEO_V4L2
893         help
894           Video4linux driver for Winbond's w9966 based Webcams.
895           Currently tested with the LifeView FlyCam Supra.
896           If you have one of these cameras, say Y here
897           otherwise say N.
898           This driver is also available as a module (w9966).
899
900           Check out <file:Documentation/video4linux/w9966.txt> for more
901           information.
902
903 endif # V4L_ISA_PARPORT_DRIVERS
904
905 #
906 # Platform drivers
907 #       All drivers here are currently for webcam support
908
909 menuconfig V4L_PLATFORM_DRIVERS
910         bool "V4L platform devices"
911         depends on MEDIA_CAMERA_SUPPORT
912         default n
913         ---help---
914           Say Y here to enable support for platform-specific V4L drivers.
915
916 if V4L_PLATFORM_DRIVERS
917
918 source "drivers/media/video/marvell-ccic/Kconfig"
919
920 config VIDEO_VIA_CAMERA
921         tristate "VIAFB camera controller support"
922         depends on FB_VIA
923         select VIDEOBUF_DMA_SG
924         select VIDEO_OV7670
925         help
926            Driver support for the integrated camera controller in VIA
927            Chrome9 chipsets.  Currently only tested on OLPC xo-1.5 systems
928            with ov7670 sensors.
929
930 #
931 # Platform multimedia device configuration
932 #
933
934 source "drivers/media/video/davinci/Kconfig"
935
936 source "drivers/media/video/omap/Kconfig"
937
938 source "drivers/media/video/blackfin/Kconfig"
939
940 config VIDEO_SH_VOU
941         tristate "SuperH VOU video output driver"
942         depends on VIDEO_DEV && ARCH_SHMOBILE
943         select VIDEOBUF_DMA_CONTIG
944         help
945           Support for the Video Output Unit (VOU) on SuperH SoCs.
946
947 config VIDEO_VIU
948         tristate "Freescale VIU Video Driver"
949         depends on VIDEO_V4L2 && PPC_MPC512x
950         select VIDEOBUF_DMA_CONTIG
951         default y
952         ---help---
953           Support for Freescale VIU video driver. This device captures
954           video data, or overlays video on DIU frame buffer.
955
956           Say Y here if you want to enable VIU device on MPC5121e Rev2+.
957           In doubt, say N.
958
959 config VIDEO_TIMBERDALE
960         tristate "Support for timberdale Video In/LogiWIN"
961         depends on VIDEO_V4L2 && I2C && DMADEVICES
962         select DMA_ENGINE
963         select TIMB_DMA
964         select VIDEO_ADV7180
965         select VIDEOBUF_DMA_CONTIG
966         ---help---
967           Add support for the Video In peripherial of the timberdale FPGA.
968
969 config VIDEO_VINO
970         tristate "SGI Vino Video For Linux"
971         depends on I2C && SGI_IP22 && VIDEO_V4L2
972         select VIDEO_SAA7191 if VIDEO_HELPER_CHIPS_AUTO
973         help
974           Say Y here to build in support for the Vino video input system found
975           on SGI Indy machines.
976
977 config VIDEO_M32R_AR
978         tristate "AR devices"
979         depends on M32R && VIDEO_V4L2
980         ---help---
981           This is a video4linux driver for the Renesas AR (Artificial Retina)
982           camera module.
983
984 config VIDEO_M32R_AR_M64278
985         tristate "AR device with color module M64278(VGA)"
986         depends on PLAT_M32700UT
987         select VIDEO_M32R_AR
988         ---help---
989           This is a video4linux driver for the Renesas AR (Artificial
990           Retina) with M64278E-800 camera module.
991           This module supports VGA(640x480 pixels) resolutions.
992
993           To compile this driver as a module, choose M here: the
994           module will be called arv.
995
996 config VIDEO_OMAP3
997         tristate "OMAP 3 Camera support (EXPERIMENTAL)"
998         depends on OMAP_IOVMM && VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3 && EXPERIMENTAL
999         ---help---
1000           Driver for an OMAP 3 camera controller.
1001
1002 config VIDEO_OMAP3_DEBUG
1003         bool "OMAP 3 Camera debug messages"
1004         depends on VIDEO_OMAP3
1005         ---help---
1006           Enable debug messages on OMAP 3 camera controller driver.
1007
1008 config SOC_CAMERA
1009         tristate "SoC camera support"
1010         depends on VIDEO_V4L2 && HAS_DMA && I2C
1011         select VIDEOBUF_GEN
1012         select VIDEOBUF2_CORE
1013         help
1014           SoC Camera is a common API to several cameras, not connecting
1015           over a bus like PCI or USB. For example some i2c camera connected
1016           directly to the data bus of an SoC.
1017
1018 config SOC_CAMERA_IMX074
1019         tristate "imx074 support"
1020         depends on SOC_CAMERA && I2C
1021         help
1022           This driver supports IMX074 cameras from Sony
1023
1024 config SOC_CAMERA_MT9M001
1025         tristate "mt9m001 support"
1026         depends on SOC_CAMERA && I2C
1027         select GPIO_PCA953X if MT9M001_PCA9536_SWITCH
1028         help
1029           This driver supports MT9M001 cameras from Micron, monochrome
1030           and colour models.
1031
1032 config SOC_CAMERA_MT9M111
1033         tristate "mt9m111, mt9m112 and mt9m131 support"
1034         depends on SOC_CAMERA && I2C
1035         help
1036           This driver supports MT9M111, MT9M112 and MT9M131 cameras from
1037           Micron/Aptina
1038
1039 config SOC_CAMERA_MT9T031
1040         tristate "mt9t031 support"
1041         depends on SOC_CAMERA && I2C
1042         help
1043           This driver supports MT9T031 cameras from Micron.
1044
1045 config SOC_CAMERA_MT9T112
1046         tristate "mt9t112 support"
1047         depends on SOC_CAMERA && I2C
1048         help
1049           This driver supports MT9T112 cameras from Aptina.
1050
1051 config SOC_CAMERA_MT9V022
1052         tristate "mt9v022 support"
1053         depends on SOC_CAMERA && I2C
1054         select GPIO_PCA953X if MT9V022_PCA9536_SWITCH
1055         help
1056           This driver supports MT9V022 cameras from Micron
1057
1058 config SOC_CAMERA_RJ54N1
1059         tristate "rj54n1cb0c support"
1060         depends on SOC_CAMERA && I2C
1061         help
1062           This is a rj54n1cb0c video driver
1063
1064 config SOC_CAMERA_TW9910
1065         tristate "tw9910 support"
1066         depends on SOC_CAMERA && I2C
1067         help
1068           This is a tw9910 video driver
1069
1070 config SOC_CAMERA_PLATFORM
1071         tristate "platform camera support"
1072         depends on SOC_CAMERA
1073         help
1074           This is a generic SoC camera platform driver, useful for testing
1075
1076 config SOC_CAMERA_OV2640
1077         tristate "ov2640 camera support"
1078         depends on SOC_CAMERA && I2C
1079         help
1080           This is a ov2640 camera driver
1081
1082 config SOC_CAMERA_OV5642
1083         tristate "ov5642 camera support"
1084         depends on SOC_CAMERA && I2C
1085         help
1086           This is a V4L2 camera driver for the OmniVision OV5642 sensor
1087
1088 config SOC_CAMERA_OV6650
1089         tristate "ov6650 sensor support"
1090         depends on SOC_CAMERA && I2C
1091         ---help---
1092           This is a V4L2 SoC camera driver for the OmniVision OV6650 sensor
1093
1094 config SOC_CAMERA_OV772X
1095         tristate "ov772x camera support"
1096         depends on SOC_CAMERA && I2C
1097         help
1098           This is a ov772x camera driver
1099
1100 config SOC_CAMERA_OV9640
1101         tristate "ov9640 camera support"
1102         depends on SOC_CAMERA && I2C
1103         help
1104           This is a ov9640 camera driver
1105
1106 config SOC_CAMERA_OV9740
1107         tristate "ov9740 camera support"
1108         depends on SOC_CAMERA && I2C
1109         help
1110           This is a ov9740 camera driver
1111
1112 config MX1_VIDEO
1113         bool
1114
1115 config VIDEO_MX1
1116         tristate "i.MX1/i.MXL CMOS Sensor Interface driver"
1117         depends on VIDEO_DEV && ARCH_MX1 && SOC_CAMERA
1118         select FIQ
1119         select VIDEOBUF_DMA_CONTIG
1120         select MX1_VIDEO
1121         ---help---
1122           This is a v4l2 driver for the i.MX1/i.MXL CMOS Sensor Interface
1123
1124 config MX3_VIDEO
1125         bool
1126
1127 config VIDEO_MX3
1128         tristate "i.MX3x Camera Sensor Interface driver"
1129         depends on VIDEO_DEV && MX3_IPU && SOC_CAMERA
1130         select VIDEOBUF2_DMA_CONTIG
1131         select MX3_VIDEO
1132         ---help---
1133           This is a v4l2 driver for the i.MX3x Camera Sensor Interface
1134
1135 config VIDEO_PXA27x
1136         tristate "PXA27x Quick Capture Interface driver"
1137         depends on VIDEO_DEV && PXA27x && SOC_CAMERA
1138         select VIDEOBUF_DMA_SG
1139         ---help---
1140           This is a v4l2 driver for the PXA27x Quick Capture Interface
1141
1142 config VIDEO_SH_MOBILE_CSI2
1143         tristate "SuperH Mobile MIPI CSI-2 Interface driver"
1144         depends on VIDEO_DEV && SOC_CAMERA && HAVE_CLK
1145         ---help---
1146           This is a v4l2 driver for the SuperH MIPI CSI-2 Interface
1147
1148 config VIDEO_SH_MOBILE_CEU
1149         tristate "SuperH Mobile CEU Interface driver"
1150         depends on VIDEO_DEV && SOC_CAMERA && HAS_DMA && HAVE_CLK
1151         select VIDEOBUF2_DMA_CONTIG
1152         ---help---
1153           This is a v4l2 driver for the SuperH Mobile CEU Interface
1154
1155 config VIDEO_OMAP1
1156         tristate "OMAP1 Camera Interface driver"
1157         depends on VIDEO_DEV && ARCH_OMAP1 && SOC_CAMERA
1158         select VIDEOBUF_DMA_CONTIG
1159         select VIDEOBUF_DMA_SG
1160         ---help---
1161           This is a v4l2 driver for the TI OMAP1 camera interface
1162
1163 config VIDEO_OMAP2
1164         tristate "OMAP2 Camera Capture Interface driver"
1165         depends on VIDEO_DEV && ARCH_OMAP2
1166         select VIDEOBUF_DMA_SG
1167         ---help---
1168           This is a v4l2 driver for the TI OMAP2 camera capture interface
1169
1170 config VIDEO_MX2_HOSTSUPPORT
1171         bool
1172
1173 config VIDEO_MX2
1174         tristate "i.MX27/i.MX25 Camera Sensor Interface driver"
1175         depends on VIDEO_DEV && SOC_CAMERA && (MACH_MX27 || ARCH_MX25)
1176         select VIDEOBUF2_DMA_CONTIG
1177         select VIDEO_MX2_HOSTSUPPORT
1178         ---help---
1179           This is a v4l2 driver for the i.MX27 and the i.MX25 Camera Sensor
1180           Interface
1181
1182 config VIDEO_ATMEL_ISI
1183         tristate "ATMEL Image Sensor Interface (ISI) support"
1184         depends on VIDEO_DEV && SOC_CAMERA && ARCH_AT91
1185         select VIDEOBUF2_DMA_CONTIG
1186         ---help---
1187           This module makes the ATMEL Image Sensor Interface available
1188           as a v4l2 device.
1189
1190 source "drivers/media/video/s5p-fimc/Kconfig"
1191 source "drivers/media/video/s5p-tv/Kconfig"
1192
1193 endif # V4L_PLATFORM_DRIVERS
1194 endif # VIDEO_CAPTURE_DRIVERS
1195
1196 menuconfig V4L_MEM2MEM_DRIVERS
1197         bool "Memory-to-memory multimedia devices"
1198         depends on VIDEO_V4L2
1199         default n
1200         ---help---
1201           Say Y here to enable selecting drivers for V4L devices that
1202           use system memory for both source and destination buffers, as opposed
1203           to capture and output drivers, which use memory buffers for just
1204           one of those.
1205
1206 if V4L_MEM2MEM_DRIVERS
1207
1208 config VIDEO_MEM2MEM_TESTDEV
1209         tristate "Virtual test device for mem2mem framework"
1210         depends on VIDEO_DEV && VIDEO_V4L2
1211         select VIDEOBUF2_VMALLOC
1212         select V4L2_MEM2MEM_DEV
1213         default n
1214         ---help---
1215           This is a virtual test device for the memory-to-memory driver
1216           framework.
1217
1218 config VIDEO_SAMSUNG_S5P_G2D
1219         tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
1220         depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
1221         select VIDEOBUF2_DMA_CONTIG
1222         select V4L2_MEM2MEM_DEV
1223         default n
1224         ---help---
1225           This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
1226           2d graphics accelerator.
1227
1228 config VIDEO_SAMSUNG_S5P_JPEG
1229         tristate "Samsung S5P/Exynos4 JPEG codec driver (EXPERIMENTAL)"
1230         depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P && EXPERIMENTAL
1231         select VIDEOBUF2_DMA_CONTIG
1232         select V4L2_MEM2MEM_DEV
1233         ---help---
1234           This is a v4l2 driver for Samsung S5P and EXYNOS4 JPEG codec
1235
1236 config VIDEO_SAMSUNG_S5P_MFC
1237         tristate "Samsung S5P MFC 5.1 Video Codec"
1238         depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P
1239         select VIDEOBUF2_DMA_CONTIG
1240         default n
1241         help
1242             MFC 5.1 driver for V4L2.
1243
1244 config VIDEO_MX2_EMMAPRP
1245         tristate "MX2 eMMa-PrP support"
1246         depends on VIDEO_DEV && VIDEO_V4L2 && SOC_IMX27
1247         select VIDEOBUF2_DMA_CONTIG
1248         select V4L2_MEM2MEM_DEV
1249         help
1250             MX2X chips have a PrP that can be used to process buffers from
1251             memory to memory. Operations include resizing and format
1252             conversion.
1253
1254 endif # V4L_MEM2MEM_DRIVERS