media: rc: clean up Kconfig dependencies
[linux-2.6-block.git] / drivers / media / rc / Kconfig
CommitLineData
ec8f24b7 1# SPDX-License-Identifier: GPL-2.0-only
b9e1486e
SY
2
3menuconfig RC_CORE
4 tristate "Remote Controller support"
e27d3811 5 depends on INPUT
b60a5b8d 6 help
b9e1486e
SY
7 Enable support for Remote Controllers on Linux. This is
8 needed in order to support several video capture adapters,
9 standalone IR receivers/transmitters, and RF receivers.
10
11 Enable this option if you have a video capture board even
12 if you don't need IR, as otherwise, you may not be able to
13 compile the driver for your adapter.
cfec93f7 14
b9e1486e
SY
15 Say Y when you have a TV or an IR device.
16
17if RC_CORE
c455f5c8
MCC
18source "drivers/media/rc/keymaps/Kconfig"
19
4a62a5ab 20config LIRC
a60d64b1 21 bool "LIRC user interface"
b60a5b8d 22 help
a60d64b1
SY
23 Enable this option to enable the Linux Infrared Remote
24 Control user interface (e.g. /dev/lirc*). This interface
25 passes raw IR to and from userspace, which is needed for
26 IR transmitting (aka "blasting") and for the lirc daemon.
4a62a5ab 27
f4364dcf
SY
28config BPF_LIRC_MODE2
29 bool "Support for eBPF programs attached to lirc devices"
30 depends on BPF_SYSCALL
31 depends on RC_CORE=y
32 depends on LIRC
33 help
34 Allow attaching eBPF programs to a lirc device using the bpf(2)
35 syscall command BPF_PROG_ATTACH. This is supported for raw IR
36 receivers.
37
38 These eBPF programs can be used to decode IR into scancodes, for
39 IR protocols not supported by the kernel decoders.
40
a60d64b1 41menuconfig RC_DECODERS
4a3fad70 42 bool "Remote controller decoders"
94f74767 43
a60d64b1 44if RC_DECODERS
995187be 45config IR_NEC_DECODER
897c7b3b 46 tristate "Enable IR raw decoder for the NEC protocol"
58aac2bf 47 select BITREVERSE
995187be 48
b60a5b8d 49 help
995187be
MCC
50 Enable this option if you have IR with NEC protocol, and
51 if the IR is decoded in software
db1423a6
MCC
52
53config IR_RC5_DECODER
897c7b3b 54 tristate "Enable IR raw decoder for the RC-5 protocol"
033608c1 55 select BITREVERSE
db1423a6 56
b60a5b8d 57 help
db1423a6
MCC
58 Enable this option if you have IR with RC-5 protocol, and
59 if the IR is decoded in software
784a4931
DH
60
61config IR_RC6_DECODER
62 tristate "Enable IR raw decoder for the RC6 protocol"
2135436a 63 select BITREVERSE
784a4931 64
b60a5b8d 65 help
784a4931
DH
66 Enable this option if you have an infrared remote control which
67 uses the RC6 protocol, and you need software decoding support.
21677cfc 68
bf670f64
DH
69config IR_JVC_DECODER
70 tristate "Enable IR raw decoder for the JVC protocol"
f9839da0 71 select BITREVERSE
bf670f64 72
b60a5b8d 73 help
bf670f64
DH
74 Enable this option if you have an infrared remote control which
75 uses the JVC protocol, and you need software decoding support.
76
3fe29c89
DH
77config IR_SONY_DECODER
78 tristate "Enable IR raw decoder for the Sony protocol"
b66d2086 79 select BITREVERSE
3fe29c89 80
b60a5b8d 81 help
3fe29c89
DH
82 Enable this option if you have an infrared remote control which
83 uses the Sony protocol, and you need software decoding support.
84
b32e7243
MCC
85config IR_SANYO_DECODER
86 tristate "Enable IR raw decoder for the Sanyo protocol"
4d2e3734 87 select BITREVERSE
b32e7243 88
b60a5b8d 89 help
b32e7243
MCC
90 Enable this option if you have an infrared remote control which
91 uses the Sanyo protocol (Sanyo, Aiwa, Chinon remotes),
92 and you need software decoding support.
93
1d184b0b
JH
94config IR_SHARP_DECODER
95 tristate "Enable IR raw decoder for the Sharp protocol"
4d2e3734 96 select BITREVERSE
1d184b0b 97
b60a5b8d 98 help
1d184b0b 99 Enable this option if you have an infrared remote control which
1b0621af
HK
100 uses the Sharp protocol (Sharp, Denon), and you need software
101 decoding support.
1d184b0b 102
f5f2cc64
JW
103config IR_MCE_KBD_DECODER
104 tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol"
f5f2cc64 105 select BITREVERSE
f5f2cc64 106
b60a5b8d 107 help
f5f2cc64
JW
108 Enable this option if you have a Microsoft Remote Keyboard for
109 Windows Media Center Edition, which you would like to use with
110 a raw IR receiver in your system.
1dee9b59
MM
111
112config IR_XMP_DECODER
113 tristate "Enable IR raw decoder for the XMP protocol"
1dee9b59 114 select BITREVERSE
1dee9b59 115
b60a5b8d 116 help
1dee9b59
MM
117 Enable this option if you have IR with XMP protocol, and
118 if the IR is decoded in software
447dcc0c
SY
119
120config IR_IMON_DECODER
121 tristate "Enable IR raw decoder for the iMON protocol"
b60a5b8d 122 help
447dcc0c
SY
123 Enable this option if you have iMON PAD or Antec Veris infrared
124 remote control and you would like to use it with a raw IR
125 receiver, or if you wish to use an encoder to transmit this IR.
126
721074b0
PL
127config IR_RCMM_DECODER
128 tristate "Enable IR raw decoder for the RC-MM protocol"
721074b0
PL
129 help
130 Enable this option when you have IR with RC-MM protocol, and
131 you need the software decoder. The driver supports 12,
132 24 and 32 bits RC-MM variants. You can enable or disable the
133 different modes using the following RC protocol keywords:
134 'rc-mm-12', 'rc-mm-24' and 'rc-mm-32'.
135
136 To compile this driver as a module, choose M here: the module
137 will be called ir-rcmm-decoder.
138
c455f5c8 139endif #RC_DECODERS
f5f2cc64 140
b4c184e5
MCC
141menuconfig RC_DEVICES
142 bool "Remote Controller devices"
b4c184e5
MCC
143
144if RC_DEVICES
145
9688efda 146config RC_ATI_REMOTE
3a7a6237 147 tristate "ATI / X10 based USB RF remote controls"
52518e51 148 depends on USB
9688efda 149 help
3a7a6237 150 Say Y here if you want to use an X10 based USB remote control.
9688efda 151 These are RF remotes with USB receivers.
3a7a6237
AH
152
153 Such devices include the ATI remote that comes with many of ATI's
154 All-In-Wonder video cards, the X10 "Lola" remote, NVIDIA RF remote,
155 Medion RF remote, and SnapStream FireFly remote.
156
9688efda
AH
157 This driver provides mouse pointer, left and right mouse buttons,
158 and maps all the other remote buttons to keypress events.
159
160 To compile this driver as a module, choose M here: the module will be
161 called ati_remote.
162
d322bf4a 163config IR_ENE
11b64d31 164 tristate "ENE eHome Receiver/Transceiver (pnp id: ENE0100/ENE02xxx)"
6ba0b22d 165 depends on PNP || COMPILE_TEST
b60a5b8d 166 help
d322bf4a 167 Say Y here to enable support for integrated infrared receiver
11b64d31 168 /transceiver made by ENE.
d322bf4a
JW
169
170 You can see if you have it by looking at lspnp output.
11b64d31 171 Output should include ENE0100 ENE0200 or something similar.
d322bf4a
JW
172
173 To compile this driver as a module, choose M here: the
174 module will be called ene_ir.
175
a84fcdaa
GY
176config IR_HIX5HD2
177 tristate "Hisilicon hix5hd2 IR remote control"
a840f3c7 178 depends on OF || COMPILE_TEST
a84fcdaa 179 help
842e39c0
DH
180 Say Y here if you want to use hisilicon hix5hd2 remote control.
181 To compile this driver as a module, choose M here: the module will be
182 called ir-hix5hd2.
a84fcdaa 183
842e39c0 184 If you're not sure, select N here
a84fcdaa 185
21677cfc
JW
186config IR_IMON
187 tristate "SoundGraph iMON Receiver and Display"
52518e51 188 depends on USB
b60a5b8d 189 help
21677cfc
JW
190 Say Y here if you want to use a SoundGraph iMON (aka Antec Veris)
191 IR Receiver and/or LCD/VFD/VGA display.
192
193 To compile this driver as a module, choose M here: the
194 module will be called imon.
66e89522 195
8a4e8f8d
SY
196config IR_IMON_RAW
197 tristate "SoundGraph iMON Receiver (early raw IR models)"
52518e51 198 depends on USB
b60a5b8d 199 help
8a4e8f8d
SY
200 Say Y here if you want to use a SoundGraph iMON IR Receiver,
201 early raw models.
202
203 To compile this driver as a module, choose M here: the
204 module will be called imon_raw.
205
66e89522
JW
206config IR_MCEUSB
207 tristate "Windows Media Center Ed. eHome Infrared Transceiver"
52518e51 208 depends on USB
b60a5b8d 209 help
66e89522
JW
210 Say Y here if you want to use a Windows Media Center Edition
211 eHome Infrared Transceiver.
212
213 To compile this driver as a module, choose M here: the
214 module will be called mceusb.
2c1101d5 215
620a32bb
JGS
216config IR_ITE_CIR
217 tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver"
6ba0b22d 218 depends on PNP || COMPILE_TEST
b60a5b8d 219 help
620a32bb
JGS
220 Say Y here to enable support for integrated infrared receivers
221 /transceivers made by ITE Tech Inc. These are found in
222 several ASUS devices, like the ASUS Digimatrix or the ASUS
223 EEEBox 1501U.
224
225 To compile this driver as a module, choose M here: the
226 module will be called ite-cir.
227
9bdc79ea
JW
228config IR_FINTEK
229 tristate "Fintek Consumer Infrared Transceiver"
6ba0b22d 230 depends on PNP || COMPILE_TEST
b60a5b8d 231 help
9bdc79ea 232 Say Y here to enable support for integrated infrared receiver
04ad3011 233 /transceiver made by Fintek. This chip is found on assorted
9bdc79ea
JW
234 Jetway motherboards (and of course, possibly others).
235
236 To compile this driver as a module, choose M here: the
237 module will be called fintek-cir.
238
12ddbadf
BG
239config IR_MESON
240 tristate "Amlogic Meson IR remote receiver"
12ddbadf 241 depends on ARCH_MESON || COMPILE_TEST
b60a5b8d 242 help
12ddbadf
BG
243 Say Y if you want to use the IR remote receiver available
244 on Amlogic Meson SoCs.
245
246 To compile this driver as a module, choose M here: the
247 module will be called meson-ir.
248
6691e7b9
SW
249config IR_MTK
250 tristate "Mediatek IR remote receiver"
6691e7b9 251 depends on ARCH_MEDIATEK || COMPILE_TEST
b60a5b8d 252 help
6691e7b9
SW
253 Say Y if you want to use the IR remote receiver available
254 on Mediatek SoCs.
255
256 To compile this driver as a module, choose M here: the
257 module will be called mtk-cir.
258
d322bf4a
JW
259config IR_NUVOTON
260 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver"
6ba0b22d 261 depends on PNP || COMPILE_TEST
b60a5b8d 262 help
931e39a1 263 Say Y here to enable support for integrated infrared receiver
04ad3011 264 /transceiver made by Nuvoton (formerly Winbond). This chip is
d322bf4a
JW
265 found in the ASRock ION 330HT, as well as assorted Intel
266 DP55-series motherboards (and of course, possibly others).
931e39a1
ML
267
268 To compile this driver as a module, choose M here: the
d322bf4a 269 module will be called nuvoton-cir.
931e39a1 270
2154be65
JW
271config IR_REDRAT3
272 tristate "RedRat3 IR Transceiver"
52518e51 273 depends on USB
bf139726
SY
274 select NEW_LEDS
275 select LEDS_CLASS
b60a5b8d 276 help
2154be65
JW
277 Say Y here if you want to use a RedRat3 Infrared Transceiver.
278
279 To compile this driver as a module, choose M here: the
280 module will be called redrat3.
281
fe052da4
AS
282config IR_SPI
283 tristate "SPI connected IR LED"
284 depends on SPI && LIRC
950db1a8 285 depends on OF || COMPILE_TEST
b60a5b8d 286 help
fe052da4
AS
287 Say Y if you want to use an IR LED connected through SPI bus.
288
289 To compile this driver as a module, choose M here: the module will be
290 called ir-spi.
291
2c1101d5
JW
292config IR_STREAMZAP
293 tristate "Streamzap PC Remote IR Receiver"
52518e51 294 depends on USB
b60a5b8d 295 help
2c1101d5
JW
296 Say Y here if you want to use a Streamzap PC Remote
297 Infrared Receiver.
298
299 To compile this driver as a module, choose M here: the
300 module will be called streamzap.
ade321c5 301
5b2e303f 302config IR_WINBOND_CIR
baf075ec 303 tristate "Winbond IR remote control"
6ba0b22d 304 depends on (X86 && PNP) || COMPILE_TEST
baf075ec
MCC
305 select NEW_LEDS
306 select LEDS_CLASS
baf075ec 307 select BITREVERSE
b60a5b8d 308 help
baf075ec
MCC
309 Say Y here if you want to use the IR remote functionality found
310 in some Winbond SuperI/O chips. Currently only the WPCD376I
311 chip is supported (included in some Intel Media series
5b2e303f
DH
312 motherboards).
313
baf075ec 314 To compile this driver as a module, choose M here: the module will
5b2e303f
DH
315 be called winbond_cir.
316
b1c97193
SY
317config IR_IGORPLUGUSB
318 tristate "IgorPlug-USB IR Receiver"
52518e51 319 depends on USB
b60a5b8d 320 help
b1c97193
SY
321 Say Y here if you want to use the IgorPlug-USB IR Receiver by
322 Igor Cesko. This device is included on the Fit-PC2.
323
324 Note that this device can only record bursts of 36 IR pulses and
325 spaces, which is not enough for the NEC, Sanyo and RC-6 protocol.
326
327 To compile this driver as a module, choose M here: the module will
328 be called igorplugusb.
329
26ff6313
SY
330config IR_IGUANA
331 tristate "IguanaWorks USB IR Transceiver"
52518e51 332 depends on USB
b60a5b8d 333 help
0797b480
SY
334 Say Y here if you want to use the IguanaWorks USB IR Transceiver.
335 Both infrared receive and send are supported. If you want to
336 change the ID or the pin config, use the user space driver from
337 IguanaWorks.
338
339 Only firmware 0x0205 and later is supported.
26ff6313
SY
340
341 To compile this driver as a module, choose M here: the module will
342 be called iguanair.
343
0938069f
SY
344config IR_TTUSBIR
345 tristate "TechnoTrend USB IR Receiver"
52518e51 346 depends on USB
0938069f
SY
347 select NEW_LEDS
348 select LEDS_CLASS
b60a5b8d 349 help
0938069f
SY
350 Say Y here if you want to use the TechnoTrend USB IR Receiver. The
351 driver can control the led.
352
353 To compile this driver as a module, choose M here: the module will
354 be called ttusbir.
355
c332e847 356config IR_RX51
2ea4b442 357 tristate "Nokia N900 IR transmitter diode"
a92def1b 358 depends on (OMAP_DM_TIMER && PWM_OMAP_DMTIMER && ARCH_OMAP2PLUS || COMPILE_TEST) && RC_CORE
b60a5b8d 359 help
c332e847
TK
360 Say Y or M here if you want to enable support for the IR
361 transmitter diode built in the Nokia N900 (RX51) device.
362
362b29ba 363 The driver uses omap DM timers for generating the carrier
c332e847
TK
364 wave and pulses.
365
54b29120
JH
366source "drivers/media/rc/img-ir/Kconfig"
367
801c73c0
DH
368config RC_LOOPBACK
369 tristate "Remote Control Loopback Driver"
b60a5b8d 370 help
801c73c0
DH
371 Say Y here if you want support for the remote control loopback
372 driver which allows TX data to be sent back as RX data.
373 This is mostly useful for debugging purposes.
374
375 If you're not sure, select N here.
376
377 To compile this driver as a module, choose M here: the module will
378 be called rc_loopback.
379
fd0f6851
RK
380config IR_GPIO_CIR
381 tristate "GPIO IR remote control"
c1301077 382 depends on (OF && GPIOLIB) || COMPILE_TEST
b60a5b8d 383 help
fd0f6851
RK
384 Say Y if you want to use GPIO based IR Receiver.
385
386 To compile this driver as a module, choose M here: the module will
387 be called gpio-ir-recv.
388
24d79ebc
SY
389config IR_GPIO_TX
390 tristate "GPIO IR Bit Banging Transmitter"
24d79ebc 391 depends on LIRC
52888793 392 depends on (OF && GPIOLIB) || COMPILE_TEST
b60a5b8d 393 help
24d79ebc
SY
394 Say Y if you want to a GPIO based IR transmitter. This is a
395 bit banging driver.
396
397 To compile this driver as a module, choose M here: the module will
398 be called gpio-ir-tx.
399
db3df876
SY
400config IR_PWM_TX
401 tristate "PWM IR transmitter"
db3df876
SY
402 depends on LIRC
403 depends on PWM
2d726aaa 404 depends on OF || COMPILE_TEST
b60a5b8d 405 help
db3df876
SY
406 Say Y if you want to use a PWM based IR transmitter. This is
407 more power efficient than the bit banging gpio driver.
408
409 To compile this driver as a module, choose M here: the module will
410 be called pwm-ir-tx.
411
80f93c7b
SK
412config RC_ST
413 tristate "ST remote control receiver"
7155043c 414 depends on ARCH_STI || COMPILE_TEST
b60a5b8d 415 help
cfcffe39
HV
416 Say Y here if you want support for ST remote control driver
417 which allows both IR and UHF RX.
418 The driver passes raw pulse and space information to the LIRC decoder.
80f93c7b 419
cfcffe39 420 If you're not sure, select N here.
80f93c7b 421
b4e3e59f 422config IR_SUNXI
cfcffe39 423 tristate "SUNXI IR remote control"
cfcffe39 424 depends on ARCH_SUNXI || COMPILE_TEST
b60a5b8d 425 help
cfcffe39
HV
426 Say Y if you want to use sunXi internal IR Controller
427
428 To compile this driver as a module, choose M here: the module will
429 be called sunxi-ir.
b4e3e59f 430
fa5dc29c
SY
431config IR_SERIAL
432 tristate "Homebrew Serial Port Receiver"
b60a5b8d 433 help
fa5dc29c
SY
434 Say Y if you want to use Homebrew Serial Port Receivers and
435 Transceivers.
436
437 To compile this driver as a module, choose M here: the module will
438 be called serial-ir.
439
440config IR_SERIAL_TRANSMITTER
441 bool "Serial Port Transmitter"
fa5dc29c 442 depends on IR_SERIAL
b60a5b8d 443 help
fa5dc29c
SY
444 Serial Port Transmitter support
445
e6626716 446config IR_SIR
4a3fad70 447 tristate "Built-in SIR IrDA port"
b60a5b8d 448 help
e6626716
SY
449 Say Y if you want to use a IrDA SIR port Transceivers.
450
451 To compile this driver as a module, choose M here: the module will
452 be called sir-ir.
453
02d32bda
BV
454config RC_XBOX_DVD
455 tristate "Xbox DVD Movie Playback Kit"
52518e51 456 depends on USB
02d32bda
BV
457 help
458 Say Y here if you want to use the Xbox DVD Movie Playback Kit.
459 These are IR remotes with USB receivers for the Original Xbox (2001).
460
461 To compile this driver as a module, choose M here: the module will be
462 called xbox_remote.
463
261463db
SY
464config IR_TOY
465 tristate "Infrared Toy and IR Droid"
52518e51 466 depends on USB
261463db
SY
467 help
468 Say Y here if you want to use the Infrared Toy or IR Droid, USB
469 versions.
470
471 To compile this driver as a module, choose M here: the module will be
472 called ir_toy.
473
b4c184e5 474endif #RC_DEVICES
b9e1486e
SY
475
476endif #RC_CORE