]> nv-tegra.nvidia Code Review - linux-2.6.git/blobdiff - drivers/media/Kconfig
PM / Sleep: Add more wakeup source initialization routines
[linux-2.6.git] / drivers / media / Kconfig
index d363d0cae38b1aac9576920ea4ee7bbfd34779fa..9575db429df46648c25007a6de5395ef22e080f8 100644 (file)
@@ -2,19 +2,42 @@
 # Multimedia device configuration
 #
 
-menu "Multimedia devices"
+menuconfig MEDIA_SUPPORT
+       tristate "Multimedia support"
        depends on HAS_IOMEM
+       help
+         If you want to use Video for Linux, DVB for Linux, or DAB adapters,
+         enable this option and other options below.
+
+if MEDIA_SUPPORT
+
+comment "Multimedia core support"
+
+#
+# Media controller
+#
+
+config MEDIA_CONTROLLER
+       bool "Media Controller API (EXPERIMENTAL)"
+       depends on EXPERIMENTAL
+       ---help---
+         Enable the media controller API used to query media devices internal
+         topology and configure it dynamically.
+
+         This API is mostly used by camera interfaces in embedded platforms.
+
+#
+# V4L core and enabled API's
+#
 
 config VIDEO_DEV
        tristate "Video For Linux"
        ---help---
-         Support for audio/video capture and overlay devices and FM radio
-         cards. The exact capabilities of each device vary.
+         V4L core support for video capture and overlay devices, webcams and
+         AM/FM radio cards.
 
          This kernel includes support for the new Video for Linux Two API,
-         (V4L2) as well as the original system. Drivers and applications
-         need to be rewritten to use V4L2, but drivers for popular cards
-         and applications for most video capture functions already exist.
+         (V4L2).
 
          Additional info and docs are available on the web at
          <http://linuxtv.org>
@@ -25,169 +48,82 @@ config VIDEO_DEV
          To compile this driver as a module, choose M here: the
          module will be called videodev.
 
-config VIDEO_V4L1
-       bool "Enable Video For Linux API 1 (DEPRECATED)"
-       depends on VIDEO_DEV
-       select VIDEO_V4L1_COMPAT
-       default y
-       ---help---
-         Enables a compatibility API used by most V4L2 devices to allow
-         its usage with legacy applications that supports only V4L1 api.
-
-         If you are unsure as to whether this is required, answer Y.
+config VIDEO_V4L2_COMMON
+       tristate
+       depends on (I2C || I2C=n) && VIDEO_DEV
+       default (I2C || I2C=n) && VIDEO_DEV
 
-config VIDEO_V4L1_COMPAT
-       bool "Enable Video For Linux API 1 compatible Layer"
-       depends on VIDEO_DEV
-       default y
+config VIDEO_V4L2_SUBDEV_API
+       bool "V4L2 sub-device userspace API (EXPERIMENTAL)"
+       depends on VIDEO_DEV && MEDIA_CONTROLLER && EXPERIMENTAL
        ---help---
-         This api were developed to be used at Kernel 2.2 and 2.4, but
-         lacks support for several video standards. There are several
-         drivers at kernel that still depends on it.
+         Enables the V4L2 sub-device pad-level userspace API used to configure
+         video format, size and frame rate between hardware blocks.
 
-         Documentation for the original API is included in the file
-         <Documentation/video4linux/API.html>.
+         This API is mostly used by camera interfaces in embedded platforms.
 
-         User tools for this are available from
-         <ftp://ftp.uk.linux.org/pub/linux/video4linux/>.
-
-         If you are unsure as to whether this is required, answer Y.
-
-config VIDEO_V4L2
-       bool
-       depends on VIDEO_DEV
-       default y
-
-source "drivers/media/video/Kconfig"
-
-source "drivers/media/radio/Kconfig"
-
-source "drivers/media/dvb/Kconfig"
-
-source "drivers/media/common/Kconfig"
+#
+# DVB Core
+#
 
-config VIDEO_TUNER
-       tristate
-       depends on I2C
-       select TUNER_XC2028 if !VIDEO_TUNER_CUSTOMIZE
-       select TUNER_MT20XX if !VIDEO_TUNER_CUSTOMIZE
-       select TUNER_TDA8290 if !VIDEO_TUNER_CUSTOMIZE
-       select TUNER_TEA5761 if !VIDEO_TUNER_CUSTOMIZE
-       select TUNER_TEA5767 if !VIDEO_TUNER_CUSTOMIZE
-       select TUNER_SIMPLE if !VIDEO_TUNER_CUSTOMIZE
-
-menuconfig VIDEO_TUNER_CUSTOMIZE
-       bool "Customize analog tuner modules to build"
-       depends on VIDEO_TUNER
+config DVB_CORE
+       tristate "DVB for Linux"
+       select CRC32
        help
-         This allows the user to deselect tuner drivers unnecessary
-         for their hardware from the build. Use this option with care
-         as deselecting tuner drivers which are in fact necessary will
-         result in V4L devices which cannot be tuned due to lack of
-         driver support
-
-         If unsure say N.
-
-if VIDEO_TUNER_CUSTOMIZE
+         DVB core utility functions for device handling, software fallbacks etc.
 
-config TUNER_XC2028
-       tristate "XCeive xc2028/xc3028 tuners"
-       depends on I2C
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for the xc2028/xc3028 tuners.
+         Enable this if you own a DVB/ATSC adapter and want to use it or if
+         you compile Linux for a digital SetTopBox.
 
-config TUNER_MT20XX
-       tristate "Microtune 2032 / 2050 tuners"
-       depends on I2C
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for the MT2032 / MT2050 tuner.
+         Say Y when you have a DVB or an ATSC card and want to use it.
 
-config TUNER_TDA8290
-       tristate "TDA 8290+8275(a) tuner combo"
-       depends on I2C
-       select DVB_TDA827X
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for Philips TDA8290+8275(a) tuner.
+         API specs and user tools are available from <http://www.linuxtv.org/>.
 
-config TUNER_TEA5761
-       tristate "TEA 5761 radio tuner (EXPERIMENTAL)"
-       depends on I2C && EXPERIMENTAL
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for the Philips TEA5761 radio tuner.
+         Please report problems regarding this support to the LinuxDVB
+         mailing list.
 
-config TUNER_TEA5767
-       tristate "TEA 5767 radio tuner"
-       depends on I2C
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for the Philips TEA5767 radio tuner.
+         If unsure say N.
 
-config TUNER_SIMPLE
-       tristate "Simple tuner support"
-       depends on I2C
-       default m if VIDEO_TUNER_CUSTOMIZE
+config DVB_NET
+       bool "DVB Network Support"
+       default (NET && INET)
+       depends on NET && INET && DVB_CORE
        help
-         Say Y here to include support for various simple tuners.
+         This option enables DVB Network Support which is a part of the DVB
+         standard. It is used, for example, by automatic firmware updates used
+         on Set-Top-Boxes. It can also be used to access the Internet via the
+         DVB card, if the network provider supports it.
 
-endif # VIDEO_TUNER_CUSTOMIZE
+         You may want to disable the network support on embedded devices. If
+         unsure say Y.
 
-config VIDEOBUF_GEN
+config VIDEO_MEDIA
        tristate
+       default (DVB_CORE && (VIDEO_DEV = n)) || (VIDEO_DEV && (DVB_CORE = n)) || (DVB_CORE && VIDEO_DEV)
 
-config VIDEOBUF_DMA_SG
-       depends on PCI
-       select VIDEOBUF_GEN
-       tristate
-
-config VIDEOBUF_VMALLOC
-       select VIDEOBUF_GEN
-       tristate
+comment "Multimedia drivers"
 
-config VIDEOBUF_DVB
-       tristate
-       select VIDEOBUF_GEN
-       select VIDEOBUF_DMA_SG
+source "drivers/media/common/Kconfig"
+source "drivers/media/rc/Kconfig"
 
-config VIDEO_BTCX
-       tristate
+#
+# Tuner drivers for DVB and V4L
+#
 
-config VIDEO_IR_I2C
-       tristate
+source "drivers/media/common/tuners/Kconfig"
 
-config VIDEO_IR
-       tristate
-       depends on INPUT
-       select VIDEO_IR_I2C if I2C
+#
+# Video/Radio/Hybrid adapters
+#
 
-config VIDEO_TVEEPROM
-       tristate
-       depends on I2C
+source "drivers/media/video/Kconfig"
 
-config DAB
-       boolean "DAB adapters"
-       default y
-       ---help---
-         Allow selecting support for for Digital Audio Broadcasting (DAB)
-         Receiver adapters.
+source "drivers/media/radio/Kconfig"
 
-if DAB
-config USB_DABUSB
-       tristate "DABUSB driver"
-       depends on USB
-       ---help---
-         A Digital Audio Broadcasting (DAB) Receiver for USB and Linux
-         brought to you by the DAB-Team
-         <http://wwwbode.cs.tum.edu/Par/arch/dab/>.  This driver can be taken
-         as an example for URB-based bulk, control, and isochronous
-         transactions. URB's are explained in
-         <Documentation/usb/URB.txt>.
+#
+# DVB adapters
+#
 
-         To compile this driver as a module, choose M here: the
-         module will be called dabusb.
-endif # DAB
+source "drivers/media/dvb/Kconfig"
 
-endmenu
+endif # MEDIA_SUPPORT