xref: /linux/drivers/input/touchscreen/Kconfig (revision cbdb24e59e7fc1943bc72bab4a7b477d298a2d80)
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_V4L2=y || (TOUCHSCREEN_ATMEL_MXT=m && VIDEO_V4L2=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_ILI210X
415	tristate "Ilitek ILI210X based touchscreen"
416	depends on I2C
417	help
418	  Say Y here if you have a ILI210X based touchscreen
419	  controller. This driver supports models ILI2102,
420	  ILI2102s, ILI2103, ILI2103s and ILI2105.
421	  Such kind of chipsets can be found in Amazon Kindle Fire
422	  touchscreens.
423
424	  If unsure, say N.
425
426	  To compile this driver as a module, choose M here: the
427	  module will be called ili210x.
428
429config TOUCHSCREEN_IPROC
430	tristate "IPROC touch panel driver support"
431	depends on ARCH_BCM_IPROC || COMPILE_TEST
432	help
433	  Say Y here if you want to add support for the IPROC touch
434	  controller to your system.
435
436	  If unsure, say N.
437
438	  To compile this driver as a module, choose M here: the
439	  module will be called bcm_iproc_tsc.
440
441config TOUCHSCREEN_S3C2410
442	tristate "Samsung S3C2410/generic touchscreen input driver"
443	depends on ARCH_S3C24XX || SAMSUNG_DEV_TS
444	depends on S3C_ADC
445	help
446	  Say Y here if you have the s3c2410 touchscreen.
447
448	  If unsure, say N.
449
450	  To compile this driver as a module, choose M here: the
451	  module will be called s3c2410_ts.
452
453config TOUCHSCREEN_S6SY761
454	tristate "Samsung S6SY761 Touchscreen driver"
455	depends on I2C
456	help
457	  Say Y if you have the Samsung S6SY761 driver
458
459	  If unsure, say N
460
461	  To compile this driver as module, choose M here: the
462	  module will be called s6sy761.
463
464config TOUCHSCREEN_GUNZE
465	tristate "Gunze AHL-51S touchscreen"
466	select SERIO
467	help
468	  Say Y here if you have the Gunze AHL-51 touchscreen connected to
469	  your system.
470
471	  If unsure, say N.
472
473	  To compile this driver as a module, choose M here: the
474	  module will be called gunze.
475
476config TOUCHSCREEN_EKTF2127
477	tristate "Elan eKTF2127 I2C touchscreen"
478	depends on I2C
479	help
480	  Say Y here if you have an Elan eKTF2127 touchscreen
481	  connected to your system.
482
483	  If unsure, say N.
484
485	  To compile this driver as a module, choose M here: the
486	  module will be called ektf2127.
487
488config TOUCHSCREEN_ELAN
489	tristate "Elan eKTH I2C touchscreen"
490	depends on I2C
491	help
492	  Say Y here if you have an Elan eKTH I2C touchscreen
493	  connected to your system.
494
495	  If unsure, say N.
496
497	  To compile this driver as a module, choose M here: the
498	  module will be called elants_i2c.
499
500config TOUCHSCREEN_ELO
501	tristate "Elo serial touchscreens"
502	select SERIO
503	help
504	  Say Y here if you have an Elo serial 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 elo.
511
512config TOUCHSCREEN_WACOM_W8001
513	tristate "Wacom W8001 penabled serial touchscreen"
514	select SERIO
515	help
516	  Say Y here if you have an Wacom W8001 penabled serial 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 wacom_w8001.
523
524config TOUCHSCREEN_WACOM_I2C
525	tristate "Wacom Tablet support (I2C)"
526	depends on I2C
527	help
528	  Say Y here if you want to use the I2C version of the Wacom
529	  Pen Tablet.
530
531	  If unsure, say N.
532
533	  To compile this driver as a module, choose M here: the module
534	  will be called wacom_i2c.
535
536config TOUCHSCREEN_LPC32XX
537	tristate "LPC32XX touchscreen controller"
538	depends on ARCH_LPC32XX
539	help
540	  Say Y here if you have a LPC32XX device and want
541	  to support the built-in touchscreen.
542
543	  To compile this driver as a module, choose M here: the
544	  module will be called lpc32xx_ts.
545
546config TOUCHSCREEN_MAX11801
547	tristate "MAX11801 based touchscreens"
548	depends on I2C
549	help
550	  Say Y here if you have a MAX11801 based touchscreen
551	  controller.
552
553	  If unsure, say N.
554
555	  To compile this driver as a module, choose M here: the
556	  module will be called max11801_ts.
557
558config TOUCHSCREEN_MCS5000
559	tristate "MELFAS MCS-5000 touchscreen"
560	depends on I2C
561	help
562	  Say Y here if you have the MELFAS MCS-5000 touchscreen controller
563	  chip in your system.
564
565	  If unsure, say N.
566
567	  To compile this driver as a module, choose M here: the
568	  module will be called mcs5000_ts.
569
570config TOUCHSCREEN_MMS114
571	tristate "MELFAS MMS114 touchscreen"
572	depends on I2C
573	help
574	  Say Y here if you have the MELFAS MMS114 touchscreen controller
575	  chip in your system.
576
577	  If unsure, say N.
578
579	  To compile this driver as a module, choose M here: the
580	  module will be called mms114.
581
582config TOUCHSCREEN_MELFAS_MIP4
583	tristate "MELFAS MIP4 Touchscreen"
584	depends on I2C
585	help
586	  Say Y here if you have a MELFAS MIP4 Touchscreen device.
587
588	  If unsure, say N.
589
590	  To compile this driver as a module, choose M here:
591	  the module will be called melfas_mip4.
592
593config TOUCHSCREEN_MSG2638
594	tristate "MStar msg2638 touchscreen support"
595	depends on I2C
596	depends on GPIOLIB || COMPILE_TEST
597	help
598	  Say Y here if you have an I2C touchscreen using MStar msg2638.
599
600	  If unsure, say N.
601
602	  To compile this driver as a module, choose M here: the
603	  module will be called msg2638.
604
605config TOUCHSCREEN_MTOUCH
606	tristate "MicroTouch serial touchscreens"
607	select SERIO
608	help
609	  Say Y here if you have a MicroTouch (3M) serial touchscreen connected to
610	  your system.
611
612	  If unsure, say N.
613
614	  To compile this driver as a module, choose M here: the
615	  module will be called mtouch.
616
617config TOUCHSCREEN_IMX6UL_TSC
618	tristate "Freescale i.MX6UL touchscreen controller"
619	depends on ((OF && GPIOLIB) || COMPILE_TEST) && HAS_IOMEM
620	help
621	  Say Y here if you have a Freescale i.MX6UL, and want to
622	  use the internal touchscreen controller.
623
624	  If unsure, say N.
625
626	  To compile this driver as a module, choose M here: the
627	  module will be called imx6ul_tsc.
628
629config TOUCHSCREEN_INEXIO
630	tristate "iNexio serial touchscreens"
631	select SERIO
632	help
633	  Say Y here if you have an iNexio serial touchscreen connected to
634	  your system.
635
636	  If unsure, say N.
637
638	  To compile this driver as a module, choose M here: the
639	  module will be called inexio.
640
641config TOUCHSCREEN_MK712
642	tristate "ICS MicroClock MK712 touchscreen"
643	help
644	  Say Y here if you have the ICS MicroClock MK712 touchscreen
645	  controller chip in your system.
646
647	  If unsure, say N.
648
649	  To compile this driver as a module, choose M here: the
650	  module will be called mk712.
651
652config TOUCHSCREEN_HP600
653	tristate "HP Jornada 6xx touchscreen"
654	depends on SH_HP6XX && SH_ADC
655	help
656	  Say Y here if you have a HP Jornada 620/660/680/690 and want to
657	  support the built-in touchscreen.
658
659	  To compile this driver as a module, choose M here: the
660	  module will be called hp680_ts_input.
661
662config TOUCHSCREEN_HP7XX
663	tristate "HP Jornada 7xx touchscreen"
664	depends on SA1100_JORNADA720_SSP
665	help
666	  Say Y here if you have a HP Jornada 710/720/728 and want
667	  to support the built-in touchscreen.
668
669	  To compile this driver as a module, choose M here: the
670	  module will be called jornada720_ts.
671
672config TOUCHSCREEN_IPAQ_MICRO
673	tristate "HP iPAQ Atmel Micro ASIC touchscreen"
674	depends on MFD_IPAQ_MICRO
675	help
676	  Say Y here to enable support for the touchscreen attached to
677	  the Atmel Micro peripheral controller on iPAQ h3100/h3600/h3700
678
679	  If unsure, say N.
680
681	  To compile this driver as a module, choose M here: the
682	  module will be called ipaq-micro-ts.
683
684config TOUCHSCREEN_HTCPEN
685	tristate "HTC Shift X9500 touchscreen"
686	depends on ISA
687	help
688	  Say Y here if you have an HTC Shift UMPC also known as HTC X9500
689	  Clio / Shangrila and want to support the built-in touchscreen.
690
691	  If unsure, say N.
692
693	  To compile this driver as a module, choose M here: the
694	  module will be called htcpen.
695
696config TOUCHSCREEN_PENMOUNT
697	tristate "Penmount serial touchscreen"
698	select SERIO
699	help
700	  Say Y here if you have a Penmount serial touchscreen connected to
701	  your system.
702
703	  If unsure, say N.
704
705	  To compile this driver as a module, choose M here: the
706	  module will be called penmount.
707
708config TOUCHSCREEN_EDT_FT5X06
709	tristate "EDT FocalTech FT5x06 I2C Touchscreen support"
710	depends on I2C
711	help
712	  Say Y here if you have an EDT "Polytouch" touchscreen based
713	  on the FocalTech FT5x06 family of controllers connected to
714	  your system.
715
716	  If unsure, say N.
717
718	  To compile this driver as a module, choose M here: the
719	  module will be called edt-ft5x06.
720
721config TOUCHSCREEN_RASPBERRYPI_FW
722	tristate "Raspberry Pi's firmware base touch screen support"
723	depends on RASPBERRYPI_FIRMWARE || (RASPBERRYPI_FIRMWARE=n && COMPILE_TEST)
724	help
725	  Say Y here if you have the official Raspberry Pi 7 inch screen on
726	  your system.
727
728	  If unsure, say N.
729
730	  To compile this driver as a module, choose M here: the
731	  module will be called raspberrypi-ts.
732
733config TOUCHSCREEN_MIGOR
734	tristate "Renesas MIGO-R touchscreen"
735	depends on (SH_MIGOR || COMPILE_TEST) && I2C
736	help
737	  Say Y here to enable MIGO-R touchscreen support.
738
739	  If unsure, say N.
740
741	  To compile this driver as a module, choose M here: the
742	  module will be called migor_ts.
743
744config TOUCHSCREEN_TOUCHRIGHT
745	tristate "Touchright serial touchscreen"
746	select SERIO
747	help
748	  Say Y here if you have a Touchright serial touchscreen connected to
749	  your system.
750
751	  If unsure, say N.
752
753	  To compile this driver as a module, choose M here: the
754	  module will be called touchright.
755
756config TOUCHSCREEN_TOUCHWIN
757	tristate "Touchwin serial touchscreen"
758	select SERIO
759	help
760	  Say Y here if you have a Touchwin serial touchscreen connected to
761	  your system.
762
763	  If unsure, say N.
764
765	  To compile this driver as a module, choose M here: the
766	  module will be called touchwin.
767
768config TOUCHSCREEN_TI_AM335X_TSC
769	tristate "TI Touchscreen Interface"
770	depends on MFD_TI_AM335X_TSCADC
771	help
772	  Say Y here if you have 4/5/8 wire touchscreen controller
773	  to be connected to the ADC controller on your TI AM335x SoC.
774
775	  If unsure, say N.
776
777	  To compile this driver as a module, choose M here: the
778	  module will be called ti_am335x_tsc.
779
780config TOUCHSCREEN_UCB1400
781	tristate "Philips UCB1400 touchscreen"
782	depends on AC97_BUS
783	depends on UCB1400_CORE
784	help
785	  This enables support for the Philips UCB1400 touchscreen interface.
786	  The UCB1400 is an AC97 audio codec.  The touchscreen interface
787	  will be initialized only after the ALSA subsystem has been
788	  brought up and the UCB1400 detected.  You therefore have to
789	  configure ALSA support as well (either built-in or modular,
790	  independently of whether this driver is itself built-in or
791	  modular) for this driver to work.
792
793	  To compile this driver as a module, choose M here: the
794	  module will be called ucb1400_ts.
795
796config TOUCHSCREEN_PIXCIR
797	tristate "PIXCIR I2C touchscreens"
798	depends on I2C
799	help
800	  Say Y here if you have a pixcir i2c touchscreen
801	  controller.
802
803	  If unsure, say N.
804
805	  To compile this driver as a module, choose M here: the
806	  module will be called pixcir_i2c_ts.
807
808config TOUCHSCREEN_WDT87XX_I2C
809	tristate "Weida HiTech I2C touchscreen"
810	depends on I2C
811	help
812	  Say Y here if you have a Weida WDT87XX I2C touchscreen
813	  connected to your system.
814
815	  If unsure, say N.
816
817	  To compile this driver as a module, choose M here: the
818	  module will be called wdt87xx_i2c.
819
820config TOUCHSCREEN_WM831X
821	tristate "Support for WM831x touchscreen controllers"
822	depends on MFD_WM831X
823	help
824	  This enables support for the touchscreen controller on the WM831x
825	  series of PMICs.
826
827	  To compile this driver as a module, choose M here: the
828	  module will be called wm831x-ts.
829
830config TOUCHSCREEN_WM97XX
831	tristate "Support for WM97xx AC97 touchscreen controllers"
832	depends on AC97_BUS || AC97_BUS_NEW
833	help
834	  Say Y here if you have a Wolfson Microelectronics WM97xx
835	  touchscreen connected to your system. Note that this option
836	  only enables core driver, you will also need to select
837	  support for appropriate chip below.
838
839	  If unsure, say N.
840
841	  To compile this driver as a module, choose M here: the
842	  module will be called wm97xx-ts.
843
844config TOUCHSCREEN_WM9705
845	bool "WM9705 Touchscreen interface support"
846	depends on TOUCHSCREEN_WM97XX
847	default y
848	help
849	  Say Y here to enable support for the Wolfson Microelectronics
850	  WM9705 touchscreen controller.
851
852config TOUCHSCREEN_WM9712
853	bool "WM9712 Touchscreen interface support"
854	depends on TOUCHSCREEN_WM97XX
855	default y
856	help
857	  Say Y here to enable support for the Wolfson Microelectronics
858	  WM9712 touchscreen controller.
859
860config TOUCHSCREEN_WM9713
861	bool "WM9713 Touchscreen interface support"
862	depends on TOUCHSCREEN_WM97XX
863	default y
864	help
865	  Say Y here to enable support for the Wolfson Microelectronics
866	  WM9713 touchscreen controller.
867
868config TOUCHSCREEN_WM97XX_MAINSTONE
869	tristate "WM97xx Mainstone/Palm accelerated touch"
870	depends on TOUCHSCREEN_WM97XX && ARCH_PXA
871	help
872	  Say Y here for support for streaming mode with WM97xx touchscreens
873	  on Mainstone, Palm Tungsten T5, TX and LifeDrive systems.
874
875	  If unsure, say N.
876
877	  To compile this driver as a module, choose M here: the
878	  module will be called mainstone-wm97xx.
879
880config TOUCHSCREEN_WM97XX_ZYLONITE
881	tristate "Zylonite accelerated touch"
882	depends on TOUCHSCREEN_WM97XX && MACH_ZYLONITE
883	select TOUCHSCREEN_WM9713
884	help
885	  Say Y here for support for streaming mode with the touchscreen
886	  on Zylonite systems.
887
888	  If unsure, say N.
889
890	  To compile this driver as a module, choose M here: the
891	  module will be called zylonite-wm97xx.
892
893config TOUCHSCREEN_USB_COMPOSITE
894	tristate "USB Touchscreen Driver"
895	depends on USB_ARCH_HAS_HCD
896	select USB
897	help
898	  USB Touchscreen driver for:
899	  - eGalax Touchkit USB (also includes eTurboTouch CT-410/510/700)
900	  - PanJit TouchSet USB
901	  - 3M MicroTouch USB (EX II series)
902	  - ITM
903	  - some other eTurboTouch
904	  - Gunze AHL61
905	  - DMC TSC-10/25
906	  - IRTOUCHSYSTEMS/UNITOP
907	  - IdealTEK URTC1000
908	  - GoTop Super_Q2/GogoPen/PenPower tablets
909	  - JASTEC USB Touch Controller/DigiTech DTR-02U
910	  - Zytronic controllers
911	  - Elo TouchSystems 2700 IntelliTouch
912	  - EasyTouch USB Touch Controller from Data Modul
913	  - e2i (Mimo monitors)
914
915	  Have a look at <http://linux.chapter7.ch/touchkit/> for
916	  a usage description and the required user-space stuff.
917
918	  To compile this driver as a module, choose M here: the
919	  module will be called usbtouchscreen.
920
921config TOUCHSCREEN_MXS_LRADC
922	tristate "Freescale i.MX23/i.MX28 LRADC touchscreen"
923	depends on MFD_MXS_LRADC
924	help
925	  Say Y here if you have a touchscreen connected to the low-resolution
926	  analog-to-digital converter (LRADC) on an i.MX23 or i.MX28 processor.
927
928	  To compile this driver as a module, choose M here: the module will be
929	  called mxs-lradc-ts.
930
931config TOUCHSCREEN_MX25
932	tristate "Freescale i.MX25 touchscreen input driver"
933	depends on MFD_MX25_TSADC
934	help
935	  Enable support for touchscreen connected to your i.MX25.
936
937	  To compile this driver as a module, choose M here: the
938	  module will be called fsl-imx25-tcq.
939
940config TOUCHSCREEN_MC13783
941	tristate "Freescale MC13783 touchscreen input driver"
942	depends on MFD_MC13XXX
943	help
944	  Say Y here if you have an Freescale MC13783 PMIC on your
945	  board and want to use its touchscreen
946
947	  If unsure, say N.
948
949	  To compile this driver as a module, choose M here: the
950	  module will be called mc13783_ts.
951
952config TOUCHSCREEN_USB_EGALAX
953	default y
954	bool "eGalax, eTurboTouch CT-410/510/700 device support" if EXPERT
955	depends on TOUCHSCREEN_USB_COMPOSITE
956
957config TOUCHSCREEN_USB_PANJIT
958	default y
959	bool "PanJit device support" if EXPERT
960	depends on TOUCHSCREEN_USB_COMPOSITE
961
962config TOUCHSCREEN_USB_3M
963	default y
964	bool "3M/Microtouch EX II series device support" if EXPERT
965	depends on TOUCHSCREEN_USB_COMPOSITE
966
967config TOUCHSCREEN_USB_ITM
968	default y
969	bool "ITM device support" if EXPERT
970	depends on TOUCHSCREEN_USB_COMPOSITE
971
972config TOUCHSCREEN_USB_ETURBO
973	default y
974	bool "eTurboTouch (non-eGalax compatible) device support" if EXPERT
975	depends on TOUCHSCREEN_USB_COMPOSITE
976
977config TOUCHSCREEN_USB_GUNZE
978	default y
979	bool "Gunze AHL61 device support" if EXPERT
980	depends on TOUCHSCREEN_USB_COMPOSITE
981
982config TOUCHSCREEN_USB_DMC_TSC10
983	default y
984	bool "DMC TSC-10/25 device support" if EXPERT
985	depends on TOUCHSCREEN_USB_COMPOSITE
986
987config TOUCHSCREEN_USB_IRTOUCH
988	default y
989	bool "IRTOUCHSYSTEMS/UNITOP device support" if EXPERT
990	depends on TOUCHSCREEN_USB_COMPOSITE
991
992config TOUCHSCREEN_USB_IDEALTEK
993	default y
994	bool "IdealTEK URTC1000 device support" if EXPERT
995	depends on TOUCHSCREEN_USB_COMPOSITE
996
997config TOUCHSCREEN_USB_GENERAL_TOUCH
998	default y
999	bool "GeneralTouch Touchscreen device support" if EXPERT
1000	depends on TOUCHSCREEN_USB_COMPOSITE
1001
1002config TOUCHSCREEN_USB_GOTOP
1003	default y
1004	bool "GoTop Super_Q2/GogoPen/PenPower tablet device support" if EXPERT
1005	depends on TOUCHSCREEN_USB_COMPOSITE
1006
1007config TOUCHSCREEN_USB_JASTEC
1008	default y
1009	bool "JASTEC/DigiTech DTR-02U USB touch controller device support" if EXPERT
1010	depends on TOUCHSCREEN_USB_COMPOSITE
1011
1012config TOUCHSCREEN_USB_ELO
1013	default y
1014	bool "Elo TouchSystems 2700 IntelliTouch controller device support" if EXPERT
1015	depends on TOUCHSCREEN_USB_COMPOSITE
1016
1017config TOUCHSCREEN_USB_E2I
1018	default y
1019	bool "e2i Touchscreen controller (e.g. from Mimo 740)" if EXPERT
1020	depends on TOUCHSCREEN_USB_COMPOSITE
1021
1022config TOUCHSCREEN_USB_ZYTRONIC
1023	default y
1024	bool "Zytronic controller" if EXPERT
1025	depends on TOUCHSCREEN_USB_COMPOSITE
1026
1027config TOUCHSCREEN_USB_ETT_TC45USB
1028	default y
1029	bool "ET&T USB series TC4UM/TC5UH touchscreen controller support" if EXPERT
1030	depends on TOUCHSCREEN_USB_COMPOSITE
1031
1032config TOUCHSCREEN_USB_NEXIO
1033	default y
1034	bool "NEXIO/iNexio device support" if EXPERT
1035	depends on TOUCHSCREEN_USB_COMPOSITE
1036
1037config TOUCHSCREEN_USB_EASYTOUCH
1038	default y
1039	bool "EasyTouch USB Touch controller device support" if EXPERT
1040	depends on TOUCHSCREEN_USB_COMPOSITE
1041	help
1042	  Say Y here if you have an EasyTouch USB Touch controller.
1043	  If unsure, say N.
1044
1045config TOUCHSCREEN_TOUCHIT213
1046	tristate "Sahara TouchIT-213 touchscreen"
1047	select SERIO
1048	help
1049	  Say Y here if you have a Sahara TouchIT-213 Tablet PC.
1050
1051	  If unsure, say N.
1052
1053	  To compile this driver as a module, choose M here: the
1054	  module will be called touchit213.
1055
1056config TOUCHSCREEN_TS4800
1057	tristate "TS-4800 touchscreen"
1058	depends on HAS_IOMEM && OF
1059	depends on SOC_IMX51 || COMPILE_TEST
1060	select MFD_SYSCON
1061	help
1062	  Say Y here if you have a touchscreen on a TS-4800 board.
1063
1064	  On TS-4800, the touchscreen is not handled directly by Linux but by
1065	  a companion FPGA.
1066
1067	  If unsure, say N.
1068
1069	  To compile this driver as a module, choose M here: the
1070	  module will be called ts4800_ts.
1071
1072config TOUCHSCREEN_TSC_SERIO
1073	tristate "TSC-10/25/40 serial touchscreen support"
1074	select SERIO
1075	help
1076	  Say Y here if you have a TSC-10, 25 or 40 serial touchscreen connected
1077	  to your system.
1078
1079	  If unsure, say N.
1080
1081	  To compile this driver as a module, choose M here: the
1082	  module will be called tsc40.
1083
1084config TOUCHSCREEN_TSC200X_CORE
1085	tristate
1086
1087config TOUCHSCREEN_TSC2004
1088	tristate "TSC2004 based touchscreens"
1089	depends on I2C
1090	select REGMAP_I2C
1091	select TOUCHSCREEN_TSC200X_CORE
1092	help
1093	  Say Y here if you have a TSC2004 based touchscreen.
1094
1095	  If unsure, say N.
1096
1097	  To compile this driver as a module, choose M here: the
1098	  module will be called tsc2004.
1099
1100config TOUCHSCREEN_TSC2005
1101	tristate "TSC2005 based touchscreens"
1102	depends on SPI_MASTER
1103	select REGMAP_SPI
1104	select TOUCHSCREEN_TSC200X_CORE
1105	help
1106	  Say Y here if you have a TSC2005 based touchscreen.
1107
1108	  If unsure, say N.
1109
1110	  To compile this driver as a module, choose M here: the
1111	  module will be called tsc2005.
1112
1113config TOUCHSCREEN_TSC2007
1114	tristate "TSC2007 based touchscreens"
1115	depends on I2C
1116	help
1117	  Say Y here if you have a TSC2007 based touchscreen.
1118
1119	  If unsure, say N.
1120
1121	  To compile this driver as a module, choose M here: the
1122	  module will be called tsc2007.
1123
1124config TOUCHSCREEN_TSC2007_IIO
1125	bool "IIO interface for external ADC input and temperature"
1126	depends on TOUCHSCREEN_TSC2007
1127	depends on IIO=y || IIO=TOUCHSCREEN_TSC2007
1128	help
1129	  Saying Y here adds an iio interface to the tsc2007 which
1130	  provides values for the AUX input (used for e.g. battery
1131	  or ambient light monitoring), temperature and raw input
1132	  values.
1133
1134config TOUCHSCREEN_PCAP
1135	tristate "Motorola PCAP touchscreen"
1136	depends on EZX_PCAP
1137	help
1138	  Say Y here if you have a Motorola EZX telephone and
1139	  want to enable support for the built-in touchscreen.
1140
1141	  To compile this driver as a module, choose M here: the
1142	  module will be called pcap_ts.
1143
1144config TOUCHSCREEN_RM_TS
1145	tristate "Raydium I2C Touchscreen"
1146	depends on I2C
1147	depends on GPIOLIB || COMPILE_TEST
1148	help
1149	  Say Y here if you have Raydium series I2C touchscreen,
1150	  such as RM32380, connected to your system.
1151
1152	  If unsure, say N.
1153
1154	  To compile this driver as a module, choose M here: the
1155	  module will be called raydium_i2c_ts.
1156
1157config TOUCHSCREEN_SILEAD
1158	tristate "Silead I2C touchscreen"
1159	depends on I2C
1160	help
1161	  Say Y here if you have the Silead touchscreen connected to
1162	  your system.
1163
1164	  If unsure, say N.
1165
1166	  To compile this driver as a module, choose M here: the
1167	  module will be called silead.
1168
1169config TOUCHSCREEN_SIS_I2C
1170	tristate "SiS 9200 family I2C touchscreen"
1171	depends on I2C
1172	select CRC_ITU_T
1173	depends on GPIOLIB || COMPILE_TEST
1174	help
1175	  This enables support for SiS 9200 family over I2C based touchscreens.
1176
1177	  If unsure, say N.
1178
1179	  To compile this driver as a module, choose M here: the
1180	  module will be called sis_i2c.
1181
1182config TOUCHSCREEN_ST1232
1183	tristate "Sitronix ST1232 or ST1633 touchscreen controllers"
1184	depends on I2C
1185	help
1186	  Say Y here if you want to support the Sitronix ST1232
1187	  or ST1633 touchscreen controller.
1188
1189	  If unsure, say N.
1190
1191	  To compile this driver as a module, choose M here: the
1192	  module will be called st1232_ts.
1193
1194config TOUCHSCREEN_STMFTS
1195	tristate "STMicroelectronics STMFTS touchscreen"
1196	depends on I2C
1197	depends on LEDS_CLASS
1198	help
1199	  Say Y here if you want support for STMicroelectronics
1200	  STMFTS touchscreen.
1201
1202	  To compile this driver as a module, choose M here: the
1203	  module will be called stmfts.
1204
1205config TOUCHSCREEN_STMPE
1206	tristate "STMicroelectronics STMPE touchscreens"
1207	depends on MFD_STMPE
1208	depends on (OF || COMPILE_TEST)
1209	help
1210	  Say Y here if you want support for STMicroelectronics
1211	  STMPE touchscreen controllers.
1212
1213	  To compile this driver as a module, choose M here: the
1214	  module will be called stmpe-ts.
1215
1216config TOUCHSCREEN_SUN4I
1217	tristate "Allwinner sun4i resistive touchscreen controller support"
1218	depends on ARCH_SUNXI || COMPILE_TEST
1219	depends on HWMON
1220	depends on THERMAL || !THERMAL_OF
1221	help
1222	  This selects support for the resistive touchscreen controller
1223	  found on Allwinner sunxi SoCs.
1224
1225	  To compile this driver as a module, choose M here: the
1226	  module will be called sun4i-ts.
1227
1228config TOUCHSCREEN_SUR40
1229	tristate "Samsung SUR40 (Surface 2.0/PixelSense) touchscreen"
1230	depends on USB && MEDIA_USB_SUPPORT && HAS_DMA
1231	depends on VIDEO_V4L2
1232	select VIDEOBUF2_DMA_SG
1233	help
1234	  Say Y here if you want support for the Samsung SUR40 touchscreen
1235	  (also known as Microsoft Surface 2.0 or Microsoft PixelSense).
1236
1237	  To compile this driver as a module, choose M here: the
1238	  module will be called sur40.
1239
1240config TOUCHSCREEN_SURFACE3_SPI
1241	tristate "Ntrig/Microsoft Surface 3 SPI touchscreen"
1242	depends on SPI
1243	depends on GPIOLIB || COMPILE_TEST
1244	help
1245	  Say Y here if you have the Ntrig/Microsoft SPI touchscreen
1246	  controller chip as found on the Surface 3 in your system.
1247
1248	  If unsure, say N.
1249
1250	  To compile this driver as a module, choose M here: the
1251	  module will be called surface3_spi.
1252
1253config TOUCHSCREEN_SX8654
1254	tristate "Semtech SX8654 touchscreen"
1255	depends on I2C
1256	help
1257	  Say Y here if you have a Semtech SX8654 touchscreen controller.
1258
1259	  If unsure, say N
1260
1261	  To compile this driver as a module, choose M here: the
1262	  module will be called sx8654.
1263
1264config TOUCHSCREEN_TPS6507X
1265	tristate "TPS6507x based touchscreens"
1266	depends on I2C
1267	help
1268	  Say Y here if you have a TPS6507x based touchscreen
1269	  controller.
1270
1271	  If unsure, say N.
1272
1273	  To compile this driver as a module, choose M here: the
1274	  module will be called tps6507x_ts.
1275
1276config TOUCHSCREEN_ZET6223
1277	tristate "Zeitec ZET6223 touchscreen driver"
1278	depends on I2C
1279	help
1280	  Say Y here if you have a touchscreen using Zeitec ZET6223
1281
1282	  If unsure, say N.
1283
1284	  To compile this driver as a module, choose M here: the
1285	  module will be called zet6223.
1286
1287config TOUCHSCREEN_ZFORCE
1288	tristate "Neonode zForce infrared touchscreens"
1289	depends on I2C
1290	depends on GPIOLIB || COMPILE_TEST
1291	help
1292	  Say Y here if you have a touchscreen using the zforce
1293	  infraread technology from Neonode.
1294
1295	  If unsure, say N.
1296
1297	  To compile this driver as a module, choose M here: the
1298	  module will be called zforce_ts.
1299
1300config TOUCHSCREEN_COLIBRI_VF50
1301	tristate "Toradex Colibri on board touchscreen driver"
1302	depends on IIO && VF610_ADC
1303	depends on GPIOLIB || COMPILE_TEST
1304	help
1305	  Say Y here if you have a Colibri VF50 and plan to use
1306	  the on-board provided 4-wire touchscreen driver.
1307
1308	  If unsure, say N.
1309
1310	  To compile this driver as a module, choose M here: the
1311	  module will be called colibri_vf50_ts.
1312
1313config TOUCHSCREEN_ROHM_BU21023
1314	tristate "ROHM BU21023/24 Dual touch support resistive touchscreens"
1315	depends on I2C
1316	help
1317	  Say Y here if you have a touchscreen using ROHM BU21023/24.
1318
1319	  If unsure, say N.
1320
1321	  To compile this driver as a module, choose M here: the
1322	  module will be called bu21023_ts.
1323
1324config TOUCHSCREEN_IQS5XX
1325	tristate "Azoteq IQS550/572/525 trackpad/touchscreen controller"
1326	depends on I2C
1327	help
1328	  Say Y to enable support for the Azoteq IQS550/572/525
1329	  family of trackpad/touchscreen controllers.
1330
1331	  To compile this driver as a module, choose M here: the
1332	  module will be called iqs5xx.
1333
1334config TOUCHSCREEN_ZINITIX
1335	tristate "Zinitix touchscreen support"
1336	depends on I2C
1337	help
1338	  Say Y here if you have a touchscreen using Zinitix bt541,
1339	  or something similar enough.
1340
1341	  If unsure, say N.
1342
1343	  To compile this driver as a module, choose M here: the
1344	  module will be called zinitix.
1345
1346endif
1347