258 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			258 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
# SPDX-License-Identifier: GPL-2.0-only
 | 
						|
#
 | 
						|
# Multimedia device configuration
 | 
						|
#
 | 
						|
 | 
						|
#
 | 
						|
# NOTE: CEC and Remote Controller support should not depend on MEDIA_SUPPORT
 | 
						|
#
 | 
						|
source "drivers/media/rc/Kconfig"
 | 
						|
source "drivers/media/cec/Kconfig"
 | 
						|
 | 
						|
menuconfig MEDIA_SUPPORT
 | 
						|
	tristate "Multimedia support"
 | 
						|
	depends on HAS_IOMEM
 | 
						|
	help
 | 
						|
	  If you want to use media devices, including Webcams, Video grabber
 | 
						|
	  devices and/or TV devices, V4L2 codecs, etc, enable this option
 | 
						|
	  and other options below.
 | 
						|
 | 
						|
	  Additional info and docs are available on the web at
 | 
						|
	  <https://linuxtv.org>
 | 
						|
 | 
						|
if MEDIA_SUPPORT
 | 
						|
 | 
						|
config MEDIA_SUPPORT_FILTER
 | 
						|
	bool "Filter media drivers"
 | 
						|
	depends on MEDIA_SUPPORT
 | 
						|
	default y if !EMBEDDED && !EXPERT
 | 
						|
	help
 | 
						|
	   Configuring the media subsystem can be complex, as there are
 | 
						|
	   hundreds of drivers and other config options.
 | 
						|
 | 
						|
	   This menu offers option that will help the Kernel's config
 | 
						|
	   system to hide drivers that are out of the scope of the
 | 
						|
	   user needs, and disabling core support for unused APIs.
 | 
						|
 | 
						|
	   If not selected, all non-optional media core functionality
 | 
						|
	   needed to support media drivers will be enabled. Also, all
 | 
						|
	   media device drivers should be shown.
 | 
						|
 | 
						|
config MEDIA_SUBDRV_AUTOSELECT
 | 
						|
	bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)"
 | 
						|
	depends on HAS_IOMEM
 | 
						|
	select I2C
 | 
						|
	select I2C_MUX
 | 
						|
	default y if MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  By default, a media driver auto-selects all possible ancillary
 | 
						|
	  devices such as tuners, sensors, video encoders/decoders and
 | 
						|
	  frontends, that are used by any of the supported devices.
 | 
						|
 | 
						|
	  This is generally the right thing to do, except when there
 | 
						|
	  are strict constraints with regards to the kernel size,
 | 
						|
	  like on embedded systems.
 | 
						|
 | 
						|
	  Use this option with care, as deselecting ancillary drivers which
 | 
						|
	  are, in fact, necessary will result in the lack of the needed
 | 
						|
	  functionality for your device (it may not tune or may not have
 | 
						|
	  the needed demodulators).
 | 
						|
 | 
						|
	  If unsure say Y.
 | 
						|
 | 
						|
menu "Media device types"
 | 
						|
 | 
						|
#
 | 
						|
# Multimedia support - automatically enable V4L2 and DVB core
 | 
						|
#
 | 
						|
config MEDIA_CAMERA_SUPPORT
 | 
						|
	bool "Cameras and video grabbers"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  Enable support for webcams and video grabbers.
 | 
						|
 | 
						|
	  Say Y when you have a webcam or a video capture grabber board.
 | 
						|
 | 
						|
config MEDIA_ANALOG_TV_SUPPORT
 | 
						|
	bool "Analog TV"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  Enable analog TV support.
 | 
						|
 | 
						|
	  Say Y when you have a TV board with analog support or with a
 | 
						|
	  hybrid analog/digital TV chipset.
 | 
						|
 | 
						|
	  Note: There are several DVB cards that are based on chips that
 | 
						|
		support both analog and digital TV. Disabling this option
 | 
						|
		will disable support for them.
 | 
						|
 | 
						|
config MEDIA_DIGITAL_TV_SUPPORT
 | 
						|
	tristate "Digital TV"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  Enable digital TV support.
 | 
						|
 | 
						|
	  Say Y when you have a board with digital support or a board with
 | 
						|
	  hybrid digital TV and analog TV.
 | 
						|
 | 
						|
config MEDIA_RADIO_SUPPORT
 | 
						|
	bool "AM/FM radio receivers/transmitters"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  Enable AM/FM radio support.
 | 
						|
 | 
						|
	  Additional info and docs are available on the web at
 | 
						|
	  <https://linuxtv.org>
 | 
						|
 | 
						|
	  Say Y when you have a board with radio support.
 | 
						|
 | 
						|
	  Note: There are several TV cards that are based on chips that
 | 
						|
		support radio reception. Disabling this option will
 | 
						|
		disable support for them.
 | 
						|
 | 
						|
config MEDIA_SDR_SUPPORT
 | 
						|
	bool "Software defined radio"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  Enable software defined radio support.
 | 
						|
 | 
						|
	  Say Y when you have a software defined radio device.
 | 
						|
 | 
						|
config MEDIA_PLATFORM_SUPPORT
 | 
						|
	bool "Platform-specific devices"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  Enable support for complex cameras, codecs, and other hardware
 | 
						|
	  that are integrated at the CPU, GPU or on Image Signalling Processor
 | 
						|
	  and don't use PCI, USB or Firewire buses.
 | 
						|
 | 
						|
	  This is found on Embedded hardware (SoC), on V4L2 codecs and
 | 
						|
	  on some GPU and newer CPU chipsets.
 | 
						|
 | 
						|
	  Say Y when you want to be able so see such devices.
 | 
						|
 | 
						|
config MEDIA_TEST_SUPPORT
 | 
						|
	bool "Test drivers"
 | 
						|
	default y if !MEDIA_SUPPORT_FILTER
 | 
						|
	help
 | 
						|
	  These drivers should not be used on production kernels, but
 | 
						|
	  can be useful on debug ones. This option enables several dummy drivers
 | 
						|
	  that simulate real hardware. Very useful to test userspace
 | 
						|
	  applications and to validate if the subsystem core doesn't
 | 
						|
	  have regressions.
 | 
						|
 | 
						|
	  Say Y if you want to use some virtual test driver.
 | 
						|
 | 
						|
	  In case of doubts, say N.
 | 
						|
	  Say Y when you have a software defined radio device.
 | 
						|
endmenu # media device types
 | 
						|
 | 
						|
 | 
						|
menu "Media core support"
 | 
						|
	visible if !MEDIA_SUPPORT_FILTER
 | 
						|
 | 
						|
config VIDEO_DEV
 | 
						|
	tristate "Video4Linux core"
 | 
						|
	default MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT || MEDIA_PLATFORM_SUPPORT || MEDIA_TEST_SUPPORT
 | 
						|
	help
 | 
						|
	  Enables the V4L2 API, used by cameras, analog TV, video grabbers,
 | 
						|
	  radio devices and by some input devices.
 | 
						|
 | 
						|
config MEDIA_CONTROLLER
 | 
						|
	bool "Media Controller API"
 | 
						|
	default MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_PLATFORM_SUPPORT
 | 
						|
	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.
 | 
						|
 | 
						|
#
 | 
						|
# DVB Core
 | 
						|
#	Only enables if one of DTV is selected
 | 
						|
#
 | 
						|
 | 
						|
config DVB_CORE
 | 
						|
	tristate
 | 
						|
	depends on MEDIA_DIGITAL_TV_SUPPORT
 | 
						|
	depends on (I2C || I2C=n)
 | 
						|
	default MEDIA_DIGITAL_TV_SUPPORT
 | 
						|
	select CRC32
 | 
						|
	help
 | 
						|
	  Enables the DVB API, used by Digital TV devices. Supports several
 | 
						|
	  standards, including DVB, ATSC, ISDB and CMDB.
 | 
						|
 | 
						|
endmenu # Media core support
 | 
						|
 | 
						|
#
 | 
						|
# Extra per-media API core functionality
 | 
						|
 | 
						|
menu "Video4Linux options"
 | 
						|
	visible if VIDEO_DEV
 | 
						|
 | 
						|
source "drivers/media/v4l2-core/Kconfig"
 | 
						|
endmenu
 | 
						|
 | 
						|
menu "Media controller options"
 | 
						|
	visible if MEDIA_CONTROLLER
 | 
						|
 | 
						|
source "drivers/media/mc/Kconfig"
 | 
						|
endmenu
 | 
						|
 | 
						|
menu "Digital TV options"
 | 
						|
	visible if DVB_CORE
 | 
						|
 | 
						|
source "drivers/media/dvb-core/Kconfig"
 | 
						|
endmenu
 | 
						|
 | 
						|
menu "Media drivers"
 | 
						|
 | 
						|
comment "Drivers filtered as selected at 'Filter media drivers'"
 | 
						|
	depends on MEDIA_SUPPORT_FILTER
 | 
						|
 | 
						|
source "drivers/media/usb/Kconfig"
 | 
						|
source "drivers/media/pci/Kconfig"
 | 
						|
source "drivers/media/radio/Kconfig"
 | 
						|
 | 
						|
# Common driver options
 | 
						|
source "drivers/media/common/Kconfig"
 | 
						|
 | 
						|
if MEDIA_PLATFORM_SUPPORT
 | 
						|
source "drivers/media/platform/Kconfig"
 | 
						|
source "drivers/media/mmc/Kconfig"
 | 
						|
endif
 | 
						|
 | 
						|
if MEDIA_TEST_SUPPORT
 | 
						|
source "drivers/media/test-drivers/Kconfig"
 | 
						|
endif
 | 
						|
 | 
						|
source "drivers/media/firewire/Kconfig"
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
#
 | 
						|
# Ancillary drivers (tuners, i2c, spi, frontends)
 | 
						|
#
 | 
						|
 | 
						|
config MEDIA_HIDE_ANCILLARY_SUBDRV
 | 
						|
	bool
 | 
						|
	depends on MEDIA_SUBDRV_AUTOSELECT && !COMPILE_TEST && !EXPERT
 | 
						|
	default y
 | 
						|
 | 
						|
menu "Media ancillary drivers"
 | 
						|
 | 
						|
config MEDIA_ATTACH
 | 
						|
	bool
 | 
						|
	depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT
 | 
						|
	depends on MODULES
 | 
						|
	default MODULES
 | 
						|
 | 
						|
source "drivers/media/i2c/Kconfig"
 | 
						|
source "drivers/media/spi/Kconfig"
 | 
						|
source "drivers/media/tuners/Kconfig"
 | 
						|
source "drivers/media/dvb-frontends/Kconfig"
 | 
						|
 | 
						|
endmenu
 | 
						|
 | 
						|
endif # MEDIA_SUPPORT
 |