Merge tag 'mailbox-v5.14' of git://git.linaro.org/landing-teams/working/fujitsu/integ...
[sfrench/cifs-2.6.git] / drivers / media / rc / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2
3 menuconfig 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
17 if RC_CORE
18 source "drivers/media/rc/keymaps/Kconfig"
19
20 config 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
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
44 if RC_DECODERS
45 config 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
53 config 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
61 config 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
69 config 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
77 config 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
85 config 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
94 config 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
103 config 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
112 config 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
120 config 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
127 config 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
139 endif #RC_DECODERS
140
141 menuconfig RC_DEVICES
142         bool "Remote Controller devices"
143
144 if RC_DEVICES
145
146 config 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
163 config 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
176 config 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
186 config 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
196 config 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
206 config 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
216 config 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
228 config 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
239 config 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
249 config 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
259 config 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
271 config 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
282 config 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
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
299            To compile this driver as a module, choose M here: the
300            module will be called streamzap.
301
302 config 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
317 config 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
330 config 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
344 config 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
356 config 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
366 source "drivers/media/rc/img-ir/Kconfig"
367
368 config 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
380 config 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
389 config 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
400 config 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
412 config 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
422 config 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
431 config 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
440 config IR_SERIAL_TRANSMITTER
441         bool "Serial Port Transmitter"
442         depends on IR_SERIAL
443         help
444            Serial Port Transmitter support
445
446 config 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
454 config 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
464 config 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
474 endif #RC_DEVICES
475
476 endif #RC_CORE