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