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