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