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