1# SPDX-License-Identifier: GPL-2.0-only 2# 3# ADC drivers 4# 5# When adding new entries keep the list in alphabetical order 6 7menu "Analog to digital converters" 8 9config AB8500_GPADC 10 bool "ST-Ericsson AB8500 GPADC driver" 11 depends on AB8500_CORE && REGULATOR_AB8500 12 default y 13 help 14 AB8500 Analog Baseband, mixed signal integrated circuit GPADC 15 (General Purpose Analog to Digital Converter) driver used to monitor 16 internal voltages, convert accessory and battery, AC (charger, mains) 17 and USB voltages integral to the U8500 platform. 18 19config AD_SIGMA_DELTA 20 tristate 21 select IIO_BUFFER 22 select IIO_TRIGGERED_BUFFER 23 24config AD7124 25 tristate "Analog Devices AD7124 and similar sigma-delta ADCs driver" 26 depends on SPI_MASTER 27 select AD_SIGMA_DELTA 28 help 29 Say yes here to build support for Analog Devices AD7124-4 and AD7124-8 30 SPI analog to digital converters (ADC). 31 32 To compile this driver as a module, choose M here: the module will be 33 called ad7124. 34 35config AD7266 36 tristate "Analog Devices AD7265/AD7266 ADC driver" 37 depends on SPI_MASTER 38 select IIO_BUFFER 39 select IIO_TRIGGER 40 select IIO_TRIGGERED_BUFFER 41 help 42 Say yes here to build support for Analog Devices AD7265 and AD7266 43 ADCs. 44 45 To compile this driver as a module, choose M here: the module will be 46 called ad7266. 47 48config AD7291 49 tristate "Analog Devices AD7291 ADC driver" 50 depends on I2C 51 help 52 Say yes here to build support for Analog Devices AD7291 53 8 Channel ADC with temperature sensor. 54 55 To compile this driver as a module, choose M here: the 56 module will be called ad7291. 57 58config AD7292 59 tristate "Analog Devices AD7292 ADC driver" 60 depends on SPI 61 help 62 Say yes here to build support for Analog Devices AD7292 63 8 Channel ADC with temperature sensor. 64 65 To compile this driver as a module, choose M here: the 66 module will be called ad7292. 67 68config AD7298 69 tristate "Analog Devices AD7298 ADC driver" 70 depends on SPI 71 select IIO_BUFFER 72 select IIO_TRIGGERED_BUFFER 73 help 74 Say yes here to build support for Analog Devices AD7298 75 8 Channel ADC with temperature sensor. 76 77 To compile this driver as a module, choose M here: the 78 module will be called ad7298. 79 80config AD7476 81 tristate "Analog Devices AD7476 1-channel ADCs driver and other similar devices from AD an TI" 82 depends on SPI 83 select IIO_BUFFER 84 select IIO_TRIGGERED_BUFFER 85 help 86 Say yes here to build support for the following SPI analog to 87 digital converters (ADCs): 88 Analog Devices: AD7273, AD7274, AD7276, AD7277, AD7278, AD7475, 89 AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495, AD7910, 90 AD7920. 91 Texas Instruments: ADS7866, ADS7867, ADS7868. 92 93 To compile this driver as a module, choose M here: the 94 module will be called ad7476. 95 96config AD7606 97 tristate 98 select IIO_BUFFER 99 select IIO_TRIGGERED_BUFFER 100 101config AD7606_IFACE_PARALLEL 102 tristate "Analog Devices AD7606 ADC driver with parallel interface support" 103 depends on HAS_IOMEM 104 select AD7606 105 help 106 Say yes here to build parallel interface support for Analog Devices: 107 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC). 108 109 To compile this driver as a module, choose M here: the 110 module will be called ad7606_parallel. 111 112config AD7606_IFACE_SPI 113 tristate "Analog Devices AD7606 ADC driver with spi interface support" 114 depends on SPI 115 select AD7606 116 help 117 Say yes here to build spi interface support for Analog Devices: 118 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC). 119 120 To compile this driver as a module, choose M here: the 121 module will be called ad7606_spi. 122 123config AD7766 124 tristate "Analog Devices AD7766/AD7767 ADC driver" 125 depends on SPI_MASTER 126 select IIO_BUFFER 127 select IIO_TRIGGERED_BUFFER 128 help 129 Say yes here to build support for Analog Devices AD7766, AD7766-1, 130 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters. 131 132 To compile this driver as a module, choose M here: the module will be 133 called ad7766. 134 135config AD7768_1 136 tristate "Analog Devices AD7768-1 ADC driver" 137 depends on SPI 138 select IIO_BUFFER 139 select IIO_TRIGGER 140 select IIO_TRIGGERED_BUFFER 141 help 142 Say yes here to build support for Analog Devices AD7768-1 SPI 143 simultaneously sampling sigma-delta analog to digital converter (ADC). 144 145 To compile this driver as a module, choose M here: the module will be 146 called ad7768-1. 147 148config AD7780 149 tristate "Analog Devices AD7780 and similar ADCs driver" 150 depends on SPI 151 depends on GPIOLIB || COMPILE_TEST 152 select AD_SIGMA_DELTA 153 help 154 Say yes here to build support for Analog Devices AD7170, AD7171, 155 AD7780 and AD7781 SPI analog to digital converters (ADC). 156 157 To compile this driver as a module, choose M here: the 158 module will be called ad7780. 159 160config AD7791 161 tristate "Analog Devices AD7791 ADC driver" 162 depends on SPI 163 select AD_SIGMA_DELTA 164 help 165 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789, 166 AD7790 and AD7791 SPI analog to digital converters (ADC). 167 168 To compile this driver as a module, choose M here: the module will be 169 called ad7791. 170 171config AD7793 172 tristate "Analog Devices AD7793 and similar ADCs driver" 173 depends on SPI 174 select AD_SIGMA_DELTA 175 help 176 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793, 177 AD7794 and AD7795 SPI analog to digital converters (ADC). 178 179 To compile this driver as a module, choose M here: the 180 module will be called AD7793. 181 182config AD7887 183 tristate "Analog Devices AD7887 ADC driver" 184 depends on SPI 185 select IIO_BUFFER 186 select IIO_TRIGGERED_BUFFER 187 help 188 Say yes here to build support for Analog Devices 189 AD7887 SPI analog to digital converter (ADC). 190 191 To compile this driver as a module, choose M here: the 192 module will be called ad7887. 193 194config AD7923 195 tristate "Analog Devices AD7923 and similar ADCs driver" 196 depends on SPI 197 select IIO_BUFFER 198 select IIO_TRIGGERED_BUFFER 199 help 200 Say yes here to build support for Analog Devices 201 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs. 202 203 To compile this driver as a module, choose M here: the 204 module will be called ad7923. 205 206config AD7949 207 tristate "Analog Devices AD7949 and similar ADCs driver" 208 depends on SPI 209 help 210 Say yes here to build support for Analog Devices 211 AD7949, AD7682, AD7689 8 Channel ADCs. 212 213 To compile this driver as a module, choose M here: the 214 module will be called ad7949. 215 216config AD799X 217 tristate "Analog Devices AD799x ADC driver" 218 depends on I2C 219 select IIO_BUFFER 220 select IIO_TRIGGERED_BUFFER 221 help 222 Say yes here to build support for Analog Devices: 223 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998 224 i2c analog to digital converters (ADC). Provides direct access 225 via sysfs. 226 227 To compile this driver as a module, choose M here: the module will be 228 called ad799x. 229 230config ASPEED_ADC 231 tristate "Aspeed ADC" 232 depends on ARCH_ASPEED || COMPILE_TEST 233 depends on COMMON_CLK 234 help 235 If you say yes here you get support for the ADC included in Aspeed 236 BMC SoCs. 237 238 To compile this driver as a module, choose M here: the module will be 239 called aspeed_adc. 240 241config AT91_ADC 242 tristate "Atmel AT91 ADC" 243 depends on ARCH_AT91 244 depends on INPUT && SYSFS 245 select IIO_BUFFER 246 select IIO_TRIGGERED_BUFFER 247 help 248 Say yes here to build support for Atmel AT91 ADC. 249 250 To compile this driver as a module, choose M here: the module will be 251 called at91_adc. 252 253config AT91_SAMA5D2_ADC 254 tristate "Atmel AT91 SAMA5D2 ADC" 255 depends on ARCH_AT91 || COMPILE_TEST 256 depends on HAS_IOMEM 257 select IIO_BUFFER 258 select IIO_TRIGGERED_BUFFER 259 help 260 Say yes here to build support for Atmel SAMA5D2 ADC which is 261 available on SAMA5D2 SoC family. 262 263 To compile this driver as a module, choose M here: the module will be 264 called at91-sama5d2_adc. 265 266config AXP20X_ADC 267 tristate "X-Powers AXP20X and AXP22X ADC driver" 268 depends on MFD_AXP20X 269 help 270 Say yes here to have support for X-Powers power management IC (PMIC) 271 AXP20X and AXP22X ADC devices. 272 273 To compile this driver as a module, choose M here: the module will be 274 called axp20x_adc. 275 276config AXP288_ADC 277 tristate "X-Powers AXP288 ADC driver" 278 depends on MFD_AXP20X 279 help 280 Say yes here to have support for X-Powers power management IC (PMIC) ADC 281 device. Depending on platform configuration, this general purpose ADC can 282 be used for sampling sensors such as thermal resistors. 283 284 To compile this driver as a module, choose M here: the module will be 285 called axp288_adc. 286 287config BCM_IPROC_ADC 288 tristate "Broadcom IPROC ADC driver" 289 depends on ARCH_BCM_IPROC || COMPILE_TEST 290 depends on MFD_SYSCON 291 default ARCH_BCM_CYGNUS 292 help 293 Say Y here if you want to add support for the Broadcom static 294 ADC driver. 295 296 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8 297 channels. The driver allows the user to read voltage values. 298 299config BERLIN2_ADC 300 tristate "Marvell Berlin2 ADC driver" 301 depends on ARCH_BERLIN 302 help 303 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for 304 temperature measurement. 305 306config CC10001_ADC 307 tristate "Cosmic Circuits 10001 ADC driver" 308 depends on HAS_IOMEM && HAVE_CLK && REGULATOR 309 select IIO_BUFFER 310 select IIO_TRIGGERED_BUFFER 311 help 312 Say yes here to build support for Cosmic Circuits 10001 ADC. 313 314 This driver can also be built as a module. If so, the module will be 315 called cc10001_adc. 316 317config CPCAP_ADC 318 tristate "Motorola CPCAP PMIC ADC driver" 319 depends on MFD_CPCAP 320 select IIO_BUFFER 321 select IIO_TRIGGERED_BUFFER 322 help 323 Say yes here to build support for Motorola CPCAP PMIC ADC. 324 325 This driver can also be built as a module. If so, the module will be 326 called cpcap-adc. 327 328config DA9150_GPADC 329 tristate "Dialog DA9150 GPADC driver support" 330 depends on MFD_DA9150 331 help 332 Say yes here to build support for Dialog DA9150 GPADC. 333 334 This driver can also be built as a module. If chosen, the module name 335 will be da9150-gpadc. 336 337 To compile this driver as a module, choose M here: the module will be 338 called berlin2-adc. 339 340config DLN2_ADC 341 tristate "Diolan DLN-2 ADC driver support" 342 depends on MFD_DLN2 343 select IIO_BUFFER 344 select IIO_TRIGGERED_BUFFER 345 help 346 Say yes here to build support for Diolan DLN-2 ADC. 347 348 This driver can also be built as a module. If so, the module will be 349 called adc_dln2. 350 351config ENVELOPE_DETECTOR 352 tristate "Envelope detector using a DAC and a comparator" 353 depends on OF 354 help 355 Say yes here to build support for an envelope detector using a DAC 356 and a comparator. 357 358 To compile this driver as a module, choose M here: the module will be 359 called envelope-detector. 360 361config EP93XX_ADC 362 tristate "Cirrus Logic EP93XX ADC driver" 363 depends on ARCH_EP93XX 364 help 365 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic. 366 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this 367 case driver will reduce its CPU usage by 90% in some use cases. 368 369 To compile this driver as a module, choose M here: the module will be 370 called ep93xx_adc. 371 372config EXYNOS_ADC 373 tristate "Exynos ADC driver support" 374 depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST) 375 depends on HAS_IOMEM 376 help 377 Core support for the ADC block found in the Samsung EXYNOS series 378 of SoCs for drivers such as the touchscreen and hwmon to use to share 379 this resource. 380 381 To compile this driver as a module, choose M here: the module will be 382 called exynos_adc. 383 384config MXS_LRADC_ADC 385 tristate "Freescale i.MX23/i.MX28 LRADC ADC" 386 depends on MFD_MXS_LRADC 387 select IIO_BUFFER 388 select IIO_TRIGGERED_BUFFER 389 help 390 Say yes here to build support for the ADC functions of the 391 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings, 392 battery voltage measurement, and die temperature measurement. 393 394 This driver can also be built as a module. If so, the module will be 395 called mxs-lradc-adc. 396 397config FSL_MX25_ADC 398 tristate "Freescale MX25 ADC driver" 399 depends on MFD_MX25_TSADC 400 help 401 Generic Conversion Queue driver used for general purpose ADC in the 402 MX25. This driver supports single measurements using the MX25 ADC. 403 404config HI8435 405 tristate "Holt Integrated Circuits HI-8435 threshold detector" 406 select IIO_TRIGGERED_EVENT 407 depends on SPI 408 help 409 If you say yes here you get support for Holt Integrated Circuits 410 HI-8435 chip. 411 412 This driver can also be built as a module. If so, the module will be 413 called hi8435. 414 415config HX711 416 tristate "AVIA HX711 ADC for weight cells" 417 depends on GPIOLIB 418 select IIO_BUFFER 419 select IIO_TRIGGERED_BUFFER 420 help 421 If you say yes here you get support for AVIA HX711 ADC which is used 422 for weigh cells 423 424 This driver uses two GPIOs, one acts as the clock and controls the 425 channel selection and gain, the other one is used for the measurement 426 data 427 428 Currently the raw value is read from the chip and delivered. 429 To get an actual weight one needs to subtract the 430 zero offset and multiply by a scale factor. 431 This should be done in userspace. 432 433 This driver can also be built as a module. If so, the module will be 434 called hx711. 435 436config INA2XX_ADC 437 tristate "Texas Instruments INA2xx Power Monitors IIO driver" 438 depends on I2C && !SENSORS_INA2XX 439 select REGMAP_I2C 440 select IIO_BUFFER 441 select IIO_KFIFO_BUF 442 help 443 Say yes here to build support for TI INA2xx family of Power Monitors. 444 This driver is mutually exclusive with the HWMON version. 445 446config INGENIC_ADC 447 tristate "Ingenic JZ47xx SoCs ADC driver" 448 depends on MIPS || COMPILE_TEST 449 help 450 Say yes here to build support for the Ingenic JZ47xx SoCs ADC unit. 451 452 This driver can also be built as a module. If so, the module will be 453 called ingenic_adc. 454 455config INTEL_MRFLD_ADC 456 tristate "Intel Merrifield Basin Cove ADC driver" 457 depends on INTEL_SOC_PMIC_MRFLD 458 help 459 Say yes here to have support for Basin Cove power management IC (PMIC) ADC 460 device. Depending on platform configuration, this general purpose ADC can 461 be used for sampling sensors such as thermal resistors. 462 463 To compile this driver as a module, choose M here: the module will be 464 called intel_mrfld_adc. 465 466config IMX7D_ADC 467 tristate "Freescale IMX7D ADC driver" 468 depends on ARCH_MXC || COMPILE_TEST 469 depends on HAS_IOMEM 470 help 471 Say yes here to build support for IMX7D ADC. 472 473 This driver can also be built as a module. If so, the module will be 474 called imx7d_adc. 475 476config LP8788_ADC 477 tristate "LP8788 ADC driver" 478 depends on MFD_LP8788 479 help 480 Say yes here to build support for TI LP8788 ADC. 481 482 To compile this driver as a module, choose M here: the module will be 483 called lp8788_adc. 484 485config LPC18XX_ADC 486 tristate "NXP LPC18xx ADC driver" 487 depends on ARCH_LPC18XX || COMPILE_TEST 488 depends on OF && HAS_IOMEM 489 help 490 Say yes here to build support for NXP LPC18XX ADC. 491 492 To compile this driver as a module, choose M here: the module will be 493 called lpc18xx_adc. 494 495config LPC32XX_ADC 496 tristate "NXP LPC32XX ADC" 497 depends on ARCH_LPC32XX || COMPILE_TEST 498 depends on HAS_IOMEM 499 help 500 Say yes here to build support for the integrated ADC inside the 501 LPC32XX SoC. Note that this feature uses the same hardware as the 502 touchscreen driver, so you should either select only one of the two 503 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case, 504 activate only one via device tree selection. Provides direct access 505 via sysfs. 506 507config LTC2471 508 tristate "Linear Technology LTC2471 and LTC2473 ADC driver" 509 depends on I2C 510 help 511 Say yes here to build support for Linear Technology LTC2471 and 512 LTC2473 16-bit I2C ADC. 513 514 This driver can also be built as a module. If so, the module will 515 be called ltc2471. 516 517config LTC2485 518 tristate "Linear Technology LTC2485 ADC driver" 519 depends on I2C 520 help 521 Say yes here to build support for Linear Technology LTC2485 ADC. 522 523 To compile this driver as a module, choose M here: the module will be 524 called ltc2485. 525 526config LTC2497 527 tristate "Linear Technology LTC2497 ADC driver" 528 depends on I2C 529 help 530 Say yes here to build support for Linear Technology LTC2497 531 16-Bit 8-/16-Channel Delta Sigma ADC. 532 533 To compile this driver as a module, choose M here: the module will be 534 called ltc2497. 535 536config MAX1027 537 tristate "Maxim max1027 ADC driver" 538 depends on SPI 539 select IIO_BUFFER 540 select IIO_TRIGGERED_BUFFER 541 help 542 Say yes here to build support for Maxim SPI {10,12}-bit ADC models: 543 max1027, max1029, max1031, max1227, max1229 and max1231. 544 545 To compile this driver as a module, choose M here: the module will be 546 called max1027. 547 548config MAX11100 549 tristate "Maxim max11100 ADC driver" 550 depends on SPI_MASTER 551 help 552 Say yes here to build support for Maxim max11100 SPI ADC 553 554 To compile this driver as a module, choose M here: the module will be 555 called max11100. 556 557config MAX1118 558 tristate "Maxim max1117/max1118/max1119 ADCs driver" 559 depends on SPI 560 select IIO_BUFFER 561 select IIO_TRIGGERED_BUFFER 562 help 563 Say yes here to build support for Maxim max1117/max1118/max1119 564 8-bit, dual-channel ADCs. 565 566 To compile this driver as a module, choose M here: the module will be 567 called max1118. 568 569config MAX1363 570 tristate "Maxim max1363 ADC driver" 571 depends on I2C 572 select IIO_BUFFER 573 select IIO_TRIGGERED_BUFFER 574 help 575 Say yes here to build support for many Maxim i2c analog to digital 576 converters (ADC). (max1361, max1362, max1363, max1364, max1036, 577 max1037, max1038, max1039, max1136, max1136, max1137, max1138, 578 max1139, max1236, max1237, max11238, max1239, max11600, max11601, 579 max11602, max11603, max11604, max11605, max11606, max11607, 580 max11608, max11609, max11610, max11611, max11612, max11613, 581 max11614, max11615, max11616, max11617, max11644, max11645, 582 max11646, max11647) Provides direct access via sysfs and buffered 583 data via the iio dev interface. 584 585 To compile this driver as a module, choose M here: the module will be 586 called max1363. 587 588config MAX9611 589 tristate "Maxim max9611/max9612 ADC driver" 590 depends on I2C 591 help 592 Say yes here to build support for Maxim max9611/max9612 current sense 593 amplifier with 12-bits ADC interface. 594 595 To compile this driver as a module, choose M here: the module will be 596 called max9611. 597 598config MCP320X 599 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3" 600 depends on SPI 601 help 602 Say yes here to build support for Microchip Technology's 603 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204, 604 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital 605 converters. 606 607 This driver can also be built as a module. If so, the module will be 608 called mcp320x. 609 610config MCP3422 611 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver" 612 depends on I2C 613 help 614 Say yes here to build support for Microchip Technology's MCP3421 615 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428 616 analog to digital converters. 617 618 This driver can also be built as a module. If so, the module will be 619 called mcp3422. 620 621config MCP3911 622 tristate "Microchip Technology MCP3911 driver" 623 depends on SPI 624 help 625 Say yes here to build support for Microchip Technology's MCP3911 626 analog to digital converter. 627 628 This driver can also be built as a module. If so, the module will be 629 called mcp3911. 630 631config MEDIATEK_MT6577_AUXADC 632 tristate "MediaTek AUXADC driver" 633 depends on ARCH_MEDIATEK || COMPILE_TEST 634 depends on HAS_IOMEM 635 help 636 Say yes here to enable support for MediaTek mt65xx AUXADC. 637 638 The driver supports immediate mode operation to read from one of sixteen 639 channels (external or internal). 640 641 This driver can also be built as a module. If so, the module will be 642 called mt6577_auxadc. 643 644config MEN_Z188_ADC 645 tristate "MEN 16z188 ADC IP Core support" 646 depends on MCB 647 help 648 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB 649 carrier. 650 651 This driver can also be built as a module. If so, the module will be 652 called men_z188_adc. 653 654config MESON_SARADC 655 tristate "Amlogic Meson SAR ADC driver" 656 default ARCH_MESON 657 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST) 658 select REGMAP_MMIO 659 help 660 Say yes here to build support for the SAR ADC found in Amlogic Meson 661 SoCs. 662 663 To compile this driver as a module, choose M here: the 664 module will be called meson_saradc. 665 666config NAU7802 667 tristate "Nuvoton NAU7802 ADC driver" 668 depends on I2C 669 help 670 Say yes here to build support for Nuvoton NAU7802 ADC. 671 672 To compile this driver as a module, choose M here: the 673 module will be called nau7802. 674 675config NPCM_ADC 676 tristate "Nuvoton NPCM ADC driver" 677 depends on ARCH_NPCM || COMPILE_TEST 678 depends on HAS_IOMEM 679 help 680 Say yes here to build support for Nuvoton NPCM ADC. 681 682 This driver can also be built as a module. If so, the module 683 will be called npcm_adc. 684 685config PALMAS_GPADC 686 tristate "TI Palmas General Purpose ADC" 687 depends on MFD_PALMAS 688 help 689 Palmas series pmic chip by Texas Instruments (twl6035/6037) 690 is used in smartphones and tablets and supports a 16 channel 691 general purpose ADC. 692 693config QCOM_VADC_COMMON 694 tristate 695 696config QCOM_PM8XXX_XOADC 697 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs" 698 depends on MFD_PM8XXX 699 select QCOM_VADC_COMMON 700 help 701 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs 702 using SSBI transport: PM8018, PM8038, PM8058, PM8921. 703 704 To compile this driver as a module, choose M here: the module 705 will be called qcom-pm8xxx-xoadc. 706 707config QCOM_SPMI_IADC 708 tristate "Qualcomm SPMI PMIC current ADC" 709 depends on SPMI 710 select REGMAP_SPMI 711 help 712 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip. 713 714 The driver supports single mode operation to read from one of two 715 channels (external or internal). Hardware have additional 716 channels internally used for gain and offset calibration. 717 718 To compile this driver as a module, choose M here: the module will 719 be called qcom-spmi-iadc. 720 721config QCOM_SPMI_VADC 722 tristate "Qualcomm SPMI PMIC voltage ADC" 723 depends on SPMI 724 select REGMAP_SPMI 725 select QCOM_VADC_COMMON 726 help 727 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip. 728 729 The driver supports multiple channels read. The VADC is a 15-bit 730 sigma-delta ADC. Some of the channels are internally used for 731 calibration. 732 733 To compile this driver as a module, choose M here: the module will 734 be called qcom-spmi-vadc. 735 736config QCOM_SPMI_ADC5 737 tristate "Qualcomm Technologies Inc. SPMI PMIC5 ADC" 738 depends on SPMI 739 select REGMAP_SPMI 740 select QCOM_VADC_COMMON 741 help 742 This is the IIO Voltage PMIC5 ADC driver for Qualcomm Technologies Inc. 743 744 The driver supports multiple channels read. The ADC is a 16-bit 745 sigma-delta ADC. The hardware supports calibrated results for 746 conversion requests and clients include reading voltage phone 747 power, on board system thermistors connected to the PMIC ADC, 748 PMIC die temperature, charger temperature, battery current, USB voltage 749 input, voltage signals connected to supported PMIC GPIO inputs. The 750 hardware supports internal pull-up for thermistors and can choose between 751 a 100k, 30k and 400k pull up using the ADC channels. 752 753 To compile this driver as a module, choose M here: the module will 754 be called qcom-spmi-adc5. 755 756config RCAR_GYRO_ADC 757 tristate "Renesas R-Car GyroADC driver" 758 depends on ARCH_RCAR_GEN2 || COMPILE_TEST 759 help 760 Say yes here to build support for the GyroADC found in Renesas 761 R-Car Gen2 SoCs. This block is a simple SPI offload engine for 762 reading data out of attached compatible ADCs in a round-robin 763 fashion. Up to 4 or 8 ADC channels are supported by this block, 764 depending on which ADCs are attached. 765 766 To compile this driver as a module, choose M here: the 767 module will be called rcar-gyroadc. 768 769config ROCKCHIP_SARADC 770 tristate "Rockchip SARADC driver" 771 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST) 772 depends on RESET_CONTROLLER 773 help 774 Say yes here to build support for the SARADC found in SoCs from 775 Rockchip. 776 777 To compile this driver as a module, choose M here: the 778 module will be called rockchip_saradc. 779 780config SC27XX_ADC 781 tristate "Spreadtrum SC27xx series PMICs ADC" 782 depends on MFD_SC27XX_PMIC || COMPILE_TEST 783 help 784 Say yes here to build support for the integrated ADC inside the 785 Spreadtrum SC27xx series PMICs. 786 787 This driver can also be built as a module. If so, the module 788 will be called sc27xx_adc. 789 790config SPEAR_ADC 791 tristate "ST SPEAr ADC" 792 depends on PLAT_SPEAR || COMPILE_TEST 793 depends on HAS_IOMEM 794 help 795 Say yes here to build support for the integrated ADC inside the 796 ST SPEAr SoC. Provides direct access via sysfs. 797 798 To compile this driver as a module, choose M here: the 799 module will be called spear_adc. 800 801config SD_ADC_MODULATOR 802 tristate "Generic sigma delta modulator" 803 depends on OF 804 select IIO_BUFFER 805 select IIO_TRIGGERED_BUFFER 806 help 807 Select this option to enables sigma delta modulator. This driver can 808 support generic sigma delta modulators. 809 810 This driver can also be built as a module. If so, the module 811 will be called sd_adc_modulator. 812 813config STM32_ADC_CORE 814 tristate "STMicroelectronics STM32 adc core" 815 depends on ARCH_STM32 || COMPILE_TEST 816 depends on OF 817 depends on REGULATOR 818 select IIO_BUFFER 819 select MFD_STM32_TIMERS 820 select IIO_STM32_TIMER_TRIGGER 821 select IIO_TRIGGERED_BUFFER 822 help 823 Select this option to enable the core driver for STMicroelectronics 824 STM32 analog-to-digital converter (ADC). 825 826 This driver can also be built as a module. If so, the module 827 will be called stm32-adc-core. 828 829config STM32_ADC 830 tristate "STMicroelectronics STM32 adc" 831 depends on STM32_ADC_CORE 832 help 833 Say yes here to build support for STMicroelectronics stm32 Analog 834 to Digital Converter (ADC). 835 836 This driver can also be built as a module. If so, the module 837 will be called stm32-adc. 838 839config STM32_DFSDM_CORE 840 tristate "STMicroelectronics STM32 DFSDM core" 841 depends on (ARCH_STM32 && OF) || COMPILE_TEST 842 select REGMAP 843 select REGMAP_MMIO 844 help 845 Select this option to enable the driver for STMicroelectronics 846 STM32 digital filter for sigma delta converter. 847 848 This driver can also be built as a module. If so, the module 849 will be called stm32-dfsdm-core. 850 851config STM32_DFSDM_ADC 852 tristate "STMicroelectronics STM32 dfsdm adc" 853 depends on (ARCH_STM32 && OF) || COMPILE_TEST 854 select STM32_DFSDM_CORE 855 select REGMAP_MMIO 856 select IIO_BUFFER 857 select IIO_BUFFER_HW_CONSUMER 858 select IIO_TRIGGERED_BUFFER 859 help 860 Select this option to support ADCSigma delta modulator for 861 STMicroelectronics STM32 digital filter for sigma delta converter. 862 863 This driver can also be built as a module. If so, the module 864 will be called stm32-dfsdm-adc. 865 866config STMPE_ADC 867 tristate "STMicroelectronics STMPE ADC driver" 868 depends on OF && MFD_STMPE 869 help 870 Say yes here to build support for ST Microelectronics STMPE 871 built-in ADC block (stmpe811). 872 873config STX104 874 tristate "Apex Embedded Systems STX104 driver" 875 depends on PC104 && X86 876 select ISA_BUS_API 877 select GPIOLIB 878 help 879 Say yes here to build support for the Apex Embedded Systems STX104 880 integrated analog PC/104 card. 881 882 This driver supports the 16 channels of single-ended (8 channels of 883 differential) analog inputs, 2 channels of analog output, 4 digital 884 inputs, and 4 digital outputs provided by the STX104. 885 886 The base port addresses for the devices may be configured via the base 887 array module parameter. 888 889config SUN4I_GPADC 890 tristate "Support for the Allwinner SoCs GPADC" 891 depends on IIO 892 depends on MFD_SUN4I_GPADC || MACH_SUN8I 893 depends on THERMAL || !THERMAL_OF 894 select REGMAP_IRQ 895 help 896 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs 897 GPADC. This ADC provides 4 channels which can be used as an ADC or as 898 a touchscreen input and one channel for thermal sensor. 899 900 The thermal sensor slows down ADC readings and can be disabled by 901 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be 902 enabled by default since the SoC temperature is usually more critical 903 than ADC readings. 904 905 To compile this driver as a module, choose M here: the module will be 906 called sun4i-gpadc-iio. 907 908config TI_ADC081C 909 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family" 910 depends on I2C 911 select IIO_BUFFER 912 select IIO_TRIGGERED_BUFFER 913 help 914 If you say yes here you get support for Texas Instruments ADC081C, 915 ADC101C and ADC121C ADC chips. 916 917 This driver can also be built as a module. If so, the module will be 918 called ti-adc081c. 919 920config TI_ADC0832 921 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838" 922 depends on SPI 923 select IIO_BUFFER 924 select IIO_TRIGGERED_BUFFER 925 help 926 If you say yes here you get support for Texas Instruments ADC0831, 927 ADC0832, ADC0834, ADC0838 ADC chips. 928 929 This driver can also be built as a module. If so, the module will be 930 called ti-adc0832. 931 932config TI_ADC084S021 933 tristate "Texas Instruments ADC084S021" 934 depends on SPI 935 select IIO_BUFFER 936 select IIO_TRIGGERED_BUFFER 937 help 938 If you say yes here you get support for Texas Instruments ADC084S021 939 chips. 940 941 This driver can also be built as a module. If so, the module will be 942 called ti-adc084s021. 943 944config TI_ADC12138 945 tristate "Texas Instruments ADC12130/ADC12132/ADC12138" 946 depends on SPI 947 select IIO_BUFFER 948 select IIO_TRIGGERED_BUFFER 949 help 950 If you say yes here you get support for Texas Instruments ADC12130, 951 ADC12132 and ADC12138 chips. 952 953 This driver can also be built as a module. If so, the module will be 954 called ti-adc12138. 955 956config TI_ADC108S102 957 tristate "Texas Instruments ADC108S102 and ADC128S102 driver" 958 depends on SPI 959 select IIO_BUFFER 960 select IIO_TRIGGERED_BUFFER 961 help 962 Say yes here to build support for Texas Instruments ADC108S102 and 963 ADC128S102 ADC. 964 965 To compile this driver as a module, choose M here: the module will 966 be called ti-adc108s102. 967 968config TI_ADC128S052 969 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021" 970 depends on SPI 971 help 972 If you say yes here you get support for Texas Instruments ADC128S052, 973 ADC122S021 and ADC124S021 chips. 974 975 This driver can also be built as a module. If so, the module will be 976 called ti-adc128s052. 977 978config TI_ADC161S626 979 tristate "Texas Instruments ADC161S626 1-channel differential ADC" 980 depends on SPI 981 select IIO_BUFFER 982 select IIO_TRIGGERED_BUFFER 983 help 984 If you say yes here you get support for Texas Instruments ADC141S626, 985 and ADC161S626 chips. 986 987 This driver can also be built as a module. If so, the module will be 988 called ti-adc161s626. 989 990config TI_ADS1015 991 tristate "Texas Instruments ADS1015 ADC" 992 depends on I2C 993 select REGMAP_I2C 994 select IIO_BUFFER 995 select IIO_TRIGGERED_BUFFER 996 help 997 If you say yes here you get support for Texas Instruments ADS1015 998 ADC chip. 999 1000 This driver can also be built as a module. If so, the module will be 1001 called ti-ads1015. 1002 1003config TI_ADS7950 1004 tristate "Texas Instruments ADS7950 ADC driver" 1005 depends on SPI && GPIOLIB 1006 select IIO_BUFFER 1007 select IIO_TRIGGERED_BUFFER 1008 help 1009 Say yes here to build support for Texas Instruments ADS7950, ADS7951, 1010 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959. 1011 ADS7960, ADS7961. 1012 1013 To compile this driver as a module, choose M here: the 1014 module will be called ti-ads7950. 1015 1016config TI_ADS8344 1017 tristate "Texas Instruments ADS8344" 1018 depends on SPI && OF 1019 help 1020 If you say yes here you get support for Texas Instruments ADS8344 1021 ADC chips 1022 1023 This driver can also be built as a module. If so, the module will be 1024 called ti-ads8344. 1025 1026config TI_ADS8688 1027 tristate "Texas Instruments ADS8688" 1028 depends on SPI && OF 1029 help 1030 If you say yes here you get support for Texas Instruments ADS8684 and 1031 and ADS8688 ADC chips 1032 1033 This driver can also be built as a module. If so, the module will be 1034 called ti-ads8688. 1035 1036config TI_ADS124S08 1037 tristate "Texas Instruments ADS124S08" 1038 depends on SPI && OF 1039 help 1040 If you say yes here you get support for Texas Instruments ADS124S08 1041 and ADS124S06 ADC chips 1042 1043 This driver can also be built as a module. If so, the module will be 1044 called ti-ads124s08. 1045 1046config TI_AM335X_ADC 1047 tristate "TI's AM335X ADC driver" 1048 depends on MFD_TI_AM335X_TSCADC && HAS_DMA 1049 select IIO_BUFFER 1050 select IIO_KFIFO_BUF 1051 help 1052 Say yes here to build support for Texas Instruments ADC 1053 driver which is also a MFD client. 1054 1055 To compile this driver as a module, choose M here: the module will be 1056 called ti_am335x_adc. 1057 1058config TI_TLC4541 1059 tristate "Texas Instruments TLC4541 ADC driver" 1060 depends on SPI 1061 select IIO_BUFFER 1062 select IIO_TRIGGERED_BUFFER 1063 help 1064 Say yes here to build support for Texas Instruments TLC4541 / TLC3541 1065 ADC chips. 1066 1067 This driver can also be built as a module. If so, the module will be 1068 called ti-tlc4541. 1069 1070config TWL4030_MADC 1071 tristate "TWL4030 MADC (Monitoring A/D Converter)" 1072 depends on TWL4030_CORE 1073 help 1074 This driver provides support for Triton TWL4030-MADC. The 1075 driver supports both RT and SW conversion methods. 1076 1077 This driver can also be built as a module. If so, the module will be 1078 called twl4030-madc. 1079 1080config TWL6030_GPADC 1081 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support" 1082 depends on TWL4030_CORE 1083 default n 1084 help 1085 Say yes here if you want support for the TWL6030/TWL6032 General 1086 Purpose A/D Converter. This will add support for battery type 1087 detection, battery voltage and temperature measurement, die 1088 temperature measurement, system supply voltage, audio accessory, 1089 USB ID detection. 1090 1091 This driver can also be built as a module. If so, the module will be 1092 called twl6030-gpadc. 1093 1094config VF610_ADC 1095 tristate "Freescale vf610 ADC driver" 1096 depends on OF 1097 depends on HAS_IOMEM 1098 select IIO_BUFFER 1099 select IIO_TRIGGERED_BUFFER 1100 help 1101 Say yes here to support for Vybrid board analog-to-digital converter. 1102 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX. 1103 1104 This driver can also be built as a module. If so, the module will be 1105 called vf610_adc. 1106 1107config VIPERBOARD_ADC 1108 tristate "Viperboard ADC support" 1109 depends on MFD_VIPERBOARD && USB 1110 help 1111 Say yes here to access the ADC part of the Nano River 1112 Technologies Viperboard. 1113 1114 To compile this driver as a module, choose M here: the module will be 1115 called viperboard_adc. 1116 1117config XILINX_XADC 1118 tristate "Xilinx XADC driver" 1119 depends on HAS_IOMEM 1120 select IIO_BUFFER 1121 select IIO_TRIGGERED_BUFFER 1122 help 1123 Say yes here to have support for the Xilinx XADC. The driver does support 1124 both the ZYNQ interface to the XADC as well as the AXI-XADC interface. 1125 1126 The driver can also be build as a module. If so, the module will be called 1127 xilinx-xadc. 1128 1129endmenu 1130