blob: 1021c08a9ba4c8956742c8d2ef1ddc6fe23450f2 [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001
2menuconfig RC_CORE
3 tristate "Remote Controller support"
4 depends on INPUT
5 ---help---
6 Enable support for Remote Controllers on Linux. This is
7 needed in order to support several video capture adapters,
8 standalone IR receivers/transmitters, and RF receivers.
9
10 Enable this option if you have a video capture board even
11 if you don't need IR, as otherwise, you may not be able to
12 compile the driver for your adapter.
13
14 Say Y when you have a TV or an IR device.
15
16if RC_CORE
17source "drivers/media/rc/keymaps/Kconfig"
18
19config LIRC
20 bool "LIRC user interface"
21 depends on RC_CORE
22 ---help---
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.
27
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
41menuconfig RC_DECODERS
42 bool "Remote controller decoders"
43 depends on RC_CORE
44
45if RC_DECODERS
46config IR_NEC_DECODER
47 tristate "Enable IR raw decoder for the NEC protocol"
48 depends on RC_CORE
49 select BITREVERSE
50
51 ---help---
52 Enable this option if you have IR with NEC protocol, and
53 if the IR is decoded in software
54
55config IR_RC5_DECODER
56 tristate "Enable IR raw decoder for the RC-5 protocol"
57 depends on RC_CORE
58 select BITREVERSE
59
60 ---help---
61 Enable this option if you have IR with RC-5 protocol, and
62 if the IR is decoded in software
63
64config IR_RC6_DECODER
65 tristate "Enable IR raw decoder for the RC6 protocol"
66 depends on RC_CORE
67 select BITREVERSE
68
69 ---help---
70 Enable this option if you have an infrared remote control which
71 uses the RC6 protocol, and you need software decoding support.
72
73config IR_JVC_DECODER
74 tristate "Enable IR raw decoder for the JVC protocol"
75 depends on RC_CORE
76 select BITREVERSE
77
78 ---help---
79 Enable this option if you have an infrared remote control which
80 uses the JVC protocol, and you need software decoding support.
81
82config IR_SONY_DECODER
83 tristate "Enable IR raw decoder for the Sony protocol"
84 depends on RC_CORE
85 select BITREVERSE
86
87 ---help---
88 Enable this option if you have an infrared remote control which
89 uses the Sony protocol, and you need software decoding support.
90
91config IR_SANYO_DECODER
92 tristate "Enable IR raw decoder for the Sanyo protocol"
93 depends on RC_CORE
94
95 ---help---
96 Enable this option if you have an infrared remote control which
97 uses the Sanyo protocol (Sanyo, Aiwa, Chinon remotes),
98 and you need software decoding support.
99
100config IR_SHARP_DECODER
101 tristate "Enable IR raw decoder for the Sharp protocol"
102 depends on RC_CORE
103
104 ---help---
105 Enable this option if you have an infrared remote control which
106 uses the Sharp protocol (Sharp, Denon), and you need software
107 decoding support.
108
109config IR_MCE_KBD_DECODER
110 tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol"
111 depends on RC_CORE
112 select BITREVERSE
113
114 ---help---
115 Enable this option if you have a Microsoft Remote Keyboard for
116 Windows Media Center Edition, which you would like to use with
117 a raw IR receiver in your system.
118
119config IR_XMP_DECODER
120 tristate "Enable IR raw decoder for the XMP protocol"
121 depends on RC_CORE
122 select BITREVERSE
123
124 ---help---
125 Enable this option if you have IR with XMP protocol, and
126 if the IR is decoded in software
127
128config IR_IMON_DECODER
129 tristate "Enable IR raw decoder for the iMON protocol"
130 depends on RC_CORE
131 ---help---
132 Enable this option if you have iMON PAD or Antec Veris infrared
133 remote control and you would like to use it with a raw IR
134 receiver, or if you wish to use an encoder to transmit this IR.
135
136endif #RC_DECODERS
137
138menuconfig RC_DEVICES
139 bool "Remote Controller devices"
140 depends on RC_CORE
141
142if RC_DEVICES
143
144config RC_ATI_REMOTE
145 tristate "ATI / X10 based USB RF remote controls"
146 depends on USB_ARCH_HAS_HCD
147 depends on RC_CORE
148 select USB
149 help
150 Say Y here if you want to use an X10 based USB remote control.
151 These are RF remotes with USB receivers.
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
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
163config IR_ENE
164 tristate "ENE eHome Receiver/Transceiver (pnp id: ENE0100/ENE02xxx)"
165 depends on PNP || COMPILE_TEST
166 depends on RC_CORE
167 ---help---
168 Say Y here to enable support for integrated infrared receiver
169 /transceiver made by ENE.
170
171 You can see if you have it by looking at lspnp output.
172 Output should include ENE0100 ENE0200 or something similar.
173
174 To compile this driver as a module, choose M here: the
175 module will be called ene_ir.
176
177config IR_HIX5HD2
178 tristate "Hisilicon hix5hd2 IR remote control"
179 depends on RC_CORE
180 depends on OF || COMPILE_TEST
181 help
182 Say Y here if you want to use hisilicon hix5hd2 remote control.
183 To compile this driver as a module, choose M here: the module will be
184 called ir-hix5hd2.
185
186 If you're not sure, select N here
187
188config IR_IMON
189 tristate "SoundGraph iMON Receiver and Display"
190 depends on USB_ARCH_HAS_HCD
191 depends on RC_CORE
192 select USB
193 ---help---
194 Say Y here if you want to use a SoundGraph iMON (aka Antec Veris)
195 IR Receiver and/or LCD/VFD/VGA display.
196
197 To compile this driver as a module, choose M here: the
198 module will be called imon.
199
200config IR_IMON_RAW
201 tristate "SoundGraph iMON Receiver (early raw IR models)"
202 depends on USB_ARCH_HAS_HCD
203 depends on RC_CORE
204 select USB
205 ---help---
206 Say Y here if you want to use a SoundGraph iMON IR Receiver,
207 early raw models.
208
209 To compile this driver as a module, choose M here: the
210 module will be called imon_raw.
211
212config IR_MCEUSB
213 tristate "Windows Media Center Ed. eHome Infrared Transceiver"
214 depends on USB_ARCH_HAS_HCD
215 depends on RC_CORE
216 select USB
217 ---help---
218 Say Y here if you want to use a Windows Media Center Edition
219 eHome Infrared Transceiver.
220
221 To compile this driver as a module, choose M here: the
222 module will be called mceusb.
223
224config IR_ITE_CIR
225 tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver"
226 depends on PNP || COMPILE_TEST
227 depends on RC_CORE
228 ---help---
229 Say Y here to enable support for integrated infrared receivers
230 /transceivers made by ITE Tech Inc. These are found in
231 several ASUS devices, like the ASUS Digimatrix or the ASUS
232 EEEBox 1501U.
233
234 To compile this driver as a module, choose M here: the
235 module will be called ite-cir.
236
237config IR_FINTEK
238 tristate "Fintek Consumer Infrared Transceiver"
239 depends on PNP || COMPILE_TEST
240 depends on RC_CORE
241 ---help---
242 Say Y here to enable support for integrated infrared receiver
243 /transciever made by Fintek. This chip is found on assorted
244 Jetway motherboards (and of course, possibly others).
245
246 To compile this driver as a module, choose M here: the
247 module will be called fintek-cir.
248
249config IR_MESON
250 tristate "Amlogic Meson IR remote receiver"
251 depends on RC_CORE
252 depends on ARCH_MESON || COMPILE_TEST
253 ---help---
254 Say Y if you want to use the IR remote receiver available
255 on Amlogic Meson SoCs.
256
257 To compile this driver as a module, choose M here: the
258 module will be called meson-ir.
259
260config IR_MTK
261 tristate "Mediatek IR remote receiver"
262 depends on RC_CORE
263 depends on ARCH_MEDIATEK || COMPILE_TEST
264 ---help---
265 Say Y if you want to use the IR remote receiver available
266 on Mediatek SoCs.
267
268 To compile this driver as a module, choose M here: the
269 module will be called mtk-cir.
270
271config IR_NUVOTON
272 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver"
273 depends on PNP || COMPILE_TEST
274 depends on RC_CORE
275 ---help---
276 Say Y here to enable support for integrated infrared receiver
277 /transciever made by Nuvoton (formerly Winbond). This chip is
278 found in the ASRock ION 330HT, as well as assorted Intel
279 DP55-series motherboards (and of course, possibly others).
280
281 To compile this driver as a module, choose M here: the
282 module will be called nuvoton-cir.
283
284config IR_REDRAT3
285 tristate "RedRat3 IR Transceiver"
286 depends on USB_ARCH_HAS_HCD
287 depends on RC_CORE
288 select NEW_LEDS
289 select LEDS_CLASS
290 select USB
291 ---help---
292 Say Y here if you want to use a RedRat3 Infrared Transceiver.
293
294 To compile this driver as a module, choose M here: the
295 module will be called redrat3.
296
297config IR_SPI
298 tristate "SPI connected IR LED"
299 depends on SPI && LIRC
300 depends on OF || COMPILE_TEST
301 ---help---
302 Say Y if you want to use an IR LED connected through SPI bus.
303
304 To compile this driver as a module, choose M here: the module will be
305 called ir-spi.
306
307config IR_STREAMZAP
308 tristate "Streamzap PC Remote IR Receiver"
309 depends on USB_ARCH_HAS_HCD
310 depends on RC_CORE
311 select USB
312 ---help---
313 Say Y here if you want to use a Streamzap PC Remote
314 Infrared Receiver.
315
316 To compile this driver as a module, choose M here: the
317 module will be called streamzap.
318
319config IR_WINBOND_CIR
320 tristate "Winbond IR remote control"
321 depends on (X86 && PNP) || COMPILE_TEST
322 depends on RC_CORE
323 select NEW_LEDS
324 select LEDS_CLASS
325 select BITREVERSE
326 ---help---
327 Say Y here if you want to use the IR remote functionality found
328 in some Winbond SuperI/O chips. Currently only the WPCD376I
329 chip is supported (included in some Intel Media series
330 motherboards).
331
332 To compile this driver as a module, choose M here: the module will
333 be called winbond_cir.
334
335config IR_IGORPLUGUSB
336 tristate "IgorPlug-USB IR Receiver"
337 depends on USB_ARCH_HAS_HCD
338 depends on RC_CORE
339 select USB
340 ---help---
341 Say Y here if you want to use the IgorPlug-USB IR Receiver by
342 Igor Cesko. This device is included on the Fit-PC2.
343
344 Note that this device can only record bursts of 36 IR pulses and
345 spaces, which is not enough for the NEC, Sanyo and RC-6 protocol.
346
347 To compile this driver as a module, choose M here: the module will
348 be called igorplugusb.
349
350config IR_IGUANA
351 tristate "IguanaWorks USB IR Transceiver"
352 depends on USB_ARCH_HAS_HCD
353 depends on RC_CORE
354 select USB
355 ---help---
356 Say Y here if you want to use the IguanaWorks USB IR Transceiver.
357 Both infrared receive and send are supported. If you want to
358 change the ID or the pin config, use the user space driver from
359 IguanaWorks.
360
361 Only firmware 0x0205 and later is supported.
362
363 To compile this driver as a module, choose M here: the module will
364 be called iguanair.
365
366config IR_TTUSBIR
367 tristate "TechnoTrend USB IR Receiver"
368 depends on USB_ARCH_HAS_HCD
369 depends on RC_CORE
370 select USB
371 select NEW_LEDS
372 select LEDS_CLASS
373 ---help---
374 Say Y here if you want to use the TechnoTrend USB IR Receiver. The
375 driver can control the led.
376
377 To compile this driver as a module, choose M here: the module will
378 be called ttusbir.
379
380config IR_RX51
381 tristate "Nokia N900 IR transmitter diode"
382 depends on (OMAP_DM_TIMER && PWM_OMAP_DMTIMER && ARCH_OMAP2PLUS || COMPILE_TEST) && RC_CORE
383 ---help---
384 Say Y or M here if you want to enable support for the IR
385 transmitter diode built in the Nokia N900 (RX51) device.
386
387 The driver uses omap DM timers for generating the carrier
388 wave and pulses.
389
390source "drivers/media/rc/img-ir/Kconfig"
391
392config RC_LOOPBACK
393 tristate "Remote Control Loopback Driver"
394 depends on RC_CORE
395 ---help---
396 Say Y here if you want support for the remote control loopback
397 driver which allows TX data to be sent back as RX data.
398 This is mostly useful for debugging purposes.
399
400 If you're not sure, select N here.
401
402 To compile this driver as a module, choose M here: the module will
403 be called rc_loopback.
404
405config IR_GPIO_CIR
406 tristate "GPIO IR remote control"
407 depends on RC_CORE
408 depends on (OF && GPIOLIB) || COMPILE_TEST
409 ---help---
410 Say Y if you want to use GPIO based IR Receiver.
411
412 To compile this driver as a module, choose M here: the module will
413 be called gpio-ir-recv.
414
415config IR_GPIO_TX
416 tristate "GPIO IR Bit Banging Transmitter"
417 depends on RC_CORE
418 depends on LIRC
419 depends on (OF && GPIOLIB) || COMPILE_TEST
420 ---help---
421 Say Y if you want to a GPIO based IR transmitter. This is a
422 bit banging driver.
423
424 To compile this driver as a module, choose M here: the module will
425 be called gpio-ir-tx.
426
427config IR_PWM_TX
428 tristate "PWM IR transmitter"
429 depends on RC_CORE
430 depends on LIRC
431 depends on PWM
432 depends on OF || COMPILE_TEST
433 ---help---
434 Say Y if you want to use a PWM based IR transmitter. This is
435 more power efficient than the bit banging gpio driver.
436
437 To compile this driver as a module, choose M here: the module will
438 be called pwm-ir-tx.
439
440config RC_ST
441 tristate "ST remote control receiver"
442 depends on RC_CORE
443 depends on ARCH_STI || COMPILE_TEST
444 ---help---
445 Say Y here if you want support for ST remote control driver
446 which allows both IR and UHF RX.
447 The driver passes raw pulse and space information to the LIRC decoder.
448
449 If you're not sure, select N here.
450
451config IR_SUNXI
452 tristate "SUNXI IR remote control"
453 depends on RC_CORE
454 depends on ARCH_SUNXI || COMPILE_TEST
455 ---help---
456 Say Y if you want to use sunXi internal IR Controller
457
458 To compile this driver as a module, choose M here: the module will
459 be called sunxi-ir.
460
461config IR_SERIAL
462 tristate "Homebrew Serial Port Receiver"
463 depends on RC_CORE
464 ---help---
465 Say Y if you want to use Homebrew Serial Port Receivers and
466 Transceivers.
467
468 To compile this driver as a module, choose M here: the module will
469 be called serial-ir.
470
471config IR_SERIAL_TRANSMITTER
472 bool "Serial Port Transmitter"
473 depends on IR_SERIAL
474 ---help---
475 Serial Port Transmitter support
476
477config IR_SIR
478 tristate "Built-in SIR IrDA port"
479 depends on RC_CORE
480 ---help---
481 Say Y if you want to use a IrDA SIR port Transceivers.
482
483 To compile this driver as a module, choose M here: the module will
484 be called sir-ir.
485
486config IR_TANGO
487 tristate "Sigma Designs SMP86xx IR decoder"
488 depends on RC_CORE
489 depends on ARCH_TANGO || COMPILE_TEST
490 ---help---
491 Adds support for the HW IR decoder embedded on Sigma Designs
492 Tango-based systems (SMP86xx, SMP87xx).
493 The HW decoder supports NEC, RC-5, RC-6 IR protocols.
494 When compiled as a module, look for tango-ir.
495
496config IR_ZX
497 tristate "ZTE ZX IR remote control"
498 depends on RC_CORE
499 depends on ARCH_ZX || COMPILE_TEST
500 ---help---
501 Say Y if you want to use the IR remote control available
502 on ZTE ZX family SoCs.
503
504 To compile this driver as a module, choose M here: the
505 module will be called zx-irdec.
506
507endif #RC_DEVICES
508
509endif #RC_CORE