xref: /OK3568_Linux_fs/kernel/drivers/input/touchscreen/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Touchscreen driver configuration
4#
5menuconfig 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
13if INPUT_TOUCHSCREEN
14
15config TOUCHSCREEN_PROPERTIES
16	def_tristate INPUT
17	depends on INPUT
18
19config TOUCHSCREEN_88PM860X
20	tristate "Marvell 88PM860x touchscreen"
21	depends on MFD_88PM860X
22	help
23	  Say Y here if you have a 88PM860x PMIC and want to enable
24	  support for the built-in touchscreen.
25
26	  If unsure, say N.
27
28	  To compile this driver as a module, choose M here: the
29	  module will be called 88pm860x-ts.
30
31config TOUCHSCREEN_ADS7846
32	tristate "ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens"
33	depends on SPI_MASTER
34	depends on HWMON = n || HWMON
35	help
36	  Say Y here if you have a touchscreen interface using the
37	  ADS7846/TSC2046/AD7873 or ADS7843/AD7843 controller,
38	  and your board-specific setup code includes that in its
39	  table of SPI devices.
40
41	  If HWMON is selected, and the driver is told the reference voltage
42	  on your board, you will also get hwmon interfaces for the voltage
43	  (and on ads7846/tsc2046/ad7873, temperature) sensors of this chip.
44
45	  If unsure, say N (but it's safe to say "Y").
46
47	  To compile this driver as a module, choose M here: the
48	  module will be called ads7846.
49
50config TOUCHSCREEN_AD7877
51	tristate "AD7877 based touchscreens"
52	depends on SPI_MASTER
53	help
54	  Say Y here if you have a touchscreen interface using the
55	  AD7877 controller, and your board-specific initialization
56	  code includes that in its table of SPI devices.
57
58	  If unsure, say N (but it's safe to say "Y").
59
60	  To compile this driver as a module, choose M here: the
61	  module will be called ad7877.
62
63config TOUCHSCREEN_AD7879
64	tristate "Analog Devices AD7879-1/AD7889-1 touchscreen interface"
65	help
66	  Say Y here if you want to support a touchscreen interface using
67	  the AD7879-1/AD7889-1 controller.
68
69	  You should select a bus connection too.
70
71	  To compile this driver as a module, choose M here: the
72	  module will be called ad7879.
73
74config TOUCHSCREEN_AD7879_I2C
75	tristate "support I2C bus connection"
76	depends on TOUCHSCREEN_AD7879 && I2C
77	select REGMAP_I2C
78	help
79	  Say Y here if you have AD7879-1/AD7889-1 hooked to an I2C bus.
80
81	  To compile this driver as a module, choose M here: the
82	  module will be called ad7879-i2c.
83
84config TOUCHSCREEN_AD7879_SPI
85	tristate "support SPI bus connection"
86	depends on TOUCHSCREEN_AD7879 && SPI_MASTER
87	select REGMAP_SPI
88	help
89	  Say Y here if you have AD7879-1/AD7889-1 hooked to a SPI bus.
90
91	  If unsure, say N (but it's safe to say "Y").
92
93	  To compile this driver as a module, choose M here: the
94	  module will be called ad7879-spi.
95
96config TOUCHSCREEN_ADC
97	tristate "Generic ADC based resistive touchscreen"
98	depends on IIO
99	select IIO_BUFFER
100	select IIO_BUFFER_CB
101	help
102	  Say Y here if you want to use the generic ADC
103	  resistive touchscreen driver.
104
105	  If unsure, say N (but it's safe to say "Y").
106
107	  To compile this driver as a module, choose M here: the
108	  module will be called resistive-adc-touch.ko.
109
110config TOUCHSCREEN_AR1021_I2C
111	tristate "Microchip AR1020/1021 i2c touchscreen"
112	depends on I2C && OF
113	help
114	  Say Y here if you have the Microchip AR1020 or AR1021 touchscreen
115	  controller chip in your system.
116
117	  If unsure, say N.
118
119	  To compile this driver as a module, choose M here: the
120	  module will be called ar1021_i2c.
121
122config TOUCHSCREEN_ATMEL_MXT
123	tristate "Atmel mXT I2C Touchscreen"
124	depends on I2C
125	select FW_LOADER
126	help
127	  Say Y here if you have Atmel mXT series I2C touchscreen,
128	  such as AT42QT602240/ATMXT224, connected to your system.
129
130	  If unsure, say N.
131
132	  To compile this driver as a module, choose M here: the
133	  module will be called atmel_mxt_ts.
134
135config TOUCHSCREEN_ATMEL_MXT_T37
136	bool "Support T37 Diagnostic Data"
137	depends on TOUCHSCREEN_ATMEL_MXT
138	depends on VIDEO_V4L2=y || (TOUCHSCREEN_ATMEL_MXT=m && VIDEO_V4L2=m)
139	select VIDEOBUF2_VMALLOC
140	help
141	  Say Y here if you want support to output data from the T37
142	  Diagnostic Data object using a V4L device.
143
144config TOUCHSCREEN_AUO_PIXCIR
145	tristate "AUO in-cell touchscreen using Pixcir ICs"
146	depends on I2C
147	depends on GPIOLIB || COMPILE_TEST
148	help
149	  Say Y here if you have a AUO display with in-cell touchscreen
150	  using Pixcir ICs.
151
152	  If unsure, say N.
153
154	  To compile this driver as a module, choose M here: the
155	  module will be called auo-pixcir-ts.
156
157config TOUCHSCREEN_BU21013
158	tristate "BU21013 based touch panel controllers"
159	depends on I2C
160	help
161	  Say Y here if you have a bu21013 touchscreen connected to
162	  your system.
163
164	  If unsure, say N.
165
166	  To compile this driver as a module, choose M here: the
167	  module will be called bu21013_ts.
168
169config TOUCHSCREEN_BU21029
170	tristate "Rohm BU21029 based touch panel controllers"
171	depends on I2C
172	help
173	  Say Y here if you have a Rohm BU21029 touchscreen controller
174	  connected to your system.
175
176	  If unsure, say N.
177
178	  To compile this driver as a module, choose M here: the
179	  module will be called bu21029_ts.
180
181config TOUCHSCREEN_CHIPONE_ICN8318
182	tristate "chipone icn8318 touchscreen controller"
183	depends on GPIOLIB || COMPILE_TEST
184	depends on I2C
185	depends on OF
186	help
187	  Say Y here if you have a ChipOne icn8318 based I2C touchscreen.
188
189	  If unsure, say N.
190
191	  To compile this driver as a module, choose M here: the
192	  module will be called chipone_icn8318.
193
194config TOUCHSCREEN_CHIPONE_ICN8505
195	tristate "chipone icn8505 touchscreen controller"
196	depends on I2C && ACPI
197	help
198	  Say Y here if you have a ChipOne icn8505 based I2C 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 chipone_icn8505.
204
205config TOUCHSCREEN_CY8CTMA140
206	tristate "cy8ctma140 touchscreen"
207	depends on I2C
208	help
209	  Say Y here if you have a Cypress CY8CTMA140 capacitive
210	  touchscreen also just known as "TMA140"
211
212	  If unsure, say N.
213
214	  To compile this driver as a module, choose M here: the
215	  module will be called cy8ctma140.
216
217config TOUCHSCREEN_CY8CTMG110
218	tristate "cy8ctmg110 touchscreen"
219	depends on I2C
220	depends on GPIOLIB || COMPILE_TEST
221	help
222	  Say Y here if you have a cy8ctmg110 capacitive touchscreen on
223	  an AAVA device.
224
225	  If unsure, say N.
226
227	  To compile this driver as a module, choose M here: the
228	  module will be called cy8ctmg110_ts.
229
230config TOUCHSCREEN_CYTTSP_CORE
231	tristate "Cypress TTSP touchscreen"
232	help
233	  Say Y here if you have a touchscreen using controller from
234	  the Cypress TrueTouch(tm) Standard Product family connected
235	  to your system. You will also need to select appropriate
236	  bus connection below.
237
238	  If unsure, say N.
239
240	  To compile this driver as a module, choose M here: the
241	  module will be called cyttsp_core.
242
243config TOUCHSCREEN_CYTTSP_I2C
244	tristate "support I2C bus connection"
245	depends on TOUCHSCREEN_CYTTSP_CORE && I2C
246	help
247	  Say Y here if the touchscreen is connected via I2C bus.
248
249	  To compile this driver as a module, choose M here: the
250	  module will be called cyttsp_i2c.
251
252config TOUCHSCREEN_CYTTSP_SPI
253	tristate "support SPI bus connection"
254	depends on TOUCHSCREEN_CYTTSP_CORE && SPI_MASTER
255	help
256	  Say Y here if the touchscreen is connected via SPI bus.
257
258	  To compile this driver as a module, choose M here: the
259	  module will be called cyttsp_spi.
260
261config TOUCHSCREEN_CYTTSP4_CORE
262	tristate "Cypress TrueTouch Gen4 Touchscreen Driver"
263	help
264	  Core driver for Cypress TrueTouch(tm) Standard Product
265	  Generation4 touchscreen controllers.
266
267	  Say Y here if you have a Cypress Gen4 touchscreen.
268
269	  If unsure, say N.
270
271	  To compile this driver as a module, choose M here.
272
273config TOUCHSCREEN_CYTTSP4_I2C
274	tristate "support I2C bus connection"
275	depends on TOUCHSCREEN_CYTTSP4_CORE && I2C
276	help
277	  Say Y here if the touchscreen is connected via I2C bus.
278
279	  To compile this driver as a module, choose M here: the
280	  module will be called cyttsp4_i2c.
281
282config TOUCHSCREEN_CYTTSP4_SPI
283	tristate "support SPI bus connection"
284	depends on TOUCHSCREEN_CYTTSP4_CORE && SPI_MASTER
285	help
286	  Say Y here if the touchscreen is connected via SPI bus.
287
288	  To compile this driver as a module, choose M here: the
289	  module will be called cyttsp4_spi.
290
291config TOUCHSCREEN_DA9034
292	tristate "Touchscreen support for Dialog Semiconductor DA9034"
293	depends on PMIC_DA903X
294	default y
295	help
296	  Say Y here to enable the support for the touchscreen found
297	  on Dialog Semiconductor DA9034 PMIC.
298
299	  If unsure, say N.
300
301	  To compile this driver as a module, choose M here: the
302	  module will be called da9034-ts.
303
304config TOUCHSCREEN_DA9052
305	tristate "Dialog DA9052/DA9053 TSI"
306	depends on PMIC_DA9052
307	help
308	  Say Y here to support the touchscreen found on Dialog Semiconductor
309	  DA9052-BC and DA9053-AA/Bx PMICs.
310
311	  If unsure, say N.
312
313	  To compile this driver as a module, choose M here: the
314	  module will be called da9052_tsi.
315
316config TOUCHSCREEN_DYNAPRO
317	tristate "Dynapro serial touchscreen"
318	select SERIO
319	help
320	  Say Y here if you have a Dynapro serial touchscreen connected to
321	  your system.
322
323	  If unsure, say N.
324
325	  To compile this driver as a module, choose M here: the
326	  module will be called dynapro.
327
328config TOUCHSCREEN_HAMPSHIRE
329	tristate "Hampshire serial touchscreen"
330	select SERIO
331	help
332	  Say Y here if you have a Hampshire 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 hampshire.
339
340config TOUCHSCREEN_EETI
341	tristate "EETI touchscreen panel support"
342	depends on I2C
343	help
344	  Say Y here to enable support for I2C connected EETI touch panels.
345
346	  To compile this driver as a module, choose M here: the
347	  module will be called eeti_ts.
348
349config TOUCHSCREEN_EGALAX
350	tristate "EETI eGalax multi-touch panel support"
351	depends on I2C && OF
352	help
353	  Say Y here to enable support for I2C connected EETI
354	  eGalax multi-touch panels.
355
356	  To compile this driver as a module, choose M here: the
357	  module will be called egalax_ts.
358
359config TOUCHSCREEN_EGALAX_SERIAL
360	tristate "EETI eGalax serial touchscreen"
361	select SERIO
362	help
363	  Say Y here to enable support for serial connected EETI
364	  eGalax touch panels.
365
366	  To compile this driver as a module, choose M here: the
367	  module will be called egalax_ts_serial.
368
369config TOUCHSCREEN_EXC3000
370	tristate "EETI EXC3000 multi-touch panel support"
371	depends on I2C
372	help
373	  Say Y here to enable support for I2C connected EETI
374	  EXC3000 multi-touch panels.
375
376	  To compile this driver as a module, choose M here: the
377	  module will be called exc3000.
378
379config TOUCHSCREEN_FTS
380	tristate "Focaltech Touchscreen"
381	depends on I2C
382	default n
383	help
384	  Say Y here if you have Focaltech touch panel.
385	  If unsure, say N.
386
387config TOUCHSCREEN_FUJITSU
388	tristate "Fujitsu serial touchscreen"
389	select SERIO
390	help
391	  Say Y here if you have the Fujitsu touchscreen (such as one
392	  installed in Lifebook P series laptop) connected to your
393	  system.
394
395	  If unsure, say N.
396
397	  To compile this driver as a module, choose M here: the
398	  module will be called fujitsu-ts.
399
400config TOUCHSCREEN_GOODIX
401	tristate "Goodix I2C touchscreen"
402	depends on I2C
403	depends on GPIOLIB || COMPILE_TEST
404	help
405	  Say Y here if you have the Goodix touchscreen (such as one
406	  installed in Onda v975w tablets) connected to your
407	  system. It also supports 5-finger chip models, which can be
408	  found on ARM tablets, like Wexler TAB7200 and MSI Primo73.
409
410	  If unsure, say N.
411
412	  To compile this driver as a module, choose M here: the
413	  module will be called goodix.
414
415config TOUCHSCREEN_GSL3673
416	tristate "gsl3673 touchpad driver"
417	help
418	  gsl3673 touchpad driver
419
420config TOUCHSCREEN_GSL3673_800X1280
421	tristate "gsl3673 800x1280 touchpad driver"
422	help
423	  gsl3673 touchpad driver
424
425config TOUCHSCREEN_GSLX680_PAD
426	tristate "gslX680 touchpad driver for pad"
427	help
428	  gslX680 touchpad driver for pad
429
430config TOUCHSCREEN_GT1X
431	tristate "GT1X touchscreens support"
432
433config TOUCHSCREEN_HIDEEP
434	tristate "HiDeep Touch IC"
435	depends on I2C
436	help
437	  Say Y here if you have a touchscreen using HiDeep.
438
439	  If unsure, say N.
440
441	  To compile this driver as a module, choose M here : the
442	  module will be called hideep_ts.
443
444config TOUCHSCREEN_ILI210X
445	tristate "Ilitek ILI210X based touchscreen"
446	depends on I2C
447	help
448	  Say Y here if you have a ILI210X based touchscreen
449	  controller. This driver supports models ILI2102,
450	  ILI2102s, ILI2103, ILI2103s and ILI2105.
451	  Such kind of chipsets can be found in Amazon Kindle Fire
452	  touchscreens.
453
454	  If unsure, say N.
455
456	  To compile this driver as a module, choose M here: the
457	  module will be called ili210x.
458
459config TOUCHSCREEN_IPROC
460	tristate "IPROC touch panel driver support"
461	depends on ARCH_BCM_IPROC || COMPILE_TEST
462	help
463	  Say Y here if you want to add support for the IPROC touch
464	  controller to your system.
465
466	  If unsure, say N.
467
468	  To compile this driver as a module, choose M here: the
469	  module will be called bcm_iproc_tsc.
470
471config TOUCHSCREEN_S3C2410
472	tristate "Samsung S3C2410/generic touchscreen input driver"
473	depends on ARCH_S3C24XX || SAMSUNG_DEV_TS
474	depends on S3C_ADC
475	help
476	  Say Y here if you have the s3c2410 touchscreen.
477
478	  If unsure, say N.
479
480	  To compile this driver as a module, choose M here: the
481	  module will be called s3c2410_ts.
482
483config TOUCHSCREEN_S6SY761
484	tristate "Samsung S6SY761 Touchscreen driver"
485	depends on I2C
486	help
487	  Say Y if you have the Samsung S6SY761 driver
488
489	  If unsure, say N
490
491	  To compile this driver as module, choose M here: the
492	  module will be called s6sy761.
493
494config TOUCHSCREEN_GUNZE
495	tristate "Gunze AHL-51S touchscreen"
496	select SERIO
497	help
498	  Say Y here if you have the Gunze AHL-51 touchscreen connected to
499	  your system.
500
501	  If unsure, say N.
502
503	  To compile this driver as a module, choose M here: the
504	  module will be called gunze.
505
506config TOUCHSCREEN_EKTF2127
507	tristate "Elan eKTF2127 I2C touchscreen"
508	depends on I2C
509	help
510	  Say Y here if you have an Elan eKTF2127 touchscreen
511	  connected to your system.
512
513	  If unsure, say N.
514
515	  To compile this driver as a module, choose M here: the
516	  module will be called ektf2127.
517
518config TOUCHSCREEN_ELAN
519	tristate "Elan eKTH I2C touchscreen"
520	depends on I2C
521	help
522	  Say Y here if you have an Elan eKTH I2C touchscreen
523	  connected to your system.
524
525	  If unsure, say N.
526
527	  To compile this driver as a module, choose M here: the
528	  module will be called elants_i2c.
529
530config TOUCHSCREEN_ELAN5515
531	tristate "Elan5515 touchscreen"
532	depends on I2C
533
534config TOUCHSCREEN_ELO
535	tristate "Elo serial touchscreens"
536	select SERIO
537	help
538	  Say Y here if you have an Elo serial touchscreen connected to
539	  your system.
540
541	  If unsure, say N.
542
543	  To compile this driver as a module, choose M here: the
544	  module will be called elo.
545
546config TOUCHSCREEN_WACOM_W8001
547	tristate "Wacom W8001 penabled serial touchscreen"
548	select SERIO
549	help
550	  Say Y here if you have an Wacom W8001 penabled serial touchscreen
551	  connected to your system.
552
553	  If unsure, say N.
554
555	  To compile this driver as a module, choose M here: the
556	  module will be called wacom_w8001.
557
558config TOUCHSCREEN_WACOM_I2C
559	tristate "Wacom Tablet support (I2C)"
560	depends on I2C
561	help
562	  Say Y here if you want to use the I2C version of the Wacom
563	  Pen Tablet.
564
565	  If unsure, say N.
566
567	  To compile this driver as a module, choose M here: the module
568	  will be called wacom_i2c.
569
570config TOUCHSCREEN_LPC32XX
571	tristate "LPC32XX touchscreen controller"
572	depends on ARCH_LPC32XX
573	help
574	  Say Y here if you have a LPC32XX device and want
575	  to support the built-in touchscreen.
576
577	  To compile this driver as a module, choose M here: the
578	  module will be called lpc32xx_ts.
579
580config TOUCHSCREEN_MAX11801
581	tristate "MAX11801 based touchscreens"
582	depends on I2C
583	help
584	  Say Y here if you have a MAX11801 based touchscreen
585	  controller.
586
587	  If unsure, say N.
588
589	  To compile this driver as a module, choose M here: the
590	  module will be called max11801_ts.
591
592config TOUCHSCREEN_MCS5000
593	tristate "MELFAS MCS-5000 touchscreen"
594	depends on I2C
595	help
596	  Say Y here if you have the MELFAS MCS-5000 touchscreen controller
597	  chip in your system.
598
599	  If unsure, say N.
600
601	  To compile this driver as a module, choose M here: the
602	  module will be called mcs5000_ts.
603
604config TOUCHSCREEN_MMS114
605	tristate "MELFAS MMS114 touchscreen"
606	depends on I2C
607	help
608	  Say Y here if you have the MELFAS MMS114 touchscreen controller
609	  chip in your system.
610
611	  If unsure, say N.
612
613	  To compile this driver as a module, choose M here: the
614	  module will be called mms114.
615
616config TOUCHSCREEN_MELFAS_MIP4
617	tristate "MELFAS MIP4 Touchscreen"
618	depends on I2C
619	help
620	  Say Y here if you have a MELFAS MIP4 Touchscreen device.
621
622	  If unsure, say N.
623
624	  To compile this driver as a module, choose M here:
625	  the module will be called melfas_mip4.
626
627config TOUCHSCREEN_MTOUCH
628	tristate "MicroTouch serial touchscreens"
629	select SERIO
630	help
631	  Say Y here if you have a MicroTouch (3M) serial touchscreen connected to
632	  your system.
633
634	  If unsure, say N.
635
636	  To compile this driver as a module, choose M here: the
637	  module will be called mtouch.
638
639config TOUCHSCREEN_IMX6UL_TSC
640	tristate "Freescale i.MX6UL touchscreen controller"
641	depends on (OF && GPIOLIB) || COMPILE_TEST
642	help
643	  Say Y here if you have a Freescale i.MX6UL, and want to
644	  use the internal touchscreen controller.
645
646	  If unsure, say N.
647
648	  To compile this driver as a module, choose M here: the
649	  module will be called imx6ul_tsc.
650
651config TOUCHSCREEN_INEXIO
652	tristate "iNexio serial touchscreens"
653	select SERIO
654	help
655	  Say Y here if you have an iNexio serial touchscreen connected to
656	  your system.
657
658	  If unsure, say N.
659
660	  To compile this driver as a module, choose M here: the
661	  module will be called inexio.
662
663config TOUCHSCREEN_MK712
664	tristate "ICS MicroClock MK712 touchscreen"
665	help
666	  Say Y here if you have the ICS MicroClock MK712 touchscreen
667	  controller chip in your system.
668
669	  If unsure, say N.
670
671	  To compile this driver as a module, choose M here: the
672	  module will be called mk712.
673
674config TOUCHSCREEN_HP600
675	tristate "HP Jornada 6xx touchscreen"
676	depends on SH_HP6XX && SH_ADC
677	help
678	  Say Y here if you have a HP Jornada 620/660/680/690 and want to
679	  support the built-in touchscreen.
680
681	  To compile this driver as a module, choose M here: the
682	  module will be called hp680_ts_input.
683
684config TOUCHSCREEN_HP7XX
685	tristate "HP Jornada 7xx touchscreen"
686	depends on SA1100_JORNADA720_SSP
687	help
688	  Say Y here if you have a HP Jornada 710/720/728 and want
689	  to support the built-in touchscreen.
690
691	  To compile this driver as a module, choose M here: the
692	  module will be called jornada720_ts.
693
694config TOUCHSCREEN_IPAQ_MICRO
695	tristate "HP iPAQ Atmel Micro ASIC touchscreen"
696	depends on MFD_IPAQ_MICRO
697	help
698	  Say Y here to enable support for the touchscreen attached to
699	  the Atmel Micro peripheral controller on iPAQ h3100/h3600/h3700
700
701	  If unsure, say N.
702
703	  To compile this driver as a module, choose M here: the
704	  module will be called ipaq-micro-ts.
705
706config TOUCHSCREEN_HTCPEN
707	tristate "HTC Shift X9500 touchscreen"
708	depends on ISA
709	help
710	  Say Y here if you have an HTC Shift UMPC also known as HTC X9500
711	  Clio / Shangrila and want to support the built-in touchscreen.
712
713	  If unsure, say N.
714
715	  To compile this driver as a module, choose M here: the
716	  module will be called htcpen.
717
718config TOUCHSCREEN_PENMOUNT
719	tristate "Penmount serial touchscreen"
720	select SERIO
721	help
722	  Say Y here if you have a Penmount serial touchscreen connected to
723	  your system.
724
725	  If unsure, say N.
726
727	  To compile this driver as a module, choose M here: the
728	  module will be called penmount.
729
730config TOUCHSCREEN_EDT_FT5X06
731	tristate "EDT FocalTech FT5x06 I2C Touchscreen support"
732	depends on I2C
733	help
734	  Say Y here if you have an EDT "Polytouch" touchscreen based
735	  on the FocalTech FT5x06 family of controllers connected to
736	  your system.
737
738	  If unsure, say N.
739
740	  To compile this driver as a module, choose M here: the
741	  module will be called edt-ft5x06.
742
743config TOUCHSCREEN_RASPBERRYPI_FW
744	tristate "Raspberry Pi's firmware base touch screen support"
745	depends on RASPBERRYPI_FIRMWARE || (RASPBERRYPI_FIRMWARE=n && COMPILE_TEST)
746	help
747	  Say Y here if you have the official Raspberry Pi 7 inch screen on
748	  your system.
749
750	  If unsure, say N.
751
752	  To compile this driver as a module, choose M here: the
753	  module will be called raspberrypi-ts.
754
755config TOUCHSCREEN_MIGOR
756	tristate "Renesas MIGO-R touchscreen"
757	depends on (SH_MIGOR || COMPILE_TEST) && I2C
758	help
759	  Say Y here to enable MIGO-R touchscreen support.
760
761	  If unsure, say N.
762
763	  To compile this driver as a module, choose M here: the
764	  module will be called migor_ts.
765
766config TOUCHSCREEN_TOUCHRIGHT
767	tristate "Touchright serial touchscreen"
768	select SERIO
769	help
770	  Say Y here if you have a Touchright serial touchscreen connected to
771	  your system.
772
773	  If unsure, say N.
774
775	  To compile this driver as a module, choose M here: the
776	  module will be called touchright.
777
778config TOUCHSCREEN_TOUCHWIN
779	tristate "Touchwin serial touchscreen"
780	select SERIO
781	help
782	  Say Y here if you have a Touchwin serial touchscreen connected to
783	  your system.
784
785	  If unsure, say N.
786
787	  To compile this driver as a module, choose M here: the
788	  module will be called touchwin.
789
790config TOUCHSCREEN_TI_AM335X_TSC
791	tristate "TI Touchscreen Interface"
792	depends on MFD_TI_AM335X_TSCADC
793	help
794	  Say Y here if you have 4/5/8 wire touchscreen controller
795	  to be connected to the ADC controller on your TI AM335x SoC.
796
797	  If unsure, say N.
798
799	  To compile this driver as a module, choose M here: the
800	  module will be called ti_am335x_tsc.
801
802config TOUCHSCREEN_UCB1400
803	tristate "Philips UCB1400 touchscreen"
804	depends on AC97_BUS
805	depends on UCB1400_CORE
806	help
807	  This enables support for the Philips UCB1400 touchscreen interface.
808	  The UCB1400 is an AC97 audio codec.  The touchscreen interface
809	  will be initialized only after the ALSA subsystem has been
810	  brought up and the UCB1400 detected.  You therefore have to
811	  configure ALSA support as well (either built-in or modular,
812	  independently of whether this driver is itself built-in or
813	  modular) for this driver to work.
814
815	  To compile this driver as a module, choose M here: the
816	  module will be called ucb1400_ts.
817
818config TOUCHSCREEN_PIXCIR
819	tristate "PIXCIR I2C touchscreens"
820	depends on I2C
821	help
822	  Say Y here if you have a pixcir i2c touchscreen
823	  controller.
824
825	  If unsure, say N.
826
827	  To compile this driver as a module, choose M here: the
828	  module will be called pixcir_i2c_ts.
829
830config TOUCHSCREEN_WDT87XX_I2C
831	tristate "Weida HiTech I2C touchscreen"
832	depends on I2C
833	help
834	  Say Y here if you have a Weida WDT87XX I2C touchscreen
835	  connected to your system.
836
837	  If unsure, say N.
838
839	  To compile this driver as a module, choose M here: the
840	  module will be called wdt87xx_i2c.
841
842config TOUCHSCREEN_WM831X
843	tristate "Support for WM831x touchscreen controllers"
844	depends on MFD_WM831X
845	help
846	  This enables support for the touchscreen controller on the WM831x
847	  series of PMICs.
848
849	  To compile this driver as a module, choose M here: the
850	  module will be called wm831x-ts.
851
852config TOUCHSCREEN_WM97XX
853	tristate "Support for WM97xx AC97 touchscreen controllers"
854	depends on AC97_BUS || AC97_BUS_NEW
855	help
856	  Say Y here if you have a Wolfson Microelectronics WM97xx
857	  touchscreen connected to your system. Note that this option
858	  only enables core driver, you will also need to select
859	  support for appropriate chip below.
860
861	  If unsure, say N.
862
863	  To compile this driver as a module, choose M here: the
864	  module will be called wm97xx-ts.
865
866config TOUCHSCREEN_WM9705
867	bool "WM9705 Touchscreen interface support"
868	depends on TOUCHSCREEN_WM97XX
869	default y
870	help
871	  Say Y here to enable support for the Wolfson Microelectronics
872	  WM9705 touchscreen controller.
873
874config TOUCHSCREEN_WM9712
875	bool "WM9712 Touchscreen interface support"
876	depends on TOUCHSCREEN_WM97XX
877	default y
878	help
879	  Say Y here to enable support for the Wolfson Microelectronics
880	  WM9712 touchscreen controller.
881
882config TOUCHSCREEN_WM9713
883	bool "WM9713 Touchscreen interface support"
884	depends on TOUCHSCREEN_WM97XX
885	default y
886	help
887	  Say Y here to enable support for the Wolfson Microelectronics
888	  WM9713 touchscreen controller.
889
890config TOUCHSCREEN_WM97XX_MAINSTONE
891	tristate "WM97xx Mainstone/Palm accelerated touch"
892	depends on TOUCHSCREEN_WM97XX && ARCH_PXA
893	help
894	  Say Y here for support for streaming mode with WM97xx touchscreens
895	  on Mainstone, Palm Tungsten T5, TX and LifeDrive systems.
896
897	  If unsure, say N.
898
899	  To compile this driver as a module, choose M here: the
900	  module will be called mainstone-wm97xx.
901
902config TOUCHSCREEN_WM97XX_ZYLONITE
903	tristate "Zylonite accelerated touch"
904	depends on TOUCHSCREEN_WM97XX && MACH_ZYLONITE
905	select TOUCHSCREEN_WM9713
906	help
907	  Say Y here for support for streaming mode with the touchscreen
908	  on Zylonite 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 zylonite-wm97xx.
914
915config 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 Modul
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
943config 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
953config 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
962config 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
974config 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
979config TOUCHSCREEN_USB_PANJIT
980	default y
981	bool "PanJit device support" if EXPERT
982	depends on TOUCHSCREEN_USB_COMPOSITE
983
984config TOUCHSCREEN_USB_3M
985	default y
986	bool "3M/Microtouch EX II series device support" if EXPERT
987	depends on TOUCHSCREEN_USB_COMPOSITE
988
989config TOUCHSCREEN_USB_ITM
990	default y
991	bool "ITM device support" if EXPERT
992	depends on TOUCHSCREEN_USB_COMPOSITE
993
994config TOUCHSCREEN_USB_ETURBO
995	default y
996	bool "eTurboTouch (non-eGalax compatible) device support" if EXPERT
997	depends on TOUCHSCREEN_USB_COMPOSITE
998
999config TOUCHSCREEN_USB_GUNZE
1000	default y
1001	bool "Gunze AHL61 device support" if EXPERT
1002	depends on TOUCHSCREEN_USB_COMPOSITE
1003
1004config TOUCHSCREEN_USB_DMC_TSC10
1005	default y
1006	bool "DMC TSC-10/25 device support" if EXPERT
1007	depends on TOUCHSCREEN_USB_COMPOSITE
1008
1009config TOUCHSCREEN_USB_IRTOUCH
1010	default y
1011	bool "IRTOUCHSYSTEMS/UNITOP device support" if EXPERT
1012	depends on TOUCHSCREEN_USB_COMPOSITE
1013
1014config TOUCHSCREEN_USB_IDEALTEK
1015	default y
1016	bool "IdealTEK URTC1000 device support" if EXPERT
1017	depends on TOUCHSCREEN_USB_COMPOSITE
1018
1019config TOUCHSCREEN_USB_GENERAL_TOUCH
1020	default y
1021	bool "GeneralTouch Touchscreen device support" if EXPERT
1022	depends on TOUCHSCREEN_USB_COMPOSITE
1023
1024config 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
1029config 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
1034config TOUCHSCREEN_USB_ELO
1035	default y
1036	bool "Elo TouchSystems 2700 IntelliTouch controller device support" if EXPERT
1037	depends on TOUCHSCREEN_USB_COMPOSITE
1038
1039config 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
1044config TOUCHSCREEN_USB_ZYTRONIC
1045	default y
1046	bool "Zytronic controller" if EXPERT
1047	depends on TOUCHSCREEN_USB_COMPOSITE
1048
1049config 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
1054config TOUCHSCREEN_USB_NEXIO
1055	default y
1056	bool "NEXIO/iNexio device support" if EXPERT
1057	depends on TOUCHSCREEN_USB_COMPOSITE
1058
1059config 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
1067config 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
1078config 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
1094config 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
1106config TOUCHSCREEN_TSC200X_CORE
1107	tristate
1108
1109config 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
1122config 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
1135config 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
1146config 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
1156config 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
1166config 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
1179config 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
1191config 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
1204config 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
1216config 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
1227config TOUCHSCREEN_STMPE
1228	tristate "STMicroelectronics STMPE touchscreens"
1229	depends on MFD_STMPE
1230	depends on (OF || COMPILE_TEST)
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
1238config 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
1250config TOUCHSCREEN_SUR40
1251	tristate "Samsung SUR40 (Surface 2.0/PixelSense) touchscreen"
1252	depends on USB && MEDIA_USB_SUPPORT && HAS_DMA
1253	depends on VIDEO_V4L2
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
1262config 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
1275config 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
1286config 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
1298config 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
1309config 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
1322config TOUCHSCREEN_COLIBRI_VF50
1323	tristate "Toradex Colibri on board touchscreen driver"
1324	depends on IIO && VF610_ADC
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
1335config 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
1346config 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
1356config 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
1368endif
1369