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"
98 Enable this option if you have an infrared remote control which
99 uses the Sanyo protocol (Sanyo, Aiwa, Chinon remotes),
100 and you need software decoding support.
102 config IR_SHARP_DECODER
103 tristate "Enable IR raw decoder for the Sharp protocol"
108 Enable this option if you have an infrared remote control which
109 uses the Sharp protocol (Sharp, Denon), and you need software
112 config IR_MCE_KBD_DECODER
113 tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol"
118 Enable this option if you have a Microsoft Remote Keyboard for
119 Windows Media Center Edition, which you would like to use with
120 a raw IR receiver in your system.
122 config IR_XMP_DECODER
123 tristate "Enable IR raw decoder for the XMP protocol"
128 Enable this option if you have IR with XMP protocol, and
129 if the IR is decoded in software
131 config IR_IMON_DECODER
132 tristate "Enable IR raw decoder for the iMON protocol"
135 Enable this option if you have iMON PAD or Antec Veris infrared
136 remote control and you would like to use it with a raw IR
137 receiver, or if you wish to use an encoder to transmit this IR.
139 config IR_RCMM_DECODER
140 tristate "Enable IR raw decoder for the RC-MM protocol"
143 Enable this option when you have IR with RC-MM protocol, and
144 you need the software decoder. The driver supports 12,
145 24 and 32 bits RC-MM variants. You can enable or disable the
146 different modes using the following RC protocol keywords:
147 'rc-mm-12', 'rc-mm-24' and 'rc-mm-32'.
149 To compile this driver as a module, choose M here: the module
150 will be called ir-rcmm-decoder.
154 menuconfig RC_DEVICES
155 bool "Remote Controller devices"
161 tristate "ATI / X10 based USB RF remote controls"
162 depends on USB_ARCH_HAS_HCD
166 Say Y here if you want to use an X10 based USB remote control.
167 These are RF remotes with USB receivers.
169 Such devices include the ATI remote that comes with many of ATI's
170 All-In-Wonder video cards, the X10 "Lola" remote, NVIDIA RF remote,
171 Medion RF remote, and SnapStream FireFly remote.
173 This driver provides mouse pointer, left and right mouse buttons,
174 and maps all the other remote buttons to keypress events.
176 To compile this driver as a module, choose M here: the module will be
180 tristate "ENE eHome Receiver/Transceiver (pnp id: ENE0100/ENE02xxx)"
181 depends on PNP || COMPILE_TEST
184 Say Y here to enable support for integrated infrared receiver
185 /transceiver made by ENE.
187 You can see if you have it by looking at lspnp output.
188 Output should include ENE0100 ENE0200 or something similar.
190 To compile this driver as a module, choose M here: the
191 module will be called ene_ir.
194 tristate "Hisilicon hix5hd2 IR remote control"
196 depends on OF || COMPILE_TEST
198 Say Y here if you want to use hisilicon hix5hd2 remote control.
199 To compile this driver as a module, choose M here: the module will be
202 If you're not sure, select N here
205 tristate "SoundGraph iMON Receiver and Display"
206 depends on USB_ARCH_HAS_HCD
210 Say Y here if you want to use a SoundGraph iMON (aka Antec Veris)
211 IR Receiver and/or LCD/VFD/VGA display.
213 To compile this driver as a module, choose M here: the
214 module will be called imon.
217 tristate "SoundGraph iMON Receiver (early raw IR models)"
218 depends on USB_ARCH_HAS_HCD
222 Say Y here if you want to use a SoundGraph iMON IR Receiver,
225 To compile this driver as a module, choose M here: the
226 module will be called imon_raw.
229 tristate "Windows Media Center Ed. eHome Infrared Transceiver"
230 depends on USB_ARCH_HAS_HCD
234 Say Y here if you want to use a Windows Media Center Edition
235 eHome Infrared Transceiver.
237 To compile this driver as a module, choose M here: the
238 module will be called mceusb.
241 tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver"
242 depends on PNP || COMPILE_TEST
245 Say Y here to enable support for integrated infrared receivers
246 /transceivers made by ITE Tech Inc. These are found in
247 several ASUS devices, like the ASUS Digimatrix or the ASUS
250 To compile this driver as a module, choose M here: the
251 module will be called ite-cir.
254 tristate "Fintek Consumer Infrared Transceiver"
255 depends on PNP || COMPILE_TEST
258 Say Y here to enable support for integrated infrared receiver
259 /transceiver made by Fintek. This chip is found on assorted
260 Jetway motherboards (and of course, possibly others).
262 To compile this driver as a module, choose M here: the
263 module will be called fintek-cir.
266 tristate "Amlogic Meson IR remote receiver"
268 depends on ARCH_MESON || COMPILE_TEST
270 Say Y if you want to use the IR remote receiver available
271 on Amlogic Meson SoCs.
273 To compile this driver as a module, choose M here: the
274 module will be called meson-ir.
277 tristate "Mediatek IR remote receiver"
279 depends on ARCH_MEDIATEK || COMPILE_TEST
281 Say Y if you want to use the IR remote receiver available
284 To compile this driver as a module, choose M here: the
285 module will be called mtk-cir.
288 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver"
289 depends on PNP || COMPILE_TEST
292 Say Y here to enable support for integrated infrared receiver
293 /transceiver made by Nuvoton (formerly Winbond). This chip is
294 found in the ASRock ION 330HT, as well as assorted Intel
295 DP55-series motherboards (and of course, possibly others).
297 To compile this driver as a module, choose M here: the
298 module will be called nuvoton-cir.
301 tristate "RedRat3 IR Transceiver"
302 depends on USB_ARCH_HAS_HCD
308 Say Y here if you want to use a RedRat3 Infrared Transceiver.
310 To compile this driver as a module, choose M here: the
311 module will be called redrat3.
314 tristate "SPI connected IR LED"
315 depends on SPI && LIRC
316 depends on OF || COMPILE_TEST
318 Say Y if you want to use an IR LED connected through SPI bus.
320 To compile this driver as a module, choose M here: the module will be
324 tristate "Streamzap PC Remote IR Receiver"
325 depends on USB_ARCH_HAS_HCD
329 Say Y here if you want to use a Streamzap PC Remote
332 To compile this driver as a module, choose M here: the
333 module will be called streamzap.
335 config IR_WINBOND_CIR
336 tristate "Winbond IR remote control"
337 depends on (X86 && PNP) || COMPILE_TEST
343 Say Y here if you want to use the IR remote functionality found
344 in some Winbond SuperI/O chips. Currently only the WPCD376I
345 chip is supported (included in some Intel Media series
348 To compile this driver as a module, choose M here: the module will
349 be called winbond_cir.
351 config IR_IGORPLUGUSB
352 tristate "IgorPlug-USB IR Receiver"
353 depends on USB_ARCH_HAS_HCD
357 Say Y here if you want to use the IgorPlug-USB IR Receiver by
358 Igor Cesko. This device is included on the Fit-PC2.
360 Note that this device can only record bursts of 36 IR pulses and
361 spaces, which is not enough for the NEC, Sanyo and RC-6 protocol.
363 To compile this driver as a module, choose M here: the module will
364 be called igorplugusb.
367 tristate "IguanaWorks USB IR Transceiver"
368 depends on USB_ARCH_HAS_HCD
372 Say Y here if you want to use the IguanaWorks USB IR Transceiver.
373 Both infrared receive and send are supported. If you want to
374 change the ID or the pin config, use the user space driver from
377 Only firmware 0x0205 and later is supported.
379 To compile this driver as a module, choose M here: the module will
383 tristate "TechnoTrend USB IR Receiver"
384 depends on USB_ARCH_HAS_HCD
390 Say Y here if you want to use the TechnoTrend USB IR Receiver. The
391 driver can control the led.
393 To compile this driver as a module, choose M here: the module will
397 tristate "Nokia N900 IR transmitter diode"
398 depends on (OMAP_DM_TIMER && PWM_OMAP_DMTIMER && ARCH_OMAP2PLUS || COMPILE_TEST) && RC_CORE
400 Say Y or M here if you want to enable support for the IR
401 transmitter diode built in the Nokia N900 (RX51) device.
403 The driver uses omap DM timers for generating the carrier
406 source "drivers/media/rc/img-ir/Kconfig"
409 tristate "Remote Control Loopback Driver"
412 Say Y here if you want support for the remote control loopback
413 driver which allows TX data to be sent back as RX data.
414 This is mostly useful for debugging purposes.
416 If you're not sure, select N here.
418 To compile this driver as a module, choose M here: the module will
419 be called rc_loopback.
422 tristate "GPIO IR remote control"
424 depends on (OF && GPIOLIB) || COMPILE_TEST
426 Say Y if you want to use GPIO based IR Receiver.
428 To compile this driver as a module, choose M here: the module will
429 be called gpio-ir-recv.
432 tristate "GPIO IR Bit Banging Transmitter"
435 depends on (OF && GPIOLIB) || COMPILE_TEST
437 Say Y if you want to a GPIO based IR transmitter. This is a
440 To compile this driver as a module, choose M here: the module will
441 be called gpio-ir-tx.
444 tristate "PWM IR transmitter"
448 depends on OF || COMPILE_TEST
450 Say Y if you want to use a PWM based IR transmitter. This is
451 more power efficient than the bit banging gpio driver.
453 To compile this driver as a module, choose M here: the module will
457 tristate "ST remote control receiver"
459 depends on ARCH_STI || COMPILE_TEST
461 Say Y here if you want support for ST remote control driver
462 which allows both IR and UHF RX.
463 The driver passes raw pulse and space information to the LIRC decoder.
465 If you're not sure, select N here.
468 tristate "SUNXI IR remote control"
470 depends on ARCH_SUNXI || COMPILE_TEST
472 Say Y if you want to use sunXi internal IR Controller
474 To compile this driver as a module, choose M here: the module will
478 tristate "Homebrew Serial Port Receiver"
481 Say Y if you want to use Homebrew Serial Port Receivers and
484 To compile this driver as a module, choose M here: the module will
487 config IR_SERIAL_TRANSMITTER
488 bool "Serial Port Transmitter"
491 Serial Port Transmitter support
494 tristate "Built-in SIR IrDA port"
497 Say Y if you want to use a IrDA SIR port Transceivers.
499 To compile this driver as a module, choose M here: the module will
503 tristate "Sigma Designs SMP86xx IR decoder"
505 depends on ARCH_TANGO || COMPILE_TEST
507 Adds support for the HW IR decoder embedded on Sigma Designs
508 Tango-based systems (SMP86xx, SMP87xx).
509 The HW decoder supports NEC, RC-5, RC-6 IR protocols.
510 When compiled as a module, look for tango-ir.
513 tristate "Xbox DVD Movie Playback Kit"
515 depends on USB_ARCH_HAS_HCD
518 Say Y here if you want to use the Xbox DVD Movie Playback Kit.
519 These are IR remotes with USB receivers for the Original Xbox (2001).
521 To compile this driver as a module, choose M here: the module will be
525 tristate "ZTE ZX IR remote control"
527 depends on ARCH_ZX || COMPILE_TEST
529 Say Y if you want to use the IR remote control available
530 on ZTE ZX family SoCs.
532 To compile this driver as a module, choose M here: the
533 module will be called zx-irdec.
536 tristate "Infrared Toy and IR Droid"
538 depends on USB_ARCH_HAS_HCD
540 Say Y here if you want to use the Infrared Toy or IR Droid, USB
543 To compile this driver as a module, choose M here: the module will be