1# SPDX-License-Identifier: GPL-2.0-only 2 3menuconfig RC_CORE 4 tristate "Remote Controller support" 5 depends on INPUT 6 help 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. 14 15 Say Y when you have a TV or an IR device. 16 17if RC_CORE 18source "drivers/media/rc/keymaps/Kconfig" 19 20config LIRC 21 bool "LIRC user interface" 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 44if RC_DECODERS 45config IR_NEC_DECODER 46 tristate "Enable IR raw decoder for the NEC protocol" 47 select BITREVERSE 48 49 help 50 Enable this option if you have IR with NEC protocol, and 51 if the IR is decoded in software 52 53config IR_RC5_DECODER 54 tristate "Enable IR raw decoder for the RC-5 protocol" 55 select BITREVERSE 56 57 help 58 Enable this option if you have IR with RC-5 protocol, and 59 if the IR is decoded in software 60 61config IR_RC6_DECODER 62 tristate "Enable IR raw decoder for the RC6 protocol" 63 select BITREVERSE 64 65 help 66 Enable this option if you have an infrared remote control which 67 uses the RC6 protocol, and you need software decoding support. 68 69config IR_JVC_DECODER 70 tristate "Enable IR raw decoder for the JVC protocol" 71 select BITREVERSE 72 73 help 74 Enable this option if you have an infrared remote control which 75 uses the JVC protocol, and you need software decoding support. 76 77config IR_SONY_DECODER 78 tristate "Enable IR raw decoder for the Sony protocol" 79 select BITREVERSE 80 81 help 82 Enable this option if you have an infrared remote control which 83 uses the Sony protocol, and you need software decoding support. 84 85config IR_SANYO_DECODER 86 tristate "Enable IR raw decoder for the Sanyo protocol" 87 select BITREVERSE 88 89 help 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 94config IR_SHARP_DECODER 95 tristate "Enable IR raw decoder for the Sharp protocol" 96 select BITREVERSE 97 98 help 99 Enable this option if you have an infrared remote control which 100 uses the Sharp protocol (Sharp, Denon), and you need software 101 decoding support. 102 103config IR_MCE_KBD_DECODER 104 tristate "Enable IR raw decoder for the MCE keyboard/mouse protocol" 105 select BITREVERSE 106 107 help 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. 111 112config IR_XMP_DECODER 113 tristate "Enable IR raw decoder for the XMP protocol" 114 select BITREVERSE 115 116 help 117 Enable this option if you have IR with XMP protocol, and 118 if the IR is decoded in software 119 120config IR_IMON_DECODER 121 tristate "Enable IR raw decoder for the iMON protocol" 122 help 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 127config IR_RCMM_DECODER 128 tristate "Enable IR raw decoder for the RC-MM protocol" 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 139endif #RC_DECODERS 140 141menuconfig RC_DEVICES 142 bool "Remote Controller devices" 143 144if RC_DEVICES 145 146config RC_ATI_REMOTE 147 tristate "ATI / X10 based USB RF remote controls" 148 depends on 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 help 167 Say Y here to enable support for integrated infrared receiver 168 /transceiver made by ENE. 169 170 You can see if you have it by looking at lspnp output. 171 Output should include ENE0100 ENE0200 or something similar. 172 173 To compile this driver as a module, choose M here: the 174 module will be called ene_ir. 175 176config IR_HIX5HD2 177 tristate "Hisilicon hix5hd2 IR remote control" 178 depends on (OF && HAS_IOMEM) || COMPILE_TEST 179 help 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. 183 184 If you're not sure, select N here 185 186config IR_IMON 187 tristate "SoundGraph iMON Receiver and Display" 188 depends on USB 189 help 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. 195 196config IR_IMON_RAW 197 tristate "SoundGraph iMON Receiver (early raw IR models)" 198 depends on USB 199 help 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 206config IR_MCEUSB 207 tristate "Windows Media Center Ed. eHome Infrared Transceiver" 208 depends on USB 209 help 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. 215 216config IR_ITE_CIR 217 tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver" 218 depends on PNP || COMPILE_TEST 219 help 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 228config IR_FINTEK 229 tristate "Fintek Consumer Infrared Transceiver" 230 depends on PNP || COMPILE_TEST 231 help 232 Say Y here to enable support for integrated infrared receiver 233 /transceiver made by Fintek. This chip is found on assorted 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 239config IR_MESON 240 tristate "Amlogic Meson IR remote receiver" 241 depends on ARCH_MESON || COMPILE_TEST 242 help 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 249config IR_MESON_TX 250 tristate "Amlogic Meson IR TX" 251 depends on ARCH_MESON || COMPILE_TEST 252 help 253 Say Y if you want to use the IR transmitter available on 254 Amlogic Meson SoCs. 255 256 To compile this driver as a module, choose M here: the 257 module will be called meson-ir-tx. 258 259config IR_MTK 260 tristate "Mediatek IR remote receiver" 261 depends on ARCH_MEDIATEK || COMPILE_TEST 262 help 263 Say Y if you want to use the IR remote receiver available 264 on Mediatek SoCs. 265 266 To compile this driver as a module, choose M here: the 267 module will be called mtk-cir. 268 269config IR_NUVOTON 270 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver" 271 depends on PNP || COMPILE_TEST 272 help 273 Say Y here to enable support for integrated infrared receiver 274 /transceiver made by Nuvoton (formerly Winbond). This chip is 275 found in the ASRock ION 330HT, as well as assorted Intel 276 DP55-series motherboards (and of course, possibly others). 277 278 To compile this driver as a module, choose M here: the 279 module will be called nuvoton-cir. 280 281config IR_REDRAT3 282 tristate "RedRat3 IR Transceiver" 283 depends on USB 284 select NEW_LEDS 285 select LEDS_CLASS 286 help 287 Say Y here if you want to use a RedRat3 Infrared Transceiver. 288 289 To compile this driver as a module, choose M here: the 290 module will be called redrat3. 291 292config IR_SPI 293 tristate "SPI connected IR LED" 294 depends on SPI && LIRC 295 depends on OF || COMPILE_TEST 296 help 297 Say Y if you want to use an IR LED connected through SPI bus. 298 299 To compile this driver as a module, choose M here: the module will be 300 called ir-spi. 301 302config IR_STREAMZAP 303 tristate "Streamzap PC Remote IR Receiver" 304 depends on USB 305 help 306 Say Y here if you want to use a Streamzap PC Remote 307 Infrared Receiver. 308 309 To compile this driver as a module, choose M here: the 310 module will be called streamzap. 311 312config IR_WINBOND_CIR 313 tristate "Winbond IR remote control" 314 depends on (X86 && PNP) || COMPILE_TEST 315 select NEW_LEDS 316 select LEDS_CLASS 317 select BITREVERSE 318 help 319 Say Y here if you want to use the IR remote functionality found 320 in some Winbond SuperI/O chips. Currently only the WPCD376I 321 chip is supported (included in some Intel Media series 322 motherboards). 323 324 To compile this driver as a module, choose M here: the module will 325 be called winbond_cir. 326 327config IR_IGORPLUGUSB 328 tristate "IgorPlug-USB IR Receiver" 329 depends on USB 330 help 331 Say Y here if you want to use the IgorPlug-USB IR Receiver by 332 Igor Cesko. This device is included on the Fit-PC2. 333 334 Note that this device can only record bursts of 36 IR pulses and 335 spaces, which is not enough for the NEC, Sanyo and RC-6 protocol. 336 337 To compile this driver as a module, choose M here: the module will 338 be called igorplugusb. 339 340config IR_IGUANA 341 tristate "IguanaWorks USB IR Transceiver" 342 depends on USB 343 help 344 Say Y here if you want to use the IguanaWorks USB IR Transceiver. 345 Both infrared receive and send are supported. If you want to 346 change the ID or the pin config, use the user space driver from 347 IguanaWorks. 348 349 Only firmware 0x0205 and later is supported. 350 351 To compile this driver as a module, choose M here: the module will 352 be called iguanair. 353 354config IR_TTUSBIR 355 tristate "TechnoTrend USB IR Receiver" 356 depends on USB 357 select NEW_LEDS 358 select LEDS_CLASS 359 help 360 Say Y here if you want to use the TechnoTrend USB IR Receiver. The 361 driver can control the led. 362 363 To compile this driver as a module, choose M here: the module will 364 be called ttusbir. 365 366config IR_RX51 367 tristate "Nokia N900 IR transmitter diode" 368 depends on (OMAP_DM_TIMER && PWM_OMAP_DMTIMER && ARCH_OMAP2PLUS || COMPILE_TEST) && RC_CORE 369 help 370 Say Y or M here if you want to enable support for the IR 371 transmitter diode built in the Nokia N900 (RX51) device. 372 373 The driver uses omap DM timers for generating the carrier 374 wave and pulses. 375 376source "drivers/media/rc/img-ir/Kconfig" 377 378config RC_LOOPBACK 379 tristate "Remote Control Loopback Driver" 380 help 381 Say Y here if you want support for the remote control loopback 382 driver which allows TX data to be sent back as RX data. 383 This is mostly useful for debugging purposes. 384 385 If you're not sure, select N here. 386 387 To compile this driver as a module, choose M here: the module will 388 be called rc_loopback. 389 390config IR_GPIO_CIR 391 tristate "GPIO IR remote control" 392 depends on (OF && GPIOLIB) || COMPILE_TEST 393 help 394 Say Y if you want to use GPIO based IR Receiver. 395 396 To compile this driver as a module, choose M here: the module will 397 be called gpio-ir-recv. 398 399config IR_GPIO_TX 400 tristate "GPIO IR Bit Banging Transmitter" 401 depends on LIRC 402 depends on (OF && GPIOLIB) || COMPILE_TEST 403 help 404 Say Y if you want to a GPIO based IR transmitter. This is a 405 bit banging driver. 406 407 To compile this driver as a module, choose M here: the module will 408 be called gpio-ir-tx. 409 410config IR_PWM_TX 411 tristate "PWM IR transmitter" 412 depends on LIRC 413 depends on PWM 414 depends on OF || COMPILE_TEST 415 help 416 Say Y if you want to use a PWM based IR transmitter. This is 417 more power efficient than the bit banging gpio driver. 418 419 To compile this driver as a module, choose M here: the module will 420 be called pwm-ir-tx. 421 422config RC_ST 423 tristate "ST remote control receiver" 424 depends on ARCH_STI || COMPILE_TEST 425 help 426 Say Y here if you want support for ST remote control driver 427 which allows both IR and UHF RX. 428 The driver passes raw pulse and space information to the LIRC decoder. 429 430 If you're not sure, select N here. 431 432config IR_SUNXI 433 tristate "SUNXI IR remote control" 434 depends on ARCH_SUNXI || COMPILE_TEST 435 help 436 Say Y if you want to use sunXi internal IR Controller 437 438 To compile this driver as a module, choose M here: the module will 439 be called sunxi-ir. 440 441config IR_SERIAL 442 tristate "Homebrew Serial Port Receiver" 443 help 444 Say Y if you want to use Homebrew Serial Port Receivers and 445 Transceivers. 446 447 To compile this driver as a module, choose M here: the module will 448 be called serial-ir. 449 450config IR_SERIAL_TRANSMITTER 451 bool "Serial Port Transmitter" 452 depends on IR_SERIAL 453 help 454 Serial Port Transmitter support 455 456config RC_XBOX_DVD 457 tristate "Xbox DVD Movie Playback Kit" 458 depends on USB 459 help 460 Say Y here if you want to use the Xbox DVD Movie Playback Kit. 461 These are IR remotes with USB receivers for the Original Xbox (2001). 462 463 To compile this driver as a module, choose M here: the module will be 464 called xbox_remote. 465 466config IR_TOY 467 tristate "Infrared Toy and IR Droid" 468 depends on USB 469 help 470 Say Y here if you want to use the Infrared Toy or IR Droid, USB 471 versions. 472 473 To compile this driver as a module, choose M here: the module will be 474 called ir_toy. 475 476endif #RC_DEVICES 477 478endif #RC_CORE 479