xref: /openbmc/linux/drivers/media/Kconfig (revision b4c184e506a4cdb9b77bff4a1d39237581540b33)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# Multimedia device configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvalds
5ab482a6cSRandy Dunlapmenuconfig MEDIA_SUPPORT
6ab482a6cSRandy Dunlap	tristate "Multimedia support"
7e25df120SMartin Schwidefsky	depends on HAS_IOMEM
8ab482a6cSRandy Dunlap	help
9*b4c184e5SMauro Carvalho Chehab	  If you want to use Webcams, Video grabber devices and/or TV devices
10ab482a6cSRandy Dunlap	  enable this option and other options below.
11*b4c184e5SMauro Carvalho Chehab	  Additional info and docs are available on the web at
12*b4c184e5SMauro Carvalho Chehab	  <http://linuxtv.org>
13ab482a6cSRandy Dunlap
14ab482a6cSRandy Dunlapif MEDIA_SUPPORT
151da177e4SLinus Torvalds
167c91f062SMauro Carvalho Chehabcomment "Multimedia core support"
177c91f062SMauro Carvalho Chehab
187c91f062SMauro Carvalho Chehab#
19*b4c184e5SMauro Carvalho Chehab# Multimedia support - automatically enable V4L2 and DVB core
20*b4c184e5SMauro Carvalho Chehab#
21*b4c184e5SMauro Carvalho Chehabconfig MEDIA_CAMERA_SUPPORT
22*b4c184e5SMauro Carvalho Chehab	bool "Cameras/video grabbers support"
23*b4c184e5SMauro Carvalho Chehab	---help---
24*b4c184e5SMauro Carvalho Chehab	  Enable support for webcams and video grabbers.
25*b4c184e5SMauro Carvalho Chehab
26*b4c184e5SMauro Carvalho Chehab	  Say Y when you have a webcam or a video capture grabber board.
27*b4c184e5SMauro Carvalho Chehab
28*b4c184e5SMauro Carvalho Chehabconfig MEDIA_ANALOG_TV_SUPPORT
29*b4c184e5SMauro Carvalho Chehab	bool "Analog TV support"
30*b4c184e5SMauro Carvalho Chehab	---help---
31*b4c184e5SMauro Carvalho Chehab	  Enable analog TV support.
32*b4c184e5SMauro Carvalho Chehab
33*b4c184e5SMauro Carvalho Chehab	  Say Y when you have a TV board with analog support or with a
34*b4c184e5SMauro Carvalho Chehab	  hybrid analog/digital TV chipset.
35*b4c184e5SMauro Carvalho Chehab
36*b4c184e5SMauro Carvalho Chehab	  Note: There are several DVB cards that are based on chips that
37*b4c184e5SMauro Carvalho Chehab		support both analog and digital TV. Disabling this option
38*b4c184e5SMauro Carvalho Chehab		will disable support for them.
39*b4c184e5SMauro Carvalho Chehab
40*b4c184e5SMauro Carvalho Chehabconfig MEDIA_DIGITAL_TV_SUPPORT
41*b4c184e5SMauro Carvalho Chehab	bool "Digital TV support"
42*b4c184e5SMauro Carvalho Chehab	---help---
43*b4c184e5SMauro Carvalho Chehab	  Enable digital TV support.
44*b4c184e5SMauro Carvalho Chehab
45*b4c184e5SMauro Carvalho Chehab	  Say Y when you have a board with digital support or a board with
46*b4c184e5SMauro Carvalho Chehab	  hybrid digital TV and analog TV.
47*b4c184e5SMauro Carvalho Chehab
48*b4c184e5SMauro Carvalho Chehabconfig MEDIA_RADIO_SUPPORT
49*b4c184e5SMauro Carvalho Chehab	bool "AM/FM radio receivers/transmitters support"
50*b4c184e5SMauro Carvalho Chehab	---help---
51*b4c184e5SMauro Carvalho Chehab	  Enable AM/FM radio support.
52*b4c184e5SMauro Carvalho Chehab
53*b4c184e5SMauro Carvalho Chehab	  Additional info and docs are available on the web at
54*b4c184e5SMauro Carvalho Chehab	  <http://linuxtv.org>
55*b4c184e5SMauro Carvalho Chehab
56*b4c184e5SMauro Carvalho Chehab	  Say Y when you have a board with radio support.
57*b4c184e5SMauro Carvalho Chehab
58*b4c184e5SMauro Carvalho Chehab	  Note: There are several TV cards that are based on chips that
59*b4c184e5SMauro Carvalho Chehab		support radio reception. Disabling this option will
60*b4c184e5SMauro Carvalho Chehab		disable support for them.
61*b4c184e5SMauro Carvalho Chehab
62*b4c184e5SMauro Carvalho Chehabmenuconfig MEDIA_RC_SUPPORT
63*b4c184e5SMauro Carvalho Chehab	bool "Remote Controller support"
64*b4c184e5SMauro Carvalho Chehab	depends on INPUT
65*b4c184e5SMauro Carvalho Chehab	---help---
66*b4c184e5SMauro Carvalho Chehab	  Enable support for Remote Controllers on Linux. This is
67*b4c184e5SMauro Carvalho Chehab	  needed in order to support several video capture adapters,
68*b4c184e5SMauro Carvalho Chehab	  standalone IR receivers/transmitters, and RF receivers.
69*b4c184e5SMauro Carvalho Chehab
70*b4c184e5SMauro Carvalho Chehab	  Enable this option if you have a video capture board even
71*b4c184e5SMauro Carvalho Chehab	  if you don't need IR, as otherwise, you may not be able to
72*b4c184e5SMauro Carvalho Chehab	  compile the driver for your adapter.
73*b4c184e5SMauro Carvalho Chehab
74*b4c184e5SMauro Carvalho Chehab	  Say Y when you have a TV or an IR device.
75*b4c184e5SMauro Carvalho Chehab
76*b4c184e5SMauro Carvalho Chehab#
77cf4b9211SLaurent Pinchart# Media controller
78*b4c184e5SMauro Carvalho Chehab#	Selectable only for webcam/grabbers, as other drivers don't use it
79cf4b9211SLaurent Pinchart#
80cf4b9211SLaurent Pinchart
81cf4b9211SLaurent Pinchartconfig MEDIA_CONTROLLER
82cf4b9211SLaurent Pinchart	bool "Media Controller API (EXPERIMENTAL)"
83cf4b9211SLaurent Pinchart	depends on EXPERIMENTAL
84*b4c184e5SMauro Carvalho Chehab	depends on MEDIA_CAMERA_SUPPORT
85cf4b9211SLaurent Pinchart	---help---
86cf4b9211SLaurent Pinchart	  Enable the media controller API used to query media devices internal
87cf4b9211SLaurent Pinchart	  topology and configure it dynamically.
88cf4b9211SLaurent Pinchart
89cf4b9211SLaurent Pinchart	  This API is mostly used by camera interfaces in embedded platforms.
90cf4b9211SLaurent Pinchart
91cf4b9211SLaurent Pinchart#
92*b4c184e5SMauro Carvalho Chehab# Video4Linux support
93*b4c184e5SMauro Carvalho Chehab#	Only enables if one of the V4L2 types (ATV, webcam, radio) is selected
947c91f062SMauro Carvalho Chehab#
957c91f062SMauro Carvalho Chehab
961da177e4SLinus Torvaldsconfig VIDEO_DEV
97*b4c184e5SMauro Carvalho Chehab	tristate
98*b4c184e5SMauro Carvalho Chehab	depends on MEDIA_SUPPORT
99*b4c184e5SMauro Carvalho Chehab	depends on MEDIA_CAMERA_SUPPORT || MEDIA_ANALOG_TV_SUPPORT || MEDIA_RADIO_SUPPORT
100*b4c184e5SMauro Carvalho Chehab	default y
1011da177e4SLinus Torvalds
102a9254475SMauro Carvalho Chehabconfig VIDEO_V4L2_COMMON
103a9254475SMauro Carvalho Chehab	tristate
104a9254475SMauro Carvalho Chehab	depends on (I2C || I2C=n) && VIDEO_DEV
105a9254475SMauro Carvalho Chehab	default (I2C || I2C=n) && VIDEO_DEV
106a9254475SMauro Carvalho Chehab
1077cd5a16bSStanimir Varbanovconfig VIDEO_V4L2_SUBDEV_API
1087cd5a16bSStanimir Varbanov	bool "V4L2 sub-device userspace API (EXPERIMENTAL)"
1097cd5a16bSStanimir Varbanov	depends on VIDEO_DEV && MEDIA_CONTROLLER && EXPERIMENTAL
1107cd5a16bSStanimir Varbanov	---help---
1117cd5a16bSStanimir Varbanov	  Enables the V4L2 sub-device pad-level userspace API used to configure
1127cd5a16bSStanimir Varbanov	  video format, size and frame rate between hardware blocks.
1137cd5a16bSStanimir Varbanov
1147cd5a16bSStanimir Varbanov	  This API is mostly used by camera interfaces in embedded platforms.
1157cd5a16bSStanimir Varbanov
1167c91f062SMauro Carvalho Chehab#
1177c91f062SMauro Carvalho Chehab# DVB Core
118*b4c184e5SMauro Carvalho Chehab#	Only enables if one of DTV is selected
1197c91f062SMauro Carvalho Chehab#
120cd41e28eSMauro Carvalho Chehab
1217c91f062SMauro Carvalho Chehabconfig DVB_CORE
122*b4c184e5SMauro Carvalho Chehab	tristate
123*b4c184e5SMauro Carvalho Chehab	depends on MEDIA_SUPPORT
124*b4c184e5SMauro Carvalho Chehab	depends on MEDIA_DIGITAL_TV_SUPPORT
125*b4c184e5SMauro Carvalho Chehab	default y
1267c91f062SMauro Carvalho Chehab	select CRC32
1277c91f062SMauro Carvalho Chehab
128a34ff6cdSHans Petter Selaskyconfig DVB_NET
129a34ff6cdSHans Petter Selasky	bool "DVB Network Support"
130a34ff6cdSHans Petter Selasky	default (NET && INET)
1318c528d5eSGuennadi Liakhovetski	depends on NET && INET && DVB_CORE
132a34ff6cdSHans Petter Selasky	help
1339a78efc8SJiri Slaby	  This option enables DVB Network Support which is a part of the DVB
1349a78efc8SJiri Slaby	  standard. It is used, for example, by automatic firmware updates used
1359a78efc8SJiri Slaby	  on Set-Top-Boxes. It can also be used to access the Internet via the
1369a78efc8SJiri Slaby	  DVB card, if the network provider supports it.
137a34ff6cdSHans Petter Selasky
1389a78efc8SJiri Slaby	  You may want to disable the network support on embedded devices. If
1399a78efc8SJiri Slaby	  unsure say Y.
140a34ff6cdSHans Petter Selasky
1417c91f062SMauro Carvalho Chehabconfig VIDEO_MEDIA
14217de9a4eSMauro Carvalho Chehab	tristate
143039d4001SMauro Carvalho Chehab	default (DVB_CORE && (VIDEO_DEV = n)) || (VIDEO_DEV && (DVB_CORE = n)) || (DVB_CORE && VIDEO_DEV)
1447c91f062SMauro Carvalho Chehab
1457c91f062SMauro Carvalho Chehabsource "drivers/media/common/Kconfig"
14632cf86f6SMauro Carvalho Chehabsource "drivers/media/rc/Kconfig"
1477c91f062SMauro Carvalho Chehab
1487c91f062SMauro Carvalho Chehab#
1497c91f062SMauro Carvalho Chehab# Tuner drivers for DVB and V4L
1507c91f062SMauro Carvalho Chehab#
1517c91f062SMauro Carvalho Chehab
1527c91f062SMauro Carvalho Chehabsource "drivers/media/common/tuners/Kconfig"
1537c91f062SMauro Carvalho Chehab
1547c91f062SMauro Carvalho Chehab#
1557c91f062SMauro Carvalho Chehab# Video/Radio/Hybrid adapters
1567c91f062SMauro Carvalho Chehab#
15717de9a4eSMauro Carvalho Chehab
1581da177e4SLinus Torvaldssource "drivers/media/video/Kconfig"
1591da177e4SLinus Torvalds
1601da177e4SLinus Torvaldssource "drivers/media/radio/Kconfig"
1611da177e4SLinus Torvalds
1627c91f062SMauro Carvalho Chehab#
1637c91f062SMauro Carvalho Chehab# DVB adapters
1647c91f062SMauro Carvalho Chehab#
1657c91f062SMauro Carvalho Chehab
1661da177e4SLinus Torvaldssource "drivers/media/dvb/Kconfig"
1671da177e4SLinus Torvalds
168ab482a6cSRandy Dunlapendif # MEDIA_SUPPORT
169