xref: /linux/drivers/input/touchscreen/Kconfig (revision 09fd8626cf8285503b4803b30b06c296599a24e7)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Touchscreen driver configuration
4#
5menuconfig INPUT_TOUCHSCREEN
6	bool "Touchscreens"
7	help
8	  Say Y here, and a list of supported touchscreens will be displayed.
9	  This option doesn't affect the kernel.
10
11	  If unsure, say Y.
12
13if INPUT_TOUCHSCREEN
14
15config TOUCHSCREEN_88PM860X
16	tristate "Marvell 88PM860x touchscreen"
17	depends on MFD_88PM860X
18	help
19	  Say Y here if you have a 88PM860x PMIC and want to enable
20	  support for the built-in touchscreen.
21
22	  If unsure, say N.
23
24	  To compile this driver as a module, choose M here: the
25	  module will be called 88pm860x-ts.
26
27config TOUCHSCREEN_ADS7846
28	tristate "ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens"
29	depends on SPI_MASTER
30	depends on HWMON = n || HWMON
31	help
32	  Say Y here if you have a touchscreen interface using the
33	  ADS7846/TSC2046/AD7873 or ADS7843/AD7843 controller,
34	  and your board-specific setup code includes that in its
35	  table of SPI devices.
36
37	  If HWMON is selected, and the driver is told the reference voltage
38	  on your board, you will also get hwmon interfaces for the voltage
39	  (and on ads7846/tsc2046/ad7873, temperature) sensors of this chip.
40
41	  If unsure, say N (but it's safe to say "Y").
42
43	  To compile this driver as a module, choose M here: the
44	  module will be called ads7846.
45
46config TOUCHSCREEN_AD7877
47	tristate "AD7877 based touchscreens"
48	depends on SPI_MASTER
49	help
50	  Say Y here if you have a touchscreen interface using the
51	  AD7877 controller, and your board-specific initialization
52	  code includes that in its table of SPI devices.
53
54	  If unsure, say N (but it's safe to say "Y").
55
56	  To compile this driver as a module, choose M here: the
57	  module will be called ad7877.
58
59config TOUCHSCREEN_AD7879
60	tristate "Analog Devices AD7879-1/AD7889-1 touchscreen interface"
61	help
62	  Say Y here if you want to support a touchscreen interface using
63	  the AD7879-1/AD7889-1 controller.
64
65	  You should select a bus connection too.
66
67	  To compile this driver as a module, choose M here: the
68	  module will be called ad7879.
69
70config TOUCHSCREEN_AD7879_I2C
71	tristate "support I2C bus connection"
72	depends on TOUCHSCREEN_AD7879 && I2C
73	select REGMAP_I2C
74	help
75	  Say Y here if you have AD7879-1/AD7889-1 hooked to an I2C bus.
76
77	  To compile this driver as a module, choose M here: the
78	  module will be called ad7879-i2c.
79
80config TOUCHSCREEN_AD7879_SPI
81	tristate "support SPI bus connection"
82	depends on TOUCHSCREEN_AD7879 && SPI_MASTER
83	select REGMAP_SPI
84	help
85	  Say Y here if you have AD7879-1/AD7889-1 hooked to a SPI bus.
86
87	  If unsure, say N (but it's safe to say "Y").
88
89	  To compile this driver as a module, choose M here: the
90	  module will be called ad7879-spi.
91
92config TOUCHSCREEN_ADC
93	tristate "Generic ADC based resistive touchscreen"
94	depends on IIO
95	select IIO_BUFFER
96	select IIO_BUFFER_CB
97	help
98	  Say Y here if you want to use the generic ADC
99	  resistive touchscreen driver.
100
101	  If unsure, say N (but it's safe to say "Y").
102
103	  To compile this driver as a module, choose M here: the
104	  module will be called resistive-adc-touch.ko.
105
106config TOUCHSCREEN_APPLE_Z2
107	tristate "Apple Z2 touchscreens"
108	depends on SPI && (ARCH_APPLE || COMPILE_TEST)
109	help
110	  Say Y here if you have an ARM Apple device with
111	  a touchscreen or a touchbar.
112
113	  If unsure, say N.
114
115	  To compile this driver as a module, choose M here: the
116	  module will be called apple_z2.
117
118config TOUCHSCREEN_AR1021_I2C
119	tristate "Microchip AR1020/1021 i2c touchscreen"
120	depends on I2C && OF
121	help
122	  Say Y here if you have the Microchip AR1020 or AR1021 touchscreen
123	  controller chip in your system.
124
125	  If unsure, say N.
126
127	  To compile this driver as a module, choose M here: the
128	  module will be called ar1021_i2c.
129
130config TOUCHSCREEN_ATMEL_MXT
131	tristate "Atmel mXT I2C Touchscreen"
132	depends on I2C
133	select FW_LOADER
134	help
135	  Say Y here if you have Atmel mXT series I2C touchscreen,
136	  such as AT42QT602240/ATMXT224, connected to your system.
137
138	  If unsure, say N.
139
140	  To compile this driver as a module, choose M here: the
141	  module will be called atmel_mxt_ts.
142
143config TOUCHSCREEN_ATMEL_MXT_T37
144	bool "Support T37 Diagnostic Data"
145	depends on TOUCHSCREEN_ATMEL_MXT
146	depends on VIDEO_DEV=y || (TOUCHSCREEN_ATMEL_MXT=m && VIDEO_DEV=m)
147	select VIDEOBUF2_VMALLOC
148	help
149	  Say Y here if you want support to output data from the T37
150	  Diagnostic Data object using a V4L device.
151
152config TOUCHSCREEN_AUO_PIXCIR
153	tristate "AUO in-cell touchscreen using Pixcir ICs"
154	depends on I2C
155	depends on GPIOLIB || COMPILE_TEST
156	help
157	  Say Y here if you have a AUO display with in-cell touchscreen
158	  using Pixcir ICs.
159
160	  If unsure, say N.
161
162	  To compile this driver as a module, choose M here: the
163	  module will be called auo-pixcir-ts.
164
165config TOUCHSCREEN_BU21013
166	tristate "BU21013 based touch panel controllers"
167	depends on I2C
168	help
169	  Say Y here if you have a bu21013 touchscreen connected to
170	  your system.
171
172	  If unsure, say N.
173
174	  To compile this driver as a module, choose M here: the
175	  module will be called bu21013_ts.
176
177config TOUCHSCREEN_BU21029
178	tristate "Rohm BU21029 based touch panel controllers"
179	depends on I2C
180	help
181	  Say Y here if you have a Rohm BU21029 touchscreen controller
182	  connected to your system.
183
184	  If unsure, say N.
185
186	  To compile this driver as a module, choose M here: the
187	  module will be called bu21029_ts.
188
189config TOUCHSCREEN_CHIPONE_ICN8318
190	tristate "chipone icn8318 touchscreen controller"
191	depends on GPIOLIB || COMPILE_TEST
192	depends on I2C
193	depends on OF
194	help
195	  Say Y here if you have a ChipOne icn8318 based I2C touchscreen.
196
197	  If unsure, say N.
198
199	  To compile this driver as a module, choose M here: the
200	  module will be called chipone_icn8318.
201
202config TOUCHSCREEN_CHIPONE_ICN8505
203	tristate "chipone icn8505 touchscreen controller"
204	depends on I2C && ACPI
205	help
206	  Say Y here if you have a ChipOne icn8505 based I2C touchscreen.
207
208	  If unsure, say N.
209
210	  To compile this driver as a module, choose M here: the
211	  module will be called chipone_icn8505.
212
213config TOUCHSCREEN_CY8CTMA140
214	tristate "cy8ctma140 touchscreen"
215	depends on I2C
216	help
217	  Say Y here if you have a Cypress CY8CTMA140 capacitive
218	  touchscreen also just known as "TMA140"
219
220	  If unsure, say N.
221
222	  To compile this driver as a module, choose M here: the
223	  module will be called cy8ctma140.
224
225config TOUCHSCREEN_CY8CTMG110
226	tristate "cy8ctmg110 touchscreen"
227	depends on I2C
228	depends on GPIOLIB || COMPILE_TEST
229	help
230	  Say Y here if you have a cy8ctmg110 capacitive touchscreen on
231	  an AAVA device.
232
233	  If unsure, say N.
234
235	  To compile this driver as a module, choose M here: the
236	  module will be called cy8ctmg110_ts.
237
238config TOUCHSCREEN_CYTTSP_CORE
239	tristate "Cypress TTSP touchscreen"
240	help
241	  Say Y here if you have a touchscreen using controller from
242	  the Cypress TrueTouch(tm) Standard Product family connected
243	  to your system. You will also need to select appropriate
244	  bus connection below.
245
246	  If unsure, say N.
247
248	  To compile this driver as a module, choose M here: the
249	  module will be called cyttsp_core.
250
251config TOUCHSCREEN_CYTTSP_I2C
252	tristate "support I2C bus connection"
253	depends on TOUCHSCREEN_CYTTSP_CORE && I2C
254	help
255	  Say Y here if the touchscreen is connected via I2C bus.
256
257	  To compile this driver as a module, choose M here: the
258	  module will be called cyttsp_i2c.
259
260config TOUCHSCREEN_CYTTSP_SPI
261	tristate "support SPI bus connection"
262	depends on TOUCHSCREEN_CYTTSP_CORE && SPI_MASTER
263	help
264	  Say Y here if the touchscreen is connected via SPI bus.
265
266	  To compile this driver as a module, choose M here: the
267	  module will be called cyttsp_spi.
268
269config TOUCHSCREEN_CYTTSP5
270	tristate "Cypress TrueTouch Gen5 Touchscreen Driver"
271	depends on I2C
272	select REGMAP_I2C
273	select CRC_ITU_T
274	help
275	  Driver for Parade TrueTouch Standard Product Generation 5
276	  touchscreen controllers. I2C bus interface support only.
277
278	  Say Y here if you have a Cypress Gen5 touchscreen.
279
280	  If unsure, say N.
281
282	  To compile this driver as a module, choose M here: the
283	  module will be called cyttsp5.
284
285config TOUCHSCREEN_DA9034
286	tristate "Touchscreen support for Dialog Semiconductor DA9034"
287	depends on PMIC_DA903X
288	default y
289	help
290	  Say Y here to enable the support for the touchscreen found
291	  on Dialog Semiconductor DA9034 PMIC.
292
293	  If unsure, say N.
294
295	  To compile this driver as a module, choose M here: the
296	  module will be called da9034-ts.
297
298config TOUCHSCREEN_DA9052
299	tristate "Dialog DA9052/DA9053 TSI"
300	depends on PMIC_DA9052
301	help
302	  Say Y here to support the touchscreen found on Dialog Semiconductor
303	  DA9052-BC and DA9053-AA/Bx PMICs.
304
305	  If unsure, say N.
306
307	  To compile this driver as a module, choose M here: the
308	  module will be called da9052_tsi.
309
310config TOUCHSCREEN_DYNAPRO
311	tristate "Dynapro serial touchscreen"
312	select SERIO
313	help
314	  Say Y here if you have a Dynapro serial touchscreen connected to
315	  your system.
316
317	  If unsure, say N.
318
319	  To compile this driver as a module, choose M here: the
320	  module will be called dynapro.
321
322config TOUCHSCREEN_HAMPSHIRE
323	tristate "Hampshire serial touchscreen"
324	select SERIO
325	help
326	  Say Y here if you have a Hampshire serial touchscreen connected to
327	  your system.
328
329	  If unsure, say N.
330
331	  To compile this driver as a module, choose M here: the
332	  module will be called hampshire.
333
334config TOUCHSCREEN_EETI
335	tristate "EETI touchscreen panel support"
336	depends on I2C
337	help
338	  Say Y here to enable support for I2C connected EETI touch panels.
339
340	  To compile this driver as a module, choose M here: the
341	  module will be called eeti_ts.
342
343config TOUCHSCREEN_EGALAX
344	tristate "EETI eGalax multi-touch panel support"
345	depends on I2C && OF
346	help
347	  Say Y here to enable support for I2C connected EETI
348	  eGalax multi-touch panels.
349
350	  To compile this driver as a module, choose M here: the
351	  module will be called egalax_ts.
352
353config TOUCHSCREEN_EGALAX_SERIAL
354	tristate "EETI eGalax serial touchscreen"
355	select SERIO
356	help
357	  Say Y here to enable support for serial connected EETI
358	  eGalax touch panels.
359
360	  To compile this driver as a module, choose M here: the
361	  module will be called egalax_ts_serial.
362
363config TOUCHSCREEN_EXC3000
364	tristate "EETI EXC3000 multi-touch panel support"
365	depends on I2C
366	help
367	  Say Y here to enable support for I2C connected EETI
368	  EXC3000 multi-touch panels.
369
370	  To compile this driver as a module, choose M here: the
371	  module will be called exc3000.
372
373config TOUCHSCREEN_FUJITSU
374	tristate "Fujitsu serial touchscreen"
375	select SERIO
376	help
377	  Say Y here if you have the Fujitsu touchscreen (such as one
378	  installed in Lifebook P series laptop) connected to your
379	  system.
380
381	  If unsure, say N.
382
383	  To compile this driver as a module, choose M here: the
384	  module will be called fujitsu-ts.
385
386config TOUCHSCREEN_GOODIX
387	tristate "Goodix I2C touchscreen"
388	depends on I2C
389	depends on GPIOLIB || COMPILE_TEST
390	help
391	  Say Y here if you have the Goodix touchscreen (such as one
392	  installed in Onda v975w tablets) connected to your
393	  system. It also supports 5-finger chip models, which can be
394	  found on ARM tablets, like Wexler TAB7200 and MSI Primo73.
395
396	  If unsure, say N.
397
398	  To compile this driver as a module, choose M here: the
399	  module will be called goodix.
400
401config TOUCHSCREEN_GOODIX_BERLIN_CORE
402	tristate
403
404config TOUCHSCREEN_GOODIX_BERLIN_I2C
405	tristate "Goodix Berlin I2C touchscreen"
406	depends on I2C
407	select REGMAP_I2C
408	select TOUCHSCREEN_GOODIX_BERLIN_CORE
409	help
410	  Say Y here if you have a Goodix Berlin IC connected to
411	  your system via I2C.
412
413	  If unsure, say N.
414
415	  To compile this driver as a module, choose M here: the
416	  module will be called goodix_berlin_i2c.
417
418config TOUCHSCREEN_GOODIX_BERLIN_SPI
419	tristate "Goodix Berlin SPI touchscreen"
420	depends on SPI_MASTER
421	select REGMAP
422	select TOUCHSCREEN_GOODIX_BERLIN_CORE
423	help
424	  Say Y here if you have a Goodix Berlin IC connected to
425	  your system via SPI.
426
427	  If unsure, say N.
428
429	  To compile this driver as a module, choose M here: the
430	  module will be called goodix_berlin_spi.
431
432config TOUCHSCREEN_HIDEEP
433	tristate "HiDeep Touch IC"
434	depends on I2C
435	select REGMAP_I2C
436	help
437	  Say Y here if you have a touchscreen using HiDeep.
438
439	  If unsure, say N.
440
441	  To compile this driver as a module, choose M here : the
442	  module will be called hideep_ts.
443
444config TOUCHSCREEN_HIMAX_HX852X
445	tristate "Himax HX852x(ES) touchscreen"
446	depends on I2C
447	help
448	  Say Y here if you have a Himax HX852x(ES) touchscreen.
449	  If unsure, say N.
450
451	  To compile this driver as a module, choose M here: the module
452	  will be called himax_hx852x.
453
454config TOUCHSCREEN_HYCON_HY46XX
455	tristate "Hycon hy46xx touchscreen support"
456	depends on I2C
457	select REGMAP_I2C
458	help
459	  Say Y here if you have a touchscreen using Hycon hy46xx
460
461	  If unsure, say N.
462
463	  To compile this driver as a module, choose M here: the
464	  module will be called hycon-hy46xx.
465
466config TOUCHSCREEN_HYNITRON_CSTXXX
467	tristate "Hynitron touchscreen support"
468	depends on I2C
469	help
470	  Say Y here if you have a touchscreen using a Hynitron
471	  touchscreen controller.
472
473	  If unsure, say N.
474
475	  To compile this driver as a module, choose M here: the
476	  module will be called hynitron-cstxxx.
477
478config TOUCHSCREEN_ILI210X
479	tristate "Ilitek ILI210X based touchscreen"
480	depends on I2C
481	select CRC_CCITT
482	help
483	  Say Y here if you have a ILI210X based touchscreen
484	  controller. This driver supports models ILI2102,
485	  ILI2102s, ILI2103, ILI2103s and ILI2105.
486	  Such kind of chipsets can be found in Amazon Kindle Fire
487	  touchscreens.
488
489	  If unsure, say N.
490
491	  To compile this driver as a module, choose M here: the
492	  module will be called ili210x.
493
494config TOUCHSCREEN_ILITEK
495	tristate "Ilitek I2C 213X/23XX/25XX/Lego Series Touch ICs"
496	depends on I2C
497	help
498	  Say Y here if you have touchscreen with ILITEK touch IC,
499	  it supports 213X/23XX/25XX and other Lego series.
500
501	  If unsure, say N.
502
503	  To compile this driver as a module, choose M here: the
504	  module will be called ilitek_ts_i2c.
505
506config TOUCHSCREEN_IPROC
507	tristate "IPROC touch panel driver support"
508	depends on ARCH_BCM_IPROC || COMPILE_TEST
509	help
510	  Say Y here if you want to add support for the IPROC touch
511	  controller to your system.
512
513	  If unsure, say N.
514
515	  To compile this driver as a module, choose M here: the
516	  module will be called bcm_iproc_tsc.
517
518config TOUCHSCREEN_S6SY761
519	tristate "Samsung S6SY761 Touchscreen driver"
520	depends on I2C
521	help
522	  Say Y if you have the Samsung S6SY761 driver
523
524	  If unsure, say N
525
526	  To compile this driver as module, choose M here: the
527	  module will be called s6sy761.
528
529config TOUCHSCREEN_GUNZE
530	tristate "Gunze AHL-51S touchscreen"
531	select SERIO
532	help
533	  Say Y here if you have the Gunze AHL-51 touchscreen connected to
534	  your system.
535
536	  If unsure, say N.
537
538	  To compile this driver as a module, choose M here: the
539	  module will be called gunze.
540
541config TOUCHSCREEN_EKTF2127
542	tristate "Elan eKTF2127 I2C touchscreen"
543	depends on I2C
544	help
545	  Say Y here if you have an Elan eKTF2127 touchscreen
546	  connected to your system.
547
548	  If unsure, say N.
549
550	  To compile this driver as a module, choose M here: the
551	  module will be called ektf2127.
552
553config TOUCHSCREEN_ELAN
554	tristate "Elan eKTH I2C touchscreen"
555	depends on I2C
556	help
557	  Say Y here if you have an Elan eKTH I2C touchscreen
558	  connected to your system.
559
560	  If unsure, say N.
561
562	  To compile this driver as a module, choose M here: the
563	  module will be called elants_i2c.
564
565config TOUCHSCREEN_ELO
566	tristate "Elo serial touchscreens"
567	select SERIO
568	help
569	  Say Y here if you have an Elo serial touchscreen connected to
570	  your system.
571
572	  If unsure, say N.
573
574	  To compile this driver as a module, choose M here: the
575	  module will be called elo.
576
577config TOUCHSCREEN_WACOM_W8001
578	tristate "Wacom W8001 penabled serial touchscreen"
579	select SERIO
580	help
581	  Say Y here if you have an Wacom W8001 penabled serial touchscreen
582	  connected to your system.
583
584	  If unsure, say N.
585
586	  To compile this driver as a module, choose M here: the
587	  module will be called wacom_w8001.
588
589config TOUCHSCREEN_WACOM_I2C
590	tristate "Wacom Tablet support (I2C)"
591	depends on I2C
592	help
593	  Say Y here if you want to use the I2C version of the Wacom
594	  Pen Tablet.
595
596	  If unsure, say N.
597
598	  To compile this driver as a module, choose M here: the module
599	  will be called wacom_i2c.
600
601config TOUCHSCREEN_LPC32XX
602	tristate "LPC32XX touchscreen controller"
603	depends on ARCH_LPC32XX
604	help
605	  Say Y here if you have a LPC32XX device and want
606	  to support the built-in touchscreen.
607
608	  To compile this driver as a module, choose M here: the
609	  module will be called lpc32xx_ts.
610
611config TOUCHSCREEN_MAX11801
612	tristate "MAX11801 based touchscreens"
613	depends on I2C
614	help
615	  Say Y here if you have a MAX11801 based touchscreen
616	  controller.
617
618	  If unsure, say N.
619
620	  To compile this driver as a module, choose M here: the
621	  module will be called max11801_ts.
622
623config TOUCHSCREEN_MMS114
624	tristate "MELFAS MMS114 touchscreen"
625	depends on I2C
626	help
627	  Say Y here if you have the MELFAS MMS114 touchscreen controller
628	  chip in your system.
629
630	  If unsure, say N.
631
632	  To compile this driver as a module, choose M here: the
633	  module will be called mms114.
634
635config TOUCHSCREEN_MELFAS_MIP4
636	tristate "MELFAS MIP4 Touchscreen"
637	depends on I2C
638	help
639	  Say Y here if you have a MELFAS MIP4 Touchscreen device.
640
641	  If unsure, say N.
642
643	  To compile this driver as a module, choose M here:
644	  the module will be called melfas_mip4.
645
646config TOUCHSCREEN_MSG2638
647	tristate "MStar msg2638 touchscreen support"
648	depends on I2C
649	depends on GPIOLIB || COMPILE_TEST
650	help
651	  Say Y here if you have an I2C touchscreen using MStar msg2638.
652
653	  If unsure, say N.
654
655	  To compile this driver as a module, choose M here: the
656	  module will be called msg2638.
657
658config TOUCHSCREEN_MTOUCH
659	tristate "MicroTouch serial touchscreens"
660	select SERIO
661	help
662	  Say Y here if you have a MicroTouch (3M) serial touchscreen connected to
663	  your system.
664
665	  If unsure, say N.
666
667	  To compile this driver as a module, choose M here: the
668	  module will be called mtouch.
669
670config TOUCHSCREEN_NOVATEK_NVT_TS
671	tristate "Novatek NT11205 touchscreen support"
672	depends on I2C
673	help
674	  Say Y here if you have a Novatek NT11205 touchscreen.
675	  If unsure, say N.
676
677	  To compile this driver as a module, choose M here: the
678	  module will be called novatek-nvt-ts.
679
680config TOUCHSCREEN_IMAGIS
681	tristate "Imagis touchscreen support"
682	depends on I2C
683	help
684	  Say Y here if you have an Imagis IST30xxC touchscreen.
685	  If unsure, say N.
686
687	  To compile this driver as a module, choose M here: the
688	  module will be called imagis.
689
690config TOUCHSCREEN_IMX6UL_TSC
691	tristate "Freescale i.MX6UL touchscreen controller"
692	depends on ((OF && GPIOLIB) || COMPILE_TEST) && HAS_IOMEM
693	help
694	  Say Y here if you have a Freescale i.MX6UL, and want to
695	  use the internal touchscreen controller.
696
697	  If unsure, say N.
698
699	  To compile this driver as a module, choose M here: the
700	  module will be called imx6ul_tsc.
701
702config TOUCHSCREEN_INEXIO
703	tristate "iNexio serial touchscreens"
704	select SERIO
705	help
706	  Say Y here if you have an iNexio serial touchscreen connected to
707	  your system.
708
709	  If unsure, say N.
710
711	  To compile this driver as a module, choose M here: the
712	  module will be called inexio.
713
714config TOUCHSCREEN_MK712
715	tristate "ICS MicroClock MK712 touchscreen"
716	depends on ISA
717	help
718	  Say Y here if you have the ICS MicroClock MK712 touchscreen
719	  controller chip in your system.
720
721	  If unsure, say N.
722
723	  To compile this driver as a module, choose M here: the
724	  module will be called mk712.
725
726config TOUCHSCREEN_HP600
727	tristate "HP Jornada 6xx touchscreen"
728	depends on SH_HP6XX && SH_ADC
729	help
730	  Say Y here if you have a HP Jornada 620/660/680/690 and want to
731	  support the built-in touchscreen.
732
733	  To compile this driver as a module, choose M here: the
734	  module will be called hp680_ts_input.
735
736config TOUCHSCREEN_HP7XX
737	tristate "HP Jornada 7xx touchscreen"
738	depends on SA1100_JORNADA720_SSP
739	help
740	  Say Y here if you have a HP Jornada 710/720/728 and want
741	  to support the built-in touchscreen.
742
743	  To compile this driver as a module, choose M here: the
744	  module will be called jornada720_ts.
745
746config TOUCHSCREEN_IPAQ_MICRO
747	tristate "HP iPAQ Atmel Micro ASIC touchscreen"
748	depends on MFD_IPAQ_MICRO
749	help
750	  Say Y here to enable support for the touchscreen attached to
751	  the Atmel Micro peripheral controller on iPAQ h3100/h3600/h3700
752
753	  If unsure, say N.
754
755	  To compile this driver as a module, choose M here: the
756	  module will be called ipaq-micro-ts.
757
758config TOUCHSCREEN_HTCPEN
759	tristate "HTC Shift X9500 touchscreen"
760	depends on ISA
761	help
762	  Say Y here if you have an HTC Shift UMPC also known as HTC X9500
763	  Clio / Shangrila and want to support the built-in touchscreen.
764
765	  If unsure, say N.
766
767	  To compile this driver as a module, choose M here: the
768	  module will be called htcpen.
769
770config TOUCHSCREEN_PENMOUNT
771	tristate "Penmount serial touchscreen"
772	select SERIO
773	help
774	  Say Y here if you have a Penmount serial touchscreen connected to
775	  your system.
776
777	  If unsure, say N.
778
779	  To compile this driver as a module, choose M here: the
780	  module will be called penmount.
781
782config TOUCHSCREEN_EDT_FT5X06
783	tristate "EDT FocalTech FT5x06 I2C Touchscreen support"
784	depends on I2C
785	select REGMAP_I2C
786	help
787	  Say Y here if you have an EDT "Polytouch" touchscreen based
788	  on the FocalTech FT5x06 family of controllers connected to
789	  your system.
790
791	  If unsure, say N.
792
793	  To compile this driver as a module, choose M here: the
794	  module will be called edt-ft5x06.
795
796config TOUCHSCREEN_RASPBERRYPI_FW
797	tristate "Raspberry Pi's firmware base touch screen support"
798	depends on RASPBERRYPI_FIRMWARE || (RASPBERRYPI_FIRMWARE=n && COMPILE_TEST)
799	help
800	  Say Y here if you have the official Raspberry Pi 7 inch screen on
801	  your system.
802
803	  If unsure, say N.
804
805	  To compile this driver as a module, choose M here: the
806	  module will be called raspberrypi-ts.
807
808config TOUCHSCREEN_MIGOR
809	tristate "Renesas MIGO-R touchscreen"
810	depends on (SH_MIGOR || COMPILE_TEST) && I2C
811	help
812	  Say Y here to enable MIGO-R touchscreen support.
813
814	  If unsure, say N.
815
816	  To compile this driver as a module, choose M here: the
817	  module will be called migor_ts.
818
819config TOUCHSCREEN_TOUCHRIGHT
820	tristate "Touchright serial touchscreen"
821	select SERIO
822	help
823	  Say Y here if you have a Touchright serial touchscreen connected to
824	  your system.
825
826	  If unsure, say N.
827
828	  To compile this driver as a module, choose M here: the
829	  module will be called touchright.
830
831config TOUCHSCREEN_TOUCHWIN
832	tristate "Touchwin serial touchscreen"
833	select SERIO
834	help
835	  Say Y here if you have a Touchwin serial touchscreen connected to
836	  your system.
837
838	  If unsure, say N.
839
840	  To compile this driver as a module, choose M here: the
841	  module will be called touchwin.
842
843config TOUCHSCREEN_TI_AM335X_TSC
844	tristate "TI Touchscreen Interface"
845	depends on MFD_TI_AM335X_TSCADC
846	help
847	  Say Y here if you have 4/5/8 wire touchscreen controller
848	  to be connected to the ADC controller on your TI AM335x SoC.
849
850	  If unsure, say N.
851
852	  To compile this driver as a module, choose M here: the
853	  module will be called ti_am335x_tsc.
854
855config TOUCHSCREEN_PIXCIR
856	tristate "PIXCIR I2C touchscreens"
857	depends on I2C
858	help
859	  Say Y here if you have a pixcir i2c touchscreen
860	  controller.
861
862	  If unsure, say N.
863
864	  To compile this driver as a module, choose M here: the
865	  module will be called pixcir_i2c_ts.
866
867config TOUCHSCREEN_WDT87XX_I2C
868	tristate "Weida HiTech I2C touchscreen"
869	depends on I2C
870	help
871	  Say Y here if you have a Weida WDT87XX I2C touchscreen
872	  connected to your system.
873
874	  If unsure, say N.
875
876	  To compile this driver as a module, choose M here: the
877	  module will be called wdt87xx_i2c.
878
879config TOUCHSCREEN_WM831X
880	tristate "Support for WM831x touchscreen controllers"
881	depends on MFD_WM831X
882	help
883	  This enables support for the touchscreen controller on the WM831x
884	  series of PMICs.
885
886	  To compile this driver as a module, choose M here: the
887	  module will be called wm831x-ts.
888
889config TOUCHSCREEN_WM97XX
890	tristate "Support for WM97xx AC97 touchscreen controllers"
891	depends on AC97_BUS || AC97_BUS_NEW
892	help
893	  Say Y here if you have a Wolfson Microelectronics WM97xx
894	  touchscreen connected to your system. Note that this option
895	  only enables core driver, you will also need to select
896	  support for appropriate chip below.
897
898	  If unsure, say N.
899
900	  To compile this driver as a module, choose M here: the
901	  module will be called wm97xx-ts.
902
903config TOUCHSCREEN_WM9705
904	bool "WM9705 Touchscreen interface support"
905	depends on TOUCHSCREEN_WM97XX
906	default y
907	help
908	  Say Y here to enable support for the Wolfson Microelectronics
909	  WM9705 touchscreen controller.
910
911config TOUCHSCREEN_WM9712
912	bool "WM9712 Touchscreen interface support"
913	depends on TOUCHSCREEN_WM97XX
914	default y
915	help
916	  Say Y here to enable support for the Wolfson Microelectronics
917	  WM9712 touchscreen controller.
918
919config TOUCHSCREEN_WM9713
920	bool "WM9713 Touchscreen interface support"
921	depends on TOUCHSCREEN_WM97XX
922	default y
923	help
924	  Say Y here to enable support for the Wolfson Microelectronics
925	  WM9713 touchscreen controller.
926
927config TOUCHSCREEN_WM97XX_MAINSTONE
928	tristate "WM97xx Mainstone/Palm accelerated touch"
929	depends on TOUCHSCREEN_WM97XX && ARCH_PXA
930	depends on SND_PXA2XX_LIB_AC97
931	help
932	  Say Y here for support for streaming mode with WM97xx touchscreens
933	  on Mainstone, Palm Tungsten T5, TX and LifeDrive systems.
934
935	  If unsure, say N.
936
937	  To compile this driver as a module, choose M here: the
938	  module will be called mainstone-wm97xx.
939
940config TOUCHSCREEN_USB_COMPOSITE
941	tristate "USB Touchscreen Driver"
942	depends on USB_ARCH_HAS_HCD
943	select USB
944	help
945	  USB Touchscreen driver for:
946	  - eGalax Touchkit USB (also includes eTurboTouch CT-410/510/700)
947	  - PanJit TouchSet USB
948	  - 3M MicroTouch USB (EX II series)
949	  - ITM
950	  - some other eTurboTouch
951	  - Gunze AHL61
952	  - DMC TSC-10/25
953	  - IRTOUCHSYSTEMS/UNITOP
954	  - IdealTEK URTC1000
955	  - GoTop Super_Q2/GogoPen/PenPower tablets
956	  - JASTEC USB Touch Controller/DigiTech DTR-02U
957	  - Zytronic controllers
958	  - Elo TouchSystems 2700 IntelliTouch
959	  - EasyTouch USB Touch Controller from Data Module
960	  - e2i (Mimo monitors)
961
962	  Have a look at <http://linux.chapter7.ch/touchkit/> for
963	  a usage description and the required user-space stuff.
964
965	  To compile this driver as a module, choose M here: the
966	  module will be called usbtouchscreen.
967
968config TOUCHSCREEN_MXS_LRADC
969	tristate "Freescale i.MX23/i.MX28 LRADC touchscreen"
970	depends on MFD_MXS_LRADC
971	help
972	  Say Y here if you have a touchscreen connected to the low-resolution
973	  analog-to-digital converter (LRADC) on an i.MX23 or i.MX28 processor.
974
975	  To compile this driver as a module, choose M here: the module will be
976	  called mxs-lradc-ts.
977
978config TOUCHSCREEN_MX25
979	tristate "Freescale i.MX25 touchscreen input driver"
980	depends on MFD_MX25_TSADC
981	help
982	  Enable support for touchscreen connected to your i.MX25.
983
984	  To compile this driver as a module, choose M here: the
985	  module will be called fsl-imx25-tcq.
986
987config TOUCHSCREEN_MC13783
988	tristate "Freescale MC13783 touchscreen input driver"
989	depends on MFD_MC13XXX
990	help
991	  Say Y here if you have an Freescale MC13783 PMIC on your
992	  board and want to use its touchscreen
993
994	  If unsure, say N.
995
996	  To compile this driver as a module, choose M here: the
997	  module will be called mc13783_ts.
998
999config TOUCHSCREEN_USB_EGALAX
1000	default y
1001	bool "eGalax, eTurboTouch CT-410/510/700 device support" if EXPERT
1002	depends on TOUCHSCREEN_USB_COMPOSITE
1003
1004config TOUCHSCREEN_USB_PANJIT
1005	default y
1006	bool "PanJit device support" if EXPERT
1007	depends on TOUCHSCREEN_USB_COMPOSITE
1008
1009config TOUCHSCREEN_USB_3M
1010	default y
1011	bool "3M/Microtouch EX II series device support" if EXPERT
1012	depends on TOUCHSCREEN_USB_COMPOSITE
1013
1014config TOUCHSCREEN_USB_ITM
1015	default y
1016	bool "ITM device support" if EXPERT
1017	depends on TOUCHSCREEN_USB_COMPOSITE
1018
1019config TOUCHSCREEN_USB_ETURBO
1020	default y
1021	bool "eTurboTouch (non-eGalax compatible) device support" if EXPERT
1022	depends on TOUCHSCREEN_USB_COMPOSITE
1023
1024config TOUCHSCREEN_USB_GUNZE
1025	default y
1026	bool "Gunze AHL61 device support" if EXPERT
1027	depends on TOUCHSCREEN_USB_COMPOSITE
1028
1029config TOUCHSCREEN_USB_DMC_TSC10
1030	default y
1031	bool "DMC TSC-10/25 device support" if EXPERT
1032	depends on TOUCHSCREEN_USB_COMPOSITE
1033
1034config TOUCHSCREEN_USB_IRTOUCH
1035	default y
1036	bool "IRTOUCHSYSTEMS/UNITOP device support" if EXPERT
1037	depends on TOUCHSCREEN_USB_COMPOSITE
1038
1039config TOUCHSCREEN_USB_IDEALTEK
1040	default y
1041	bool "IdealTEK URTC1000 device support" if EXPERT
1042	depends on TOUCHSCREEN_USB_COMPOSITE
1043
1044config TOUCHSCREEN_USB_GENERAL_TOUCH
1045	default y
1046	bool "GeneralTouch Touchscreen device support" if EXPERT
1047	depends on TOUCHSCREEN_USB_COMPOSITE
1048
1049config TOUCHSCREEN_USB_GOTOP
1050	default y
1051	bool "GoTop Super_Q2/GogoPen/PenPower tablet device support" if EXPERT
1052	depends on TOUCHSCREEN_USB_COMPOSITE
1053
1054config TOUCHSCREEN_USB_JASTEC
1055	default y
1056	bool "JASTEC/DigiTech DTR-02U USB touch controller device support" if EXPERT
1057	depends on TOUCHSCREEN_USB_COMPOSITE
1058
1059config TOUCHSCREEN_USB_ELO
1060	default y
1061	bool "Elo TouchSystems 2700 IntelliTouch controller device support" if EXPERT
1062	depends on TOUCHSCREEN_USB_COMPOSITE
1063
1064config TOUCHSCREEN_USB_E2I
1065	default y
1066	bool "e2i Touchscreen controller (e.g. from Mimo 740)" if EXPERT
1067	depends on TOUCHSCREEN_USB_COMPOSITE
1068
1069config TOUCHSCREEN_USB_ZYTRONIC
1070	default y
1071	bool "Zytronic controller" if EXPERT
1072	depends on TOUCHSCREEN_USB_COMPOSITE
1073
1074config TOUCHSCREEN_USB_ETT_TC45USB
1075	default y
1076	bool "ET&T USB series TC4UM/TC5UH touchscreen controller support" if EXPERT
1077	depends on TOUCHSCREEN_USB_COMPOSITE
1078
1079config TOUCHSCREEN_USB_NEXIO
1080	default y
1081	bool "NEXIO/iNexio device support" if EXPERT
1082	depends on TOUCHSCREEN_USB_COMPOSITE
1083
1084config TOUCHSCREEN_USB_EASYTOUCH
1085	default y
1086	bool "EasyTouch USB Touch controller device support" if EXPERT
1087	depends on TOUCHSCREEN_USB_COMPOSITE
1088	help
1089	  Say Y here if you have an EasyTouch USB Touch controller.
1090	  If unsure, say N.
1091
1092config TOUCHSCREEN_TOUCHIT213
1093	tristate "Sahara TouchIT-213 touchscreen"
1094	select SERIO
1095	help
1096	  Say Y here if you have a Sahara TouchIT-213 Tablet PC.
1097
1098	  If unsure, say N.
1099
1100	  To compile this driver as a module, choose M here: the
1101	  module will be called touchit213.
1102
1103config TOUCHSCREEN_TS4800
1104	tristate "TS-4800 touchscreen"
1105	depends on HAS_IOMEM && OF
1106	depends on SOC_IMX51 || COMPILE_TEST
1107	select MFD_SYSCON
1108	help
1109	  Say Y here if you have a touchscreen on a TS-4800 board.
1110
1111	  On TS-4800, the touchscreen is not handled directly by Linux but by
1112	  a companion FPGA.
1113
1114	  If unsure, say N.
1115
1116	  To compile this driver as a module, choose M here: the
1117	  module will be called ts4800_ts.
1118
1119config TOUCHSCREEN_TSC_SERIO
1120	tristate "TSC-10/25/40 serial touchscreen support"
1121	select SERIO
1122	help
1123	  Say Y here if you have a TSC-10, 25 or 40 serial touchscreen connected
1124	  to your system.
1125
1126	  If unsure, say N.
1127
1128	  To compile this driver as a module, choose M here: the
1129	  module will be called tsc40.
1130
1131config TOUCHSCREEN_TSC200X_CORE
1132	tristate
1133
1134config TOUCHSCREEN_TSC2004
1135	tristate "TSC2004 based touchscreens"
1136	depends on I2C
1137	select REGMAP_I2C
1138	select TOUCHSCREEN_TSC200X_CORE
1139	help
1140	  Say Y here if you have a TSC2004 based touchscreen.
1141
1142	  If unsure, say N.
1143
1144	  To compile this driver as a module, choose M here: the
1145	  module will be called tsc2004.
1146
1147config TOUCHSCREEN_TSC2005
1148	tristate "TSC2005 based touchscreens"
1149	depends on SPI_MASTER
1150	select REGMAP_SPI
1151	select TOUCHSCREEN_TSC200X_CORE
1152	help
1153	  Say Y here if you have a TSC2005 based touchscreen.
1154
1155	  If unsure, say N.
1156
1157	  To compile this driver as a module, choose M here: the
1158	  module will be called tsc2005.
1159
1160config TOUCHSCREEN_TSC2007
1161	tristate "TSC2007 based touchscreens"
1162	depends on I2C
1163	help
1164	  Say Y here if you have a TSC2007 based touchscreen.
1165
1166	  If unsure, say N.
1167
1168	  To compile this driver as a module, choose M here: the
1169	  module will be called tsc2007.
1170
1171config TOUCHSCREEN_TSC2007_IIO
1172	bool "IIO interface for external ADC input and temperature"
1173	depends on TOUCHSCREEN_TSC2007
1174	depends on IIO=y || IIO=TOUCHSCREEN_TSC2007
1175	help
1176	  Saying Y here adds an iio interface to the tsc2007 which
1177	  provides values for the AUX input (used for e.g. battery
1178	  or ambient light monitoring), temperature and raw input
1179	  values.
1180
1181config TOUCHSCREEN_PCAP
1182	tristate "Motorola PCAP touchscreen"
1183	depends on EZX_PCAP
1184	help
1185	  Say Y here if you have a Motorola EZX telephone and
1186	  want to enable support for the built-in touchscreen.
1187
1188	  To compile this driver as a module, choose M here: the
1189	  module will be called pcap_ts.
1190
1191config TOUCHSCREEN_RM_TS
1192	tristate "Raydium I2C Touchscreen"
1193	depends on I2C
1194	depends on GPIOLIB || COMPILE_TEST
1195	help
1196	  Say Y here if you have Raydium series I2C touchscreen,
1197	  such as RM32380, connected to your system.
1198
1199	  If unsure, say N.
1200
1201	  To compile this driver as a module, choose M here: the
1202	  module will be called raydium_i2c_ts.
1203
1204config TOUCHSCREEN_SILEAD
1205	tristate "Silead I2C touchscreen"
1206	depends on I2C
1207	help
1208	  Say Y here if you have the Silead touchscreen connected to
1209	  your system.
1210
1211	  If unsure, say N.
1212
1213	  To compile this driver as a module, choose M here: the
1214	  module will be called silead.
1215
1216config TOUCHSCREEN_SIS_I2C
1217	tristate "SiS 9200 family I2C touchscreen"
1218	depends on I2C
1219	select CRC_ITU_T
1220	depends on GPIOLIB || COMPILE_TEST
1221	help
1222	  This enables support for SiS 9200 family over I2C based touchscreens.
1223
1224	  If unsure, say N.
1225
1226	  To compile this driver as a module, choose M here: the
1227	  module will be called sis_i2c.
1228
1229config TOUCHSCREEN_ST1232
1230	tristate "Sitronix ST1232 or ST1633 touchscreen controllers"
1231	depends on I2C
1232	help
1233	  Say Y here if you want to support the Sitronix ST1232
1234	  or ST1633 touchscreen controller.
1235
1236	  If unsure, say N.
1237
1238	  To compile this driver as a module, choose M here: the
1239	  module will be called st1232_ts.
1240
1241config TOUCHSCREEN_STMFTS
1242	tristate "STMicroelectronics STMFTS touchscreen"
1243	depends on I2C
1244	depends on LEDS_CLASS
1245	help
1246	  Say Y here if you want support for STMicroelectronics
1247	  STMFTS touchscreen.
1248
1249	  To compile this driver as a module, choose M here: the
1250	  module will be called stmfts.
1251
1252config TOUCHSCREEN_STMPE
1253	tristate "STMicroelectronics STMPE touchscreens"
1254	depends on MFD_STMPE
1255	depends on OF
1256	help
1257	  Say Y here if you want support for STMicroelectronics
1258	  STMPE touchscreen controllers.
1259
1260	  To compile this driver as a module, choose M here: the
1261	  module will be called stmpe-ts.
1262
1263config TOUCHSCREEN_SUN4I
1264	tristate "Allwinner sun4i resistive touchscreen controller support"
1265	depends on ARCH_SUNXI || COMPILE_TEST
1266	depends on HWMON
1267	depends on THERMAL || !THERMAL_OF
1268	help
1269	  This selects support for the resistive touchscreen controller
1270	  found on Allwinner sunxi SoCs.
1271
1272	  To compile this driver as a module, choose M here: the
1273	  module will be called sun4i-ts.
1274
1275config TOUCHSCREEN_SUR40
1276	tristate "Samsung SUR40 (Surface 2.0/PixelSense) touchscreen"
1277	depends on USB && MEDIA_USB_SUPPORT && HAS_DMA
1278	depends on VIDEO_DEV
1279	select VIDEOBUF2_DMA_SG
1280	help
1281	  Say Y here if you want support for the Samsung SUR40 touchscreen
1282	  (also known as Microsoft Surface 2.0 or Microsoft PixelSense).
1283
1284	  To compile this driver as a module, choose M here: the
1285	  module will be called sur40.
1286
1287config TOUCHSCREEN_SURFACE3_SPI
1288	tristate "Ntrig/Microsoft Surface 3 SPI touchscreen"
1289	depends on SPI
1290	depends on GPIOLIB || COMPILE_TEST
1291	help
1292	  Say Y here if you have the Ntrig/Microsoft SPI touchscreen
1293	  controller chip as found on the Surface 3 in your system.
1294
1295	  If unsure, say N.
1296
1297	  To compile this driver as a module, choose M here: the
1298	  module will be called surface3_spi.
1299
1300config TOUCHSCREEN_SX8654
1301	tristate "Semtech SX8654 touchscreen"
1302	depends on I2C
1303	help
1304	  Say Y here if you have a Semtech SX8654 touchscreen controller.
1305
1306	  If unsure, say N
1307
1308	  To compile this driver as a module, choose M here: the
1309	  module will be called sx8654.
1310
1311config TOUCHSCREEN_TPS6507X
1312	tristate "TPS6507x based touchscreens"
1313	depends on I2C
1314	help
1315	  Say Y here if you have a TPS6507x based touchscreen
1316	  controller.
1317
1318	  If unsure, say N.
1319
1320	  To compile this driver as a module, choose M here: the
1321	  module will be called tps6507x_ts.
1322
1323config TOUCHSCREEN_ZET6223
1324	tristate "Zeitec ZET6223 touchscreen driver"
1325	depends on I2C
1326	help
1327	  Say Y here if you have a touchscreen using Zeitec ZET6223
1328
1329	  If unsure, say N.
1330
1331	  To compile this driver as a module, choose M here: the
1332	  module will be called zet6223.
1333
1334config TOUCHSCREEN_ZFORCE
1335	tristate "Neonode zForce infrared touchscreens"
1336	depends on I2C
1337	depends on GPIOLIB || COMPILE_TEST
1338	help
1339	  Say Y here if you have a touchscreen using the zforce
1340	  infraread technology from Neonode.
1341
1342	  If unsure, say N.
1343
1344	  To compile this driver as a module, choose M here: the
1345	  module will be called zforce_ts.
1346
1347config TOUCHSCREEN_COLIBRI_VF50
1348	tristate "Toradex Colibri on board touchscreen driver"
1349	depends on IIO
1350	depends on GPIOLIB || COMPILE_TEST
1351	help
1352	  Say Y here if you have a Colibri VF50 and plan to use
1353	  the on-board provided 4-wire touchscreen driver.
1354
1355	  If unsure, say N.
1356
1357	  To compile this driver as a module, choose M here: the
1358	  module will be called colibri_vf50_ts.
1359
1360config TOUCHSCREEN_ROHM_BU21023
1361	tristate "ROHM BU21023/24 Dual touch support resistive touchscreens"
1362	depends on I2C
1363	help
1364	  Say Y here if you have a touchscreen using ROHM BU21023/24.
1365
1366	  If unsure, say N.
1367
1368	  To compile this driver as a module, choose M here: the
1369	  module will be called bu21023_ts.
1370
1371config TOUCHSCREEN_IQS5XX
1372	tristate "Azoteq IQS550/572/525 trackpad/touchscreen controller"
1373	depends on I2C
1374	help
1375	  Say Y to enable support for the Azoteq IQS550/572/525
1376	  family of trackpad/touchscreen controllers.
1377
1378	  To compile this driver as a module, choose M here: the
1379	  module will be called iqs5xx.
1380
1381config TOUCHSCREEN_IQS7211
1382	tristate "Azoteq IQS7210A/7211A/E trackpad/touchscreen controller"
1383	depends on I2C
1384	help
1385	  Say Y to enable support for the Azoteq IQS7210A/7211A/E
1386	  family of trackpad/touchscreen controllers.
1387
1388	  To compile this driver as a module, choose M here: the
1389	  module will be called iqs7211.
1390
1391config TOUCHSCREEN_ZINITIX
1392	tristate "Zinitix touchscreen support"
1393	depends on I2C
1394	help
1395	  Say Y here if you have a touchscreen using Zinitix bt541,
1396	  or something similar enough.
1397
1398	  If unsure, say N.
1399
1400	  To compile this driver as a module, choose M here: the
1401	  module will be called zinitix.
1402
1403config TOUCHSCREEN_HIMAX_HX83112B
1404	tristate "Himax hx83112b touchscreen driver"
1405	depends on I2C
1406	select REGMAP_I2C
1407	help
1408	  Say Y here to enable support for Himax hx83112b touchscreens.
1409
1410	  If unsure, say N.
1411
1412	  To compile this driver as a module, choose M here: the
1413	  module will be called himax_hx83112b.
1414
1415endif
1416