Thomas Gleixner | ec8f24b | 2019-05-19 13:07:45 +0100 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0-only |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 2 | # |
| 3 | # Multimedia device configuration |
| 4 | # |
| 5 | |
Hans Verkuil | 9177e51 | 2017-05-28 05:48:37 -0300 | [diff] [blame] | 6 | config CEC_CORE |
| 7 | tristate |
| 8 | |
Hans Verkuil | e94c328 | 2017-05-28 05:58:04 -0300 | [diff] [blame] | 9 | config CEC_NOTIFIER |
Hans Verkuil | 9177e51 | 2017-05-28 05:48:37 -0300 | [diff] [blame] | 10 | bool |
| 11 | |
Hans Verkuil | ea5c8ef | 2017-07-11 03:30:42 -0300 | [diff] [blame] | 12 | config CEC_PIN |
| 13 | bool |
| 14 | |
Sean Young | b9e1486 | 2017-07-02 15:37:58 -0400 | [diff] [blame] | 15 | source "drivers/media/rc/Kconfig" |
| 16 | |
Randy Dunlap | ab482a6 | 2009-05-18 22:00:34 -0300 | [diff] [blame] | 17 | menuconfig MEDIA_SUPPORT |
| 18 | tristate "Multimedia support" |
Martin Schwidefsky | e25df12 | 2007-05-10 15:45:57 +0200 | [diff] [blame] | 19 | depends on HAS_IOMEM |
Randy Dunlap | ab482a6 | 2009-05-18 22:00:34 -0300 | [diff] [blame] | 20 | help |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 21 | If you want to use Webcams, Video grabber devices and/or TV devices |
Randy Dunlap | ab482a6 | 2009-05-18 22:00:34 -0300 | [diff] [blame] | 22 | enable this option and other options below. |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 23 | Additional info and docs are available on the web at |
Mauro Carvalho Chehab | 991ce92 | 2015-12-04 10:38:59 -0200 | [diff] [blame] | 24 | <https://linuxtv.org> |
Randy Dunlap | ab482a6 | 2009-05-18 22:00:34 -0300 | [diff] [blame] | 25 | |
| 26 | if MEDIA_SUPPORT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 27 | |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 28 | comment "Multimedia core support" |
| 29 | |
| 30 | # |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 31 | # Multimedia support - automatically enable V4L2 and DVB core |
| 32 | # |
| 33 | config MEDIA_CAMERA_SUPPORT |
| 34 | bool "Cameras/video grabbers support" |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 35 | help |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 36 | Enable support for webcams and video grabbers. |
| 37 | |
| 38 | Say Y when you have a webcam or a video capture grabber board. |
| 39 | |
| 40 | config MEDIA_ANALOG_TV_SUPPORT |
| 41 | bool "Analog TV support" |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 42 | help |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 43 | Enable analog TV support. |
| 44 | |
| 45 | Say Y when you have a TV board with analog support or with a |
| 46 | hybrid analog/digital TV chipset. |
| 47 | |
| 48 | Note: There are several DVB cards that are based on chips that |
| 49 | support both analog and digital TV. Disabling this option |
| 50 | will disable support for them. |
| 51 | |
| 52 | config MEDIA_DIGITAL_TV_SUPPORT |
| 53 | bool "Digital TV support" |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 54 | help |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 55 | Enable digital TV support. |
| 56 | |
| 57 | Say Y when you have a board with digital support or a board with |
| 58 | hybrid digital TV and analog TV. |
| 59 | |
| 60 | config MEDIA_RADIO_SUPPORT |
| 61 | bool "AM/FM radio receivers/transmitters support" |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 62 | help |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 63 | Enable AM/FM radio support. |
| 64 | |
| 65 | Additional info and docs are available on the web at |
Mauro Carvalho Chehab | 991ce92 | 2015-12-04 10:38:59 -0200 | [diff] [blame] | 66 | <https://linuxtv.org> |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 67 | |
| 68 | Say Y when you have a board with radio support. |
| 69 | |
| 70 | Note: There are several TV cards that are based on chips that |
| 71 | support radio reception. Disabling this option will |
| 72 | disable support for them. |
| 73 | |
Antti Palosaari | 435ef14 | 2014-07-12 21:43:12 -0300 | [diff] [blame] | 74 | config MEDIA_SDR_SUPPORT |
| 75 | bool "Software defined radio support" |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 76 | help |
Antti Palosaari | 435ef14 | 2014-07-12 21:43:12 -0300 | [diff] [blame] | 77 | Enable software defined radio support. |
| 78 | |
| 79 | Say Y when you have a software defined radio device. |
| 80 | |
Hans Verkuil | 0dbaceb | 2016-11-02 08:25:28 -0200 | [diff] [blame] | 81 | config MEDIA_CEC_SUPPORT |
Brad Love | 349da8c | 2018-05-02 19:19:30 -0400 | [diff] [blame] | 82 | bool "HDMI CEC support" |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 83 | help |
Brad Love | 349da8c | 2018-05-02 19:19:30 -0400 | [diff] [blame] | 84 | Enable support for HDMI CEC (Consumer Electronics Control), |
| 85 | which is an optional HDMI feature. |
Hans Verkuil | 0dbaceb | 2016-11-02 08:25:28 -0200 | [diff] [blame] | 86 | |
Brad Love | 349da8c | 2018-05-02 19:19:30 -0400 | [diff] [blame] | 87 | Say Y when you have an HDMI receiver, transmitter or a USB CEC |
| 88 | adapter that supports HDMI CEC. |
Hans Verkuil | 0dbaceb | 2016-11-02 08:25:28 -0200 | [diff] [blame] | 89 | |
Hans Verkuil | 56a263a | 2017-04-17 07:44:35 -0300 | [diff] [blame] | 90 | source "drivers/media/cec/Kconfig" |
Hans Verkuil | 6917a7b | 2016-11-14 11:55:20 -0200 | [diff] [blame] | 91 | |
Hans Verkuil | c612e54f | 2019-05-02 09:42:31 -0400 | [diff] [blame] | 92 | source "drivers/media/mc/Kconfig" |
Sakari Ailus | 078ab3e | 2018-12-05 12:23:54 -0500 | [diff] [blame] | 93 | |
Laurent Pinchart | cf4b921 | 2009-12-09 08:39:56 -0300 | [diff] [blame] | 94 | # |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 95 | # Video4Linux support |
| 96 | # Only enables if one of the V4L2 types (ATV, webcam, radio) is selected |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 97 | # |
| 98 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 99 | config VIDEO_DEV |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 100 | tristate |
| 101 | depends on MEDIA_SUPPORT |
Antti Palosaari | 435ef14 | 2014-07-12 21:43:12 -0300 | [diff] [blame] | 102 | depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 103 | default y |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 104 | |
Stanimir Varbanov | 7cd5a16 | 2010-05-21 06:04:24 -0300 | [diff] [blame] | 105 | config VIDEO_V4L2_SUBDEV_API |
Kees Cook | 51e8cb7 | 2012-10-02 11:17:27 -0700 | [diff] [blame] | 106 | bool "V4L2 sub-device userspace API" |
| 107 | depends on VIDEO_DEV && MEDIA_CONTROLLER |
Mauro Carvalho Chehab | b60a5b8 | 2019-03-20 06:39:44 -0400 | [diff] [blame] | 108 | help |
Stanimir Varbanov | 7cd5a16 | 2010-05-21 06:04:24 -0300 | [diff] [blame] | 109 | Enables the V4L2 sub-device pad-level userspace API used to configure |
| 110 | video format, size and frame rate between hardware blocks. |
| 111 | |
| 112 | This API is mostly used by camera interfaces in embedded platforms. |
| 113 | |
Mauro Carvalho Chehab | f0af8fa | 2012-08-14 16:07:25 -0300 | [diff] [blame] | 114 | source "drivers/media/v4l2-core/Kconfig" |
| 115 | |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 116 | # |
| 117 | # DVB Core |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 118 | # Only enables if one of DTV is selected |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 119 | # |
Mauro Carvalho Chehab | cd41e28 | 2006-04-09 15:43:41 -0300 | [diff] [blame] | 120 | |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 121 | config DVB_CORE |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 122 | tristate |
| 123 | depends on MEDIA_SUPPORT |
| 124 | depends on MEDIA_DIGITAL_TV_SUPPORT |
Mauro Carvalho Chehab | 8832730 | 2018-03-07 09:51:17 -0500 | [diff] [blame] | 125 | depends on (I2C || I2C=n) |
Mauro Carvalho Chehab | b4c184e | 2012-05-28 08:17:47 -0300 | [diff] [blame] | 126 | default y |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 127 | select CRC32 |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 128 | |
Mauro Carvalho Chehab | 4021053 | 2017-12-28 09:24:20 -0500 | [diff] [blame] | 129 | config DVB_MMAP |
| 130 | bool "Enable DVB memory-mapped API (EXPERIMENTAL)" |
| 131 | depends on DVB_CORE |
Arnd Bergmann | 85e60bd | 2018-01-04 05:31:31 -0500 | [diff] [blame] | 132 | depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_CORE |
| 133 | select VIDEOBUF2_VMALLOC |
Mauro Carvalho Chehab | 4021053 | 2017-12-28 09:24:20 -0500 | [diff] [blame] | 134 | help |
Michael Ira Krufky | 2c27476 | 2018-01-16 22:16:12 -0500 | [diff] [blame] | 135 | This option enables DVB experimental memory-mapped API, which |
Mauro Carvalho Chehab | 4021053 | 2017-12-28 09:24:20 -0500 | [diff] [blame] | 136 | reduces the number of context switches to read DVB buffers, as |
| 137 | the buffers can use mmap() syscalls. |
| 138 | |
| 139 | Support for it is experimental. Use with care. If unsure, |
| 140 | say N. |
| 141 | |
Hans Petter Selasky | a34ff6c | 2011-05-23 09:43:35 -0300 | [diff] [blame] | 142 | config DVB_NET |
| 143 | bool "DVB Network Support" |
| 144 | default (NET && INET) |
Guennadi Liakhovetski | 8c528d5 | 2011-06-10 07:43:26 -0300 | [diff] [blame] | 145 | depends on NET && INET && DVB_CORE |
Hans Petter Selasky | a34ff6c | 2011-05-23 09:43:35 -0300 | [diff] [blame] | 146 | help |
Jiri Slaby | 9a78efc | 2011-06-16 16:06:56 -0300 | [diff] [blame] | 147 | This option enables DVB Network Support which is a part of the DVB |
| 148 | standard. It is used, for example, by automatic firmware updates used |
| 149 | on Set-Top-Boxes. It can also be used to access the Internet via the |
| 150 | DVB card, if the network provider supports it. |
Hans Petter Selasky | a34ff6c | 2011-05-23 09:43:35 -0300 | [diff] [blame] | 151 | |
Jiri Slaby | 9a78efc | 2011-06-16 16:06:56 -0300 | [diff] [blame] | 152 | You may want to disable the network support on embedded devices. If |
| 153 | unsure say Y. |
Hans Petter Selasky | a34ff6c | 2011-05-23 09:43:35 -0300 | [diff] [blame] | 154 | |
Mauro Carvalho Chehab | 5d92bbe | 2012-12-27 14:43:41 -0200 | [diff] [blame] | 155 | # This Kconfig option is used by both PCI and USB drivers |
| 156 | config TTPCI_EEPROM |
Mauro Carvalho Chehab | bb69ee2 | 2013-06-20 10:35:53 -0300 | [diff] [blame] | 157 | tristate |
| 158 | depends on I2C |
Mauro Carvalho Chehab | 5d92bbe | 2012-12-27 14:43:41 -0200 | [diff] [blame] | 159 | |
Mauro Carvalho Chehab | f0af8fa | 2012-08-14 16:07:25 -0300 | [diff] [blame] | 160 | source "drivers/media/dvb-core/Kconfig" |
| 161 | |
Mauro Carvalho Chehab | c455f5c | 2012-07-06 09:12:59 -0300 | [diff] [blame] | 162 | comment "Media drivers" |
Mauro Carvalho Chehab | 7c91f06 | 2008-04-29 21:38:44 -0300 | [diff] [blame] | 163 | |
| 164 | # |
Mauro Carvalho Chehab | cb7a01a | 2012-08-14 16:23:43 -0300 | [diff] [blame] | 165 | # V4L platform/mem2mem drivers |
| 166 | # |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 167 | |
Mauro Carvalho Chehab | 786baec | 2012-06-14 16:35:56 -0300 | [diff] [blame] | 168 | source "drivers/media/usb/Kconfig" |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 169 | source "drivers/media/pci/Kconfig" |
| 170 | source "drivers/media/platform/Kconfig" |
Mauro Carvalho Chehab | 0013ca8 | 2012-06-14 16:36:01 -0300 | [diff] [blame] | 171 | source "drivers/media/mmc/Kconfig" |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 172 | source "drivers/media/radio/Kconfig" |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 173 | |
Mauro Carvalho Chehab | 616300b | 2012-06-14 16:35:55 -0300 | [diff] [blame] | 174 | comment "Supported FireWire (IEEE 1394) Adapters" |
| 175 | depends on DVB_CORE && FIREWIRE |
| 176 | source "drivers/media/firewire/Kconfig" |
| 177 | |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 178 | # Common driver options |
Mauro Carvalho Chehab | 3785bc1 | 2012-06-14 16:35:58 -0300 | [diff] [blame] | 179 | source "drivers/media/common/Kconfig" |
| 180 | |
Hans Verkuil | 8283a09 | 2016-09-15 12:18:14 -0300 | [diff] [blame] | 181 | comment "Media ancillary drivers (tuners, sensors, i2c, spi, frontends)" |
Hans Verkuil | 5344fe6 | 2012-12-22 07:48:58 -0300 | [diff] [blame] | 182 | |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 183 | # |
Hans Verkuil | 8283a09 | 2016-09-15 12:18:14 -0300 | [diff] [blame] | 184 | # Ancillary drivers (tuners, i2c, spi, frontends) |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 185 | # |
| 186 | |
Mauro Carvalho Chehab | fccea74 | 2012-08-20 14:48:02 -0300 | [diff] [blame] | 187 | config MEDIA_SUBDRV_AUTOSELECT |
Hans Verkuil | 8283a09 | 2016-09-15 12:18:14 -0300 | [diff] [blame] | 188 | bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)" |
Antti Palosaari | 435ef14 | 2014-07-12 21:43:12 -0300 | [diff] [blame] | 189 | depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_CAMERA_SUPPORT || MEDIA_SDR_SUPPORT |
Mauro Carvalho Chehab | 347f7a3 | 2013-12-21 05:42:11 -0200 | [diff] [blame] | 190 | depends on HAS_IOMEM |
| 191 | select I2C |
| 192 | select I2C_MUX |
Ezequiel Garcia | 24f6f93 | 2019-07-15 17:23:15 -0400 | [diff] [blame] | 193 | default y if !EMBEDDED |
Mauro Carvalho Chehab | fccea74 | 2012-08-20 14:48:02 -0300 | [diff] [blame] | 194 | help |
Hans Verkuil | 5344fe6 | 2012-12-22 07:48:58 -0300 | [diff] [blame] | 195 | By default, a media driver auto-selects all possible ancillary |
| 196 | devices such as tuners, sensors, video encoders/decoders and |
| 197 | frontends, that are used by any of the supported devices. |
Mauro Carvalho Chehab | fccea74 | 2012-08-20 14:48:02 -0300 | [diff] [blame] | 198 | |
| 199 | This is generally the right thing to do, except when there |
Mauro Carvalho Chehab | 2c76a12 | 2012-10-17 16:09:23 -0300 | [diff] [blame] | 200 | are strict constraints with regards to the kernel size, |
| 201 | like on embedded systems. |
Mauro Carvalho Chehab | fccea74 | 2012-08-20 14:48:02 -0300 | [diff] [blame] | 202 | |
Mauro Carvalho Chehab | 2c76a12 | 2012-10-17 16:09:23 -0300 | [diff] [blame] | 203 | Use this option with care, as deselecting ancillary drivers which |
| 204 | are, in fact, necessary will result in the lack of the needed |
| 205 | functionality for your device (it may not tune or may not have |
Hans Verkuil | 5344fe6 | 2012-12-22 07:48:58 -0300 | [diff] [blame] | 206 | the needed demodulators). |
Mauro Carvalho Chehab | fccea74 | 2012-08-20 14:48:02 -0300 | [diff] [blame] | 207 | |
| 208 | If unsure say Y. |
| 209 | |
Ezequiel Garcia | 4fa4ef3 | 2019-07-27 10:31:29 -0300 | [diff] [blame] | 210 | config MEDIA_HIDE_ANCILLARY_SUBDRV |
| 211 | bool |
| 212 | depends on MEDIA_SUBDRV_AUTOSELECT && !COMPILE_TEST && !EXPERT |
| 213 | default y |
| 214 | |
Mauro Carvalho Chehab | bb69ee2 | 2013-06-20 10:35:53 -0300 | [diff] [blame] | 215 | config MEDIA_ATTACH |
| 216 | bool |
| 217 | depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT |
| 218 | depends on MODULES |
| 219 | default MODULES |
| 220 | |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 221 | source "drivers/media/i2c/Kconfig" |
Hans Verkuil | 8283a09 | 2016-09-15 12:18:14 -0300 | [diff] [blame] | 222 | source "drivers/media/spi/Kconfig" |
Mauro Carvalho Chehab | fccea74 | 2012-08-20 14:48:02 -0300 | [diff] [blame] | 223 | source "drivers/media/tuners/Kconfig" |
Mauro Carvalho Chehab | 3c8c09b | 2012-08-20 10:02:05 -0300 | [diff] [blame] | 224 | source "drivers/media/dvb-frontends/Kconfig" |
| 225 | |
Randy Dunlap | ab482a6 | 2009-05-18 22:00:34 -0300 | [diff] [blame] | 226 | endif # MEDIA_SUPPORT |