Kconfig 5.8 KB
Newer Older
1
# SPDX-License-Identifier: GPL-2.0-only
L
Linus Torvalds 已提交
2 3 4 5
#
# Multimedia device configuration
#

6 7 8
config CEC_CORE
	tristate

9
config CEC_NOTIFIER
10 11
	bool

12 13 14
config CEC_PIN
	bool

15 16
source "drivers/media/rc/Kconfig"

17 18
menuconfig MEDIA_SUPPORT
	tristate "Multimedia support"
19
	depends on HAS_IOMEM
20
	help
21
	  If you want to use Webcams, Video grabber devices and/or TV devices
22
	  enable this option and other options below.
23
	  Additional info and docs are available on the web at
24
	  <https://linuxtv.org>
25 26

if MEDIA_SUPPORT
L
Linus Torvalds 已提交
27

28 29
comment "Multimedia core support"

30 31 32 33 34
#
# Multimedia support - automatically enable V4L2 and DVB core
#
config MEDIA_CAMERA_SUPPORT
	bool "Cameras/video grabbers support"
35
	help
36 37 38 39 40 41
	  Enable support for webcams and video grabbers.

	  Say Y when you have a webcam or a video capture grabber board.

config MEDIA_ANALOG_TV_SUPPORT
	bool "Analog TV support"
42
	help
43 44 45 46 47 48 49 50 51 52 53
	  Enable analog TV support.

	  Say Y when you have a TV board with analog support or with a
	  hybrid analog/digital TV chipset.

	  Note: There are several DVB cards that are based on chips that
		support both analog and digital TV. Disabling this option
		will disable support for them.

config MEDIA_DIGITAL_TV_SUPPORT
	bool "Digital TV support"
54
	help
55 56 57 58 59 60 61
	  Enable digital TV support.

	  Say Y when you have a board with digital support or a board with
	  hybrid digital TV and analog TV.

config MEDIA_RADIO_SUPPORT
	bool "AM/FM radio receivers/transmitters support"
62
	help
63 64 65
	  Enable AM/FM radio support.

	  Additional info and docs are available on the web at
66
	  <https://linuxtv.org>
67 68 69 70 71 72 73

	  Say Y when you have a board with radio support.

	  Note: There are several TV cards that are based on chips that
		support radio reception. Disabling this option will
		disable support for them.

74 75
config MEDIA_SDR_SUPPORT
	bool "Software defined radio support"
76
	help
77 78 79 80
	  Enable software defined radio support.

	  Say Y when you have a software defined radio device.

81
config MEDIA_CEC_SUPPORT
82
	bool "HDMI CEC support"
83
	help
84 85
	  Enable support for HDMI CEC (Consumer Electronics Control),
	  which is an optional HDMI feature.
86

87 88
	  Say Y when you have an HDMI receiver, transmitter or a USB CEC
	  adapter that supports HDMI CEC.
89

H
Hans Verkuil 已提交
90
source "drivers/media/cec/Kconfig"
91

92
source "drivers/media/mc/Kconfig"
93

94
#
95 96
# Video4Linux support
#	Only enables if one of the V4L2 types (ATV, webcam, radio) is selected
97 98
#

L
Linus Torvalds 已提交
99
config VIDEO_DEV
100 101
	tristate
	depends on MEDIA_SUPPORT
102
	depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT || MEDIA_SDR_SUPPORT
103
	default y
L
Linus Torvalds 已提交
104

105
config VIDEO_V4L2_SUBDEV_API
106 107
	bool "V4L2 sub-device userspace API"
	depends on VIDEO_DEV && MEDIA_CONTROLLER
108
	help
109 110 111 112 113
	  Enables the V4L2 sub-device pad-level userspace API used to configure
	  video format, size and frame rate between hardware blocks.

	  This API is mostly used by camera interfaces in embedded platforms.

114 115
source "drivers/media/v4l2-core/Kconfig"

116 117
#
# DVB Core
118
#	Only enables if one of DTV is selected
119
#
L
Linus Torvalds 已提交
120

121
config DVB_CORE
122 123 124
	tristate
	depends on MEDIA_SUPPORT
	depends on MEDIA_DIGITAL_TV_SUPPORT
125
	depends on (I2C || I2C=n)
126
	default y
127
	select CRC32
128

129 130 131
config DVB_MMAP
	bool "Enable DVB memory-mapped API (EXPERIMENTAL)"
	depends on DVB_CORE
132 133
	depends on VIDEO_V4L2=y || VIDEO_V4L2=DVB_CORE
	select VIDEOBUF2_VMALLOC
134
	help
135
	  This option enables DVB experimental memory-mapped API, which
136 137 138 139 140 141
	  reduces the number of context switches to read DVB buffers, as
	  the buffers can use mmap() syscalls.

	  Support for it is experimental. Use with care. If unsure,
	  say N.

142 143 144
config DVB_NET
	bool "DVB Network Support"
	default (NET && INET)
145
	depends on NET && INET && DVB_CORE
146
	help
147 148 149 150
	  This option enables DVB Network Support which is a part of the DVB
	  standard. It is used, for example, by automatic firmware updates used
	  on Set-Top-Boxes. It can also be used to access the Internet via the
	  DVB card, if the network provider supports it.
151

152 153
	  You may want to disable the network support on embedded devices. If
	  unsure say Y.
154

155 156
# This Kconfig option is used by both PCI and USB drivers
config TTPCI_EEPROM
157 158
	tristate
	depends on I2C
159

160 161
source "drivers/media/dvb-core/Kconfig"

162
comment "Media drivers"
163

164
#
165
# V4L platform/mem2mem drivers
166
#
167

168
source "drivers/media/usb/Kconfig"
169 170
source "drivers/media/pci/Kconfig"
source "drivers/media/platform/Kconfig"
171
source "drivers/media/mmc/Kconfig"
172
source "drivers/media/radio/Kconfig"
L
Linus Torvalds 已提交
173

174 175 176 177
comment "Supported FireWire (IEEE 1394) Adapters"
	depends on DVB_CORE && FIREWIRE
source "drivers/media/firewire/Kconfig"

178
# Common driver options
179 180
source "drivers/media/common/Kconfig"

181
comment "Media ancillary drivers (tuners, sensors, i2c, spi, frontends)"
H
Hans Verkuil 已提交
182

183
#
184
# Ancillary drivers (tuners, i2c, spi, frontends)
185 186
#

187
config MEDIA_SUBDRV_AUTOSELECT
188
	bool "Autoselect ancillary drivers (tuners, sensors, i2c, spi, frontends)"
189
	depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_CAMERA_SUPPORT || MEDIA_SDR_SUPPORT
190 191 192
	depends on HAS_IOMEM
	select I2C
	select I2C_MUX
193
	default y if !EMBEDDED
194
	help
H
Hans Verkuil 已提交
195 196 197
	  By default, a media driver auto-selects all possible ancillary
	  devices such as tuners, sensors, video encoders/decoders and
	  frontends, that are used by any of the supported devices.
198 199

	  This is generally the right thing to do, except when there
200 201
	  are strict constraints with regards to the kernel size,
	  like on embedded systems.
202

203 204 205
	  Use this option with care, as deselecting ancillary drivers which
	  are, in fact, necessary will result in the lack of the needed
	  functionality for your device (it may not tune or may not have
H
Hans Verkuil 已提交
206
	  the needed demodulators).
207 208 209

	  If unsure say Y.

210
config MEDIA_HIDE_ANCILLARY_SUBDRV
211 212 213
	bool
	depends on MEDIA_SUBDRV_AUTOSELECT && !COMPILE_TEST && !EXPERT
	default y
214

215 216 217 218 219 220
config MEDIA_ATTACH
	bool
	depends on MEDIA_ANALOG_TV_SUPPORT || MEDIA_DIGITAL_TV_SUPPORT || MEDIA_RADIO_SUPPORT
	depends on MODULES
	default MODULES

221
source "drivers/media/i2c/Kconfig"
222
source "drivers/media/spi/Kconfig"
223
source "drivers/media/tuners/Kconfig"
224 225
source "drivers/media/dvb-frontends/Kconfig"

226
endif # MEDIA_SUPPORT