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