Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame^] | 1 | # |
| 2 | # Multimedia device configuration |
| 3 | # |
| 4 | |
| 5 | config CEC_CORE |
| 6 | tristate |
| 7 | |
| 8 | config CEC_NOTIFIER |
| 9 | bool |
| 10 | |
| 11 | config CEC_PIN |
| 12 | bool |
| 13 | |
| 14 | source "drivers/media/rc/Kconfig" |
| 15 | |
| 16 | menuconfig MEDIA_SUPPORT |
| 17 | tristate "Multimedia support" |
| 18 | depends on HAS_IOMEM |
| 19 | help |
| 20 | If you want to use Webcams, Video grabber devices and/or TV devices |
| 21 | enable this option and other options below. |
| 22 | Additional info and docs are available on the web at |
| 23 | <https://linuxtv.org> |
| 24 | |
| 25 | if MEDIA_SUPPORT |
| 26 | |
| 27 | comment "Multimedia core support" |
| 28 | |
| 29 | # |
| 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 |
| 65 | <https://linuxtv.org> |
| 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 | |
| 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 | |
| 80 | config MEDIA_CEC_SUPPORT |
| 81 | bool "HDMI CEC support" |
| 82 | ---help--- |
| 83 | Enable support for HDMI CEC (Consumer Electronics Control), |
| 84 | which is an optional HDMI feature. |
| 85 | |
| 86 | Say Y when you have an HDMI receiver, transmitter or a USB CEC |
| 87 | adapter that supports HDMI CEC. |
| 88 | |
| 89 | source "drivers/media/cec/Kconfig" |
| 90 | |
| 91 | # |
| 92 | # Media controller |
| 93 | # Selectable only for webcam/grabbers, as other drivers don't use it |
| 94 | # |
| 95 | |
| 96 | config MEDIA_CONTROLLER |
| 97 | bool "Media Controller API" |
| 98 | depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT |
| 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 | |
| 105 | config MEDIA_CONTROLLER_DVB |
| 106 | bool "Enable Media controller for DVB (EXPERIMENTAL)" |
| 107 | depends on MEDIA_CONTROLLER && DVB_CORE |
| 108 | ---help--- |
| 109 | Enable the media controller API support for DVB. |
| 110 | |
| 111 | This is currently experimental. |
| 112 | |
| 113 | # |
| 114 | # Video4Linux support |
| 115 | # Only enables if one of the V4L2 types (ATV, webcam, radio) is selected |
| 116 | # |
| 117 | |
| 118 | config VIDEO_DEV |
| 119 | tristate |
| 120 | depends on MEDIA_SUPPORT |
| 121 | depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT |
| 122 | default y |
| 123 | |
| 124 | config VIDEO_V4L2_SUBDEV_API |
| 125 | bool "V4L2 sub-device userspace API" |
| 126 | depends on VIDEO_DEV && MEDIA_CONTROLLER |
| 127 | ---help--- |
| 128 | Enables the V4L2 sub-device pad-level userspace API used to configure |
| 129 | video format, size and frame rate between hardware blocks. |
| 130 | |
| 131 | This API is mostly used by camera interfaces in embedded platforms. |
| 132 | |
| 133 | source "drivers/media/v4l2-core/Kconfig" |
| 134 | |
| 135 | # |
| 136 | # DVB Core |
| 137 | # Only enables if one of DTV is selected |
| 138 | # |
| 139 | |
| 140 | config DVB_CORE |
| 141 | tristate |
| 142 | depends on MEDIA_SUPPORT |
| 143 | depends on MEDIA_DIGITAL_TV_SUPPORT |
| 144 | depends on (I2C || I2C=n) |
| 145 | default y |
| 146 | select CRC32 |
| 147 | |
| 148 | config DVB_MMAP |
| 149 | bool "Enable DVB memory-mapped API (EXPERIMENTAL)" |
| 150 | depends on DVB_CORE |
| 151 | depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_CORE |
| 152 | select VIDEOBUF2_VMALLOC |
| 153 | default n |
| 154 | help |
| 155 | This option enables DVB experimental memory-mapped API, which |
| 156 | reduces the number of context switches to read DVB buffers, as |
| 157 | the buffers can use mmap() syscalls. |
| 158 | |
| 159 | Support for it is experimental. Use with care. If unsure, |
| 160 | say N. |
| 161 | |
| 162 | config DVB_NET |
| 163 | bool "DVB Network Support" |
| 164 | default (NET && INET) |
| 165 | depends on NET && INET && DVB_CORE |
| 166 | help |
| 167 | This option enables DVB Network Support which is a part of the DVB |
| 168 | standard. It is used, for example, by automatic firmware updates used |
| 169 | on Set-Top-Boxes. It can also be used to access the Internet via the |
| 170 | DVB card, if the network provider supports it. |
| 171 | |
| 172 | You may want to disable the network support on embedded devices. If |
| 173 | unsure say Y. |
| 174 | |
| 175 | # This Kconfig option is used by both PCI and USB drivers |
| 176 | config TTPCI_EEPROM |
| 177 | tristate |
| 178 | depends on I2C |
| 179 | default n |
| 180 | |
| 181 | source "drivers/media/dvb-core/Kconfig" |
| 182 | |
| 183 | comment "Media drivers" |
| 184 | |
| 185 | # |
| 186 | # V4L platform/mem2mem drivers |
| 187 | # |
| 188 | |
| 189 | source "drivers/media/usb/Kconfig" |
| 190 | source "drivers/media/pci/Kconfig" |
| 191 | source "drivers/media/platform/Kconfig" |
| 192 | source "drivers/media/mmc/Kconfig" |
| 193 | source "drivers/media/radio/Kconfig" |
| 194 | |
| 195 | comment "Supported FireWire (IEEE 1394) Adapters" |
| 196 | depends on DVB_CORE && FIREWIRE |
| 197 | source "drivers/media/firewire/Kconfig" |
| 198 | |
| 199 | # Common driver options |
| 200 | source "drivers/media/common/Kconfig" |
| 201 | |
| 202 | comment "Media ancillary drivers (tuners, sensors, i2c, spi, frontends)" |
| 203 | |
| 204 | # |
| 205 | # Ancillary drivers (tuners, i2c, spi, frontends) |
| 206 | # |
| 207 | |
| 208 | config MEDIA_SUBDRV_AUTOSELECT |
| 209 | bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)" |
| 210 | depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_CAMERA_SUPPORT || MEDIA_SDR_SUPPORT |
| 211 | depends on HAS_IOMEM |
| 212 | select I2C |
| 213 | select I2C_MUX |
| 214 | default y |
| 215 | help |
| 216 | By default, a media driver auto-selects all possible ancillary |
| 217 | devices such as tuners, sensors, video encoders/decoders and |
| 218 | frontends, that are used by any of the supported devices. |
| 219 | |
| 220 | This is generally the right thing to do, except when there |
| 221 | are strict constraints with regards to the kernel size, |
| 222 | like on embedded systems. |
| 223 | |
| 224 | Use this option with care, as deselecting ancillary drivers which |
| 225 | are, in fact, necessary will result in the lack of the needed |
| 226 | functionality for your device (it may not tune or may not have |
| 227 | the needed demodulators). |
| 228 | |
| 229 | If unsure say Y. |
| 230 | |
| 231 | config MEDIA_ATTACH |
| 232 | bool |
| 233 | depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT |
| 234 | depends on MODULES |
| 235 | default MODULES |
| 236 | |
| 237 | source "drivers/media/i2c/Kconfig" |
| 238 | source "drivers/media/spi/Kconfig" |
| 239 | source "drivers/media/tuners/Kconfig" |
| 240 | source "drivers/media/dvb-frontends/Kconfig" |
| 241 | |
| 242 | endif # MEDIA_SUPPORT |