11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# Multimedia device configuration 31da177e4SLinus Torvalds# 41da177e4SLinus Torvalds 59177e51dSHans Verkuilconfig CEC_CORE 69177e51dSHans Verkuil tristate 79177e51dSHans Verkuil 8e94c3281SHans Verkuilconfig CEC_NOTIFIER 99177e51dSHans Verkuil bool 109177e51dSHans Verkuil 11ea5c8ef2SHans Verkuilconfig CEC_PIN 12ea5c8ef2SHans Verkuil bool 13ea5c8ef2SHans Verkuil 14b9e1486eSSean Youngsource "drivers/media/rc/Kconfig" 15b9e1486eSSean Young 16ab482a6cSRandy Dunlapmenuconfig MEDIA_SUPPORT 17ab482a6cSRandy Dunlap tristate "Multimedia support" 18e25df120SMartin Schwidefsky depends on HAS_IOMEM 19ab482a6cSRandy Dunlap help 20b4c184e5SMauro Carvalho Chehab If you want to use Webcams, Video grabber devices and/or TV devices 21ab482a6cSRandy Dunlap enable this option and other options below. 22b4c184e5SMauro Carvalho Chehab Additional info and docs are available on the web at 23991ce92fSMauro Carvalho Chehab <https://linuxtv.org> 24ab482a6cSRandy Dunlap 25ab482a6cSRandy Dunlapif MEDIA_SUPPORT 261da177e4SLinus Torvalds 277c91f062SMauro Carvalho Chehabcomment "Multimedia core support" 287c91f062SMauro Carvalho Chehab 297c91f062SMauro Carvalho Chehab# 30b4c184e5SMauro Carvalho Chehab# Multimedia support - automatically enable V4L2 and DVB core 31b4c184e5SMauro Carvalho Chehab# 32b4c184e5SMauro Carvalho Chehabconfig MEDIA_CAMERA_SUPPORT 33b4c184e5SMauro Carvalho Chehab bool "Cameras/video grabbers support" 34b4c184e5SMauro Carvalho Chehab ---help--- 35b4c184e5SMauro Carvalho Chehab Enable support for webcams and video grabbers. 36b4c184e5SMauro Carvalho Chehab 37b4c184e5SMauro Carvalho Chehab Say Y when you have a webcam or a video capture grabber board. 38b4c184e5SMauro Carvalho Chehab 39b4c184e5SMauro Carvalho Chehabconfig MEDIA_ANALOG_TV_SUPPORT 40b4c184e5SMauro Carvalho Chehab bool "Analog TV support" 41b4c184e5SMauro Carvalho Chehab ---help--- 42b4c184e5SMauro Carvalho Chehab Enable analog TV support. 43b4c184e5SMauro Carvalho Chehab 44b4c184e5SMauro Carvalho Chehab Say Y when you have a TV board with analog support or with a 45b4c184e5SMauro Carvalho Chehab hybrid analog/digital TV chipset. 46b4c184e5SMauro Carvalho Chehab 47b4c184e5SMauro Carvalho Chehab Note: There are several DVB cards that are based on chips that 48b4c184e5SMauro Carvalho Chehab support both analog and digital TV. Disabling this option 49b4c184e5SMauro Carvalho Chehab will disable support for them. 50b4c184e5SMauro Carvalho Chehab 51b4c184e5SMauro Carvalho Chehabconfig MEDIA_DIGITAL_TV_SUPPORT 52b4c184e5SMauro Carvalho Chehab bool "Digital TV support" 53b4c184e5SMauro Carvalho Chehab ---help--- 54b4c184e5SMauro Carvalho Chehab Enable digital TV support. 55b4c184e5SMauro Carvalho Chehab 56b4c184e5SMauro Carvalho Chehab Say Y when you have a board with digital support or a board with 57b4c184e5SMauro Carvalho Chehab hybrid digital TV and analog TV. 58b4c184e5SMauro Carvalho Chehab 59b4c184e5SMauro Carvalho Chehabconfig MEDIA_RADIO_SUPPORT 60b4c184e5SMauro Carvalho Chehab bool "AM/FM radio receivers/transmitters support" 61b4c184e5SMauro Carvalho Chehab ---help--- 62b4c184e5SMauro Carvalho Chehab Enable AM/FM radio support. 63b4c184e5SMauro Carvalho Chehab 64b4c184e5SMauro Carvalho Chehab Additional info and docs are available on the web at 65991ce92fSMauro Carvalho Chehab <https://linuxtv.org> 66b4c184e5SMauro Carvalho Chehab 67b4c184e5SMauro Carvalho Chehab Say Y when you have a board with radio support. 68b4c184e5SMauro Carvalho Chehab 69b4c184e5SMauro Carvalho Chehab Note: There are several TV cards that are based on chips that 70b4c184e5SMauro Carvalho Chehab support radio reception. Disabling this option will 71b4c184e5SMauro Carvalho Chehab disable support for them. 72b4c184e5SMauro Carvalho Chehab 73435ef148SAntti Palosaariconfig MEDIA_SDR_SUPPORT 74435ef148SAntti Palosaari bool "Software defined radio support" 75435ef148SAntti Palosaari ---help--- 76435ef148SAntti Palosaari Enable software defined radio support. 77435ef148SAntti Palosaari 78435ef148SAntti Palosaari Say Y when you have a software defined radio device. 79435ef148SAntti Palosaari 800dbacebeSHans Verkuilconfig MEDIA_CEC_SUPPORT 810dbacebeSHans Verkuil bool "HDMI CEC support" 820dbacebeSHans Verkuil ---help--- 830dbacebeSHans Verkuil Enable support for HDMI CEC (Consumer Electronics Control), 840dbacebeSHans Verkuil which is an optional HDMI feature. 850dbacebeSHans Verkuil 860dbacebeSHans Verkuil Say Y when you have an HDMI receiver, transmitter or a USB CEC 870dbacebeSHans Verkuil adapter that supports HDMI CEC. 880dbacebeSHans Verkuil 8956a263aaSHans Verkuilsource "drivers/media/cec/Kconfig" 906917a7b7SHans Verkuil 91b4c184e5SMauro Carvalho Chehab# 92cf4b9211SLaurent Pinchart# Media controller 93b4c184e5SMauro Carvalho Chehab# Selectable only for webcam/grabbers, as other drivers don't use it 94cf4b9211SLaurent Pinchart# 95cf4b9211SLaurent Pinchart 96cf4b9211SLaurent Pinchartconfig MEDIA_CONTROLLER 9751e8cb74SKees Cook bool "Media Controller API" 98a0246e02SMauro Carvalho Chehab depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT 99cf4b9211SLaurent Pinchart ---help--- 100cf4b9211SLaurent Pinchart Enable the media controller API used to query media devices internal 101cf4b9211SLaurent Pinchart topology and configure it dynamically. 102cf4b9211SLaurent Pinchart 103cf4b9211SLaurent Pinchart This API is mostly used by camera interfaces in embedded platforms. 104cf4b9211SLaurent Pinchart 105a0246e02SMauro Carvalho Chehabconfig MEDIA_CONTROLLER_DVB 106c3f22501SMauro Carvalho Chehab bool "Enable Media controller for DVB (EXPERIMENTAL)" 107a4afb3edSMauro Carvalho Chehab depends on MEDIA_CONTROLLER && DVB_CORE 108a0246e02SMauro Carvalho Chehab ---help--- 109a0246e02SMauro Carvalho Chehab Enable the media controller API support for DVB. 110a0246e02SMauro Carvalho Chehab 111a0246e02SMauro Carvalho Chehab This is currently experimental. 112a0246e02SMauro Carvalho Chehab 113cf4b9211SLaurent Pinchart# 114b4c184e5SMauro Carvalho Chehab# Video4Linux support 115b4c184e5SMauro Carvalho Chehab# Only enables if one of the V4L2 types (ATV, webcam, radio) is selected 1167c91f062SMauro Carvalho Chehab# 1177c91f062SMauro Carvalho Chehab 1181da177e4SLinus Torvaldsconfig VIDEO_DEV 119b4c184e5SMauro Carvalho Chehab tristate 120b4c184e5SMauro Carvalho Chehab depends on MEDIA_SUPPORT 121435ef148SAntti Palosaari depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT 122b4c184e5SMauro Carvalho Chehab default y 1231da177e4SLinus Torvalds 1247cd5a16bSStanimir Varbanovconfig VIDEO_V4L2_SUBDEV_API 12551e8cb74SKees Cook bool "V4L2 sub-device userspace API" 12651e8cb74SKees Cook depends on VIDEO_DEV && MEDIA_CONTROLLER 1277cd5a16bSStanimir Varbanov ---help--- 1287cd5a16bSStanimir Varbanov Enables the V4L2 sub-device pad-level userspace API used to configure 1297cd5a16bSStanimir Varbanov video format, size and frame rate between hardware blocks. 1307cd5a16bSStanimir Varbanov 1317cd5a16bSStanimir Varbanov This API is mostly used by camera interfaces in embedded platforms. 1327cd5a16bSStanimir Varbanov 133f0af8fa4SMauro Carvalho Chehabsource "drivers/media/v4l2-core/Kconfig" 134f0af8fa4SMauro Carvalho Chehab 1357c91f062SMauro Carvalho Chehab# 1367c91f062SMauro Carvalho Chehab# DVB Core 137b4c184e5SMauro Carvalho Chehab# Only enables if one of DTV is selected 1387c91f062SMauro Carvalho Chehab# 139cd41e28eSMauro Carvalho Chehab 1407c91f062SMauro Carvalho Chehabconfig DVB_CORE 141b4c184e5SMauro Carvalho Chehab tristate 142b4c184e5SMauro Carvalho Chehab depends on MEDIA_SUPPORT 143b4c184e5SMauro Carvalho Chehab depends on MEDIA_DIGITAL_TV_SUPPORT 14488327305SMauro Carvalho Chehab depends on (I2C || I2C=n) 145b4c184e5SMauro Carvalho Chehab default y 1467c91f062SMauro Carvalho Chehab select CRC32 1477c91f062SMauro Carvalho Chehab 1484021053eSMauro Carvalho Chehabconfig DVB_MMAP 1494021053eSMauro Carvalho Chehab bool "Enable DVB memory-mapped API (EXPERIMENTAL)" 1504021053eSMauro Carvalho Chehab depends on DVB_CORE 15185e60bd7SArnd Bergmann depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_CORE 15285e60bd7SArnd Bergmann select VIDEOBUF2_VMALLOC 1534021053eSMauro Carvalho Chehab default n 1544021053eSMauro Carvalho Chehab help 1554021053eSMauro Carvalho Chehab This option enables DVB experimental memory-mapped API, with 1564021053eSMauro Carvalho Chehab reduces the number of context switches to read DVB buffers, as 1574021053eSMauro Carvalho Chehab the buffers can use mmap() syscalls. 1584021053eSMauro Carvalho Chehab 1594021053eSMauro Carvalho Chehab Support for it is experimental. Use with care. If unsure, 1604021053eSMauro Carvalho Chehab say N. 1614021053eSMauro Carvalho Chehab 162a34ff6cdSHans Petter Selaskyconfig DVB_NET 163a34ff6cdSHans Petter Selasky bool "DVB Network Support" 164a34ff6cdSHans Petter Selasky default (NET && INET) 1658c528d5eSGuennadi Liakhovetski depends on NET && INET && DVB_CORE 166a34ff6cdSHans Petter Selasky help 1679a78efc8SJiri Slaby This option enables DVB Network Support which is a part of the DVB 1689a78efc8SJiri Slaby standard. It is used, for example, by automatic firmware updates used 1699a78efc8SJiri Slaby on Set-Top-Boxes. It can also be used to access the Internet via the 1709a78efc8SJiri Slaby DVB card, if the network provider supports it. 171a34ff6cdSHans Petter Selasky 1729a78efc8SJiri Slaby You may want to disable the network support on embedded devices. If 1739a78efc8SJiri Slaby unsure say Y. 174a34ff6cdSHans Petter Selasky 1755d92bbe6SMauro Carvalho Chehab# This Kconfig option is used by both PCI and USB drivers 1765d92bbe6SMauro Carvalho Chehabconfig TTPCI_EEPROM 1775d92bbe6SMauro Carvalho Chehab tristate 1785d92bbe6SMauro Carvalho Chehab depends on I2C 1795d92bbe6SMauro Carvalho Chehab default n 1805d92bbe6SMauro Carvalho Chehab 181f0af8fa4SMauro Carvalho Chehabsource "drivers/media/dvb-core/Kconfig" 182f0af8fa4SMauro Carvalho Chehab 183c455f5c8SMauro Carvalho Chehabcomment "Media drivers" 1847c91f062SMauro Carvalho Chehab 1857c91f062SMauro Carvalho Chehab# 186cb7a01acSMauro Carvalho Chehab# V4L platform/mem2mem drivers 187cb7a01acSMauro Carvalho Chehab# 1881da177e4SLinus Torvalds 189786baecfSMauro Carvalho Chehabsource "drivers/media/usb/Kconfig" 1903c8c09b5SMauro Carvalho Chehabsource "drivers/media/pci/Kconfig" 1913c8c09b5SMauro Carvalho Chehabsource "drivers/media/platform/Kconfig" 1920013ca8cSMauro Carvalho Chehabsource "drivers/media/mmc/Kconfig" 1933c8c09b5SMauro Carvalho Chehabsource "drivers/media/radio/Kconfig" 1941da177e4SLinus Torvalds 195616300bdSMauro Carvalho Chehabcomment "Supported FireWire (IEEE 1394) Adapters" 196616300bdSMauro Carvalho Chehab depends on DVB_CORE && FIREWIRE 197616300bdSMauro Carvalho Chehabsource "drivers/media/firewire/Kconfig" 198616300bdSMauro Carvalho Chehab 1993c8c09b5SMauro Carvalho Chehab# Common driver options 2003785bc17SMauro Carvalho Chehabsource "drivers/media/common/Kconfig" 2013785bc17SMauro Carvalho Chehab 2028283a092SHans Verkuilcomment "Media ancillary drivers (tuners, sensors, i2c, spi, frontends)" 2035344fe6eSHans Verkuil 2043c8c09b5SMauro Carvalho Chehab# 2058283a092SHans Verkuil# Ancillary drivers (tuners, i2c, spi, frontends) 2063c8c09b5SMauro Carvalho Chehab# 2073c8c09b5SMauro Carvalho Chehab 208fccea74fSMauro Carvalho Chehabconfig MEDIA_SUBDRV_AUTOSELECT 2098283a092SHans Verkuil bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)" 210435ef148SAntti Palosaari depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_CAMERA_SUPPORT || MEDIA_SDR_SUPPORT 211347f7a37SMauro Carvalho Chehab depends on HAS_IOMEM 212347f7a37SMauro Carvalho Chehab select I2C 213347f7a37SMauro Carvalho Chehab select I2C_MUX 214fccea74fSMauro Carvalho Chehab default y 215fccea74fSMauro Carvalho Chehab help 2165344fe6eSHans Verkuil By default, a media driver auto-selects all possible ancillary 2175344fe6eSHans Verkuil devices such as tuners, sensors, video encoders/decoders and 2185344fe6eSHans Verkuil frontends, that are used by any of the supported devices. 219fccea74fSMauro Carvalho Chehab 220fccea74fSMauro Carvalho Chehab This is generally the right thing to do, except when there 2212c76a12aSMauro Carvalho Chehab are strict constraints with regards to the kernel size, 2222c76a12aSMauro Carvalho Chehab like on embedded systems. 223fccea74fSMauro Carvalho Chehab 2242c76a12aSMauro Carvalho Chehab Use this option with care, as deselecting ancillary drivers which 2252c76a12aSMauro Carvalho Chehab are, in fact, necessary will result in the lack of the needed 2262c76a12aSMauro Carvalho Chehab functionality for your device (it may not tune or may not have 2275344fe6eSHans Verkuil the needed demodulators). 228fccea74fSMauro Carvalho Chehab 229fccea74fSMauro Carvalho Chehab If unsure say Y. 230bb69ee27SMauro Carvalho Chehab 231bb69ee27SMauro Carvalho Chehabconfig MEDIA_ATTACH 232bb69ee27SMauro Carvalho Chehab bool 233bb69ee27SMauro Carvalho Chehab depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT 234bb69ee27SMauro Carvalho Chehab depends on MODULES 235bb69ee27SMauro Carvalho Chehab default MODULES 236fccea74fSMauro Carvalho Chehab 2373c8c09b5SMauro Carvalho Chehabsource "drivers/media/i2c/Kconfig" 2388283a092SHans Verkuilsource "drivers/media/spi/Kconfig" 239fccea74fSMauro Carvalho Chehabsource "drivers/media/tuners/Kconfig" 2403c8c09b5SMauro Carvalho Chehabsource "drivers/media/dvb-frontends/Kconfig" 2413c8c09b5SMauro Carvalho Chehab 242ab482a6cSRandy Dunlapendif # MEDIA_SUPPORT 243