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 depends on HAS_IOPORT 152 help 153 Say Y here to enable support for integrated infrared receiver 154 /transceiver made by ENE. 155 156 You can see if you have it by looking at lspnp output. 157 Output should include ENE0100 ENE0200 or something similar. 158 159 To compile this driver as a module, choose M here: the 160 module will be called ene_ir. 161 162config IR_FINTEK 163 tristate "Fintek Consumer Infrared Transceiver" 164 depends on PNP || COMPILE_TEST 165 depends on HAS_IOPORT 166 help 167 Say Y here to enable support for integrated infrared receiver 168 /transceiver made by Fintek. This chip is found on assorted 169 Jetway motherboards (and of course, possibly others). 170 171 To compile this driver as a module, choose M here: the 172 module will be called fintek-cir. 173 174config IR_GPIO_CIR 175 tristate "GPIO IR remote control" 176 depends on (OF && GPIOLIB) || COMPILE_TEST 177 help 178 Say Y if you want to use GPIO based IR Receiver. 179 180 To compile this driver as a module, choose M here: the module will 181 be called gpio-ir-recv. 182 183config IR_GPIO_TX 184 tristate "GPIO IR Bit Banging Transmitter" 185 depends on LIRC 186 depends on (OF && GPIOLIB) || COMPILE_TEST 187 depends on !PREEMPT_RT 188 help 189 Say Y if you want to a GPIO based IR transmitter. This is a 190 bit banging driver. 191 192 To compile this driver as a module, choose M here: the module will 193 be called gpio-ir-tx. 194 195config IR_HIX5HD2 196 tristate "Hisilicon hix5hd2 IR remote control" 197 depends on (OF && HAS_IOMEM) || COMPILE_TEST 198 help 199 Say Y here if you want to use hisilicon hix5hd2 remote control. 200 To compile this driver as a module, choose M here: the module will be 201 called ir-hix5hd2. 202 203 If you're not sure, select N here 204 205config IR_IGORPLUGUSB 206 tristate "IgorPlug-USB IR Receiver" 207 depends on USB 208 help 209 Say Y here if you want to use the IgorPlug-USB IR Receiver by 210 Igor Cesko. This device is included on the Fit-PC2. 211 212 Note that this device can only record bursts of 36 IR pulses and 213 spaces, which is not enough for the NEC, Sanyo and RC-6 protocol. 214 215 To compile this driver as a module, choose M here: the module will 216 be called igorplugusb. 217 218config IR_IGUANA 219 tristate "IguanaWorks USB IR Transceiver" 220 depends on USB 221 help 222 Say Y here if you want to use the IguanaWorks USB IR Transceiver. 223 Both infrared receive and send are supported. If you want to 224 change the ID or the pin config, use the user space driver from 225 IguanaWorks. 226 227 Only firmware 0x0205 and later is supported. 228 229 To compile this driver as a module, choose M here: the module will 230 be called iguanair. 231 232config IR_IMON 233 tristate "SoundGraph iMON Receiver and Display" 234 depends on USB 235 help 236 Say Y here if you want to use a SoundGraph iMON (aka Antec Veris) 237 IR Receiver and/or LCD/VFD/VGA display. 238 239 To compile this driver as a module, choose M here: the 240 module will be called imon. 241 242config IR_IMON_RAW 243 tristate "SoundGraph iMON Receiver (early raw IR models)" 244 depends on USB 245 help 246 Say Y here if you want to use a SoundGraph iMON IR Receiver, 247 early raw models. 248 249 To compile this driver as a module, choose M here: the 250 module will be called imon_raw. 251 252config IR_ITE_CIR 253 tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver" 254 depends on PNP || COMPILE_TEST 255 depends on HAS_IOPORT 256 help 257 Say Y here to enable support for integrated infrared receivers 258 /transceivers made by ITE Tech Inc. These are found in 259 several ASUS devices, like the ASUS Digimatrix or the ASUS 260 EEEBox 1501U. 261 262 To compile this driver as a module, choose M here: the 263 module will be called ite-cir. 264 265config IR_MCEUSB 266 tristate "Windows Media Center Ed. eHome Infrared Transceiver" 267 depends on USB 268 help 269 Say Y here if you want to use a Windows Media Center Edition 270 eHome Infrared Transceiver. 271 272 To compile this driver as a module, choose M here: the 273 module will be called mceusb. 274 275config IR_MESON 276 tristate "Amlogic Meson IR remote receiver" 277 depends on ARCH_MESON || COMPILE_TEST 278 select REGMAP_MMIO 279 help 280 Say Y if you want to use the IR remote receiver available 281 on Amlogic Meson SoCs. 282 283 To compile this driver as a module, choose M here: the 284 module will be called meson-ir. 285 286config IR_MESON_TX 287 tristate "Amlogic Meson IR TX" 288 depends on ARCH_MESON || COMPILE_TEST 289 help 290 Say Y if you want to use the IR transmitter available on 291 Amlogic Meson SoCs. 292 293 To compile this driver as a module, choose M here: the 294 module will be called meson-ir-tx. 295 296config IR_MTK 297 tristate "Mediatek IR remote receiver" 298 depends on ARCH_MEDIATEK || COMPILE_TEST 299 help 300 Say Y if you want to use the IR remote receiver available 301 on Mediatek SoCs. 302 303 To compile this driver as a module, choose M here: the 304 module will be called mtk-cir. 305 306config IR_NUVOTON 307 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver" 308 depends on PNP || COMPILE_TEST 309 depends on HAS_IOPORT 310 help 311 Say Y here to enable support for integrated infrared receiver 312 /transceiver made by Nuvoton (formerly Winbond). This chip is 313 found in the ASRock ION 330HT, as well as assorted Intel 314 DP55-series motherboards (and of course, possibly others). 315 316 To compile this driver as a module, choose M here: the 317 module will be called nuvoton-cir. 318 319config IR_PWM_TX 320 tristate "PWM IR transmitter" 321 depends on LIRC 322 depends on PWM 323 depends on HIGH_RES_TIMERS 324 depends on OF 325 help 326 Say Y if you want to use a PWM based IR transmitter. This is 327 more power efficient than the bit banging gpio driver. 328 329 To compile this driver as a module, choose M here: the module will 330 be called pwm-ir-tx. 331 332config IR_REDRAT3 333 tristate "RedRat3 IR Transceiver" 334 depends on USB 335 select NEW_LEDS 336 select LEDS_CLASS 337 help 338 Say Y here if you want to use a RedRat3 Infrared Transceiver. 339 340 To compile this driver as a module, choose M here: the 341 module will be called redrat3. 342 343config IR_SERIAL 344 tristate "Homebrew Serial Port Receiver" 345 depends on HAS_IOPORT 346 help 347 Say Y if you want to use Homebrew Serial Port Receivers and 348 Transceivers. 349 350 To compile this driver as a module, choose M here: the module will 351 be called serial-ir. 352 353config IR_SERIAL_TRANSMITTER 354 bool "Serial Port Transmitter" 355 depends on IR_SERIAL 356 help 357 Serial Port Transmitter support 358 359config IR_SPI 360 tristate "SPI connected IR LED" 361 depends on SPI && LIRC 362 depends on OF 363 help 364 Say Y if you want to use an IR LED connected through SPI bus. 365 366 To compile this driver as a module, choose M here: the module will be 367 called ir-spi. 368 369config IR_STREAMZAP 370 tristate "Streamzap PC Remote IR Receiver" 371 depends on USB 372 help 373 Say Y here if you want to use a Streamzap PC Remote 374 Infrared Receiver. 375 376 To compile this driver as a module, choose M here: the 377 module will be called streamzap. 378 379config IR_SUNXI 380 tristate "SUNXI IR remote control" 381 depends on ARCH_SUNXI || COMPILE_TEST 382 help 383 Say Y if you want to use sunXi internal IR Controller 384 385 To compile this driver as a module, choose M here: the module will 386 be called sunxi-ir. 387 388config IR_TOY 389 tristate "Infrared Toy and IR Droid" 390 depends on USB 391 help 392 Say Y here if you want to use the Infrared Toy or IR Droid, USB 393 versions. 394 395 To compile this driver as a module, choose M here: the module will be 396 called ir_toy. 397 398config IR_TTUSBIR 399 tristate "TechnoTrend USB IR Receiver" 400 depends on USB 401 select NEW_LEDS 402 select LEDS_CLASS 403 help 404 Say Y here if you want to use the TechnoTrend USB IR Receiver. The 405 driver can control the led. 406 407 To compile this driver as a module, choose M here: the module will 408 be called ttusbir. 409 410config IR_WINBOND_CIR 411 tristate "Winbond IR remote control" 412 depends on (X86 && PNP) || COMPILE_TEST 413 depends on HAS_IOPORT 414 select NEW_LEDS 415 select LEDS_CLASS 416 select BITREVERSE 417 help 418 Say Y here if you want to use the IR remote functionality found 419 in some Winbond SuperI/O chips. Currently only the WPCD376I 420 chip is supported (included in some Intel Media series 421 motherboards). 422 423 To compile this driver as a module, choose M here: the module will 424 be called winbond_cir. 425 426config RC_ATI_REMOTE 427 tristate "ATI / X10 based USB RF remote controls" 428 depends on USB 429 help 430 Say Y here if you want to use an X10 based USB remote control. 431 These are RF remotes with USB receivers. 432 433 Such devices include the ATI remote that comes with many of ATI's 434 All-In-Wonder video cards, the X10 "Lola" remote, NVIDIA RF remote, 435 Medion RF remote, and SnapStream FireFly remote. 436 437 This driver provides mouse pointer, left and right mouse buttons, 438 and maps all the other remote buttons to keypress events. 439 440 To compile this driver as a module, choose M here: the module will be 441 called ati_remote. 442 443config RC_LOOPBACK 444 tristate "Remote Control Loopback Driver" 445 help 446 Say Y here if you want support for the remote control loopback 447 driver which allows TX data to be sent back as RX data. 448 This is mostly useful for debugging purposes. 449 450 If you're not sure, select N here. 451 452 To compile this driver as a module, choose M here: the module will 453 be called rc_loopback. 454 455config RC_ST 456 tristate "ST remote control receiver" 457 depends on ARCH_STI || COMPILE_TEST 458 help 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. 462 463 If you're not sure, select N here. 464 465config RC_XBOX_DVD 466 tristate "Xbox DVD Movie Playback Kit" 467 depends on USB 468 help 469 Say Y here if you want to use the Xbox DVD Movie Playback Kit. 470 These are IR remotes with USB receivers for the Original Xbox (2001). 471 472 To compile this driver as a module, choose M here: the module will be 473 called xbox_remote. 474 475source "drivers/media/rc/img-ir/Kconfig" 476 477endif #RC_DEVICES 478 479endif #RC_CORE 480