config VIDEO_SAA7134
	tristate "Philips SAA7134 support"
	depends on VIDEO_DEV && PCI && I2C
	select VIDEOBUF2_DMA_SG
	select VIDEO_TUNER
	select VIDEO_TVEEPROM
	select CRC32
	select VIDEO_SAA6588 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_SAA6752HS if MEDIA_SUBDRV_AUTOSELECT
	---help---
	  This is a video4linux driver for Philips SAA713x based
	  TV cards.

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

config VIDEO_SAA7134_ALSA
	tristate "Philips SAA7134 DMA audio support"
	depends on VIDEO_SAA7134 && SND
	select SND_PCM
	---help---
	  This is a video4linux driver for direct (DMA) audio in
	  Philips SAA713x based TV cards using ALSA

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

config VIDEO_SAA7134_RC
	bool "Philips SAA7134 Remote Controller support"
	depends on RC_CORE
	depends on VIDEO_SAA7134
	depends on !(RC_CORE=m && VIDEO_SAA7134=y)
	default y
	---help---
	  Enables Remote Controller support on saa7134 driver.

config VIDEO_SAA7134_DVB
	tristate "DVB/ATSC Support for saa7134 based TV cards"
	depends on VIDEO_SAA7134 && DVB_CORE
	select VIDEOBUF2_DVB
	select DVB_PLL if MEDIA_SUBDRV_AUTOSELECT
	select DVB_MT352 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_TDA1004X if MEDIA_SUBDRV_AUTOSELECT
	select DVB_NXT200X if MEDIA_SUBDRV_AUTOSELECT
	select DVB_TDA10086 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_TDA826X if MEDIA_SUBDRV_AUTOSELECT
	select DVB_ISL6421 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_ISL6405 if MEDIA_SUBDRV_AUTOSELECT
	select MEDIA_TUNER_TDA827X if MEDIA_SUBDRV_AUTOSELECT
	select MEDIA_TUNER_SIMPLE if MEDIA_SUBDRV_AUTOSELECT
	select DVB_ZL10036 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_MT312 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_LNBP21 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_ZL10353 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_LGDT3305 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_TDA10048 if MEDIA_SUBDRV_AUTOSELECT
	select MEDIA_TUNER_TDA18271 if MEDIA_SUBDRV_AUTOSELECT
	select MEDIA_TUNER_TDA8290 if MEDIA_SUBDRV_AUTOSELECT
	select DVB_ZL10039 if MEDIA_SUBDRV_AUTOSELECT
	---help---
	  This adds support for DVB cards based on the
	  Philips saa7134 chip.

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

config VIDEO_SAA7134_GO7007
	tristate "go7007 support for saa7134 based TV cards"
	depends on VIDEO_SAA7134
	depends on VIDEO_GO7007
	---help---
	  Enables saa7134 driver support for boards with go7007
	  MPEG encoder (WIS Voyager or compatible).
