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