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