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