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 help 278 Say Y if you want to use the IR remote receiver available 279 on Amlogic Meson SoCs. 280 281 To compile this driver as a module, choose M here: the 282 module will be called meson-ir. 283 284config IR_MESON_TX 285 tristate "Amlogic Meson IR TX" 286 depends on ARCH_MESON || COMPILE_TEST 287 help 288 Say Y if you want to use the IR transmitter available on 289 Amlogic Meson SoCs. 290 291 To compile this driver as a module, choose M here: the 292 module will be called meson-ir-tx. 293 294config IR_MTK 295 tristate "Mediatek IR remote receiver" 296 depends on ARCH_MEDIATEK || COMPILE_TEST 297 help 298 Say Y if you want to use the IR remote receiver available 299 on Mediatek SoCs. 300 301 To compile this driver as a module, choose M here: the 302 module will be called mtk-cir. 303 304config IR_NUVOTON 305 tristate "Nuvoton w836x7hg Consumer Infrared Transceiver" 306 depends on PNP || COMPILE_TEST 307 depends on HAS_IOPORT 308 help 309 Say Y here to enable support for integrated infrared receiver 310 /transceiver made by Nuvoton (formerly Winbond). This chip is 311 found in the ASRock ION 330HT, as well as assorted Intel 312 DP55-series motherboards (and of course, possibly others). 313 314 To compile this driver as a module, choose M here: the 315 module will be called nuvoton-cir. 316 317config IR_PWM_TX 318 tristate "PWM IR transmitter" 319 depends on LIRC 320 depends on PWM 321 depends on OF 322 help 323 Say Y if you want to use a PWM based IR transmitter. This is 324 more power efficient than the bit banging gpio driver. 325 326 To compile this driver as a module, choose M here: the module will 327 be called pwm-ir-tx. 328 329config IR_REDRAT3 330 tristate "RedRat3 IR Transceiver" 331 depends on USB 332 select NEW_LEDS 333 select LEDS_CLASS 334 help 335 Say Y here if you want to use a RedRat3 Infrared Transceiver. 336 337 To compile this driver as a module, choose M here: the 338 module will be called redrat3. 339 340config IR_RX51 341 tristate "Nokia N900 IR transmitter diode" 342 depends on (OMAP_DM_TIMER && PWM_OMAP_DMTIMER && ARCH_OMAP2PLUS || COMPILE_TEST) && RC_CORE 343 help 344 Say Y or M here if you want to enable support for the IR 345 transmitter diode built in the Nokia N900 (RX51) device. 346 347 The driver uses omap DM timers for generating the carrier 348 wave and pulses. 349 350config IR_SERIAL 351 tristate "Homebrew Serial Port Receiver" 352 depends on HAS_IOPORT 353 help 354 Say Y if you want to use Homebrew Serial Port Receivers and 355 Transceivers. 356 357 To compile this driver as a module, choose M here: the module will 358 be called serial-ir. 359 360config IR_SERIAL_TRANSMITTER 361 bool "Serial Port Transmitter" 362 depends on IR_SERIAL 363 help 364 Serial Port Transmitter support 365 366config IR_SPI 367 tristate "SPI connected IR LED" 368 depends on SPI && LIRC 369 depends on OF 370 help 371 Say Y if you want to use an IR LED connected through SPI bus. 372 373 To compile this driver as a module, choose M here: the module will be 374 called ir-spi. 375 376config IR_STREAMZAP 377 tristate "Streamzap PC Remote IR Receiver" 378 depends on USB 379 help 380 Say Y here if you want to use a Streamzap PC Remote 381 Infrared Receiver. 382 383 To compile this driver as a module, choose M here: the 384 module will be called streamzap. 385 386config IR_SUNXI 387 tristate "SUNXI IR remote control" 388 depends on ARCH_SUNXI || COMPILE_TEST 389 help 390 Say Y if you want to use sunXi internal IR Controller 391 392 To compile this driver as a module, choose M here: the module will 393 be called sunxi-ir. 394 395config IR_TOY 396 tristate "Infrared Toy and IR Droid" 397 depends on USB 398 help 399 Say Y here if you want to use the Infrared Toy or IR Droid, USB 400 versions. 401 402 To compile this driver as a module, choose M here: the module will be 403 called ir_toy. 404 405config IR_TTUSBIR 406 tristate "TechnoTrend USB IR Receiver" 407 depends on USB 408 select NEW_LEDS 409 select LEDS_CLASS 410 help 411 Say Y here if you want to use the TechnoTrend USB IR Receiver. The 412 driver can control the led. 413 414 To compile this driver as a module, choose M here: the module will 415 be called ttusbir. 416 417config IR_WINBOND_CIR 418 tristate "Winbond IR remote control" 419 depends on (X86 && PNP) || COMPILE_TEST 420 depends on HAS_IOPORT 421 select NEW_LEDS 422 select LEDS_CLASS 423 select BITREVERSE 424 help 425 Say Y here if you want to use the IR remote functionality found 426 in some Winbond SuperI/O chips. Currently only the WPCD376I 427 chip is supported (included in some Intel Media series 428 motherboards). 429 430 To compile this driver as a module, choose M here: the module will 431 be called winbond_cir. 432 433config RC_ATI_REMOTE 434 tristate "ATI / X10 based USB RF remote controls" 435 depends on USB 436 help 437 Say Y here if you want to use an X10 based USB remote control. 438 These are RF remotes with USB receivers. 439 440 Such devices include the ATI remote that comes with many of ATI's 441 All-In-Wonder video cards, the X10 "Lola" remote, NVIDIA RF remote, 442 Medion RF remote, and SnapStream FireFly remote. 443 444 This driver provides mouse pointer, left and right mouse buttons, 445 and maps all the other remote buttons to keypress events. 446 447 To compile this driver as a module, choose M here: the module will be 448 called ati_remote. 449 450config RC_LOOPBACK 451 tristate "Remote Control Loopback Driver" 452 help 453 Say Y here if you want support for the remote control loopback 454 driver which allows TX data to be sent back as RX data. 455 This is mostly useful for debugging purposes. 456 457 If you're not sure, select N here. 458 459 To compile this driver as a module, choose M here: the module will 460 be called rc_loopback. 461 462config RC_ST 463 tristate "ST remote control receiver" 464 depends on ARCH_STI || COMPILE_TEST 465 help 466 Say Y here if you want support for ST remote control driver 467 which allows both IR and UHF RX. 468 The driver passes raw pulse and space information to the LIRC decoder. 469 470 If you're not sure, select N here. 471 472config RC_XBOX_DVD 473 tristate "Xbox DVD Movie Playback Kit" 474 depends on USB 475 help 476 Say Y here if you want to use the Xbox DVD Movie Playback Kit. 477 These are IR remotes with USB receivers for the Original Xbox (2001). 478 479 To compile this driver as a module, choose M here: the module will be 480 called xbox_remote. 481 482source "drivers/media/rc/img-ir/Kconfig" 483 484endif #RC_DEVICES 485 486endif #RC_CORE 487