Kconfig 14 KB

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