net: convert /proc/net/rt_acct to seq_file
[safe/jmp/linux-2.6] / drivers / media / Kconfig
index 8f4a453..ba69bee 100644 (file)
@@ -2,19 +2,29 @@
 # 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"
+
+#
+# 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,25 +35,31 @@ config VIDEO_DEV
          To compile this driver as a module, choose M here: the
          module will be called videodev.
 
-config VIDEO_V4L1
+config VIDEO_V4L2_COMMON
+       tristate
+       depends on (I2C || I2C=n) && VIDEO_DEV
+       default (I2C || I2C=n) && VIDEO_DEV
+
+config VIDEO_ALLOW_V4L1
        bool "Enable Video For Linux API 1 (DEPRECATED)"
-       depends on VIDEO_DEV
-       select VIDEO_V4L1_COMPAT
-       default y
+       depends on VIDEO_DEV && VIDEO_V4L2_COMMON
+       default VIDEO_DEV && VIDEO_V4L2_COMMON
        ---help---
-         Enables a compatibility API used by most V4L2 devices to allow
-         its usage with legacy applications that supports only V4L1 api.
+         Enables drivers based on the legacy V4L1 API.
+
+         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.
 
          If you are unsure as to whether this is required, answer Y.
 
 config VIDEO_V4L1_COMPAT
-       bool "Enable Video For Linux API 1 compatible Layer"
+       bool "Enable Video For Linux API 1 compatible Layer" if !VIDEO_ALLOW_V4L1
        depends on VIDEO_DEV
        default y
        ---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 a compatibility API used by most V4L2 devices to allow
+         its usage with legacy applications that supports only V4L1 api.
 
          Documentation for the original API is included in the file
          <Documentation/video4linux/API.html>.
@@ -53,136 +69,61 @@ config VIDEO_V4L1_COMPAT
 
          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
-       select TUNER_TDA9887 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"
+       depends on NET && INET
+       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.
-
-config TUNER_TDA8290
-       tristate "TDA 8290/8295 + 8275(a)/18271 tuner combo"
-       depends on I2C
-       select DVB_TDA827X
-       select DVB_TDA18271
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for Philips TDA8290+8275(a) tuner.
+         Say Y when you have a DVB or an ATSC card and want to use it.
 
-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.
+         API specs and user tools are available from <http://www.linuxtv.org/>.
 
-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.
+         Please report problems regarding this support to the LinuxDVB
+         mailing list.
 
-config TUNER_SIMPLE
-       tristate "Simple tuner support"
-       depends on I2C
-       select TUNER_TDA9887
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for various simple tuners.
+         If unsure say N.
 
-config TUNER_TDA9887
-       tristate "TDA 9885/6/7 analog IF demodulator"
-       depends on I2C
-       default m if VIDEO_TUNER_CUSTOMIZE
-       help
-         Say Y here to include support for Philips TDA9885/6/7
-         analog IF demodulator.
+config VIDEO_MEDIA
+       tristate
+       default (DVB_CORE && (VIDEO_DEV = n)) || (VIDEO_DEV && (DVB_CORE = n)) || (DVB_CORE && VIDEO_DEV)
 
-endif # VIDEO_TUNER_CUSTOMIZE
+comment "Multimedia drivers"
 
-config VIDEOBUF_GEN
-       tristate
+source "drivers/media/common/Kconfig"
 
-config VIDEOBUF_DMA_SG
-       depends on PCI
-       select VIDEOBUF_GEN
-       tristate
+#
+# Tuner drivers for DVB and V4L
+#
 
-config VIDEOBUF_VMALLOC
-       select VIDEOBUF_GEN
-       tristate
+source "drivers/media/common/tuners/Kconfig"
 
-config VIDEOBUF_DVB
-       tristate
-       select VIDEOBUF_GEN
-       select VIDEOBUF_DMA_SG
+#
+# Video/Radio/Hybrid adapters
+#
 
-config VIDEO_BTCX
-       tristate
+source "drivers/media/video/Kconfig"
 
-config VIDEO_IR_I2C
-       tristate
+source "drivers/media/radio/Kconfig"
 
-config VIDEO_IR
-       tristate
-       depends on INPUT
-       select VIDEO_IR_I2C if I2C
+#
+# DVB adapters
+#
 
-config VIDEO_TVEEPROM
-       tristate
-       depends on I2C
+source "drivers/media/dvb/Kconfig"
 
 config DAB
        boolean "DAB adapters"
-       default y
        ---help---
-         Allow selecting support for for Digital Audio Broadcasting (DAB)
+         Allow selecting support for Digital Audio Broadcasting (DAB)
          Receiver adapters.
 
 if DAB
@@ -201,4 +142,4 @@ config USB_DABUSB
          module will be called dabusb.
 endif # DAB
 
-endmenu
+endif # MEDIA_SUPPORT