1 # SPDX-License-Identifier: GPL-2.0-only
4 tristate "Remote Controller support"
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.
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.
15 Say Y when you have a TV or an IR device.
18 source "drivers/media/rc/keymaps/Kconfig"
21 bool "LIRC user interface"
24 Enable this option to enable the Linux Infrared Remote
25 Control user interface (e.g. /dev/lirc*). This interface
26 passes raw IR to and from userspace, which is needed for
27 IR transmitting (aka "blasting") and for the lirc daemon.
30 bool "Support for eBPF programs attached to lirc devices"
31 depends on BPF_SYSCALL
35 Allow attaching eBPF programs to a lirc device using the bpf(2)
36 syscall command BPF_PROG_ATTACH. This is supported for raw IR
39 These eBPF programs can be used to decode IR into scancodes, for
40 IR protocols not supported by the kernel decoders.
42 menuconfig RC_DECODERS
43 bool "Remote controller decoders"
48 tristate "Enable IR raw decoder for the NEC protocol"
53 Enable this option if you have IR with NEC protocol, and
54 if the IR is decoded in software
57 tristate "Enable IR raw decoder for the RC-5 protocol"
62 Enable this option if you have IR with RC-5 protocol, and
63 if the IR is decoded in software
66 tristate "Enable IR raw decoder for the RC6 protocol"
71 Enable this option if you have an infrared remote control which
72 uses the RC6 protocol, and you need software decoding support.
75 tristate "Enable IR raw decoder for the JVC protocol"
80 Enable this option if you have an infrared remote control which
81 uses the JVC protocol, and you need software decoding support.
83 config IR_SONY_DECODER
84 tristate "Enable IR raw decoder for the Sony protocol"
89 Enable this option if you have an infrared remote control which
90 uses the Sony protocol, and you need software decoding support.
92 config IR_SANYO_DECODER
93 tristate "Enable IR raw decoder for the Sanyo protocol"
97 Enable this option if you have an infrared remote control which
98 uses the Sanyo protocol (Sanyo, Aiwa, Chinon remotes),
99 and you need software decoding support.
101 config IR_SHARP_DECODER
102 tristate "Enable IR raw decoder for the Sharp protocol"
106 Enable this option if you have an infrared remote control which
107 uses the Sharp protocol (Sharp, Denon), and you need software
110 config IR_MCE_KBD_DECODER
111 tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol"
116 Enable this option if you have a Microsoft Remote Keyboard for
117 Windows Media Center Edition, which you would like to use with
118 a raw IR receiver in your system.
120 config IR_XMP_DECODER
121 tristate "Enable IR raw decoder for the XMP protocol"
126 Enable this option if you have IR with XMP protocol, and
127 if the IR is decoded in software
129 config IR_IMON_DECODER
130 tristate "Enable IR raw decoder for the iMON protocol"
133 Enable this option if you have iMON PAD or Antec Veris infrared
134 remote control and you would like to use it with a raw IR
135 receiver, or if you wish to use an encoder to transmit this IR.
137 config IR_RCMM_DECODER
138 tristate "Enable IR raw decoder for the RC-MM protocol"
141 Enable this option when you have IR with RC-MM protocol, and
142 you need the software decoder. The driver supports 12,
143 24 and 32 bits RC-MM variants. You can enable or disable the
144 different modes using the following RC protocol keywords:
145 'rc-mm-12', 'rc-mm-24' and 'rc-mm-32'.
147 To compile this driver as a module, choose M here: the module
148 will be called ir-rcmm-decoder.
152 menuconfig RC_DEVICES
153 bool "Remote Controller devices"
159 tristate "ATI / X10 based USB RF remote controls"
160 depends on USB_ARCH_HAS_HCD
164 Say Y here if you want to use an X10 based USB remote control.
165 These are RF remotes with USB receivers.
167 Such devices include the ATI remote that comes with many of ATI's
168 All-In-Wonder video cards, the X10 "Lola" remote, NVIDIA RF remote,
169 Medion RF remote, and SnapStream FireFly remote.
171 This driver provides mouse pointer, left and right mouse buttons,
172 and maps all the other remote buttons to keypress events.
174 To compile this driver as a module, choose M here: the module will be
178 tristate "ENE eHome Receiver/Transceiver (pnp id: ENE0100/ENE02xxx)"
179 depends on PNP || COMPILE_TEST
182 Say Y here to enable support for integrated infrared receiver
183 /transceiver made by ENE.
185 You can see if you have it by looking at lspnp output.
186 Output should include ENE0100 ENE0200 or something similar.
188 To compile this driver as a module, choose M here: the
189 module will be called ene_ir.
192 tristate "Hisilicon hix5hd2 IR remote control"
194 depends on OF || COMPILE_TEST
196 Say Y here if you want to use hisilicon hix5hd2 remote control.
197 To compile this driver as a module, choose M here: the module will be
200 If you're not sure, select N here
203 tristate "SoundGraph iMON Receiver and Display"
204 depends on USB_ARCH_HAS_HCD
208 Say Y here if you want to use a SoundGraph iMON (aka Antec Veris)
209 IR Receiver and/or LCD/VFD/VGA display.
211 To compile this driver as a module, choose M here: the
212 module will be called imon.
215 tristate "SoundGraph iMON Receiver (early raw IR models)"
216 depends on USB_ARCH_HAS_HCD
220 Say Y here if you want to use a SoundGraph iMON IR Receiver,
223 To compile this driver as a module, choose M here: the
224 module will be called imon_raw.
227 tristate "Windows Media Center Ed. eHome Infrared Transceiver"
228 depends on USB_ARCH_HAS_HCD
232 Say Y here if you want to use a Windows Media Center Edition
233 eHome Infrared Transceiver.
235 To compile this driver as a module, choose M here: the
236 module will be called mceusb.
239 tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver"
240 depends on PNP || COMPILE_TEST
243 Say Y here to enable support for integrated infrared receivers
244 /transceivers made by ITE Tech Inc. These are found in
245 several ASUS devices, like the ASUS Digimatrix or the ASUS
248 To compile this driver as a module, choose M here: the
249 module will be called ite-cir.
252 tristate "Fintek Consumer Infrared Transceiver"
253 depends on PNP || COMPILE_TEST
256 Say Y here to enable support for integrated infrared receiver
257 /transceiver made by Fintek. This chip is found on assorted
258 Jetway motherboards (and of course, possibly others).
260 To compile this driver as a module, choose M here: the
261 module will be called fintek-cir.
264 tristate "Amlogic Meson IR remote receiver"
266 depends on ARCH_MESON || COMPILE_TEST
268 Say Y if you want to use the IR remote receiver available
269 on Amlogic Meson SoCs.
271 To compile this driver as a module, choose M here: the
272 module will be called meson-ir.
275 tristate "Mediatek IR remote receiver"
277 depends on ARCH_MEDIATEK || COMPILE_TEST
279 Say Y if you want to use the IR remote receiver available
282 To compile this driver as a module, choose M here: the
283 module will be called mtk-cir.
286 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver"
287 depends on PNP || COMPILE_TEST
290 Say Y here to enable support for integrated infrared receiver
291 /transceiver made by Nuvoton (formerly Winbond). This chip is
292 found in the ASRock ION 330HT, as well as assorted Intel
293 DP55-series motherboards (and of course, possibly others).
295 To compile this driver as a module, choose M here: the
296 module will be called nuvoton-cir.
299 tristate "RedRat3 IR Transceiver"
300 depends on USB_ARCH_HAS_HCD
306 Say Y here if you want to use a RedRat3 Infrared Transceiver.
308 To compile this driver as a module, choose M here: the
309 module will be called redrat3.
312 tristate "SPI connected IR LED"
313 depends on SPI && LIRC
314 depends on OF || COMPILE_TEST
316 Say Y if you want to use an IR LED connected through SPI bus.
318 To compile this driver as a module, choose M here: the module will be
322 tristate "Streamzap PC Remote IR Receiver"
323 depends on USB_ARCH_HAS_HCD
327 Say Y here if you want to use a Streamzap PC Remote
330 To compile this driver as a module, choose M here: the
331 module will be called streamzap.
333 config IR_WINBOND_CIR
334 tristate "Winbond IR remote control"
335 depends on (X86 && PNP) || COMPILE_TEST
341 Say Y here if you want to use the IR remote functionality found
342 in some Winbond SuperI/O chips. Currently only the WPCD376I
343 chip is supported (included in some Intel Media series
346 To compile this driver as a module, choose M here: the module will
347 be called winbond_cir.
349 config IR_IGORPLUGUSB
350 tristate "IgorPlug-USB IR Receiver"
351 depends on USB_ARCH_HAS_HCD
355 Say Y here if you want to use the IgorPlug-USB IR Receiver by
356 Igor Cesko. This device is included on the Fit-PC2.
358 Note that this device can only record bursts of 36 IR pulses and
359 spaces, which is not enough for the NEC, Sanyo and RC-6 protocol.
361 To compile this driver as a module, choose M here: the module will
362 be called igorplugusb.
365 tristate "IguanaWorks USB IR Transceiver"
366 depends on USB_ARCH_HAS_HCD
370 Say Y here if you want to use the IguanaWorks USB IR Transceiver.
371 Both infrared receive and send are supported. If you want to
372 change the ID or the pin config, use the user space driver from
375 Only firmware 0x0205 and later is supported.
377 To compile this driver as a module, choose M here: the module will
381 tristate "TechnoTrend USB IR Receiver"
382 depends on USB_ARCH_HAS_HCD
388 Say Y here if you want to use the TechnoTrend USB IR Receiver. The
389 driver can control the led.
391 To compile this driver as a module, choose M here: the module will
395 tristate "Nokia N900 IR transmitter diode"
396 depends on (OMAP_DM_TIMER && PWM_OMAP_DMTIMER && ARCH_OMAP2PLUS || COMPILE_TEST) && RC_CORE
398 Say Y or M here if you want to enable support for the IR
399 transmitter diode built in the Nokia N900 (RX51) device.
401 The driver uses omap DM timers for generating the carrier
404 source "drivers/media/rc/img-ir/Kconfig"
407 tristate "Remote Control Loopback Driver"
410 Say Y here if you want support for the remote control loopback
411 driver which allows TX data to be sent back as RX data.
412 This is mostly useful for debugging purposes.
414 If you're not sure, select N here.
416 To compile this driver as a module, choose M here: the module will
417 be called rc_loopback.
420 tristate "GPIO IR remote control"
422 depends on (OF && GPIOLIB) || COMPILE_TEST
424 Say Y if you want to use GPIO based IR Receiver.
426 To compile this driver as a module, choose M here: the module will
427 be called gpio-ir-recv.
430 tristate "GPIO IR Bit Banging Transmitter"
433 depends on (OF && GPIOLIB) || COMPILE_TEST
435 Say Y if you want to a GPIO based IR transmitter. This is a
438 To compile this driver as a module, choose M here: the module will
439 be called gpio-ir-tx.
442 tristate "PWM IR transmitter"
446 depends on OF || COMPILE_TEST
448 Say Y if you want to use a PWM based IR transmitter. This is
449 more power efficient than the bit banging gpio driver.
451 To compile this driver as a module, choose M here: the module will
455 tristate "ST remote control receiver"
457 depends on ARCH_STI || COMPILE_TEST
459 Say Y here if you want support for ST remote control driver
460 which allows both IR and UHF RX.
461 The driver passes raw pulse and space information to the LIRC decoder.
463 If you're not sure, select N here.
466 tristate "SUNXI IR remote control"
468 depends on ARCH_SUNXI || COMPILE_TEST
470 Say Y if you want to use sunXi internal IR Controller
472 To compile this driver as a module, choose M here: the module will
476 tristate "Homebrew Serial Port Receiver"
479 Say Y if you want to use Homebrew Serial Port Receivers and
482 To compile this driver as a module, choose M here: the module will
485 config IR_SERIAL_TRANSMITTER
486 bool "Serial Port Transmitter"
489 Serial Port Transmitter support
492 tristate "Built-in SIR IrDA port"
495 Say Y if you want to use a IrDA SIR port Transceivers.
497 To compile this driver as a module, choose M here: the module will
501 tristate "Sigma Designs SMP86xx IR decoder"
503 depends on ARCH_TANGO || COMPILE_TEST
505 Adds support for the HW IR decoder embedded on Sigma Designs
506 Tango-based systems (SMP86xx, SMP87xx).
507 The HW decoder supports NEC, RC-5, RC-6 IR protocols.
508 When compiled as a module, look for tango-ir.
511 tristate "Xbox DVD Movie Playback Kit"
513 depends on USB_ARCH_HAS_HCD
516 Say Y here if you want to use the Xbox DVD Movie Playback Kit.
517 These are IR remotes with USB receivers for the Original Xbox (2001).
519 To compile this driver as a module, choose M here: the module will be
523 tristate "ZTE ZX IR remote control"
525 depends on ARCH_ZX || COMPILE_TEST
527 Say Y if you want to use the IR remote control available
528 on ZTE ZX family SoCs.
530 To compile this driver as a module, choose M here: the
531 module will be called zx-irdec.
534 tristate "Infrared Toy and IR Droid"
536 depends on USB_ARCH_HAS_HCD
538 Say Y here if you want to use the Infrared Toy or IR Droid, USB
541 To compile this driver as a module, choose M here: the module will be