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