config VIDEO_BT848
	tristate "BT848 Video For Linux"
	depends on m
	depends on VIDEO_DEV && PCI && I2C && VIDEO_V4L2
	depends on I2C_ALGOBIT
	select VIDEOBUF_DMA_SG
	depends on RC_CORE
	depends on MEDIA_RADIO_SUPPORT
	select VIDEO_TUNER
	select VIDEO_TVEEPROM
	select VIDEO_MSP3400 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_TVAUDIO if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_TDA7432 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_SAA6588 if MEDIA_SUBDRV_AUTOSELECT
	select RADIO_ADAPTERS
	select RADIO_TEA575X
	---help---
	  Support for BT848 based frame grabber/overlay boards. This includes
	  the Miro, Hauppauge and STB boards. Please read the material in
	  <file:Documentation/video4linux/bttv/> for more information.

	  To compile this driver as a module, choose M here: the
	  module will be called bttv.

config DVB_BT8XX
	tristate "DVB/ATSC Support for bt878 based TV cards"
	depends on m
	depends on DVB_CORE && PCI && I2C && VIDEO_BT848
	select DVB_MT352 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_SP887X if MEDIA_SUBDRV_AUTOSELECT
	select DVB_NXT6000 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_CX24110 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_OR51211 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_LGDT330X if MEDIA_SUBDRV_AUTOSELECT
	select DVB_ZL10353 if MEDIA_SUBDRV_AUTOSELECT
	select MEDIA_TUNER_SIMPLE if MEDIA_SUBDRV_AUTOSELECT
	help
	  Support for PCI cards based on the Bt8xx PCI bridge. Examples are
	  the Nebula cards, the Pinnacle PCTV cards, the Twinhan DST cards,
	  the pcHDTV HD2000 cards, the DViCO FusionHDTV Lite cards, and
	  some AVerMedia cards.

	  Since these cards have no MPEG decoder onboard, they transmit
	  only compressed MPEG data over the PCI bus, so you need
	  an external software decoder to watch TV on your computer.

	  Say Y if you own such a device and want to use it.
