Merge tag 'media/v5.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[sfrench/cifs-2.6.git] / drivers / input / touchscreen / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Touchscreen driver configuration
4 #
5 menuconfig INPUT_TOUCHSCREEN
6         bool "Touchscreens"
7         help
8           Say Y here, and a list of supported touchscreens will be displayed.
9           This option doesn't affect the kernel.
10
11           If unsure, say Y.
12
13 if INPUT_TOUCHSCREEN
14
15 config TOUCHSCREEN_PROPERTIES
16         def_tristate INPUT
17         depends on INPUT
18
19 config TOUCHSCREEN_88PM860X
20         tristate "Marvell 88PM860x touchscreen"
21         depends on MFD_88PM860X
22         help
23           Say Y here if you have a 88PM860x PMIC and want to enable
24           support for the built-in touchscreen.
25
26           If unsure, say N.
27
28           To compile this driver as a module, choose M here: the
29           module will be called 88pm860x-ts.
30
31 config TOUCHSCREEN_ADS7846
32         tristate "ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens"
33         depends on SPI_MASTER
34         depends on HWMON = n || HWMON
35         help
36           Say Y here if you have a touchscreen interface using the
37           ADS7846/TSC2046/AD7873 or ADS7843/AD7843 controller,
38           and your board-specific setup code includes that in its
39           table of SPI devices.
40
41           If HWMON is selected, and the driver is told the reference voltage
42           on your board, you will also get hwmon interfaces for the voltage
43           (and on ads7846/tsc2046/ad7873, temperature) sensors of this chip.
44
45           If unsure, say N (but it's safe to say "Y").
46
47           To compile this driver as a module, choose M here: the
48           module will be called ads7846.
49
50 config TOUCHSCREEN_AD7877
51         tristate "AD7877 based touchscreens"
52         depends on SPI_MASTER
53         help
54           Say Y here if you have a touchscreen interface using the
55           AD7877 controller, and your board-specific initialization
56           code includes that in its table of SPI devices.
57
58           If unsure, say N (but it's safe to say "Y").
59
60           To compile this driver as a module, choose M here: the
61           module will be called ad7877.
62
63 config TOUCHSCREEN_AD7879
64         tristate "Analog Devices AD7879-1/AD7889-1 touchscreen interface"
65         help
66           Say Y here if you want to support a touchscreen interface using
67           the AD7879-1/AD7889-1 controller.
68
69           You should select a bus connection too.
70
71           To compile this driver as a module, choose M here: the
72           module will be called ad7879.
73
74 config TOUCHSCREEN_AD7879_I2C
75         tristate "support I2C bus connection"
76         depends on TOUCHSCREEN_AD7879 && I2C
77         select REGMAP_I2C
78         help
79           Say Y here if you have AD7879-1/AD7889-1 hooked to an I2C bus.
80
81           To compile this driver as a module, choose M here: the
82           module will be called ad7879-i2c.
83
84 config TOUCHSCREEN_AD7879_SPI
85         tristate "support SPI bus connection"
86         depends on TOUCHSCREEN_AD7879 && SPI_MASTER
87         select REGMAP_SPI
88         help
89           Say Y here if you have AD7879-1/AD7889-1 hooked to a SPI bus.
90
91           If unsure, say N (but it's safe to say "Y").
92
93           To compile this driver as a module, choose M here: the
94           module will be called ad7879-spi.
95
96 config TOUCHSCREEN_ADC
97         tristate "Generic ADC based resistive touchscreen"
98         depends on IIO
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_RASPBERRYPI_FW
701         tristate "Raspberry Pi's firmware base touch screen support"
702         depends on RASPBERRYPI_FIRMWARE || (RASPBERRYPI_FIRMWARE=n && COMPILE_TEST)
703         select INPUT_POLLDEV
704         help
705           Say Y here if you have the official Raspberry Pi 7 inch screen on
706           your system.
707
708           If unsure, say N.
709
710           To compile this driver as a module, choose M here: the
711           module will be called raspberrypi-ts.
712
713 config TOUCHSCREEN_MIGOR
714         tristate "Renesas MIGO-R touchscreen"
715         depends on (SH_MIGOR || COMPILE_TEST) && I2C
716         help
717           Say Y here to enable MIGO-R touchscreen support.
718
719           If unsure, say N.
720
721           To compile this driver as a module, choose M here: the
722           module will be called migor_ts.
723
724 config TOUCHSCREEN_TOUCHRIGHT
725         tristate "Touchright serial touchscreen"
726         select SERIO
727         help
728           Say Y here if you have a Touchright serial touchscreen connected to
729           your system.
730
731           If unsure, say N.
732
733           To compile this driver as a module, choose M here: the
734           module will be called touchright.
735
736 config TOUCHSCREEN_TOUCHWIN
737         tristate "Touchwin serial touchscreen"
738         select SERIO
739         help
740           Say Y here if you have a Touchwin serial touchscreen connected to
741           your system.
742
743           If unsure, say N.
744
745           To compile this driver as a module, choose M here: the
746           module will be called touchwin.
747
748 config TOUCHSCREEN_TI_AM335X_TSC
749         tristate "TI Touchscreen Interface"
750         depends on MFD_TI_AM335X_TSCADC
751         help
752           Say Y here if you have 4/5/8 wire touchscreen controller
753           to be connected to the ADC controller on your TI AM335x SoC.
754
755           If unsure, say N.
756
757           To compile this driver as a module, choose M here: the
758           module will be called ti_am335x_tsc.
759
760 config TOUCHSCREEN_UCB1400
761         tristate "Philips UCB1400 touchscreen"
762         depends on AC97_BUS
763         depends on UCB1400_CORE
764         help
765           This enables support for the Philips UCB1400 touchscreen interface.
766           The UCB1400 is an AC97 audio codec.  The touchscreen interface
767           will be initialized only after the ALSA subsystem has been
768           brought up and the UCB1400 detected.  You therefore have to
769           configure ALSA support as well (either built-in or modular,
770           independently of whether this driver is itself built-in or
771           modular) for this driver to work.
772
773           To compile this driver as a module, choose M here: the
774           module will be called ucb1400_ts.
775
776 config TOUCHSCREEN_PIXCIR
777         tristate "PIXCIR I2C touchscreens"
778         depends on I2C
779         help
780           Say Y here if you have a pixcir i2c touchscreen
781           controller.
782
783           If unsure, say N.
784
785           To compile this driver as a module, choose M here: the
786           module will be called pixcir_i2c_ts.
787
788 config TOUCHSCREEN_WDT87XX_I2C
789         tristate "Weida HiTech I2C touchscreen"
790         depends on I2C
791         help
792           Say Y here if you have a Weida WDT87XX I2C touchscreen
793           connected to your system.
794
795           If unsure, say N.
796
797           To compile this driver as a module, choose M here: the
798           module will be called wdt87xx_i2c.
799
800 config TOUCHSCREEN_WM831X
801         tristate "Support for WM831x touchscreen controllers"
802         depends on MFD_WM831X
803         help
804           This enables support for the touchscreen controller on the WM831x
805           series of PMICs.
806
807           To compile this driver as a module, choose M here: the
808           module will be called wm831x-ts.
809
810 config TOUCHSCREEN_WM97XX
811         tristate "Support for WM97xx AC97 touchscreen controllers"
812         depends on AC97_BUS || AC97_BUS_NEW
813         help
814           Say Y here if you have a Wolfson Microelectronics WM97xx
815           touchscreen connected to your system. Note that this option
816           only enables core driver, you will also need to select
817           support for appropriate chip below.
818
819           If unsure, say N.
820
821           To compile this driver as a module, choose M here: the
822           module will be called wm97xx-ts.
823
824 config TOUCHSCREEN_WM9705
825         bool "WM9705 Touchscreen interface support"
826         depends on TOUCHSCREEN_WM97XX
827         default y
828         help
829           Say Y here to enable support for the Wolfson Microelectronics
830           WM9705 touchscreen controller.
831
832 config TOUCHSCREEN_WM9712
833         bool "WM9712 Touchscreen interface support"
834         depends on TOUCHSCREEN_WM97XX
835         default y
836         help
837           Say Y here to enable support for the Wolfson Microelectronics
838           WM9712 touchscreen controller.
839
840 config TOUCHSCREEN_WM9713
841         bool "WM9713 Touchscreen interface support"
842         depends on TOUCHSCREEN_WM97XX
843         default y
844         help
845           Say Y here to enable support for the Wolfson Microelectronics
846           WM9713 touchscreen controller.
847
848 config TOUCHSCREEN_WM97XX_MAINSTONE
849         tristate "WM97xx Mainstone/Palm accelerated touch"
850         depends on TOUCHSCREEN_WM97XX && ARCH_PXA
851         help
852           Say Y here for support for streaming mode with WM97xx touchscreens
853           on Mainstone, Palm Tungsten T5, TX and LifeDrive 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 mainstone-wm97xx.
859
860 config TOUCHSCREEN_WM97XX_ZYLONITE
861         tristate "Zylonite accelerated touch"
862         depends on TOUCHSCREEN_WM97XX && MACH_ZYLONITE
863         select TOUCHSCREEN_WM9713
864         help
865           Say Y here for support for streaming mode with the touchscreen
866           on Zylonite systems.
867
868           If unsure, say N.
869
870           To compile this driver as a module, choose M here: the
871           module will be called zylonite-wm97xx.
872
873 config TOUCHSCREEN_USB_COMPOSITE
874         tristate "USB Touchscreen Driver"
875         depends on USB_ARCH_HAS_HCD
876         select USB
877         help
878           USB Touchscreen driver for:
879           - eGalax Touchkit USB (also includes eTurboTouch CT-410/510/700)
880           - PanJit TouchSet USB
881           - 3M MicroTouch USB (EX II series)
882           - ITM
883           - some other eTurboTouch
884           - Gunze AHL61
885           - DMC TSC-10/25
886           - IRTOUCHSYSTEMS/UNITOP
887           - IdealTEK URTC1000
888           - GoTop Super_Q2/GogoPen/PenPower tablets
889           - JASTEC USB Touch Controller/DigiTech DTR-02U
890           - Zytronic controllers
891           - Elo TouchSystems 2700 IntelliTouch
892           - EasyTouch USB Touch Controller from Data Modul
893           - e2i (Mimo monitors)
894
895           Have a look at <http://linux.chapter7.ch/touchkit/> for
896           a usage description and the required user-space stuff.
897
898           To compile this driver as a module, choose M here: the
899           module will be called usbtouchscreen.
900
901 config TOUCHSCREEN_MXS_LRADC
902         tristate "Freescale i.MX23/i.MX28 LRADC touchscreen"
903         depends on MFD_MXS_LRADC
904         help
905           Say Y here if you have a touchscreen connected to the low-resolution
906           analog-to-digital converter (LRADC) on an i.MX23 or i.MX28 processor.
907
908           To compile this driver as a module, choose M here: the module will be
909           called mxs-lradc-ts.
910
911 config TOUCHSCREEN_MX25
912         tristate "Freescale i.MX25 touchscreen input driver"
913         depends on MFD_MX25_TSADC
914         help
915           Enable support for touchscreen connected to your i.MX25.
916
917           To compile this driver as a module, choose M here: the
918           module will be called fsl-imx25-tcq.
919
920 config TOUCHSCREEN_MC13783
921         tristate "Freescale MC13783 touchscreen input driver"
922         depends on MFD_MC13XXX
923         help
924           Say Y here if you have an Freescale MC13783 PMIC on your
925           board and want to use its touchscreen
926
927           If unsure, say N.
928
929           To compile this driver as a module, choose M here: the
930           module will be called mc13783_ts.
931
932 config TOUCHSCREEN_USB_EGALAX
933         default y
934         bool "eGalax, eTurboTouch CT-410/510/700 device support" if EXPERT
935         depends on TOUCHSCREEN_USB_COMPOSITE
936
937 config TOUCHSCREEN_USB_PANJIT
938         default y
939         bool "PanJit device support" if EXPERT
940         depends on TOUCHSCREEN_USB_COMPOSITE
941
942 config TOUCHSCREEN_USB_3M
943         default y
944         bool "3M/Microtouch EX II series device support" if EXPERT
945         depends on TOUCHSCREEN_USB_COMPOSITE
946
947 config TOUCHSCREEN_USB_ITM
948         default y
949         bool "ITM device support" if EXPERT
950         depends on TOUCHSCREEN_USB_COMPOSITE
951
952 config TOUCHSCREEN_USB_ETURBO
953         default y
954         bool "eTurboTouch (non-eGalax compatible) device support" if EXPERT
955         depends on TOUCHSCREEN_USB_COMPOSITE
956
957 config TOUCHSCREEN_USB_GUNZE
958         default y
959         bool "Gunze AHL61 device support" if EXPERT
960         depends on TOUCHSCREEN_USB_COMPOSITE
961
962 config TOUCHSCREEN_USB_DMC_TSC10
963         default y
964         bool "DMC TSC-10/25 device support" if EXPERT
965         depends on TOUCHSCREEN_USB_COMPOSITE
966
967 config TOUCHSCREEN_USB_IRTOUCH
968         default y
969         bool "IRTOUCHSYSTEMS/UNITOP device support" if EXPERT
970         depends on TOUCHSCREEN_USB_COMPOSITE
971
972 config TOUCHSCREEN_USB_IDEALTEK
973         default y
974         bool "IdealTEK URTC1000 device support" if EXPERT
975         depends on TOUCHSCREEN_USB_COMPOSITE
976
977 config TOUCHSCREEN_USB_GENERAL_TOUCH
978         default y
979         bool "GeneralTouch Touchscreen device support" if EXPERT
980         depends on TOUCHSCREEN_USB_COMPOSITE
981
982 config TOUCHSCREEN_USB_GOTOP
983         default y
984         bool "GoTop Super_Q2/GogoPen/PenPower tablet device support" if EXPERT
985         depends on TOUCHSCREEN_USB_COMPOSITE
986
987 config TOUCHSCREEN_USB_JASTEC
988         default y
989         bool "JASTEC/DigiTech DTR-02U USB touch controller device support" if EXPERT
990         depends on TOUCHSCREEN_USB_COMPOSITE
991
992 config TOUCHSCREEN_USB_ELO
993         default y
994         bool "Elo TouchSystems 2700 IntelliTouch controller device support" if EXPERT
995         depends on TOUCHSCREEN_USB_COMPOSITE
996
997 config TOUCHSCREEN_USB_E2I
998         default y
999         bool "e2i Touchscreen controller (e.g. from Mimo 740)" if EXPERT
1000         depends on TOUCHSCREEN_USB_COMPOSITE
1001
1002 config TOUCHSCREEN_USB_ZYTRONIC
1003         default y
1004         bool "Zytronic controller" if EXPERT
1005         depends on TOUCHSCREEN_USB_COMPOSITE
1006
1007 config TOUCHSCREEN_USB_ETT_TC45USB
1008         default y
1009         bool "ET&T USB series TC4UM/TC5UH touchscreen controller support" if EXPERT
1010         depends on TOUCHSCREEN_USB_COMPOSITE
1011
1012 config TOUCHSCREEN_USB_NEXIO
1013         default y
1014         bool "NEXIO/iNexio device support" if EXPERT
1015         depends on TOUCHSCREEN_USB_COMPOSITE
1016
1017 config TOUCHSCREEN_USB_EASYTOUCH
1018         default y
1019         bool "EasyTouch USB Touch controller device support" if EXPERT
1020         depends on TOUCHSCREEN_USB_COMPOSITE
1021         help
1022           Say Y here if you have an EasyTouch USB Touch controller.
1023           If unsure, say N.
1024
1025 config TOUCHSCREEN_TOUCHIT213
1026         tristate "Sahara TouchIT-213 touchscreen"
1027         select SERIO
1028         help
1029           Say Y here if you have a Sahara TouchIT-213 Tablet PC.
1030
1031           If unsure, say N.
1032
1033           To compile this driver as a module, choose M here: the
1034           module will be called touchit213.
1035
1036 config TOUCHSCREEN_TS4800
1037         tristate "TS-4800 touchscreen"
1038         depends on HAS_IOMEM && OF
1039         depends on SOC_IMX51 || COMPILE_TEST
1040         select MFD_SYSCON
1041         select INPUT_POLLDEV
1042         help
1043           Say Y here if you have a touchscreen on a TS-4800 board.
1044
1045           On TS-4800, the touchscreen is not handled directly by Linux but by
1046           a companion FPGA.
1047
1048           If unsure, say N.
1049
1050           To compile this driver as a module, choose M here: the
1051           module will be called ts4800_ts.
1052
1053 config TOUCHSCREEN_TSC_SERIO
1054         tristate "TSC-10/25/40 serial touchscreen support"
1055         select SERIO
1056         help
1057           Say Y here if you have a TSC-10, 25 or 40 serial touchscreen connected
1058           to your system.
1059
1060           If unsure, say N.
1061
1062           To compile this driver as a module, choose M here: the
1063           module will be called tsc40.
1064
1065 config TOUCHSCREEN_TSC200X_CORE
1066         tristate
1067
1068 config TOUCHSCREEN_TSC2004
1069         tristate "TSC2004 based touchscreens"
1070         depends on I2C
1071         select REGMAP_I2C
1072         select TOUCHSCREEN_TSC200X_CORE
1073         help
1074           Say Y here if you have a TSC2004 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 tsc2004.
1080
1081 config TOUCHSCREEN_TSC2005
1082         tristate "TSC2005 based touchscreens"
1083         depends on SPI_MASTER
1084         select REGMAP_SPI
1085         select TOUCHSCREEN_TSC200X_CORE
1086         help
1087           Say Y here if you have a TSC2005 based touchscreen.
1088
1089           If unsure, say N.
1090
1091           To compile this driver as a module, choose M here: the
1092           module will be called tsc2005.
1093
1094 config TOUCHSCREEN_TSC2007
1095         tristate "TSC2007 based touchscreens"
1096         depends on I2C
1097         help
1098           Say Y here if you have a TSC2007 based touchscreen.
1099
1100           If unsure, say N.
1101
1102           To compile this driver as a module, choose M here: the
1103           module will be called tsc2007.
1104
1105 config TOUCHSCREEN_TSC2007_IIO
1106         bool "IIO interface for external ADC input and temperature"
1107         depends on TOUCHSCREEN_TSC2007
1108         depends on IIO=y || IIO=TOUCHSCREEN_TSC2007
1109         help
1110           Saying Y here adds an iio interface to the tsc2007 which
1111           provides values for the AUX input (used for e.g. battery
1112           or ambient light monitoring), temperature and raw input
1113           values.
1114
1115 config TOUCHSCREEN_W90X900
1116         tristate "W90P910 touchscreen driver"
1117         depends on ARCH_W90X900
1118         help
1119           Say Y here if you have a W90P910 based touchscreen.
1120
1121           To compile this driver as a module, choose M here: the
1122           module will be called w90p910_ts.
1123
1124 config TOUCHSCREEN_PCAP
1125         tristate "Motorola PCAP touchscreen"
1126         depends on EZX_PCAP
1127         help
1128           Say Y here if you have a Motorola EZX telephone and
1129           want to enable support for the built-in touchscreen.
1130
1131           To compile this driver as a module, choose M here: the
1132           module will be called pcap_ts.
1133
1134 config TOUCHSCREEN_RM_TS
1135         tristate "Raydium I2C Touchscreen"
1136         depends on I2C
1137         depends on GPIOLIB || COMPILE_TEST
1138         help
1139           Say Y here if you have Raydium series I2C touchscreen,
1140           such as RM32380, connected to your system.
1141
1142           If unsure, say N.
1143
1144           To compile this driver as a module, choose M here: the
1145           module will be called raydium_i2c_ts.
1146
1147 config TOUCHSCREEN_SILEAD
1148         tristate "Silead I2C touchscreen"
1149         depends on I2C
1150         help
1151           Say Y here if you have the Silead touchscreen connected to
1152           your system.
1153
1154           If unsure, say N.
1155
1156           To compile this driver as a module, choose M here: the
1157           module will be called silead.
1158
1159 config TOUCHSCREEN_SIS_I2C
1160         tristate "SiS 9200 family I2C touchscreen"
1161         depends on I2C
1162         select CRC_ITU_T
1163         depends on GPIOLIB || COMPILE_TEST
1164         help
1165           This enables support for SiS 9200 family over I2C based touchscreens.
1166
1167           If unsure, say N.
1168
1169           To compile this driver as a module, choose M here: the
1170           module will be called sis_i2c.
1171
1172 config TOUCHSCREEN_ST1232
1173         tristate "Sitronix ST1232 or ST1633 touchscreen controllers"
1174         depends on I2C
1175         help
1176           Say Y here if you want to support the Sitronix ST1232
1177           or ST1633 touchscreen controller.
1178
1179           If unsure, say N.
1180
1181           To compile this driver as a module, choose M here: the
1182           module will be called st1232_ts.
1183
1184 config TOUCHSCREEN_STMFTS
1185         tristate "STMicroelectronics STMFTS touchscreen"
1186         depends on I2C
1187         depends on LEDS_CLASS
1188         help
1189           Say Y here if you want support for STMicroelectronics
1190           STMFTS touchscreen.
1191
1192           To compile this driver as a module, choose M here: the
1193           module will be called stmfts.
1194
1195 config TOUCHSCREEN_STMPE
1196         tristate "STMicroelectronics STMPE touchscreens"
1197         depends on MFD_STMPE
1198         depends on (OF || COMPILE_TEST)
1199         help
1200           Say Y here if you want support for STMicroelectronics
1201           STMPE touchscreen controllers.
1202
1203           To compile this driver as a module, choose M here: the
1204           module will be called stmpe-ts.
1205
1206 config TOUCHSCREEN_SUN4I
1207         tristate "Allwinner sun4i resistive touchscreen controller support"
1208         depends on ARCH_SUNXI || COMPILE_TEST
1209         depends on HWMON
1210         depends on THERMAL || !THERMAL_OF
1211         help
1212           This selects support for the resistive touchscreen controller
1213           found on Allwinner sunxi SoCs.
1214
1215           To compile this driver as a module, choose M here: the
1216           module will be called sun4i-ts.
1217
1218 config TOUCHSCREEN_SUR40
1219         tristate "Samsung SUR40 (Surface 2.0/PixelSense) touchscreen"
1220         depends on USB && MEDIA_USB_SUPPORT && HAS_DMA
1221         depends on VIDEO_V4L2
1222         select INPUT_POLLDEV
1223         select VIDEOBUF2_DMA_SG
1224         help
1225           Say Y here if you want support for the Samsung SUR40 touchscreen
1226           (also known as Microsoft Surface 2.0 or Microsoft PixelSense).
1227
1228           To compile this driver as a module, choose M here: the
1229           module will be called sur40.
1230
1231 config TOUCHSCREEN_SURFACE3_SPI
1232         tristate "Ntrig/Microsoft Surface 3 SPI touchscreen"
1233         depends on SPI
1234         depends on GPIOLIB || COMPILE_TEST
1235         help
1236           Say Y here if you have the Ntrig/Microsoft SPI touchscreen
1237           controller chip as found on the Surface 3 in your system.
1238
1239           If unsure, say N.
1240
1241           To compile this driver as a module, choose M here: the
1242           module will be called surface3_spi.
1243
1244 config TOUCHSCREEN_SX8654
1245         tristate "Semtech SX8654 touchscreen"
1246         depends on I2C
1247         help
1248           Say Y here if you have a Semtech SX8654 touchscreen 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 sx8654.
1254
1255 config TOUCHSCREEN_TPS6507X
1256         tristate "TPS6507x based touchscreens"
1257         depends on I2C
1258         select INPUT_POLLDEV
1259         help
1260           Say Y here if you have a TPS6507x based touchscreen
1261           controller.
1262
1263           If unsure, say N.
1264
1265           To compile this driver as a module, choose M here: the
1266           module will be called tps6507x_ts.
1267
1268 config TOUCHSCREEN_ZET6223
1269         tristate "Zeitec ZET6223 touchscreen driver"
1270         depends on I2C
1271         help
1272           Say Y here if you have a touchscreen using Zeitec ZET6223
1273
1274           If unsure, say N.
1275
1276           To compile this driver as a module, choose M here: the
1277           module will be called zet6223.
1278
1279 config TOUCHSCREEN_ZFORCE
1280         tristate "Neonode zForce infrared touchscreens"
1281         depends on I2C
1282         depends on GPIOLIB || COMPILE_TEST
1283         help
1284           Say Y here if you have a touchscreen using the zforce
1285           infraread technology from Neonode.
1286
1287           If unsure, say N.
1288
1289           To compile this driver as a module, choose M here: the
1290           module will be called zforce_ts.
1291
1292 config TOUCHSCREEN_COLIBRI_VF50
1293         tristate "Toradex Colibri on board touchscreen driver"
1294         depends on IIO && VF610_ADC
1295         depends on GPIOLIB || COMPILE_TEST
1296         help
1297           Say Y here if you have a Colibri VF50 and plan to use
1298           the on-board provided 4-wire touchscreen driver.
1299
1300           If unsure, say N.
1301
1302           To compile this driver as a module, choose M here: the
1303           module will be called colibri_vf50_ts.
1304
1305 config TOUCHSCREEN_ROHM_BU21023
1306         tristate "ROHM BU21023/24 Dual touch support resistive touchscreens"
1307         depends on I2C
1308         help
1309           Say Y here if you have a touchscreen using ROHM BU21023/24.
1310
1311           If unsure, say N.
1312
1313           To compile this driver as a module, choose M here: the
1314           module will be called bu21023_ts.
1315
1316 config TOUCHSCREEN_IQS5XX
1317         tristate "Azoteq IQS550/572/525 trackpad/touchscreen controller"
1318         depends on I2C
1319         help
1320           Say Y to enable support for the Azoteq IQS550/572/525
1321           family of trackpad/touchscreen controllers.
1322
1323           To compile this driver as a module, choose M here: the
1324           module will be called iqs5xx.
1325
1326 endif