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