config VIDEO_ZORAN
	tristate "Zoran ZR36057/36067 Video For Linux"
	depends on m
	depends on PCI && I2C_ALGOBIT && VIDEO_V4L2 && VIRT_TO_BUS
	depends on !ALPHA
	help
	  Say Y for support for MJPEG capture cards based on the Zoran
	  36057/36067 PCI controller chipset. This includes the Iomega
	  Buz, Pinnacle DC10+ and the Linux Media Labs LML33. There is
	  a driver homepage at <http://mjpeg.sf.net/driver-zoran/>. For
	  more information, check <file:Documentation/video4linux/Zoran>.

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

config VIDEO_ZORAN_DC30
	tristate "Pinnacle/Miro DC30(+) support"
	depends on m
	depends on VIDEO_ZORAN
	select VIDEO_ADV7175 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_VPX3220 if MEDIA_SUBDRV_AUTOSELECT
	help
	  Support for the Pinnacle/Miro DC30(+) MJPEG capture/playback
	  card. This also supports really old DC10 cards based on the
	  zr36050 MJPEG codec and zr36016 VFE.

config VIDEO_ZORAN_ZR36060
	tristate "Zoran ZR36060"
	depends on m
	depends on VIDEO_ZORAN
	help
	  Say Y to support Zoran boards based on 36060 chips.
	  This includes Iomega Buz, Pinnacle DC10, Linux media Labs 33
	  and 33 R10 and AverMedia 6 boards.

config VIDEO_ZORAN_BUZ
	tristate "Iomega Buz support"
	depends on m
	depends on VIDEO_ZORAN_ZR36060
	select VIDEO_SAA711X if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_SAA7185 if MEDIA_SUBDRV_AUTOSELECT
	help
	  Support for the Iomega Buz MJPEG capture/playback card.

config VIDEO_ZORAN_DC10
	tristate "Pinnacle/Miro DC10(+) support"
	depends on m
	depends on VIDEO_ZORAN_ZR36060
	select VIDEO_SAA7110 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_ADV7175 if MEDIA_SUBDRV_AUTOSELECT
	help
	  Support for the Pinnacle/Miro DC10(+) MJPEG capture/playback
	  card.

config VIDEO_ZORAN_LML33
	tristate "Linux Media Labs LML33 support"
	depends on m
	depends on VIDEO_ZORAN_ZR36060
	select VIDEO_BT819 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_BT856 if MEDIA_SUBDRV_AUTOSELECT
	help
	  Support for the Linux Media Labs LML33 MJPEG capture/playback
	  card.

config VIDEO_ZORAN_LML33R10
	tristate "Linux Media Labs LML33R10 support"
	depends on m
	depends on VIDEO_ZORAN_ZR36060
	select VIDEO_SAA711X if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_ADV7170 if MEDIA_SUBDRV_AUTOSELECT
	help
	  support for the Linux Media Labs LML33R10 MJPEG capture/playback
	  card.

config VIDEO_ZORAN_AVS6EYES
	tristate "AverMedia 6 Eyes support"
	depends on m
	depends on VIDEO_ZORAN_ZR36060
	select VIDEO_BT856 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_BT866 if MEDIA_SUBDRV_AUTOSELECT
	select VIDEO_KS0127 if MEDIA_SUBDRV_AUTOSELECT
	help
	  Support for the AverMedia 6 Eyes video surveillance card.
