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 HIGH_RES_TIMERS 323 depends on OF 324 help 325 Say Y if you want to use a PWM based IR transmitter. This is 326 more power efficient than the bit banging gpio driver. 327 328 To compile this driver as a module, choose M here: the module will 329 be called pwm-ir-tx. 330 331config IR_REDRAT3 332 tristate "RedRat3 IR Transceiver" 333 depends on USB 334 select NEW_LEDS 335 select LEDS_CLASS 336 help 337 Say Y here if you want to use a RedRat3 Infrared Transceiver. 338 339 To compile this driver as a module, choose M here: the 340 module will be called redrat3. 341 342config IR_SERIAL 343 tristate "Homebrew Serial Port Receiver" 344 depends on HAS_IOPORT 345 help 346 Say Y if you want to use Homebrew Serial Port Receivers and 347 Transceivers. 348 349 To compile this driver as a module, choose M here: the module will 350 be called serial-ir. 351 352config IR_SERIAL_TRANSMITTER 353 bool "Serial Port Transmitter" 354 depends on IR_SERIAL 355 help 356 Serial Port Transmitter support 357 358config IR_SPI 359 tristate "SPI connected IR LED" 360 depends on SPI && LIRC 361 depends on OF 362 help 363 Say Y if you want to use an IR LED connected through SPI bus. 364 365 To compile this driver as a module, choose M here: the module will be 366 called ir-spi. 367 368config IR_STREAMZAP 369 tristate "Streamzap PC Remote IR Receiver" 370 depends on USB 371 help 372 Say Y here if you want to use a Streamzap PC Remote 373 Infrared Receiver. 374 375 To compile this driver as a module, choose M here: the 376 module will be called streamzap. 377 378config IR_SUNXI 379 tristate "SUNXI IR remote control" 380 depends on ARCH_SUNXI || COMPILE_TEST 381 help 382 Say Y if you want to use sunXi internal IR Controller 383 384 To compile this driver as a module, choose M here: the module will 385 be called sunxi-ir. 386 387config IR_TOY 388 tristate "Infrared Toy and IR Droid" 389 depends on USB 390 help 391 Say Y here if you want to use the Infrared Toy or IR Droid, USB 392 versions. 393 394 To compile this driver as a module, choose M here: the module will be 395 called ir_toy. 396 397config IR_TTUSBIR 398 tristate "TechnoTrend USB IR Receiver" 399 depends on USB 400 select NEW_LEDS 401 select LEDS_CLASS 402 help 403 Say Y here if you want to use the TechnoTrend USB IR Receiver. The 404 driver can control the led. 405 406 To compile this driver as a module, choose M here: the module will 407 be called ttusbir. 408 409config IR_WINBOND_CIR 410 tristate "Winbond IR remote control" 411 depends on (X86 && PNP) || COMPILE_TEST 412 depends on HAS_IOPORT 413 select NEW_LEDS 414 select LEDS_CLASS 415 select BITREVERSE 416 help 417 Say Y here if you want to use the IR remote functionality found 418 in some Winbond SuperI/O chips. Currently only the WPCD376I 419 chip is supported (included in some Intel Media series 420 motherboards). 421 422 To compile this driver as a module, choose M here: the module will 423 be called winbond_cir. 424 425config RC_ATI_REMOTE 426 tristate "ATI / X10 based USB RF remote controls" 427 depends on USB 428 help 429 Say Y here if you want to use an X10 based USB remote control. 430 These are RF remotes with USB receivers. 431 432 Such devices include the ATI remote that comes with many of ATI's 433 All-In-Wonder video cards, the X10 "Lola" remote, NVIDIA RF remote, 434 Medion RF remote, and SnapStream FireFly remote. 435 436 This driver provides mouse pointer, left and right mouse buttons, 437 and maps all the other remote buttons to keypress events. 438 439 To compile this driver as a module, choose M here: the module will be 440 called ati_remote. 441 442config RC_LOOPBACK 443 tristate "Remote Control Loopback Driver" 444 help 445 Say Y here if you want support for the remote control loopback 446 driver which allows TX data to be sent back as RX data. 447 This is mostly useful for debugging purposes. 448 449 If you're not sure, select N here. 450 451 To compile this driver as a module, choose M here: the module will 452 be called rc_loopback. 453 454config RC_ST 455 tristate "ST remote control receiver" 456 depends on ARCH_STI || COMPILE_TEST 457 help 458 Say Y here if you want support for ST remote control driver 459 which allows both IR and UHF RX. 460 The driver passes raw pulse and space information to the LIRC decoder. 461 462 If you're not sure, select N here. 463 464config RC_XBOX_DVD 465 tristate "Xbox DVD Movie Playback Kit" 466 depends on USB 467 help 468 Say Y here if you want to use the Xbox DVD Movie Playback Kit. 469 These are IR remotes with USB receivers for the Original Xbox (2001). 470 471 To compile this driver as a module, choose M here: the module will be 472 called xbox_remote. 473 474source "drivers/media/rc/img-ir/Kconfig" 475 476endif #RC_DEVICES 477 478endif #RC_CORE 479