Merge remote-tracking branch 'remotes/aosp/android-3.0' into develop-3.0
[firefly-linux-kernel-4.4.55.git] / drivers / input / touchscreen / Kconfig
1 #
2 # Touchscreen driver configuration
3 #
4 menuconfig INPUT_TOUCHSCREEN
5         bool "Touchscreens"
6         help
7           Say Y here, and a list of supported touchscreens will be displayed.
8           This option doesn't affect the kernel.
9
10           If unsure, say Y.
11
12 if INPUT_TOUCHSCREEN
13
14 config TOUCHSCREEN_88PM860X
15         tristate "Marvell 88PM860x touchscreen"
16         depends on MFD_88PM860X
17         help
18           Say Y here if you have a 88PM860x PMIC and want to enable
19           support for the built-in touchscreen.
20
21           If unsure, say N.
22
23           To compile this driver as a module, choose M here: the
24           module will be called 88pm860x-ts.
25
26 config TOUCHSCREEN_ADS7846
27         tristate "ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens"
28         depends on SPI_MASTER
29         depends on HWMON = n || HWMON
30         help
31           Say Y here if you have a touchscreen interface using the
32           ADS7846/TSC2046/AD7873 or ADS7843/AD7843 controller,
33           and your board-specific setup code includes that in its
34           table of SPI devices.
35
36           If HWMON is selected, and the driver is told the reference voltage
37           on your board, you will also get hwmon interfaces for the voltage
38           (and on ads7846/tsc2046/ad7873, temperature) sensors of this chip.
39
40           If unsure, say N (but it's safe to say "Y").
41
42           To compile this driver as a module, choose M here: the
43           module will be called ads7846.
44
45 config TOUCHSCREEN_AD7877
46         tristate "AD7877 based touchscreens"
47         depends on SPI_MASTER
48         help
49           Say Y here if you have a touchscreen interface using the
50           AD7877 controller, and your board-specific initialization
51           code includes that in its table of SPI devices.
52
53           If unsure, say N (but it's safe to say "Y").
54
55           To compile this driver as a module, choose M here: the
56           module will be called ad7877.
57
58 config TOUCHSCREEN_AD7879
59         tristate "Analog Devices AD7879-1/AD7889-1 touchscreen interface"
60         help
61           Say Y here if you want to support a touchscreen interface using
62           the AD7879-1/AD7889-1 controller.
63
64           You should select a bus connection too.
65
66           To compile this driver as a module, choose M here: the
67           module will be called ad7879.
68
69 config TOUCHSCREEN_AD7879_I2C
70         tristate "support I2C bus connection"
71         depends on TOUCHSCREEN_AD7879 && I2C
72         help
73           Say Y here if you have AD7879-1/AD7889-1 hooked to an I2C bus.
74
75           To compile this driver as a module, choose M here: the
76           module will be called ad7879-i2c.
77
78 config TOUCHSCREEN_AD7879_SPI
79         tristate "support SPI bus connection"
80         depends on TOUCHSCREEN_AD7879 && SPI_MASTER
81         help
82           Say Y here if you have AD7879-1/AD7889-1 hooked to a SPI bus.
83
84           If unsure, say N (but it's safe to say "Y").
85
86           To compile this driver as a module, choose M here: the
87           module will be called ad7879-spi.
88
89 config TOUCHSCREEN_ATMEL_MXT
90         tristate "Atmel mXT I2C Touchscreen"
91         depends on I2C
92         help
93           Say Y here if you have Atmel mXT series I2C touchscreen,
94           such as AT42QT602240/ATMXT224, connected to your system.
95
96           If unsure, say N.
97
98           To compile this driver as a module, choose M here: the
99           module will be called atmel_mxt_ts.
100
101 config TOUCHSCREEN_BITSY
102         tristate "Compaq iPAQ H3600 (Bitsy) touchscreen"
103         depends on SA1100_BITSY
104         select SERIO
105         help
106           Say Y here if you have the h3600 (Bitsy) touchscreen.
107
108           If unsure, say N.
109
110           To compile this driver as a module, choose M here: the
111           module will be called h3600_ts_input.
112
113 config TOUCHSCREEN_BU21013
114         tristate "BU21013 based touch panel controllers"
115         depends on I2C
116         help
117           Say Y here if you have a bu21013 touchscreen connected to
118           your system.
119
120           If unsure, say N.
121
122           To compile this driver as a module, choose M here: the
123           module will be called bu21013_ts.
124
125 config TOUCHSCREEN_CY8CTMG110
126         tristate "cy8ctmg110 touchscreen"
127         depends on I2C
128         depends on GPIOLIB
129
130         help
131           Say Y here if you have a cy8ctmg110 capacitive touchscreen on
132           an AAVA device.
133
134           If unsure, say N.
135
136           To compile this driver as a module, choose M here: the
137           module will be called cy8ctmg110_ts.
138
139 config TOUCHSCREEN_DA9034
140         tristate "Touchscreen support for Dialog Semiconductor DA9034"
141         depends on PMIC_DA903X
142         default y
143         help
144           Say Y here to enable the support for the touchscreen found
145           on Dialog Semiconductor DA9034 PMIC.
146
147 config TOUCHSCREEN_DYNAPRO
148         tristate "Dynapro serial touchscreen"
149         select SERIO
150         help
151           Say Y here if you have a Dynapro serial touchscreen connected to
152           your system.
153
154           If unsure, say N.
155
156           To compile this driver as a module, choose M here: the
157           module will be called dynapro.
158
159 config TOUCHSCREEN_HAMPSHIRE
160         tristate "Hampshire serial touchscreen"
161         select SERIO
162         help
163           Say Y here if you have a Hampshire serial touchscreen connected to
164           your system.
165
166           If unsure, say N.
167
168           To compile this driver as a module, choose M here: the
169           module will be called hampshire.
170
171 config TOUCHSCREEN_EETI
172         tristate "EETI touchscreen panel support"
173         depends on I2C
174         help
175           Say Y here to enable support for I2C connected EETI touch panels.
176
177           To compile this driver as a module, choose M here: the
178           module will be called eeti_ts.
179
180 config TOUCHSCREEN_FUJITSU
181         tristate "Fujitsu serial touchscreen"
182         select SERIO
183         help
184           Say Y here if you have the Fujitsu touchscreen (such as one
185           installed in Lifebook P series laptop) connected to your
186           system.
187
188           If unsure, say N.
189
190           To compile this driver as a module, choose M here: the
191           module will be called fujitsu-ts.
192
193 config TOUCHSCREEN_S3C2410
194         tristate "Samsung S3C2410/generic touchscreen input driver"
195         depends on ARCH_S3C2410 || SAMSUNG_DEV_TS
196         select S3C_ADC
197         help
198           Say Y here if you have the s3c2410 touchscreen.
199
200           If unsure, say N.
201
202           To compile this driver as a module, choose M here: the
203           module will be called s3c2410_ts.
204
205 config TOUCHSCREEN_GUNZE
206         tristate "Gunze AHL-51S touchscreen"
207         select SERIO
208         help
209           Say Y here if you have the Gunze AHL-51 touchscreen connected to
210           your system.
211
212           If unsure, say N.
213
214           To compile this driver as a module, choose M here: the
215           module will be called gunze.
216
217 config TOUCHSCREEN_ELO
218         tristate "Elo serial touchscreens"
219         select SERIO
220         help
221           Say Y here if you have an Elo serial touchscreen connected to
222           your system.
223
224           If unsure, say N.
225
226           To compile this driver as a module, choose M here: the
227           module will be called elo.
228
229 config TOUCHSCREEN_WACOM_W8001
230         tristate "Wacom W8001 penabled serial touchscreen"
231         select SERIO
232         help
233           Say Y here if you have an Wacom W8001 penabled serial touchscreen
234           connected to your system.
235
236           If unsure, say N.
237
238           To compile this driver as a module, choose M here: the
239           module will be called wacom_w8001.
240
241 config TOUCHSCREEN_LPC32XX
242         tristate "LPC32XX touchscreen controller"
243         depends on ARCH_LPC32XX
244         help
245           Say Y here if you have a LPC32XX device and want
246           to support the built-in touchscreen.
247
248           To compile this driver as a module, choose M here: the
249           module will be called lpc32xx_ts.
250
251 config TOUCHSCREEN_MAX11801
252         tristate "MAX11801 based touchscreens"
253         depends on I2C
254         help
255           Say Y here if you have a MAX11801 based touchscreen
256           controller.
257
258           If unsure, say N.
259
260           To compile this driver as a module, choose M here: the
261           module will be called max11801_ts.
262
263 config TOUCHSCREEN_MCS5000
264         tristate "MELFAS MCS-5000 touchscreen"
265         depends on I2C
266         help
267           Say Y here if you have the MELFAS MCS-5000 touchscreen controller
268           chip in your system.
269
270           If unsure, say N.
271
272           To compile this driver as a module, choose M here: the
273           module will be called mcs5000_ts.
274
275 config TOUCHSCREEN_MTOUCH
276         tristate "MicroTouch serial touchscreens"
277         select SERIO
278         help
279           Say Y here if you have a MicroTouch (3M) serial touchscreen connected to
280           your system.
281
282           If unsure, say N.
283
284           To compile this driver as a module, choose M here: the
285           module will be called mtouch.
286
287 config TOUCHSCREEN_INEXIO
288         tristate "iNexio serial touchscreens"
289         select SERIO
290         help
291           Say Y here if you have an iNexio serial touchscreen connected to
292           your system.
293
294           If unsure, say N.
295
296           To compile this driver as a module, choose M here: the
297           module will be called inexio.
298
299 config TOUCHSCREEN_INTEL_MID
300         tristate "Intel MID platform resistive touchscreen"
301         depends on INTEL_SCU_IPC
302         help
303           Say Y here if you have a Intel MID based touchscreen in
304           your system.
305
306           If unsure, say N.
307
308           To compile this driver as a module, choose M here: the
309           module will be called intel_mid_touch.
310
311 config TOUCHSCREEN_MK712
312         tristate "ICS MicroClock MK712 touchscreen"
313         help
314           Say Y here if you have the ICS MicroClock MK712 touchscreen
315           controller chip in your system.
316
317           If unsure, say N.
318
319           To compile this driver as a module, choose M here: the
320           module will be called mk712.
321
322 config TOUCHSCREEN_HP600
323         tristate "HP Jornada 6xx touchscreen"
324         depends on SH_HP6XX && SH_ADC
325         help
326           Say Y here if you have a HP Jornada 620/660/680/690 and want to
327           support the built-in touchscreen.
328
329           To compile this driver as a module, choose M here: the
330           module will be called hp680_ts_input.
331
332 config TOUCHSCREEN_HP7XX
333         tristate "HP Jornada 7xx touchscreen"
334         depends on SA1100_JORNADA720_SSP
335         help
336           Say Y here if you have a HP Jornada 710/720/728 and want
337           to support the built-in touchscreen.
338
339           To compile this driver as a module, choose M here: the
340           module will be called jornada720_ts.
341
342 config TOUCHSCREEN_HTCPEN
343         tristate "HTC Shift X9500 touchscreen"
344         depends on ISA
345         help
346           Say Y here if you have an HTC Shift UMPC also known as HTC X9500
347           Clio / Shangrila and want to support the built-in touchscreen.
348
349           If unsure, say N.
350
351           To compile this driver as a module, choose M here: the
352           module will be called htcpen.
353
354 config TOUCHSCREEN_PENMOUNT
355         tristate "Penmount serial touchscreen"
356         select SERIO
357         help
358           Say Y here if you have a Penmount serial touchscreen connected to
359           your system.
360
361           If unsure, say N.
362
363           To compile this driver as a module, choose M here: the
364           module will be called penmount.
365
366 config TOUCHSCREEN_MIGOR
367         tristate "Renesas MIGO-R touchscreen"
368         depends on SH_MIGOR && I2C
369         help
370           Say Y here to enable MIGO-R touchscreen support.
371
372           If unsure, say N.
373
374           To compile this driver as a module, choose M here: the
375           module will be called migor_ts.
376
377 config TOUCHSCREEN_TNETV107X
378         tristate "TI TNETV107X touchscreen support"
379         depends on ARCH_DAVINCI_TNETV107X
380         help
381           Say Y here if you want to use the TNETV107X touchscreen.
382
383           To compile this driver as a module, choose M here: the
384           module will be called tnetv107x-ts.
385
386 config TOUCHSCREEN_SYNAPTICS_I2C_RMI
387         tristate "Synaptics i2c touchscreen"
388         depends on I2C
389         help
390           This enables support for Synaptics RMI over I2C based touchscreens.
391
392 config TOUCHSCREEN_TOUCHRIGHT
393         tristate "Touchright serial touchscreen"
394         select SERIO
395         help
396           Say Y here if you have a Touchright serial touchscreen connected to
397           your 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 touchright.
403
404 config TOUCHSCREEN_TOUCHWIN
405         tristate "Touchwin serial touchscreen"
406         select SERIO
407         help
408           Say Y here if you have a Touchwin serial touchscreen connected to
409           your system.
410
411           If unsure, say N.
412
413           To compile this driver as a module, choose M here: the
414           module will be called touchwin.
415
416 config TOUCHSCREEN_ATMEL_TSADCC
417         tristate "Atmel Touchscreen Interface"
418         depends on ARCH_AT91SAM9RL || ARCH_AT91SAM9G45
419         help
420           Say Y here if you have a 4-wire touchscreen connected to the
421           ADC Controller on your Atmel SoC (such as the AT91SAM9RL).
422
423           If unsure, say N.
424
425           To compile this driver as a module, choose M here: the
426           module will be called atmel_tsadcc.
427
428 config TOUCHSCREEN_UCB1400
429         tristate "Philips UCB1400 touchscreen"
430         depends on AC97_BUS
431         depends on UCB1400_CORE
432         help
433           This enables support for the Philips UCB1400 touchscreen interface.
434           The UCB1400 is an AC97 audio codec.  The touchscreen interface
435           will be initialized only after the ALSA subsystem has been
436           brought up and the UCB1400 detected.  You therefore have to
437           configure ALSA support as well (either built-in or modular,
438           independently of whether this driver is itself built-in or
439           modular) for this driver to work.
440
441           To compile this driver as a module, choose M here: the
442           module will be called ucb1400_ts.
443
444 config TOUCHSCREEN_WM831X
445         tristate "Support for WM831x touchscreen controllers"
446         depends on MFD_WM831X
447         help
448           This enables support for the touchscreen controller on the WM831x
449           series of PMICs.
450
451           To compile this driver as a module, choose M here: the
452           module will be called wm831x-ts.
453
454 config TOUCHSCREEN_WM97XX
455         tristate "Support for WM97xx AC97 touchscreen controllers"
456         depends on AC97_BUS
457         help
458           Say Y here if you have a Wolfson Microelectronics WM97xx
459           touchscreen connected to your system. Note that this option
460           only enables core driver, you will also need to select
461           support for appropriate chip below.
462
463           If unsure, say N.
464
465           To compile this driver as a module, choose M here: the
466           module will be called wm97xx-ts.
467
468 config TOUCHSCREEN_WM9705
469         bool "WM9705 Touchscreen interface support"
470         depends on TOUCHSCREEN_WM97XX
471         default y
472         help
473           Say Y here to enable support for the Wolfson Microelectronics
474           WM9705 touchscreen controller.
475
476 config TOUCHSCREEN_WM9712
477         bool "WM9712 Touchscreen interface support"
478         depends on TOUCHSCREEN_WM97XX
479         default y
480         help
481           Say Y here to enable support for the Wolfson Microelectronics
482           WM9712 touchscreen controller.
483
484 config TOUCHSCREEN_WM9713
485         bool "WM9713 Touchscreen interface support"
486         depends on TOUCHSCREEN_WM97XX
487         default y
488         help
489           Say Y here to enable support for the Wolfson Microelectronics
490           WM9713 touchscreen controller.
491
492 config TOUCHSCREEN_WM97XX_ATMEL
493         tristate "WM97xx Atmel accelerated touch"
494         depends on TOUCHSCREEN_WM97XX && (AVR32 || ARCH_AT91)
495         help
496           Say Y here for support for streaming mode with WM97xx touchscreens
497           on Atmel AT91 or AVR32 systems with an AC97C module.
498
499           Be aware that this will use channel B in the controller for
500           streaming data, this must not conflict with other AC97C drivers.
501
502           If unsure, say N.
503
504           To compile this driver as a module, choose M here: the module will
505           be called atmel-wm97xx.
506
507 config TOUCHSCREEN_WM97XX_MAINSTONE
508         tristate "WM97xx Mainstone/Palm accelerated touch"
509         depends on TOUCHSCREEN_WM97XX && ARCH_PXA
510         help
511           Say Y here for support for streaming mode with WM97xx touchscreens
512           on Mainstone, Palm Tungsten T5, TX and LifeDrive systems.
513
514           If unsure, say N.
515
516           To compile this driver as a module, choose M here: the
517           module will be called mainstone-wm97xx.
518
519 config TOUCHSCREEN_WM97XX_ZYLONITE
520         tristate "Zylonite accelerated touch"
521         depends on TOUCHSCREEN_WM97XX && MACH_ZYLONITE
522         select TOUCHSCREEN_WM9713
523         help
524           Say Y here for support for streaming mode with the touchscreen
525           on Zylonite systems.
526
527           If unsure, say N.
528
529           To compile this driver as a module, choose M here: the
530           module will be called zylonite-wm97xx.
531
532 config TOUCHSCREEN_USB_COMPOSITE
533         tristate "USB Touchscreen Driver"
534         depends on USB_ARCH_HAS_HCD
535         select USB
536         help
537           USB Touchscreen driver for:
538           - eGalax Touchkit USB (also includes eTurboTouch CT-410/510/700)
539           - PanJit TouchSet USB
540           - 3M MicroTouch USB (EX II series)
541           - ITM
542           - some other eTurboTouch
543           - Gunze AHL61
544           - DMC TSC-10/25
545           - IRTOUCHSYSTEMS/UNITOP
546           - IdealTEK URTC1000
547           - GoTop Super_Q2/GogoPen/PenPower tablets
548           - JASTEC USB Touch Controller/DigiTech DTR-02U
549           - Zytronic controllers
550
551           Have a look at <http://linux.chapter7.ch/touchkit/> for
552           a usage description and the required user-space stuff.
553
554           To compile this driver as a module, choose M here: the
555           module will be called usbtouchscreen.
556
557 config TOUCHSCREEN_MC13783
558         tristate "Freescale MC13783 touchscreen input driver"
559         depends on MFD_MC13783
560         help
561           Say Y here if you have an Freescale MC13783 PMIC on your
562           board and want to use its touchscreen
563
564           If unsure, say N.
565
566           To compile this driver as a module, choose M here: the
567           module will be called mc13783_ts.
568
569 config TOUCHSCREEN_USB_EGALAX
570         default y
571         bool "eGalax, eTurboTouch CT-410/510/700 device support" if EXPERT
572         depends on TOUCHSCREEN_USB_COMPOSITE
573
574 config TOUCHSCREEN_USB_PANJIT
575         default y
576         bool "PanJit device support" if EXPERT
577         depends on TOUCHSCREEN_USB_COMPOSITE
578
579 config TOUCHSCREEN_USB_3M
580         default y
581         bool "3M/Microtouch EX II series device support" if EXPERT
582         depends on TOUCHSCREEN_USB_COMPOSITE
583
584 config TOUCHSCREEN_USB_ITM
585         default y
586         bool "ITM device support" if EXPERT
587         depends on TOUCHSCREEN_USB_COMPOSITE
588
589 config TOUCHSCREEN_USB_ETURBO
590         default y
591         bool "eTurboTouch (non-eGalax compatible) device support" if EXPERT
592         depends on TOUCHSCREEN_USB_COMPOSITE
593
594 config TOUCHSCREEN_USB_GUNZE
595         default y
596         bool "Gunze AHL61 device support" if EXPERT
597         depends on TOUCHSCREEN_USB_COMPOSITE
598
599 config TOUCHSCREEN_USB_DMC_TSC10
600         default y
601         bool "DMC TSC-10/25 device support" if EXPERT
602         depends on TOUCHSCREEN_USB_COMPOSITE
603
604 config TOUCHSCREEN_USB_IRTOUCH
605         default y
606         bool "IRTOUCHSYSTEMS/UNITOP device support" if EXPERT
607         depends on TOUCHSCREEN_USB_COMPOSITE
608
609 config TOUCHSCREEN_USB_IDEALTEK
610         default y
611         bool "IdealTEK URTC1000 device support" if EXPERT
612         depends on TOUCHSCREEN_USB_COMPOSITE
613
614 config TOUCHSCREEN_USB_GENERAL_TOUCH
615         default y
616         bool "GeneralTouch Touchscreen device support" if EXPERT
617         depends on TOUCHSCREEN_USB_COMPOSITE
618
619 config TOUCHSCREEN_USB_GOTOP
620         default y
621         bool "GoTop Super_Q2/GogoPen/PenPower tablet device support" if EXPERT
622         depends on TOUCHSCREEN_USB_COMPOSITE
623
624 config TOUCHSCREEN_USB_JASTEC
625         default y
626         bool "JASTEC/DigiTech DTR-02U USB touch controller device support" if EXPERT
627         depends on TOUCHSCREEN_USB_COMPOSITE
628
629 config TOUCHSCREEN_USB_E2I
630         default y
631         bool "e2i Touchscreen controller (e.g. from Mimo 740)"
632         depends on TOUCHSCREEN_USB_COMPOSITE
633
634 config TOUCHSCREEN_USB_ZYTRONIC
635         default y
636         bool "Zytronic controller" if EXPERT
637         depends on TOUCHSCREEN_USB_COMPOSITE
638
639 config TOUCHSCREEN_USB_ETT_TC45USB
640         default y
641         bool "ET&T USB series TC4UM/TC5UH touchscreen controller support" if EXPERT
642         depends on TOUCHSCREEN_USB_COMPOSITE
643
644 config TOUCHSCREEN_USB_NEXIO
645         default y
646         bool "NEXIO/iNexio device support" if EXPERT
647         depends on TOUCHSCREEN_USB_COMPOSITE
648
649 config TOUCHSCREEN_TOUCHIT213
650         tristate "Sahara TouchIT-213 touchscreen"
651         select SERIO
652         help
653           Say Y here if you have a Sahara TouchIT-213 Tablet PC.
654
655           If unsure, say N.
656
657           To compile this driver as a module, choose M here: the
658           module will be called touchit213.
659
660 config TOUCHSCREEN_TSC2005
661         tristate "TSC2005 based touchscreens"
662         depends on SPI_MASTER && GENERIC_HARDIRQS
663         help
664           Say Y here if you have a TSC2005 based touchscreen.
665
666           If unsure, say N.
667
668           To compile this driver as a module, choose M here: the
669           module will be called tsc2005.
670
671 config TOUCHSCREEN_TSC2007
672         tristate "TSC2007 based touchscreens"
673         depends on I2C
674         help
675           Say Y here if you have a TSC2007 based touchscreen.
676
677           If unsure, say N.
678
679           To compile this driver as a module, choose M here: the
680           module will be called tsc2007.
681
682 config TOUCHSCREEN_W90X900
683         tristate "W90P910 touchscreen driver"
684         depends on HAVE_CLK
685         help
686           Say Y here if you have a W90P910 based touchscreen.
687
688           To compile this driver as a module, choose M here: the
689           module will be called w90p910_ts.
690
691 config TOUCHSCREEN_PCAP
692         tristate "Motorola PCAP touchscreen"
693         depends on EZX_PCAP
694         help
695           Say Y here if you have a Motorola EZX telephone and
696           want to enable support for the built-in touchscreen.
697
698           To compile this driver as a module, choose M here: the
699           module will be called pcap_ts.
700
701 config TOUCHSCREEN_ST1232
702         tristate "Sitronix ST1232 touchscreen controllers"
703         depends on I2C
704         help
705           Say Y here if you want to support Sitronix ST1232
706           touchscreen controller.
707
708           If unsure, say N.
709
710           To compile this driver as a module, choose M here: the
711           module will be called st1232_ts.
712
713 config TOUCHSCREEN_STMPE
714         tristate "STMicroelectronics STMPE touchscreens"
715         depends on MFD_STMPE
716         help
717           Say Y here if you want support for STMicroelectronics
718           STMPE touchscreen controllers.
719
720           To compile this driver as a module, choose M here: the
721           module will be called stmpe-ts.
722
723 config TOUCHSCREEN_TPS6507X
724         tristate "TPS6507x based touchscreens"
725         depends on I2C
726         help
727           Say Y here if you have a TPS6507x based touchscreen
728           controller.
729
730           If unsure, say N.
731
732           To compile this driver as a module, choose M here: the
733           module will be called tps6507x_ts.
734
735 endif