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