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 21dee1877dSMauro Carvalho Chehab If you want to use media devices, including Webcams, Video grabber 22dee1877dSMauro Carvalho Chehab devices and/or TV devices, V4L2 codecs, etc, enable this option 23dee1877dSMauro Carvalho Chehab and other options below. 24dee1877dSMauro Carvalho Chehab 25b4c184e5SMauro Carvalho Chehab Additional info and docs are available on the web at 26991ce92fSMauro Carvalho Chehab <https://linuxtv.org> 27ab482a6cSRandy Dunlap 28ab482a6cSRandy Dunlapif MEDIA_SUPPORT 291da177e4SLinus Torvalds 307c91f062SMauro Carvalho Chehabcomment "Multimedia core support" 317c91f062SMauro Carvalho Chehab 327c91f062SMauro Carvalho Chehab# 33b4c184e5SMauro Carvalho Chehab# Multimedia support - automatically enable V4L2 and DVB core 34b4c184e5SMauro Carvalho Chehab# 35b4c184e5SMauro Carvalho Chehabconfig MEDIA_CAMERA_SUPPORT 36b4c184e5SMauro Carvalho Chehab bool "Cameras/video grabbers support" 37b60a5b8dSMauro Carvalho Chehab help 38b4c184e5SMauro Carvalho Chehab Enable support for webcams and video grabbers. 39b4c184e5SMauro Carvalho Chehab 40b4c184e5SMauro Carvalho Chehab Say Y when you have a webcam or a video capture grabber board. 41b4c184e5SMauro Carvalho Chehab 42b4c184e5SMauro Carvalho Chehabconfig MEDIA_ANALOG_TV_SUPPORT 43b4c184e5SMauro Carvalho Chehab bool "Analog TV support" 44b60a5b8dSMauro Carvalho Chehab help 45b4c184e5SMauro Carvalho Chehab Enable analog TV support. 46b4c184e5SMauro Carvalho Chehab 47b4c184e5SMauro Carvalho Chehab Say Y when you have a TV board with analog support or with a 48b4c184e5SMauro Carvalho Chehab hybrid analog/digital TV chipset. 49b4c184e5SMauro Carvalho Chehab 50b4c184e5SMauro Carvalho Chehab Note: There are several DVB cards that are based on chips that 51b4c184e5SMauro Carvalho Chehab support both analog and digital TV. Disabling this option 52b4c184e5SMauro Carvalho Chehab will disable support for them. 53b4c184e5SMauro Carvalho Chehab 54b4c184e5SMauro Carvalho Chehabconfig MEDIA_DIGITAL_TV_SUPPORT 55b4c184e5SMauro Carvalho Chehab bool "Digital TV support" 56b60a5b8dSMauro Carvalho Chehab help 57b4c184e5SMauro Carvalho Chehab Enable digital TV support. 58b4c184e5SMauro Carvalho Chehab 59b4c184e5SMauro Carvalho Chehab Say Y when you have a board with digital support or a board with 60b4c184e5SMauro Carvalho Chehab hybrid digital TV and analog TV. 61b4c184e5SMauro Carvalho Chehab 62b4c184e5SMauro Carvalho Chehabconfig MEDIA_RADIO_SUPPORT 63b4c184e5SMauro Carvalho Chehab bool "AM/FM radio receivers/transmitters support" 64b60a5b8dSMauro Carvalho Chehab help 65b4c184e5SMauro Carvalho Chehab Enable AM/FM radio support. 66b4c184e5SMauro Carvalho Chehab 67b4c184e5SMauro Carvalho Chehab Additional info and docs are available on the web at 68991ce92fSMauro Carvalho Chehab <https://linuxtv.org> 69b4c184e5SMauro Carvalho Chehab 70b4c184e5SMauro Carvalho Chehab Say Y when you have a board with radio support. 71b4c184e5SMauro Carvalho Chehab 72b4c184e5SMauro Carvalho Chehab Note: There are several TV cards that are based on chips that 73b4c184e5SMauro Carvalho Chehab support radio reception. Disabling this option will 74b4c184e5SMauro Carvalho Chehab disable support for them. 75b4c184e5SMauro Carvalho Chehab 76435ef148SAntti Palosaariconfig MEDIA_SDR_SUPPORT 77435ef148SAntti Palosaari bool "Software defined radio support" 78b60a5b8dSMauro Carvalho Chehab help 79435ef148SAntti Palosaari Enable software defined radio support. 80435ef148SAntti Palosaari 81435ef148SAntti Palosaari Say Y when you have a software defined radio device. 82435ef148SAntti Palosaari 830dbacebeSHans Verkuilconfig MEDIA_CEC_SUPPORT 840dbacebeSHans Verkuil bool "HDMI CEC support" 85b60a5b8dSMauro Carvalho Chehab help 860dbacebeSHans Verkuil Enable support for HDMI CEC (Consumer Electronics Control), 870dbacebeSHans Verkuil which is an optional HDMI feature. 880dbacebeSHans Verkuil 890dbacebeSHans Verkuil Say Y when you have an HDMI receiver, transmitter or a USB CEC 900dbacebeSHans Verkuil adapter that supports HDMI CEC. 910dbacebeSHans Verkuil 9206b93644SMauro Carvalho Chehabconfig MEDIA_PLATFORM_SUPPORT 9306b93644SMauro Carvalho Chehab bool "Platform-specific devices support" 9406b93644SMauro Carvalho Chehab help 9506b93644SMauro Carvalho Chehab Enable support for complex cameras, codecs, and other hardware 9606b93644SMauro Carvalho Chehab that are integrated at the CPU, GPU or on Image Signalling Processor 9706b93644SMauro Carvalho Chehab and don't use PCI, USB or Firewire buses. 9806b93644SMauro Carvalho Chehab 9906b93644SMauro Carvalho Chehab This is found on Embedded hardware (SoC), on V4L2 codecs and 10006b93644SMauro Carvalho Chehab on some GPU and newer CPU chipsets. 10106b93644SMauro Carvalho Chehab 10206b93644SMauro Carvalho Chehab Say Y when you want to be able so see such devices. 10306b93644SMauro Carvalho Chehab 1044b32216aSMauro Carvalho Chehabconfig MEDIA_TEST_SUPPORT 1054b32216aSMauro Carvalho Chehab bool "Test drivers support" 1064b32216aSMauro Carvalho Chehab help 1074b32216aSMauro Carvalho Chehab Those drivers should not be used on production Kernels, but 1084b32216aSMauro Carvalho Chehab can be useful on debug ones. It enables several dummy drivers 1094b32216aSMauro Carvalho Chehab that simulate a real hardware. Very useful to test userspace 1104b32216aSMauro Carvalho Chehab applications and to validate if the subsystem core is doesn't 1114b32216aSMauro Carvalho Chehab have regressions. 1124b32216aSMauro Carvalho Chehab 1134b32216aSMauro Carvalho Chehab Say Y if you want to use some virtual test driver. 1144b32216aSMauro Carvalho Chehab 1154b32216aSMauro Carvalho Chehab In case of doubts, say N. 1164b32216aSMauro Carvalho Chehab 11756a263aaSHans Verkuilsource "drivers/media/cec/Kconfig" 1186917a7b7SHans Verkuil 119c612e54fSHans Verkuilsource "drivers/media/mc/Kconfig" 120078ab3eaSSakari Ailus 121cf4b9211SLaurent Pinchart# 122b4c184e5SMauro Carvalho Chehab# Video4Linux support 123b4c184e5SMauro Carvalho Chehab# Only enables if one of the V4L2 types (ATV, webcam, radio) is selected 1247c91f062SMauro Carvalho Chehab# 1257c91f062SMauro Carvalho Chehab 1261da177e4SLinus Torvaldsconfig VIDEO_DEV 127b4c184e5SMauro Carvalho Chehab tristate 128b4c184e5SMauro Carvalho Chehab depends on MEDIA_SUPPORT 129a19f228bSMauro Carvalho Chehab default MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT || MEDIA_PLATFORM_SUPPORT 1301da177e4SLinus Torvalds 1317cd5a16bSStanimir Varbanovconfig VIDEO_V4L2_SUBDEV_API 13251e8cb74SKees Cook bool "V4L2 sub-device userspace API" 13351e8cb74SKees Cook depends on VIDEO_DEV && MEDIA_CONTROLLER 134b60a5b8dSMauro Carvalho Chehab help 1357cd5a16bSStanimir Varbanov Enables the V4L2 sub-device pad-level userspace API used to configure 1367cd5a16bSStanimir Varbanov video format, size and frame rate between hardware blocks. 1377cd5a16bSStanimir Varbanov 1387cd5a16bSStanimir Varbanov This API is mostly used by camera interfaces in embedded platforms. 1397cd5a16bSStanimir Varbanov 140f0af8fa4SMauro Carvalho Chehabsource "drivers/media/v4l2-core/Kconfig" 141f0af8fa4SMauro Carvalho Chehab 1427c91f062SMauro Carvalho Chehab# 1437c91f062SMauro Carvalho Chehab# DVB Core 144b4c184e5SMauro Carvalho Chehab# Only enables if one of DTV is selected 1457c91f062SMauro Carvalho Chehab# 146cd41e28eSMauro Carvalho Chehab 1477c91f062SMauro Carvalho Chehabconfig DVB_CORE 148b4c184e5SMauro Carvalho Chehab tristate 149b4c184e5SMauro Carvalho Chehab depends on MEDIA_SUPPORT 150b4c184e5SMauro Carvalho Chehab depends on MEDIA_DIGITAL_TV_SUPPORT 15188327305SMauro Carvalho Chehab depends on (I2C || I2C=n) 152b4c184e5SMauro Carvalho Chehab default y 1537c91f062SMauro Carvalho Chehab select CRC32 1547c91f062SMauro Carvalho Chehab 1554021053eSMauro Carvalho Chehabconfig DVB_MMAP 1564021053eSMauro Carvalho Chehab bool "Enable DVB memory-mapped API (EXPERIMENTAL)" 1574021053eSMauro Carvalho Chehab depends on DVB_CORE 15885e60bd7SArnd Bergmann depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_CORE 15985e60bd7SArnd Bergmann select VIDEOBUF2_VMALLOC 1604021053eSMauro Carvalho Chehab help 1612c27476eSMichael Ira Krufky This option enables DVB experimental memory-mapped API, which 1624021053eSMauro Carvalho Chehab reduces the number of context switches to read DVB buffers, as 1634021053eSMauro Carvalho Chehab the buffers can use mmap() syscalls. 1644021053eSMauro Carvalho Chehab 1654021053eSMauro Carvalho Chehab Support for it is experimental. Use with care. If unsure, 1664021053eSMauro Carvalho Chehab say N. 1674021053eSMauro Carvalho Chehab 168a34ff6cdSHans Petter Selaskyconfig DVB_NET 169a34ff6cdSHans Petter Selasky bool "DVB Network Support" 170a34ff6cdSHans Petter Selasky default (NET && INET) 1718c528d5eSGuennadi Liakhovetski depends on NET && INET && DVB_CORE 172a34ff6cdSHans Petter Selasky help 1739a78efc8SJiri Slaby This option enables DVB Network Support which is a part of the DVB 1749a78efc8SJiri Slaby standard. It is used, for example, by automatic firmware updates used 1759a78efc8SJiri Slaby on Set-Top-Boxes. It can also be used to access the Internet via the 1769a78efc8SJiri Slaby DVB card, if the network provider supports it. 177a34ff6cdSHans Petter Selasky 1789a78efc8SJiri Slaby You may want to disable the network support on embedded devices. If 1799a78efc8SJiri Slaby unsure say Y. 180a34ff6cdSHans Petter Selasky 1815d92bbe6SMauro Carvalho Chehab# This Kconfig option is used by both PCI and USB drivers 1825d92bbe6SMauro Carvalho Chehabconfig TTPCI_EEPROM 1835d92bbe6SMauro Carvalho Chehab tristate 1845d92bbe6SMauro Carvalho Chehab depends on I2C 1855d92bbe6SMauro Carvalho Chehab 186f0af8fa4SMauro Carvalho Chehabsource "drivers/media/dvb-core/Kconfig" 187f0af8fa4SMauro Carvalho Chehab 188c455f5c8SMauro Carvalho Chehabcomment "Media drivers" 1897c91f062SMauro Carvalho Chehab 190786baecfSMauro Carvalho Chehabsource "drivers/media/usb/Kconfig" 1913c8c09b5SMauro Carvalho Chehabsource "drivers/media/pci/Kconfig" 19206b93644SMauro Carvalho Chehabsource "drivers/media/radio/Kconfig" 19306b93644SMauro Carvalho Chehab 19406b93644SMauro Carvalho Chehabif MEDIA_PLATFORM_SUPPORT 1953c8c09b5SMauro Carvalho Chehabsource "drivers/media/platform/Kconfig" 1964b32216aSMauro Carvalho Chehabsource "drivers/media/test_drivers/Kconfig" 1970013ca8cSMauro Carvalho Chehabsource "drivers/media/mmc/Kconfig" 19806b93644SMauro Carvalho Chehabendif 1991da177e4SLinus Torvalds 200616300bdSMauro Carvalho Chehabcomment "Supported FireWire (IEEE 1394) Adapters" 201616300bdSMauro Carvalho Chehab depends on DVB_CORE && FIREWIRE 202616300bdSMauro Carvalho Chehabsource "drivers/media/firewire/Kconfig" 203616300bdSMauro Carvalho Chehab 2043c8c09b5SMauro Carvalho Chehab# Common driver options 2053785bc17SMauro Carvalho Chehabsource "drivers/media/common/Kconfig" 2063785bc17SMauro Carvalho Chehab 2078283a092SHans Verkuilcomment "Media ancillary drivers (tuners, sensors, i2c, spi, frontends)" 2085344fe6eSHans Verkuil 2093c8c09b5SMauro Carvalho Chehab# 2108283a092SHans Verkuil# Ancillary drivers (tuners, i2c, spi, frontends) 2113c8c09b5SMauro Carvalho Chehab# 2123c8c09b5SMauro Carvalho Chehab 213fccea74fSMauro Carvalho Chehabconfig MEDIA_SUBDRV_AUTOSELECT 2148283a092SHans Verkuil bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)" 215435ef148SAntti Palosaari depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_CAMERA_SUPPORT || MEDIA_SDR_SUPPORT 216347f7a37SMauro Carvalho Chehab depends on HAS_IOMEM 217347f7a37SMauro Carvalho Chehab select I2C 218347f7a37SMauro Carvalho Chehab select I2C_MUX 21924f6f93aSEzequiel Garcia default y if !EMBEDDED 220fccea74fSMauro Carvalho Chehab help 2215344fe6eSHans Verkuil By default, a media driver auto-selects all possible ancillary 2225344fe6eSHans Verkuil devices such as tuners, sensors, video encoders/decoders and 2235344fe6eSHans Verkuil frontends, that are used by any of the supported devices. 224fccea74fSMauro Carvalho Chehab 225fccea74fSMauro Carvalho Chehab This is generally the right thing to do, except when there 2262c76a12aSMauro Carvalho Chehab are strict constraints with regards to the kernel size, 2272c76a12aSMauro Carvalho Chehab like on embedded systems. 228fccea74fSMauro Carvalho Chehab 2292c76a12aSMauro Carvalho Chehab Use this option with care, as deselecting ancillary drivers which 2302c76a12aSMauro Carvalho Chehab are, in fact, necessary will result in the lack of the needed 2312c76a12aSMauro Carvalho Chehab functionality for your device (it may not tune or may not have 2325344fe6eSHans Verkuil the needed demodulators). 233fccea74fSMauro Carvalho Chehab 234fccea74fSMauro Carvalho Chehab If unsure say Y. 235bb69ee27SMauro Carvalho Chehab 2364fa4ef39SEzequiel Garciaconfig MEDIA_HIDE_ANCILLARY_SUBDRV 2374fa4ef39SEzequiel Garcia bool 2384fa4ef39SEzequiel Garcia depends on MEDIA_SUBDRV_AUTOSELECT && !COMPILE_TEST && !EXPERT 2394fa4ef39SEzequiel Garcia default y 2404fa4ef39SEzequiel Garcia 241bb69ee27SMauro Carvalho Chehabconfig MEDIA_ATTACH 242bb69ee27SMauro Carvalho Chehab bool 243bb69ee27SMauro Carvalho Chehab depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT 244bb69ee27SMauro Carvalho Chehab depends on MODULES 245bb69ee27SMauro Carvalho Chehab default MODULES 246fccea74fSMauro Carvalho Chehab 2473c8c09b5SMauro Carvalho Chehabsource "drivers/media/i2c/Kconfig" 2488283a092SHans Verkuilsource "drivers/media/spi/Kconfig" 249fccea74fSMauro Carvalho Chehabsource "drivers/media/tuners/Kconfig" 2503c8c09b5SMauro Carvalho Chehabsource "drivers/media/dvb-frontends/Kconfig" 2513c8c09b5SMauro Carvalho Chehab 252ab482a6cSRandy Dunlapendif # MEDIA_SUPPORT 253