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