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