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