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