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