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