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