1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 21da177e4SLinus Torvalds# 31da177e4SLinus Torvalds# Multimedia device configuration 41da177e4SLinus Torvalds# 51da177e4SLinus Torvalds 69177e51dSHans Verkuilconfig CEC_CORE 79177e51dSHans Verkuil tristate 89177e51dSHans Verkuil 9e94c3281SHans Verkuilconfig CEC_NOTIFIER 109177e51dSHans Verkuil bool 119177e51dSHans Verkuil 12ea5c8ef2SHans Verkuilconfig CEC_PIN 13ea5c8ef2SHans Verkuil bool 14ea5c8ef2SHans Verkuil 15b9e1486eSSean Youngsource "drivers/media/rc/Kconfig" 16b9e1486eSSean Young 17ab482a6cSRandy Dunlapmenuconfig MEDIA_SUPPORT 18ab482a6cSRandy Dunlap tristate "Multimedia support" 19e25df120SMartin Schwidefsky depends on HAS_IOMEM 20ab482a6cSRandy Dunlap help 21b4c184e5SMauro Carvalho Chehab If you want to use Webcams, Video grabber devices and/or TV devices 22ab482a6cSRandy Dunlap enable this option and other options below. 23b4c184e5SMauro Carvalho Chehab Additional info and docs are available on the web at 24991ce92fSMauro Carvalho Chehab <https://linuxtv.org> 25ab482a6cSRandy Dunlap 26ab482a6cSRandy Dunlapif MEDIA_SUPPORT 271da177e4SLinus Torvalds 287c91f062SMauro Carvalho Chehabcomment "Multimedia core support" 297c91f062SMauro Carvalho Chehab 307c91f062SMauro Carvalho Chehab# 31b4c184e5SMauro Carvalho Chehab# Multimedia support - automatically enable V4L2 and DVB core 32b4c184e5SMauro Carvalho Chehab# 33b4c184e5SMauro Carvalho Chehabconfig MEDIA_CAMERA_SUPPORT 34b4c184e5SMauro Carvalho Chehab bool "Cameras/video grabbers support" 35b60a5b8dSMauro Carvalho Chehab help 36b4c184e5SMauro Carvalho Chehab Enable support for webcams and video grabbers. 37b4c184e5SMauro Carvalho Chehab 38b4c184e5SMauro Carvalho Chehab Say Y when you have a webcam or a video capture grabber board. 39b4c184e5SMauro Carvalho Chehab 40b4c184e5SMauro Carvalho Chehabconfig MEDIA_ANALOG_TV_SUPPORT 41b4c184e5SMauro Carvalho Chehab bool "Analog TV support" 42b60a5b8dSMauro Carvalho Chehab help 43b4c184e5SMauro Carvalho Chehab Enable analog TV support. 44b4c184e5SMauro Carvalho Chehab 45b4c184e5SMauro Carvalho Chehab Say Y when you have a TV board with analog support or with a 46b4c184e5SMauro Carvalho Chehab hybrid analog/digital TV chipset. 47b4c184e5SMauro Carvalho Chehab 48b4c184e5SMauro Carvalho Chehab Note: There are several DVB cards that are based on chips that 49b4c184e5SMauro Carvalho Chehab support both analog and digital TV. Disabling this option 50b4c184e5SMauro Carvalho Chehab will disable support for them. 51b4c184e5SMauro Carvalho Chehab 52b4c184e5SMauro Carvalho Chehabconfig MEDIA_DIGITAL_TV_SUPPORT 53b4c184e5SMauro Carvalho Chehab bool "Digital TV support" 54b60a5b8dSMauro Carvalho Chehab help 55b4c184e5SMauro Carvalho Chehab Enable digital TV support. 56b4c184e5SMauro Carvalho Chehab 57b4c184e5SMauro Carvalho Chehab Say Y when you have a board with digital support or a board with 58b4c184e5SMauro Carvalho Chehab hybrid digital TV and analog TV. 59b4c184e5SMauro Carvalho Chehab 60b4c184e5SMauro Carvalho Chehabconfig MEDIA_RADIO_SUPPORT 61b4c184e5SMauro Carvalho Chehab bool "AM/FM radio receivers/transmitters support" 62b60a5b8dSMauro Carvalho Chehab help 63b4c184e5SMauro Carvalho Chehab Enable AM/FM radio support. 64b4c184e5SMauro Carvalho Chehab 65b4c184e5SMauro Carvalho Chehab Additional info and docs are available on the web at 66991ce92fSMauro Carvalho Chehab <https://linuxtv.org> 67b4c184e5SMauro Carvalho Chehab 68b4c184e5SMauro Carvalho Chehab Say Y when you have a board with radio support. 69b4c184e5SMauro Carvalho Chehab 70b4c184e5SMauro Carvalho Chehab Note: There are several TV cards that are based on chips that 71b4c184e5SMauro Carvalho Chehab support radio reception. Disabling this option will 72b4c184e5SMauro Carvalho Chehab disable support for them. 73b4c184e5SMauro Carvalho Chehab 74435ef148SAntti Palosaariconfig MEDIA_SDR_SUPPORT 75435ef148SAntti Palosaari bool "Software defined radio support" 76b60a5b8dSMauro Carvalho Chehab help 77435ef148SAntti Palosaari Enable software defined radio support. 78435ef148SAntti Palosaari 79435ef148SAntti Palosaari Say Y when you have a software defined radio device. 80435ef148SAntti Palosaari 810dbacebeSHans Verkuilconfig MEDIA_CEC_SUPPORT 820dbacebeSHans Verkuil bool "HDMI CEC support" 83b60a5b8dSMauro Carvalho Chehab help 840dbacebeSHans Verkuil Enable support for HDMI CEC (Consumer Electronics Control), 850dbacebeSHans Verkuil which is an optional HDMI feature. 860dbacebeSHans Verkuil 870dbacebeSHans Verkuil Say Y when you have an HDMI receiver, transmitter or a USB CEC 880dbacebeSHans Verkuil adapter that supports HDMI CEC. 890dbacebeSHans Verkuil 9056a263aaSHans Verkuilsource "drivers/media/cec/Kconfig" 916917a7b7SHans Verkuil 92c612e54fSHans Verkuilsource "drivers/media/mc/Kconfig" 93078ab3eaSSakari Ailus 94cf4b9211SLaurent Pinchart# 95b4c184e5SMauro Carvalho Chehab# Video4Linux support 96b4c184e5SMauro Carvalho Chehab# Only enables if one of the V4L2 types (ATV, webcam, radio) is selected 977c91f062SMauro Carvalho Chehab# 987c91f062SMauro Carvalho Chehab 991da177e4SLinus Torvaldsconfig VIDEO_DEV 100b4c184e5SMauro Carvalho Chehab tristate 101b4c184e5SMauro Carvalho Chehab depends on MEDIA_SUPPORT 102435ef148SAntti Palosaari depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT 103b4c184e5SMauro Carvalho Chehab default y 1041da177e4SLinus Torvalds 1057cd5a16bSStanimir Varbanovconfig VIDEO_V4L2_SUBDEV_API 10651e8cb74SKees Cook bool "V4L2 sub-device userspace API" 10751e8cb74SKees Cook depends on VIDEO_DEV && MEDIA_CONTROLLER 108b60a5b8dSMauro Carvalho Chehab help 1097cd5a16bSStanimir Varbanov Enables the V4L2 sub-device pad-level userspace API used to configure 1107cd5a16bSStanimir Varbanov video format, size and frame rate between hardware blocks. 1117cd5a16bSStanimir Varbanov 1127cd5a16bSStanimir Varbanov This API is mostly used by camera interfaces in embedded platforms. 1137cd5a16bSStanimir Varbanov 114f0af8fa4SMauro Carvalho Chehabsource "drivers/media/v4l2-core/Kconfig" 115f0af8fa4SMauro Carvalho Chehab 1167c91f062SMauro Carvalho Chehab# 1177c91f062SMauro Carvalho Chehab# DVB Core 118b4c184e5SMauro Carvalho Chehab# Only enables if one of DTV is selected 1197c91f062SMauro Carvalho Chehab# 120cd41e28eSMauro Carvalho Chehab 1217c91f062SMauro Carvalho Chehabconfig DVB_CORE 122b4c184e5SMauro Carvalho Chehab tristate 123b4c184e5SMauro Carvalho Chehab depends on MEDIA_SUPPORT 124b4c184e5SMauro Carvalho Chehab depends on MEDIA_DIGITAL_TV_SUPPORT 12588327305SMauro Carvalho Chehab depends on (I2C || I2C=n) 126b4c184e5SMauro Carvalho Chehab default y 1277c91f062SMauro Carvalho Chehab select CRC32 1287c91f062SMauro Carvalho Chehab 1294021053eSMauro Carvalho Chehabconfig DVB_MMAP 1304021053eSMauro Carvalho Chehab bool "Enable DVB memory-mapped API (EXPERIMENTAL)" 1314021053eSMauro Carvalho Chehab depends on DVB_CORE 13285e60bd7SArnd Bergmann depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_CORE 13385e60bd7SArnd Bergmann select VIDEOBUF2_VMALLOC 1344021053eSMauro Carvalho Chehab help 1352c27476eSMichael Ira Krufky This option enables DVB experimental memory-mapped API, which 1364021053eSMauro Carvalho Chehab reduces the number of context switches to read DVB buffers, as 1374021053eSMauro Carvalho Chehab the buffers can use mmap() syscalls. 1384021053eSMauro Carvalho Chehab 1394021053eSMauro Carvalho Chehab Support for it is experimental. Use with care. If unsure, 1404021053eSMauro Carvalho Chehab say N. 1414021053eSMauro Carvalho Chehab 142a34ff6cdSHans Petter Selaskyconfig DVB_NET 143a34ff6cdSHans Petter Selasky bool "DVB Network Support" 144a34ff6cdSHans Petter Selasky default (NET && INET) 1458c528d5eSGuennadi Liakhovetski depends on NET && INET && DVB_CORE 146a34ff6cdSHans Petter Selasky help 1479a78efc8SJiri Slaby This option enables DVB Network Support which is a part of the DVB 1489a78efc8SJiri Slaby standard. It is used, for example, by automatic firmware updates used 1499a78efc8SJiri Slaby on Set-Top-Boxes. It can also be used to access the Internet via the 1509a78efc8SJiri Slaby DVB card, if the network provider supports it. 151a34ff6cdSHans Petter Selasky 1529a78efc8SJiri Slaby You may want to disable the network support on embedded devices. If 1539a78efc8SJiri Slaby unsure say Y. 154a34ff6cdSHans Petter Selasky 1555d92bbe6SMauro Carvalho Chehab# This Kconfig option is used by both PCI and USB drivers 1565d92bbe6SMauro Carvalho Chehabconfig TTPCI_EEPROM 1575d92bbe6SMauro Carvalho Chehab tristate 1585d92bbe6SMauro Carvalho Chehab depends on I2C 1595d92bbe6SMauro Carvalho Chehab 160f0af8fa4SMauro Carvalho Chehabsource "drivers/media/dvb-core/Kconfig" 161f0af8fa4SMauro Carvalho Chehab 162c455f5c8SMauro Carvalho Chehabcomment "Media drivers" 1637c91f062SMauro Carvalho Chehab 1647c91f062SMauro Carvalho Chehab# 165cb7a01acSMauro Carvalho Chehab# V4L platform/mem2mem drivers 166cb7a01acSMauro Carvalho Chehab# 1671da177e4SLinus Torvalds 168786baecfSMauro Carvalho Chehabsource "drivers/media/usb/Kconfig" 1693c8c09b5SMauro Carvalho Chehabsource "drivers/media/pci/Kconfig" 1703c8c09b5SMauro Carvalho Chehabsource "drivers/media/platform/Kconfig" 1710013ca8cSMauro Carvalho Chehabsource "drivers/media/mmc/Kconfig" 1723c8c09b5SMauro Carvalho Chehabsource "drivers/media/radio/Kconfig" 1731da177e4SLinus Torvalds 174616300bdSMauro Carvalho Chehabcomment "Supported FireWire (IEEE 1394) Adapters" 175616300bdSMauro Carvalho Chehab depends on DVB_CORE && FIREWIRE 176616300bdSMauro Carvalho Chehabsource "drivers/media/firewire/Kconfig" 177616300bdSMauro Carvalho Chehab 1783c8c09b5SMauro Carvalho Chehab# Common driver options 1793785bc17SMauro Carvalho Chehabsource "drivers/media/common/Kconfig" 1803785bc17SMauro Carvalho Chehab 1818283a092SHans Verkuilcomment "Media ancillary drivers (tuners, sensors, i2c, spi, frontends)" 1825344fe6eSHans Verkuil 1833c8c09b5SMauro Carvalho Chehab# 1848283a092SHans Verkuil# Ancillary drivers (tuners, i2c, spi, frontends) 1853c8c09b5SMauro Carvalho Chehab# 1863c8c09b5SMauro Carvalho Chehab 187fccea74fSMauro Carvalho Chehabconfig MEDIA_SUBDRV_AUTOSELECT 1888283a092SHans Verkuil bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)" 189435ef148SAntti Palosaari depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_CAMERA_SUPPORT || MEDIA_SDR_SUPPORT 190347f7a37SMauro Carvalho Chehab depends on HAS_IOMEM 191347f7a37SMauro Carvalho Chehab select I2C 192347f7a37SMauro Carvalho Chehab select I2C_MUX 19324f6f93aSEzequiel Garcia default y if !EMBEDDED 194fccea74fSMauro Carvalho Chehab help 1955344fe6eSHans Verkuil By default, a media driver auto-selects all possible ancillary 1965344fe6eSHans Verkuil devices such as tuners, sensors, video encoders/decoders and 1975344fe6eSHans Verkuil frontends, that are used by any of the supported devices. 198fccea74fSMauro Carvalho Chehab 199fccea74fSMauro Carvalho Chehab This is generally the right thing to do, except when there 2002c76a12aSMauro Carvalho Chehab are strict constraints with regards to the kernel size, 2012c76a12aSMauro Carvalho Chehab like on embedded systems. 202fccea74fSMauro Carvalho Chehab 2032c76a12aSMauro Carvalho Chehab Use this option with care, as deselecting ancillary drivers which 2042c76a12aSMauro Carvalho Chehab are, in fact, necessary will result in the lack of the needed 2052c76a12aSMauro Carvalho Chehab functionality for your device (it may not tune or may not have 2065344fe6eSHans Verkuil the needed demodulators). 207fccea74fSMauro Carvalho Chehab 208fccea74fSMauro Carvalho Chehab If unsure say Y. 209bb69ee27SMauro Carvalho Chehab 2104fa4ef39SEzequiel Garciaconfig MEDIA_HIDE_ANCILLARY_SUBDRV 2114fa4ef39SEzequiel Garcia bool 2124fa4ef39SEzequiel Garcia depends on MEDIA_SUBDRV_AUTOSELECT && !COMPILE_TEST && !EXPERT 2134fa4ef39SEzequiel Garcia default y 2144fa4ef39SEzequiel Garcia 215bb69ee27SMauro Carvalho Chehabconfig MEDIA_ATTACH 216bb69ee27SMauro Carvalho Chehab bool 217bb69ee27SMauro Carvalho Chehab depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT 218bb69ee27SMauro Carvalho Chehab depends on MODULES 219bb69ee27SMauro Carvalho Chehab default MODULES 220fccea74fSMauro Carvalho Chehab 2213c8c09b5SMauro Carvalho Chehabsource "drivers/media/i2c/Kconfig" 2228283a092SHans Verkuilsource "drivers/media/spi/Kconfig" 223fccea74fSMauro Carvalho Chehabsource "drivers/media/tuners/Kconfig" 2243c8c09b5SMauro Carvalho Chehabsource "drivers/media/dvb-frontends/Kconfig" 2253c8c09b5SMauro Carvalho Chehab 226ab482a6cSRandy Dunlapendif # MEDIA_SUPPORT 227