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 IIO_ADC_HELPER 10 tristate 11 12config 88PM886_GPADC 13 tristate "Marvell 88PM886 GPADC driver" 14 depends on MFD_88PM886_PMIC 15 default MFD_88PM886_PMIC 16 help 17 Say Y here to enable support for the GPADC (General Purpose ADC) 18 found on the Marvell 88PM886 PMIC. The GPADC measures various 19 internal voltages and temperatures, including (but not limited to) 20 system, battery and USB Vbus. 21 22 To compile this driver as a module, choose M here: the module will be 23 called 88pm886-gpadc. 24 25config AB8500_GPADC 26 bool "ST-Ericsson AB8500 GPADC driver" 27 depends on AB8500_CORE && REGULATOR_AB8500 28 default y 29 help 30 AB8500 Analog Baseband, mixed signal integrated circuit GPADC 31 (General Purpose Analog to Digital Converter) driver used to monitor 32 internal voltages, convert accessory and battery, AC (charger, mains) 33 and USB voltages integral to the U8500 platform. 34 35config AD_SIGMA_DELTA 36 tristate 37 select IIO_BUFFER 38 select IIO_BUFFER_DMAENGINE 39 select IIO_TRIGGERED_BUFFER 40 select SPI_OFFLOAD 41 42config AD4000 43 tristate "Analog Devices AD4000 ADC Driver" 44 depends on SPI 45 select IIO_BUFFER 46 select IIO_BUFFER_DMAENGINE 47 select IIO_TRIGGERED_BUFFER 48 select SPI_OFFLOAD 49 help 50 Say yes here to build support for Analog Devices AD4000 high speed 51 SPI analog to digital converters (ADC). If intended to use with 52 SPI offloading support, it is recommended to enable 53 CONFIG_SPI_AXI_SPI_ENGINE, CONFIG_PWM_AXI_PWMGEN, and 54 CONFIG_SPI_OFFLOAD_TRIGGER_PWM. 55 56 To compile this driver as a module, choose M here: the module will be 57 called ad4000. 58 59config AD4030 60 tristate "Analog Devices AD4030 ADC Driver" 61 depends on SPI 62 depends on GPIOLIB 63 depends on PWM 64 select REGMAP 65 select IIO_BUFFER 66 select IIO_BUFFER_DMA 67 select IIO_BUFFER_DMAENGINE 68 select IIO_TRIGGERED_BUFFER 69 select SPI_OFFLOAD 70 select SPI_OFFLOAD_TRIGGER_PWM 71 help 72 Say yes here to build support for Analog Devices AD4030 and AD4630 high speed 73 SPI analog to digital converters (ADC). 74 75 To compile this driver as a module, choose M here: the module will be 76 called ad4030. 77 78config AD4062 79 tristate "Analog Devices AD4062 Driver" 80 depends on I3C 81 depends on GPIOLIB 82 select REGMAP_I3C 83 select IIO_BUFFER 84 select IIO_TRIGGERED_BUFFER 85 help 86 Say yes here to build support for Analog Devices AD4062 I3C analog 87 to digital converters (ADC). 88 89 To compile this driver as a module, choose M here: the module will be 90 called ad4062. 91 92config AD4080 93 tristate "Analog Devices AD4080 high speed ADC" 94 depends on SPI 95 select REGMAP_SPI 96 select IIO_BACKEND 97 help 98 Say yes here to build support for Analog Devices AD4080 99 high speed, low noise, low distortion, 20-bit, Easy Drive, 100 successive approximation register (SAR) analog-to-digital 101 converter (ADC). Supports iio_backended devices for AD4080. 102 103 To compile this driver as a module, choose M here: the module will be 104 called ad4080. 105 106config AD4130 107 tristate "Analog Device AD4130 ADC Driver" 108 depends on SPI 109 depends on GPIOLIB 110 select IIO_BUFFER 111 select IIO_KFIFO_BUF 112 select REGMAP_SPI 113 depends on COMMON_CLK 114 help 115 Say yes here to build support for Analog Devices AD4130-8 SPI analog 116 to digital converters (ADC). 117 118 To compile this driver as a module, choose M here: the module will be 119 called ad4130. 120 121config AD4134 122 tristate "Analog Device AD4134 ADC Driver" 123 depends on SPI 124 select REGMAP_SPI 125 select CRC8 126 help 127 Say yes here to build support for Analog Devices AD4134 SPI analog to 128 digital converters (ADC). 129 130 To compile this driver as a module, choose M here: the module will be 131 called ad4134_spi. 132 133config AD4170_4 134 tristate "Analog Device AD4170-4 ADC Driver" 135 depends on SPI 136 select REGMAP_SPI 137 select IIO_BUFFER 138 select IIO_TRIGGERED_BUFFER 139 depends on COMMON_CLK 140 depends on GPIOLIB 141 help 142 Say yes here to build support for Analog Devices AD4170-4 SPI analog 143 to digital converters (ADC). 144 145 To compile this driver as a module, choose M here: the module will be 146 called ad4170-4. 147 148config AD4691 149 tristate "Analog Devices AD4691 Family ADC Driver" 150 depends on SPI 151 depends on REGULATOR || COMPILE_TEST 152 select IIO_BUFFER 153 select IIO_BUFFER_DMAENGINE 154 select IIO_TRIGGERED_BUFFER 155 select REGMAP 156 select SPI_OFFLOAD 157 help 158 Say yes here to build support for Analog Devices AD4691 Family MuxSAR 159 SPI analog to digital converters (ADC). 160 161 To compile this driver as a module, choose M here: the module will be 162 called ad4691. 163 164config AD4695 165 tristate "Analog Device AD4695 ADC Driver" 166 depends on SPI 167 select IIO_BUFFER 168 select IIO_BUFFER_DMAENGINE 169 select IIO_TRIGGERED_BUFFER 170 select REGMAP 171 select SPI_OFFLOAD 172 help 173 Say yes here to build support for Analog Devices AD4695 and similar 174 analog to digital converters (ADC). 175 176 To compile this driver as a module, choose M here: the module will be 177 called ad4695. 178 179config AD4851 180 tristate "Analog Device AD4851 DAS Driver" 181 depends on SPI 182 depends on PWM 183 select REGMAP_SPI 184 select IIO_BACKEND 185 help 186 Say yes here to build support for Analog Devices AD4851, AD4852, 187 AD4853, AD4854, AD4855, AD4856, AD4857, AD4858, AD4858I high speed 188 data acquisition system (DAS). 189 190 To compile this driver as a module, choose M here: the module will be 191 called ad4851. 192 193config AD7091R 194 tristate 195 196config AD7091R5 197 tristate "Analog Devices AD7091R5 ADC Driver" 198 depends on I2C 199 select AD7091R 200 select REGMAP_I2C 201 help 202 Say yes here to build support for Analog Devices AD7091R-5 ADC. 203 204config AD7091R8 205 tristate "Analog Devices AD7091R8 ADC Driver" 206 depends on SPI 207 select AD7091R 208 select REGMAP_SPI 209 help 210 Say yes here to build support for Analog Devices AD7091R-2, AD7091R-4, 211 and AD7091R-8 ADC. 212 213 To compile this driver as a module, choose M here: the module will be 214 called ad7091r8. 215 216config AD7124 217 tristate "Analog Devices AD7124 and similar sigma-delta ADCs driver" 218 depends on SPI_MASTER 219 select AD_SIGMA_DELTA 220 help 221 Say yes here to build support for Analog Devices AD7124-4 and AD7124-8 222 SPI analog to digital converters (ADC). 223 224 To compile this driver as a module, choose M here: the module will be 225 called ad7124. 226 227config AD7173 228 tristate "Analog Devices AD7173 driver" 229 depends on SPI_MASTER 230 select AD_SIGMA_DELTA 231 select GPIOLIB 232 select GPIO_REGMAP 233 select REGMAP_SPI 234 help 235 Say yes here to build support for Analog Devices AD7173 and similar ADC 236 Currently supported models: 237 - AD7172-2 238 - AD7173-8 239 - AD7175-2 240 - AD7176-2 241 242 To compile this driver as a module, choose M here: the module will be 243 called ad7173. 244 245config AD7191 246 tristate "Analog Devices AD7191 ADC driver" 247 depends on SPI 248 select AD_SIGMA_DELTA 249 help 250 Say yes here to build support for Analog Devices AD7191. 251 252 To compile this driver as a module, choose M here: the 253 module will be called ad7191. 254 255config AD7192 256 tristate "Analog Devices AD7192 and similar ADC driver" 257 depends on SPI 258 select AD_SIGMA_DELTA 259 help 260 Say yes here to build support for Analog Devices SPI analog to digital 261 converters (ADC): 262 - AD7190 263 - AD7192 264 - AD7193 265 - AD7194 266 - AD7195 267 If unsure, say N (but it's safe to say "Y"). 268 269 To compile this driver as a module, choose M here: the 270 module will be called ad7192. 271 272config AD7266 273 tristate "Analog Devices AD7265/AD7266 ADC driver" 274 depends on SPI_MASTER 275 select IIO_BUFFER 276 select IIO_TRIGGER 277 select IIO_TRIGGERED_BUFFER 278 help 279 Say yes here to build support for Analog Devices AD7265 and AD7266 280 ADCs. 281 282 To compile this driver as a module, choose M here: the module will be 283 called ad7266. 284 285config AD7280 286 tristate "Analog Devices AD7280A Lithium Ion Battery Monitoring System" 287 depends on SPI 288 select CRC8 289 help 290 Say yes here to build support for Analog Devices AD7280A 291 Lithium Ion Battery Monitoring System. 292 293 To compile this driver as a module, choose M here: the 294 module will be called ad7280a 295 296config AD7291 297 tristate "Analog Devices AD7291 ADC driver" 298 depends on I2C 299 help 300 Say yes here to build support for Analog Devices AD7291 301 8 Channel ADC with temperature sensor. 302 303 To compile this driver as a module, choose M here: the 304 module will be called ad7291. 305 306config AD7292 307 tristate "Analog Devices AD7292 ADC driver" 308 depends on SPI 309 help 310 Say yes here to build support for Analog Devices AD7292 311 8 Channel ADC with temperature sensor. 312 313 To compile this driver as a module, choose M here: the 314 module will be called ad7292. 315 316config AD7298 317 tristate "Analog Devices AD7298 ADC driver" 318 depends on SPI 319 select IIO_BUFFER 320 select IIO_TRIGGERED_BUFFER 321 help 322 Say yes here to build support for Analog Devices AD7298 323 8 Channel ADC with temperature sensor. 324 325 To compile this driver as a module, choose M here: the 326 module will be called ad7298. 327 328config AD7380 329 tristate "Analog Devices AD7380 ADC driver" 330 depends on SPI_MASTER 331 select SPI_OFFLOAD 332 select IIO_BUFFER 333 select IIO_BUFFER_DMAENGINE 334 select IIO_TRIGGER 335 select IIO_TRIGGERED_BUFFER 336 help 337 AD7380 is a family of simultaneous sampling ADCs that share the same 338 SPI register map and have similar pinouts. 339 340 Say yes here to build support for Analog Devices AD7380 ADC and 341 similar chips. 342 343 To compile this driver as a module, choose M here: the module will be 344 called ad7380. 345 346config AD7405 347 tristate "Analog Device AD7405 ADC Driver" 348 depends on IIO_BACKEND 349 help 350 Say yes here to build support for Analog Devices AD7405, ADUM7701, 351 ADUM7702, ADUM7703 analog to digital converters (ADC). 352 353 To compile this driver as a module, choose M here: the module will be 354 called ad7405. 355 356config AD7476 357 tristate "Analog Devices AD7476 1-channel ADCs driver and other similar devices from AD and TI" 358 depends on SPI 359 select IIO_BUFFER 360 select IIO_TRIGGERED_BUFFER 361 help 362 Say yes here to build support for the following SPI analog to 363 digital converters (ADCs): 364 Analog Devices: AD7273, AD7274, AD7276, AD7277, AD7278, AD7475, 365 AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495, AD7910, 366 AD7920. 367 Texas Instruments: ADS7866, ADS7867, ADS7868. 368 369 To compile this driver as a module, choose M here: the 370 module will be called ad7476. 371 372config AD7606 373 tristate 374 select IIO_BUFFER 375 select IIO_TRIGGERED_BUFFER 376 377config AD7606_IFACE_PARALLEL 378 tristate "Analog Devices AD7606 ADC driver with parallel interface support" 379 depends on HAS_IOPORT 380 select AD7606 381 select IIO_BACKEND 382 help 383 Say yes here to build parallel interface support for Analog Devices: 384 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC). 385 It also support iio_backended devices for AD7606B. 386 387 To compile this driver as a module, choose M here: the 388 module will be called ad7606_par. 389 390config AD7606_IFACE_SPI 391 tristate "Analog Devices AD7606 ADC driver with spi interface support" 392 depends on SPI 393 select AD7606 394 select IIO_BUFFER_DMAENGINE 395 select SPI_OFFLOAD 396 help 397 Say yes here to build spi interface support for Analog Devices: 398 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC). 399 400 To compile this driver as a module, choose M here: the 401 module will be called ad7606_spi. 402 403config AD7625 404 tristate "Analog Devices AD7625/AD7626 High Speed ADC driver" 405 depends on PWM 406 select IIO_BACKEND 407 help 408 Say yes here to build support for Analog Devices: 409 * AD7625 16-Bit, 6 MSPS PulSAR Analog-to-Digital Converter 410 * AD7626 16-Bit, 10 MSPS PulSAR Analog-to-Digital Converter 411 * AD7960 18-Bit, 5 MSPS PulSAR Analog-to-Digital Converter 412 * AD7961 16-Bit, 5 MSPS PulSAR Analog-to-Digital Converter 413 414 The driver requires the assistance of the AXI ADC IP core to operate. 415 416 To compile this driver as a module, choose M here: the module will be 417 called ad7625. 418 419config AD7766 420 tristate "Analog Devices AD7766/AD7767 ADC driver" 421 depends on SPI_MASTER 422 select IIO_BUFFER 423 select IIO_TRIGGERED_BUFFER 424 help 425 Say yes here to build support for Analog Devices AD7766, AD7766-1, 426 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters. 427 428 To compile this driver as a module, choose M here: the module will be 429 called ad7766. 430 431config AD7768_1 432 tristate "Analog Devices AD7768-1 ADC driver" 433 depends on SPI 434 select GPIOLIB 435 select REGULATOR 436 select REGMAP_SPI 437 select RATIONAL 438 select IIO_BUFFER 439 select IIO_BUFFER_DMAENGINE 440 select IIO_TRIGGER 441 select IIO_TRIGGERED_BUFFER 442 select SPI_OFFLOAD 443 help 444 Say yes here to build support for Analog Devices AD7768-1 SPI 445 simultaneously sampling sigma-delta analog to digital converter (ADC). 446 447 To compile this driver as a module, choose M here: the module will be 448 called ad7768-1. 449 450config AD7779 451 tristate "Analog Devices AD7779 ADC driver" 452 depends on SPI 453 select CRC8 454 select IIO_BUFFER 455 select IIO_BACKEND 456 help 457 Say yes here to build support for Analog Devices AD777X family 458 (AD7770, AD7771, AD7779) analog to digital converter (ADC). 459 460 To compile this driver as a module, choose M here: the module will be 461 called ad7779. 462 463config AD7780 464 tristate "Analog Devices AD7780 and similar ADCs driver" 465 depends on SPI 466 depends on GPIOLIB || COMPILE_TEST 467 select AD_SIGMA_DELTA 468 help 469 Say yes here to build support for Analog Devices AD7170, AD7171, 470 AD7780 and AD7781 SPI analog to digital converters (ADC). 471 472 To compile this driver as a module, choose M here: the 473 module will be called ad7780. 474 475config AD7791 476 tristate "Analog Devices AD7791 ADC driver" 477 depends on SPI 478 select AD_SIGMA_DELTA 479 help 480 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789, 481 AD7790 and AD7791 SPI analog to digital converters (ADC). 482 483 To compile this driver as a module, choose M here: the module will be 484 called ad7791. 485 486config AD7793 487 tristate "Analog Devices AD7793 and similar ADCs driver" 488 depends on SPI 489 select AD_SIGMA_DELTA 490 help 491 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793, 492 AD7794 and AD7795 SPI analog to digital converters (ADC). 493 494 To compile this driver as a module, choose M here: the 495 module will be called AD7793. 496 497config AD7887 498 tristate "Analog Devices AD7887 ADC driver" 499 depends on SPI 500 select IIO_BUFFER 501 select IIO_TRIGGERED_BUFFER 502 help 503 Say yes here to build support for Analog Devices 504 AD7887 SPI analog to digital converter (ADC). 505 506 To compile this driver as a module, choose M here: the 507 module will be called ad7887. 508 509config AD7923 510 tristate "Analog Devices AD7923 and similar ADCs driver" 511 depends on SPI 512 select IIO_BUFFER 513 select IIO_TRIGGERED_BUFFER 514 help 515 Say yes here to build support for Analog Devices 516 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs. 517 518 To compile this driver as a module, choose M here: the 519 module will be called ad7923. 520 521config AD7944 522 tristate "Analog Devices AD7944 and similar ADCs driver" 523 depends on SPI 524 select SPI_OFFLOAD 525 select IIO_BUFFER 526 select IIO_BUFFER_DMAENGINE 527 select IIO_TRIGGERED_BUFFER 528 help 529 Say yes here to build support for Analog Devices 530 AD7944, AD7985, AD7986 ADCs. 531 532 To compile this driver as a module, choose M here: the 533 module will be called ad7944 534 535config AD7949 536 tristate "Analog Devices AD7949 and similar ADCs driver" 537 depends on SPI 538 help 539 Say yes here to build support for Analog Devices 540 AD7949, AD7682, AD7689 8 Channel ADCs. 541 542 To compile this driver as a module, choose M here: the 543 module will be called ad7949. 544 545config AD799X 546 tristate "Analog Devices AD799x ADC driver" 547 depends on I2C 548 select IIO_BUFFER 549 select IIO_TRIGGERED_BUFFER 550 help 551 Say yes here to build support for Analog Devices: 552 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998 553 i2c analog to digital converters (ADC). Provides direct access 554 via sysfs. 555 556 To compile this driver as a module, choose M here: the module will be 557 called ad799x. 558 559config AD9467 560 tristate "Analog Devices AD9467 High Speed ADC driver" 561 depends on SPI 562 select IIO_BACKEND 563 help 564 Say yes here to build support for Analog Devices: 565 * AD9467 16-Bit, 200 MSPS/250 MSPS Analog-to-Digital Converter 566 567 The driver requires the assistance of the AXI ADC IP core to operate, 568 since SPI is used for configuration only, while data has to be 569 streamed into memory via DMA. 570 571 To compile this driver as a module, choose M here: the module will be 572 called ad9467. 573 574config ADE9000 575 tristate "Analog Devices ADE9000 Multiphase Energy, and Power Quality Monitoring IC Driver" 576 depends on SPI 577 select REGMAP_SPI 578 select IIO_BUFFER 579 select IIO_KFIFO_BUF 580 help 581 Say yes here to build support for the Analog Devices ADE9000, 582 a highly accurate, multiphase energy and power quality monitoring 583 integrated circuit. 584 585 The device features high-precision analog-to-digital converters 586 and digital signal processing to compute RMS values, power factor, 587 frequency, and harmonic analysis. It supports SPI communication 588 and provides buffered data output through the IIO framework. 589 590 To compile this driver as a module, choose M here: the module will 591 be called ade9000. 592 593config ADI_AXI_ADC 594 tristate "Analog Devices Generic AXI ADC IP core driver" 595 depends on MICROBLAZE || NIOS2 || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_INTEL_SOCFPGA || COMPILE_TEST 596 select IIO_BUFFER 597 select IIO_BUFFER_HW_CONSUMER 598 select IIO_BUFFER_DMAENGINE 599 select REGMAP_MMIO 600 select IIO_BACKEND 601 help 602 Say yes here to build support for Analog Devices Generic 603 AXI ADC IP core. The IP core is used for interfacing with 604 analog-to-digital (ADC) converters that require either a high-speed 605 serial interface (JESD204B/C) or a source synchronous parallel 606 interface (LVDS/CMOS). 607 Typically (for such devices) SPI will be used for configuration only, 608 while this IP core handles the streaming of data into memory via DMA. 609 610 Link: https://wiki.analog.com/resources/fpga/docs/axi_adc_ip 611 If unsure, say N (but it's safe to say "Y"). 612 613 To compile this driver as a module, choose M here: the 614 module will be called adi-axi-adc. 615 616config ASPEED_ADC 617 tristate "Aspeed ADC" 618 depends on ARCH_ASPEED || COMPILE_TEST 619 depends on COMMON_CLK 620 help 621 If you say yes here you get support for the ADC included in Aspeed 622 BMC SoCs. 623 624 To compile this driver as a module, choose M here: the module will be 625 called aspeed_adc. 626 627config AT91_ADC 628 tristate "Atmel AT91 ADC" 629 depends on ARCH_AT91 || COMPILE_TEST 630 depends on INPUT && SYSFS && OF 631 select IIO_BUFFER 632 select IIO_TRIGGERED_BUFFER 633 help 634 Say yes here to build support for Atmel AT91 ADC. 635 636 To compile this driver as a module, choose M here: the module will be 637 called at91_adc. 638 639config AT91_SAMA5D2_ADC 640 tristate "Atmel AT91 SAMA5D2 ADC" 641 depends on ARCH_AT91 || COMPILE_TEST 642 depends on HAS_IOMEM 643 select IIO_BUFFER 644 select IIO_TRIGGERED_BUFFER 645 help 646 Say yes here to build support for Atmel SAMA5D2 ADC which is 647 available on SAMA5D2 SoC family. 648 649 To compile this driver as a module, choose M here: the module will be 650 called at91-sama5d2_adc. 651 652config AXP20X_ADC 653 tristate "X-Powers AXP20X and AXP22X ADC driver" 654 depends on MFD_AXP20X 655 help 656 Say yes here to have support for X-Powers power management IC (PMIC) 657 AXP20X and AXP22X ADC devices. 658 659 To compile this driver as a module, choose M here: the module will be 660 called axp20x_adc. 661 662config AXP288_ADC 663 tristate "X-Powers AXP288 ADC driver" 664 depends on MFD_AXP20X 665 help 666 Say yes here to have support for X-Powers power management IC (PMIC) ADC 667 device. Depending on platform configuration, this general purpose ADC can 668 be used for sampling sensors such as thermal resistors. 669 670 To compile this driver as a module, choose M here: the module will be 671 called axp288_adc. 672 673config BCM_IPROC_ADC 674 tristate "Broadcom IPROC ADC driver" 675 depends on (ARCH_BCM_IPROC && OF) || COMPILE_TEST 676 depends on MFD_SYSCON 677 default ARCH_BCM_CYGNUS 678 help 679 Say Y here if you want to add support for the Broadcom static 680 ADC driver. 681 682 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8 683 channels. The driver allows the user to read voltage values. 684 685config BERLIN2_ADC 686 tristate "Marvell Berlin2 ADC driver" 687 depends on ARCH_BERLIN || COMPILE_TEST 688 help 689 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for 690 temperature measurement. 691 692config CC10001_ADC 693 tristate "Cosmic Circuits 10001 ADC driver" 694 depends on HAS_IOMEM && HAVE_CLK && REGULATOR 695 select IIO_BUFFER 696 select IIO_TRIGGERED_BUFFER 697 help 698 Say yes here to build support for Cosmic Circuits 10001 ADC. 699 700 This driver can also be built as a module. If so, the module will be 701 called cc10001_adc. 702 703config CPCAP_ADC 704 tristate "Motorola CPCAP PMIC ADC driver" 705 depends on MFD_CPCAP 706 select IIO_BUFFER 707 select IIO_TRIGGERED_BUFFER 708 help 709 Say yes here to build support for Motorola CPCAP PMIC ADC. 710 711 This driver can also be built as a module. If so, the module will be 712 called cpcap-adc. 713 714config DA9150_GPADC 715 tristate "Dialog DA9150 GPADC driver support" 716 depends on MFD_DA9150 717 help 718 Say yes here to build support for Dialog DA9150 GPADC. 719 720 This driver can also be built as a module. If chosen, the module name 721 will be da9150-gpadc. 722 723 To compile this driver as a module, choose M here: the module will be 724 called berlin2-adc. 725 726config DLN2_ADC 727 tristate "Diolan DLN-2 ADC driver support" 728 depends on MFD_DLN2 729 select IIO_BUFFER 730 select IIO_TRIGGERED_BUFFER 731 help 732 Say yes here to build support for Diolan DLN-2 ADC. 733 734 This driver can also be built as a module. If so, the module will be 735 called adc_dln2. 736 737config ENVELOPE_DETECTOR 738 tristate "Envelope detector using a DAC and a comparator" 739 help 740 Say yes here to build support for an envelope detector using a DAC 741 and a comparator. 742 743 To compile this driver as a module, choose M here: the module will be 744 called envelope-detector. 745 746config EP93XX_ADC 747 tristate "Cirrus Logic EP93XX ADC driver" 748 depends on ARCH_EP93XX || COMPILE_TEST 749 depends on HAS_IOMEM 750 help 751 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic. 752 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this 753 case driver will reduce its CPU usage by 90% in some use cases. 754 755 To compile this driver as a module, choose M here: the module will be 756 called ep93xx_adc. 757 758config EXYNOS_ADC 759 tristate "Exynos ADC driver support" 760 depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST) 761 depends on HAS_IOMEM 762 help 763 Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and 764 Exynos SoCs. 765 Choose Y here only if you build for such Samsung SoC. 766 767 To compile this driver as a module, choose M here: the module will be 768 called exynos_adc. 769 770config MXS_LRADC_ADC 771 tristate "Freescale i.MX23/i.MX28 LRADC ADC" 772 depends on MFD_MXS_LRADC 773 select IIO_BUFFER 774 select IIO_TRIGGERED_BUFFER 775 help 776 Say yes here to build support for the ADC functions of the 777 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings, 778 battery voltage measurement, and die temperature measurement. 779 780 This driver can also be built as a module. If so, the module will be 781 called mxs-lradc-adc. 782 783config FSL_MX25_ADC 784 tristate "Freescale MX25 ADC driver" 785 depends on MFD_MX25_TSADC 786 help 787 Generic Conversion Queue driver used for general purpose ADC in the 788 MX25. This driver supports single measurements using the MX25 ADC. 789 790config GEHC_PMC_ADC 791 tristate "GE HealthCare PMC ADC driver" 792 depends on I2C 793 help 794 Say yes here to build support for the GE HealthCare PMC 16-bit 795 16-Channel ADC. 796 797 To compile this driver as a module, choose M here: the module will be 798 called gehc-pmc-adc. 799 800config HI8435 801 tristate "Holt Integrated Circuits HI-8435 threshold detector" 802 select IIO_TRIGGERED_EVENT 803 depends on SPI 804 help 805 If you say yes here you get support for Holt Integrated Circuits 806 HI-8435 chip. 807 808 This driver can also be built as a module. If so, the module will be 809 called hi8435. 810 811config HX711 812 tristate "AVIA HX711 ADC for weight cells" 813 depends on GPIOLIB 814 select IIO_BUFFER 815 select IIO_TRIGGERED_BUFFER 816 help 817 If you say yes here you get support for AVIA HX711 ADC which is used 818 for weigh cells 819 820 This driver uses two GPIOs, one acts as the clock and controls the 821 channel selection and gain, the other one is used for the measurement 822 data 823 824 Currently the raw value is read from the chip and delivered. 825 To get an actual weight one needs to subtract the 826 zero offset and multiply by a scale factor. 827 This should be done in userspace. 828 829 This driver can also be built as a module. If so, the module will be 830 called hx711. 831 832config INA2XX_ADC 833 tristate "Texas Instruments INA2xx Power Monitors IIO driver" 834 depends on I2C && !SENSORS_INA2XX 835 select REGMAP_I2C 836 select IIO_BUFFER 837 select IIO_KFIFO_BUF 838 help 839 Say yes here to build support for TI INA2xx family of Power Monitors. 840 This driver is mutually exclusive with the HWMON version. 841 842config INGENIC_ADC 843 tristate "Ingenic JZ47xx SoCs ADC driver" 844 depends on MIPS || COMPILE_TEST 845 select IIO_BUFFER 846 help 847 Say yes here to build support for the Ingenic JZ47xx SoCs ADC unit. 848 849 This driver can also be built as a module. If so, the module will be 850 called ingenic_adc. 851 852config INTEL_DC_TI_ADC 853 tristate "Intel Bay Trail / Cherry Trail Dollar Cove TI ADC driver" 854 depends on INTEL_SOC_PMIC_CHTDC_TI 855 help 856 Say yes here to have support for the Dollar Cove TI PMIC ADC device. 857 Depending on platform configuration, this general purpose ADC can be 858 used for sensors such as battery voltage and thermal resistors. 859 860 To compile this driver as a module, choose M here: the module will be 861 called intel_dc_ti_adc. 862 863config INTEL_MRFLD_ADC 864 tristate "Intel Merrifield Basin Cove ADC driver" 865 depends on INTEL_SOC_PMIC_MRFLD 866 help 867 Say yes here to have support for Basin Cove power management IC (PMIC) ADC 868 device. Depending on platform configuration, this general purpose ADC can 869 be used for sampling sensors such as thermal resistors. 870 871 To compile this driver as a module, choose M here: the module will be 872 called intel_mrfld_adc. 873 874config IMX7D_ADC 875 tristate "Freescale IMX7D ADC driver" 876 depends on ARCH_MXC || COMPILE_TEST 877 depends on HAS_IOMEM 878 help 879 Say yes here to build support for IMX7D ADC. 880 881 This driver can also be built as a module. If so, the module will be 882 called imx7d_adc. 883 884config IMX8QXP_ADC 885 tristate "NXP IMX8QXP ADC driver" 886 depends on ARCH_MXC || COMPILE_TEST 887 depends on HAS_IOMEM 888 help 889 Say yes here to build support for IMX8QXP ADC. 890 891 This driver can also be built as a module. If so, the module will be 892 called imx8qxp-adc. 893 894config IMX93_ADC 895 tristate "IMX93 ADC driver" 896 depends on ARCH_MXC || COMPILE_TEST 897 depends on HAS_IOMEM 898 help 899 Say yes here to build support for IMX93 ADC. 900 901 This driver can also be built as a module. If so, the module will be 902 called imx93_adc. 903 904config LP8788_ADC 905 tristate "LP8788 ADC driver" 906 depends on MFD_LP8788 907 help 908 Say yes here to build support for TI LP8788 ADC. 909 910 To compile this driver as a module, choose M here: the module will be 911 called lp8788_adc. 912 913config LPC18XX_ADC 914 tristate "NXP LPC18xx ADC driver" 915 depends on ARCH_LPC18XX || COMPILE_TEST 916 depends on HAS_IOMEM 917 help 918 Say yes here to build support for NXP LPC18XX ADC. 919 920 To compile this driver as a module, choose M here: the module will be 921 called lpc18xx_adc. 922 923config LPC32XX_ADC 924 tristate "NXP LPC32XX ADC" 925 depends on ARCH_LPC32XX || COMPILE_TEST 926 depends on HAS_IOMEM 927 help 928 Say yes here to build support for the integrated ADC inside the 929 LPC32XX SoC. Note that this feature uses the same hardware as the 930 touchscreen driver, so you should either select only one of the two 931 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case, 932 activate only one via device tree selection. Provides direct access 933 via sysfs. 934 935config LTC2309 936 tristate "Linear Technology LTC2309 ADC driver" 937 depends on I2C 938 help 939 Say yes here to build support for Linear Technology LTC2309, a low 940 noise, low power, 8-channel, 12-bit SAR ADC 941 942 This driver can also be built as a module. If so, the module will 943 be called ltc2309. 944 945config LTC2471 946 tristate "Linear Technology LTC2471 and LTC2473 ADC driver" 947 depends on I2C 948 help 949 Say yes here to build support for Linear Technology LTC2471 and 950 LTC2473 16-bit I2C ADC. 951 952 This driver can also be built as a module. If so, the module will 953 be called ltc2471. 954 955config LTC2485 956 tristate "Linear Technology LTC2485 ADC driver" 957 depends on I2C 958 help 959 Say yes here to build support for Linear Technology LTC2485 ADC. 960 961 To compile this driver as a module, choose M here: the module will be 962 called ltc2485. 963 964config LTC2496 965 tristate "Linear Technology LTC2496 ADC driver" 966 depends on SPI 967 help 968 Say yes here to build support for Linear Technology LTC2496 969 16-Bit 8-/16-Channel Delta Sigma ADC. 970 971 To compile this driver as a module, choose M here: the module will be 972 called ltc2496. 973 974config LTC2497 975 tristate "Linear Technology LTC2497 ADC driver" 976 depends on I2C 977 help 978 Say yes here to build support for Linear Technology LTC2497 979 16-Bit 8-/16-Channel Delta Sigma ADC. 980 981 To compile this driver as a module, choose M here: the module will be 982 called ltc2497. 983 984config MAX1027 985 tristate "Maxim max1027 ADC driver" 986 depends on SPI 987 select IIO_BUFFER 988 select IIO_TRIGGERED_BUFFER 989 help 990 Say yes here to build support for Maxim SPI {10,12}-bit ADC models: 991 max1027, max1029, max1031, max1227, max1229 and max1231. 992 993 To compile this driver as a module, choose M here: the module will be 994 called max1027. 995 996config MAX11100 997 tristate "Maxim max11100 ADC driver" 998 depends on SPI_MASTER 999 help 1000 Say yes here to build support for Maxim max11100 SPI ADC 1001 1002 To compile this driver as a module, choose M here: the module will be 1003 called max11100. 1004 1005config MAX1118 1006 tristate "Maxim max1117/max1118/max1119 ADCs driver" 1007 depends on SPI 1008 select IIO_BUFFER 1009 select IIO_TRIGGERED_BUFFER 1010 help 1011 Say yes here to build support for Maxim max1117/max1118/max1119 1012 8-bit, dual-channel ADCs. 1013 1014 To compile this driver as a module, choose M here: the module will be 1015 called max1118. 1016 1017config MAX11205 1018 tristate "Maxim max11205 ADC driver" 1019 depends on SPI 1020 select AD_SIGMA_DELTA 1021 select IIO_BUFFER 1022 select IIO_TRIGGERED_BUFFER 1023 1024 help 1025 Say yes here to build support for Maxim max11205 16-bit, single-channel 1026 ultra-low power delta-sigma ADC. 1027 1028 To compile this driver as a module, choose M here: the module will be 1029 called max11205. 1030 1031config MAX11410 1032 tristate "Analog Devices MAX11410 ADC driver" 1033 depends on SPI 1034 select REGMAP_SPI 1035 select IIO_BUFFER 1036 select IIO_TRIGGER 1037 select IIO_TRIGGERED_BUFFER 1038 help 1039 Say yes here to build support for Analog Devices MAX11410 ADCs. 1040 1041 To compile this driver as a module, choose M here: the module will be 1042 called max11410. 1043 1044config MAX1241 1045 tristate "Maxim max1241 ADC driver" 1046 depends on SPI_MASTER 1047 help 1048 Say yes here to build support for Maxim max1241 12-bit, single-channel 1049 ADC. 1050 1051 To compile this driver as a module, choose M here: the module will be 1052 called max1241. 1053 1054config MAX1363 1055 tristate "Maxim max1363 ADC driver" 1056 depends on I2C 1057 select IIO_BUFFER 1058 select IIO_TRIGGERED_BUFFER 1059 help 1060 Say yes here to build support for many Maxim i2c analog to digital 1061 converters (ADC). (max1361, max1362, max1363, max1364, max1036, 1062 max1037, max1038, max1039, max1136, max1136, max1137, max1138, 1063 max1139, max1236, max1237, max11238, max1239, max11600, max11601, 1064 max11602, max11603, max11604, max11605, max11606, max11607, 1065 max11608, max11609, max11610, max11611, max11612, max11613, 1066 max11614, max11615, max11616, max11617, max11644, max11645, 1067 max11646, max11647) Provides direct access via sysfs and buffered 1068 data via the iio dev interface. 1069 1070 To compile this driver as a module, choose M here: the module will be 1071 called max1363. 1072 1073config MAX14001 1074 tristate "Analog Devices MAX14001/MAX14002 ADC driver" 1075 depends on SPI 1076 help 1077 Say yes here to build support for Analog Devices MAX14001/MAX14002 1078 Configurable, Isolated 10-bit ADCs for Multi-Range Binary Inputs. 1079 1080 To compile this driver as a module, choose M here: the module will be 1081 called max14001. 1082 1083config MAX34408 1084 tristate "Maxim max34408/max344089 ADC driver" 1085 depends on I2C 1086 help 1087 Say yes here to build support for Maxim max34408/max34409 current sense 1088 monitor with 8-bits ADC interface with overcurrent delay/threshold and 1089 shutdown delay. 1090 1091 To compile this driver as a module, choose M here: the module will be 1092 called max34408. 1093 1094config MAX77541_ADC 1095 tristate "Analog Devices MAX77541 ADC driver" 1096 depends on MFD_MAX77541 1097 help 1098 This driver controls a Analog Devices MAX77541 ADC 1099 via I2C bus. This device has one adc. Say yes here to build 1100 support for Analog Devices MAX77541 ADC interface. 1101 1102 To compile this driver as a module, choose M here: 1103 the module will be called max77541-adc. 1104 1105config MAX9611 1106 tristate "Maxim max9611/max9612 ADC driver" 1107 depends on I2C 1108 help 1109 Say yes here to build support for Maxim max9611/max9612 current sense 1110 amplifier with 12-bits ADC interface. 1111 1112 To compile this driver as a module, choose M here: the module will be 1113 called max9611. 1114 1115config MCP320X 1116 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3" 1117 depends on SPI 1118 help 1119 Say yes here to build support for Microchip Technology's 1120 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204, 1121 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital 1122 converters. 1123 1124 This driver can also be built as a module. If so, the module will be 1125 called mcp320x. 1126 1127config MCP3422 1128 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver" 1129 depends on I2C 1130 help 1131 Say yes here to build support for Microchip Technology's MCP3421 1132 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428 1133 analog to digital converters. 1134 1135 This driver can also be built as a module. If so, the module will be 1136 called mcp3422. 1137 1138config MCP3564 1139 tristate "Microchip Technology MCP3461/2/4/R, MCP3561/2/4/R driver" 1140 depends on SPI 1141 depends on IIO 1142 help 1143 Say yes here to build support for Microchip Technology's MCP3461, 1144 MCP3462, MCP3464, MCP3461R, MCP3462R, MCP3464R, MCP3561, MCP3562, 1145 MCP3564, MCP3561R, MCP3562R and MCP3564R analog to digital 1146 converters. 1147 1148 This driver can also be built as a module. If so, the module will be 1149 called mcp3564. 1150 1151config MCP3911 1152 tristate "Microchip Technology MCP3911 driver" 1153 depends on SPI 1154 select IIO_BUFFER 1155 select IIO_TRIGGERED_BUFFER 1156 help 1157 Say yes here to build support for one of the following 1158 Microchip Technology's analog to digital converters: 1159 MCP3910, MCP3911, MCP3912, MCP3913, MCP3914, 1160 MCP3918 and MCP3919. 1161 1162 This driver can also be built as a module. If so, the module will be 1163 called mcp3911. 1164 1165config MEDIATEK_MT6359_AUXADC 1166 tristate "MediaTek MT6359 PMIC AUXADC driver" 1167 depends on MFD_MT6397 1168 help 1169 Say yes here to enable support for MediaTek MT6357, MT6358 and 1170 MT6359 PMICs Auxiliary ADC. 1171 This driver provides multiple channels for system monitoring, 1172 such as battery voltage, PMIC temperature, and others. 1173 1174 This driver can also be built as a module. If so, the module will be 1175 called mt6359-auxadc. 1176 1177config MEDIATEK_MT6360_ADC 1178 tristate "Mediatek MT6360 ADC driver" 1179 depends on MFD_MT6360 1180 select IIO_BUFFER 1181 select IIO_TRIGGERED_BUFFER 1182 help 1183 Say Y here to enable MT6360 ADC support. 1184 Integrated for System Monitoring includes 1185 is used in smartphones and tablets and supports a 11 channel 1186 general purpose ADC. 1187 1188config MEDIATEK_MT6370_ADC 1189 tristate "MediaTek MT6370 ADC driver" 1190 depends on MFD_MT6370 1191 help 1192 Say yes here to enable MediaTek MT6370 ADC support. 1193 1194 This ADC driver provides 9 channels for system monitoring (charger 1195 current, voltage, and temperature). 1196 1197 This driver can also be built as a module. If so, the module 1198 will be called "mt6370-adc". 1199 1200config MEDIATEK_MT6577_AUXADC 1201 tristate "MediaTek AUXADC driver" 1202 depends on ARCH_MEDIATEK || COMPILE_TEST 1203 depends on HAS_IOMEM 1204 help 1205 Say yes here to enable support for MediaTek mt65xx AUXADC. 1206 1207 The driver supports immediate mode operation to read from one of sixteen 1208 channels (external or internal). 1209 1210 This driver can also be built as a module. If so, the module will be 1211 called mt6577_auxadc. 1212 1213config MEN_Z188_ADC 1214 tristate "MEN 16z188 ADC IP Core support" 1215 depends on MCB 1216 help 1217 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB 1218 carrier. 1219 1220 This driver can also be built as a module. If so, the module will be 1221 called men_z188_adc. 1222 1223config MESON_SARADC 1224 tristate "Amlogic Meson SAR ADC driver" 1225 default ARCH_MESON 1226 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST) 1227 select REGMAP_MMIO 1228 help 1229 Say yes here to build support for the SAR ADC found in Amlogic Meson 1230 SoCs. 1231 1232 To compile this driver as a module, choose M here: the 1233 module will be called meson_saradc. 1234 1235config MP2629_ADC 1236 tristate "Monolithic MP2629 ADC driver" 1237 depends on MFD_MP2629 1238 help 1239 Say yes to have support for battery charger IC MP2629 ADC device 1240 accessed over I2C. 1241 1242 This driver provides ADC conversion of system, input power supply 1243 and battery voltage & current information. 1244 1245config NAU7802 1246 tristate "Nuvoton NAU7802 ADC driver" 1247 depends on I2C 1248 help 1249 Say yes here to build support for Nuvoton NAU7802 ADC. 1250 1251 To compile this driver as a module, choose M here: the 1252 module will be called nau7802. 1253 1254config NCT7201 1255 tristate "Nuvoton Instruments NCT7201 and NCT7202 Power Monitor" 1256 depends on I2C 1257 select REGMAP_I2C 1258 help 1259 If you say yes here you get support for the Nuvoton NCT7201 and 1260 NCT7202 Voltage Monitor. 1261 1262 This driver can also be built as a module. If so, the module 1263 will be called nct7201. 1264 1265config NPCM_ADC 1266 tristate "Nuvoton NPCM ADC driver" 1267 depends on ARCH_NPCM || COMPILE_TEST 1268 depends on HAS_IOMEM 1269 help 1270 Say yes here to build support for Nuvoton NPCM ADC. 1271 1272 This driver can also be built as a module. If so, the module 1273 will be called npcm_adc. 1274 1275config NXP_SAR_ADC 1276 tristate "NXP S32G SAR-ADC driver" 1277 depends on ARCH_S32 || COMPILE_TEST 1278 select IIO_BUFFER 1279 select IIO_TRIGGERED_BUFFER 1280 help 1281 Say yes here to build support for S32G platforms 1282 analog-to-digital converter. 1283 1284 This driver can also be built as a module. If so, the module will be 1285 called nxp_sar_adc. 1286 1287config PAC1921 1288 tristate "Microchip Technology PAC1921 driver" 1289 depends on I2C 1290 select REGMAP_I2C 1291 select IIO_BUFFER 1292 select IIO_TRIGGERED_BUFFER 1293 help 1294 Say yes here to build support for Microchip Technology's PAC1921 1295 High-Side Power/Current Monitor with Analog Output. 1296 1297 This driver can also be built as a module. If so, the module 1298 will be called pac1921. 1299 1300config PAC1934 1301 tristate "Microchip Technology PAC1934 driver" 1302 depends on I2C 1303 help 1304 Say yes here to build support for Microchip Technology's PAC1931, 1305 PAC1932, PAC1933, PAC1934 Single/Multi-Channel Power Monitor with 1306 Accumulator. 1307 1308 This driver can also be built as a module. If so, the module 1309 will be called pac1934. 1310 1311config PALMAS_GPADC 1312 tristate "TI Palmas General Purpose ADC" 1313 depends on MFD_PALMAS 1314 help 1315 Palmas series pmic chip by Texas Instruments (twl6035/6037) 1316 is used in smartphones and tablets and supports a 16 channel 1317 general purpose ADC. 1318 1319config QCOM_VADC_COMMON 1320 tristate 1321 1322config QCOM_PM8XXX_XOADC 1323 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs" 1324 depends on MFD_PM8XXX 1325 select QCOM_VADC_COMMON 1326 help 1327 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs 1328 using SSBI transport: PM8018, PM8038, PM8058, PM8921. 1329 1330 To compile this driver as a module, choose M here: the module 1331 will be called qcom-pm8xxx-xoadc. 1332 1333config QCOM_SPMI_RRADC 1334 tristate "Qualcomm SPMI RRADC" 1335 depends on MFD_SPMI_PMIC 1336 help 1337 This is for the PMIC Round Robin ADC driver. 1338 1339 This driver exposes the battery ID resistor, battery thermal, PMIC die 1340 temperature, charger USB in and DC in voltage and current. 1341 1342 To compile this driver as a module, choose M here: the module will 1343 be called qcom-qpmi-rradc. 1344 1345config QCOM_SPMI_IADC 1346 tristate "Qualcomm SPMI PMIC current ADC" 1347 depends on SPMI 1348 select REGMAP_SPMI 1349 help 1350 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip. 1351 1352 The driver supports single mode operation to read from one of two 1353 channels (external or internal). Hardware have additional 1354 channels internally used for gain and offset calibration. 1355 1356 To compile this driver as a module, choose M here: the module will 1357 be called qcom-spmi-iadc. 1358 1359config QCOM_SPMI_VADC 1360 tristate "Qualcomm SPMI PMIC voltage ADC" 1361 depends on SPMI 1362 select REGMAP_SPMI 1363 select QCOM_VADC_COMMON 1364 help 1365 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip. 1366 1367 The driver supports multiple channels read. The VADC is a 15-bit 1368 sigma-delta ADC. Some of the channels are internally used for 1369 calibration. 1370 1371 To compile this driver as a module, choose M here: the module will 1372 be called qcom-spmi-vadc. 1373 1374config QCOM_SPMI_ADC5 1375 tristate "Qualcomm SPMI PMIC5 ADC" 1376 depends on SPMI 1377 select REGMAP_SPMI 1378 select QCOM_VADC_COMMON 1379 help 1380 This is the IIO Voltage PMIC5 ADC driver for Qualcomm Technologies Inc. 1381 1382 The driver supports multiple channels read. The ADC is a 16-bit 1383 sigma-delta ADC. The hardware supports calibrated results for 1384 conversion requests and clients include reading voltage phone 1385 power, on board system thermistors connected to the PMIC ADC, 1386 PMIC die temperature, charger temperature, battery current, USB voltage 1387 input, voltage signals connected to supported PMIC GPIO inputs. The 1388 hardware supports internal pull-up for thermistors and can choose between 1389 a 100k, 30k and 400k pull up using the ADC channels. 1390 1391 To compile this driver as a module, choose M here: the module will 1392 be called qcom-spmi-adc5. 1393 1394config QCOM_SPMI_ADC5_GEN3 1395 tristate "Qualcomm SPMI PMIC5 GEN3 ADC" 1396 depends on SPMI && THERMAL 1397 select REGMAP_SPMI 1398 select QCOM_VADC_COMMON 1399 select AUXILIARY_BUS 1400 help 1401 IIO Voltage PMIC5 Gen3 ADC driver for Qualcomm Technologies Inc. 1402 1403 The driver supports reading multiple channels. The ADC is a 16-bit 1404 sigma-delta ADC. The hardware supports calibrated results for 1405 conversion requests and clients include reading phone power supply 1406 voltage, on board system thermistors connected to the PMIC ADC, 1407 PMIC die temperature, charger temperature, battery current, USB 1408 voltage input and voltage signals connected to supported PMIC GPIO 1409 pins. The hardware supports internal pull-up for thermistors and can 1410 choose between a 30k, 100k or 400k ohm pull up using the ADC channels. 1411 1412 In addition, the same driver supports ADC thermal monitoring devices 1413 too. They appear as thermal zones with multiple trip points. A thermal 1414 client sets threshold temperature for both warm and cool trips and 1415 gets updated when a threshold is reached. 1416 1417 To compile this driver as a module, choose M here: the module will 1418 be called qcom-spmi-adc5-gen3. 1419 1420config RCAR_GYRO_ADC 1421 tristate "Renesas R-Car GyroADC driver" 1422 depends on ARCH_RCAR_GEN2 || COMPILE_TEST 1423 help 1424 Say yes here to build support for the GyroADC found in Renesas 1425 R-Car Gen2 SoCs. This block is a simple SPI offload engine for 1426 reading data out of attached compatible ADCs in a round-robin 1427 fashion. Up to 4 or 8 ADC channels are supported by this block, 1428 depending on which ADCs are attached. 1429 1430 To compile this driver as a module, choose M here: the 1431 module will be called rcar-gyroadc. 1432 1433config RN5T618_ADC 1434 tristate "ADC for the RN5T618/RC5T619 family of chips" 1435 depends on MFD_RN5T618 1436 help 1437 Say yes here to build support for the integrated ADC inside the 1438 RN5T618/619 series PMICs: 1439 1440 This driver can also be built as a module. If so, the module 1441 will be called rn5t618-adc. 1442 1443config ROHM_BD79112 1444 tristate "Rohm BD79112 ADC driver" 1445 depends on SPI && GPIOLIB 1446 select REGMAP_SPI 1447 select IIO_ADC_HELPER 1448 help 1449 Say yes here to build support for the ROHM BD79112 ADC. The 1450 ROHM BD79112 is a 12-bit, 32-channel, SAR ADC. Analog inputs 1451 can also be used for GPIO. 1452 1453config ROHM_BD79124 1454 tristate "Rohm BD79124 ADC driver" 1455 depends on I2C && GPIOLIB 1456 select REGMAP_I2C 1457 select IIO_ADC_HELPER 1458 help 1459 Say yes here to build support for the ROHM BD79124 ADC. The 1460 ROHM BD79124 is a 12-bit, 8-channel, SAR ADC. The ADC supports 1461 also an automatic measurement mode, with an alarm interrupt for 1462 out-of-window measurements. The window is configurable for each 1463 channel. 1464 1465config ROCKCHIP_SARADC 1466 tristate "Rockchip SARADC driver" 1467 depends on ARCH_ROCKCHIP || COMPILE_TEST 1468 depends on RESET_CONTROLLER 1469 select IIO_BUFFER 1470 select IIO_TRIGGERED_BUFFER 1471 help 1472 Say yes here to build support for the SARADC found in SoCs from 1473 Rockchip. 1474 1475 To compile this driver as a module, choose M here: the 1476 module will be called rockchip_saradc. 1477 1478config RICHTEK_RTQ6056 1479 tristate "Richtek RTQ6056 Current and Power Monitor ADC" 1480 depends on I2C 1481 select REGMAP_I2C 1482 select IIO_BUFFER 1483 select IIO_TRIGGERED_BUFFER 1484 help 1485 Say yes here to enable RQT6056 ADC support. 1486 RTQ6056 is a high accuracy current-sense monitor with I2C and SMBus 1487 compatible interface, and the device provides full information for 1488 system by reading out the load current and power. 1489 1490 This driver can also be built as a module. If so, the module will be 1491 called rtq6056. 1492 1493config RZG2L_ADC 1494 tristate "Renesas RZ/G2L ADC driver" 1495 depends on ARCH_RZG2L || COMPILE_TEST 1496 select IIO_ADC_HELPER 1497 help 1498 Say yes here to build support for the ADC found in Renesas 1499 RZ/G2L family. 1500 1501 To compile this driver as a module, choose M here: the 1502 module will be called rzg2l_adc. 1503 1504config RZN1_ADC 1505 tristate "Renesas RZ/N1 ADC driver" 1506 depends on ARCH_RZN1 || COMPILE_TEST 1507 help 1508 Say yes here to build support for the ADC found in Renesas 1509 RZ/N1 family. 1510 1511 To compile this driver as a module, choose M here: the 1512 module will be called rzn1-adc. 1513 1514config RZT2H_ADC 1515 tristate "Renesas RZ/T2H / RZ/N2H ADC driver" 1516 depends on ARCH_RENESAS || COMPILE_TEST 1517 select IIO_ADC_HELPER 1518 help 1519 Say yes here to build support for the ADC found in Renesas 1520 RZ/T2H / RZ/N2H SoCs. 1521 1522 To compile this driver as a module, choose M here: the 1523 module will be called rzt2h_adc. 1524 1525config SC27XX_ADC 1526 tristate "Spreadtrum SC27xx series PMICs ADC" 1527 depends on MFD_SC27XX_PMIC || COMPILE_TEST 1528 help 1529 Say yes here to build support for the integrated ADC inside the 1530 Spreadtrum SC27xx series PMICs. 1531 1532 This driver can also be built as a module. If so, the module 1533 will be called sc27xx_adc. 1534 1535config SOPHGO_CV1800B_ADC 1536 tristate "Sophgo CV1800B SARADC" 1537 depends on ARCH_SOPHGO || COMPILE_TEST 1538 help 1539 Say yes here to build support for the SARADC integrated inside 1540 the Sophgo CV1800B SoC. 1541 1542 This driver can also be built as a module. If so, the module 1543 will be called sophgo_cv1800b_adc. 1544 1545config SPEAR_ADC 1546 tristate "ST SPEAr ADC" 1547 depends on PLAT_SPEAR || COMPILE_TEST 1548 depends on HAS_IOMEM 1549 help 1550 Say yes here to build support for the integrated ADC inside the 1551 ST SPEAr SoC. Provides direct access via sysfs. 1552 1553 To compile this driver as a module, choose M here: the 1554 module will be called spear_adc. 1555 1556config SD_ADC_MODULATOR 1557 tristate "Generic sigma delta modulator" 1558 select IIO_BUFFER 1559 select IIO_TRIGGERED_BUFFER 1560 select IIO_BACKEND 1561 help 1562 Select this option to enables sigma delta modulator. This driver can 1563 support generic sigma delta modulators. 1564 1565 This driver can also be built as a module. If so, the module 1566 will be called sd_adc_modulator. 1567 1568config STM32_ADC_CORE 1569 tristate "STMicroelectronics STM32 adc core" 1570 depends on ARCH_STM32 || COMPILE_TEST 1571 depends on OF 1572 depends on REGULATOR 1573 depends on HAS_IOMEM 1574 select IIO_BUFFER 1575 select MFD_STM32_TIMERS 1576 select IIO_STM32_TIMER_TRIGGER 1577 select IIO_TRIGGERED_BUFFER 1578 help 1579 Select this option to enable the core driver for STMicroelectronics 1580 STM32 analog-to-digital converter (ADC). 1581 1582 This driver can also be built as a module. If so, the module 1583 will be called stm32-adc-core. 1584 1585config STM32_ADC 1586 tristate "STMicroelectronics STM32 adc" 1587 depends on STM32_ADC_CORE 1588 help 1589 Say yes here to build support for STMicroelectronics stm32 Analog 1590 to Digital Converter (ADC). 1591 1592 This driver can also be built as a module. If so, the module 1593 will be called stm32-adc. 1594 1595config STM32_DFSDM_CORE 1596 tristate "STMicroelectronics STM32 DFSDM core" 1597 depends on (ARCH_STM32 && OF) || COMPILE_TEST 1598 select REGMAP 1599 select REGMAP_MMIO 1600 help 1601 Select this option to enable the driver for STMicroelectronics 1602 STM32 digital filter for sigma delta converter. 1603 1604 This driver can also be built as a module. If so, the module 1605 will be called stm32-dfsdm-core. 1606 1607config STM32_DFSDM_ADC 1608 tristate "STMicroelectronics STM32 dfsdm adc" 1609 depends on (ARCH_STM32 && OF) || COMPILE_TEST 1610 select STM32_DFSDM_CORE 1611 select REGMAP_MMIO 1612 select IIO_BUFFER 1613 select IIO_BUFFER_HW_CONSUMER 1614 select IIO_TRIGGERED_BUFFER 1615 select IIO_BACKEND 1616 help 1617 Select this option to support ADCSigma delta modulator for 1618 STMicroelectronics STM32 digital filter for sigma delta converter. 1619 1620 This driver can also be built as a module. If so, the module 1621 will be called stm32-dfsdm-adc. 1622 1623config STMPE_ADC 1624 tristate "STMicroelectronics STMPE ADC driver" 1625 depends on OF && MFD_STMPE 1626 help 1627 Say yes here to build support for ST Microelectronics STMPE 1628 built-in ADC block (stmpe811). 1629 1630config SUN4I_GPADC 1631 tristate "Allwinner A10/A13/A31 and similar GPADCs driver" 1632 depends on IIO 1633 depends on MFD_SUN4I_GPADC || MACH_SUN8I 1634 depends on THERMAL || !THERMAL_OF 1635 select REGMAP_IRQ 1636 help 1637 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs 1638 GPADC. This ADC provides 4 channels which can be used as an ADC or as 1639 a touchscreen input and one channel for thermal sensor. 1640 1641 The thermal sensor slows down ADC readings and can be disabled by 1642 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be 1643 enabled by default since the SoC temperature is usually more critical 1644 than ADC readings. 1645 1646 To compile this driver as a module, choose M here: the module will be 1647 called sun4i-gpadc-iio. 1648 1649config SUN20I_GPADC 1650 tristate "Allwinner D1/T113s/T507/R329 and similar GPADCs driver" 1651 depends on ARCH_SUNXI || COMPILE_TEST 1652 select IIO_ADC_HELPER 1653 help 1654 Say yes here to build support for Allwinner (D1, T113, T507 and R329) 1655 SoCs GPADC. This ADC provides up to 16 channels. 1656 1657 To compile this driver as a module, choose M here: the module will be 1658 called sun20i-gpadc-iio. 1659 1660config TI_ADC081C 1661 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family" 1662 depends on I2C 1663 select IIO_BUFFER 1664 select IIO_TRIGGERED_BUFFER 1665 help 1666 If you say yes here you get support for Texas Instruments ADC081C, 1667 ADC101C and ADC121C ADC chips. 1668 1669 This driver can also be built as a module. If so, the module will be 1670 called ti-adc081c. 1671 1672config TI_ADC0832 1673 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838" 1674 depends on SPI 1675 select IIO_BUFFER 1676 select IIO_TRIGGERED_BUFFER 1677 help 1678 If you say yes here you get support for Texas Instruments ADC0831, 1679 ADC0832, ADC0834, ADC0838 ADC chips. 1680 1681 This driver can also be built as a module. If so, the module will be 1682 called ti-adc0832. 1683 1684config TI_ADC084S021 1685 tristate "Texas Instruments ADC084S021" 1686 depends on SPI 1687 select IIO_BUFFER 1688 select IIO_TRIGGERED_BUFFER 1689 help 1690 If you say yes here you get support for Texas Instruments ADC084S021 1691 chips. 1692 1693 This driver can also be built as a module. If so, the module will be 1694 called ti-adc084s021. 1695 1696config TI_ADC108S102 1697 tristate "Texas Instruments ADC108S102 and ADC128S102 driver" 1698 depends on SPI 1699 select IIO_BUFFER 1700 select IIO_TRIGGERED_BUFFER 1701 help 1702 Say yes here to build support for Texas Instruments ADC108S102 and 1703 ADC128S102 ADC. 1704 1705 To compile this driver as a module, choose M here: the module will 1706 be called ti-adc108s102. 1707 1708config TI_ADC12138 1709 tristate "Texas Instruments ADC12130/ADC12132/ADC12138" 1710 depends on SPI 1711 select IIO_BUFFER 1712 select IIO_TRIGGERED_BUFFER 1713 help 1714 If you say yes here you get support for Texas Instruments ADC12130, 1715 ADC12132 and ADC12138 chips. 1716 1717 This driver can also be built as a module. If so, the module will be 1718 called ti-adc12138. 1719 1720config TI_ADC128S052 1721 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021" 1722 depends on SPI 1723 help 1724 If you say yes here you get support for Texas Instruments ADC128S052, 1725 ADC122S021, ADC124S021 and ROHM Semiconductor BD79104 chips. 1726 1727 This driver can also be built as a module. If so, the module will be 1728 called ti-adc128s052. 1729 1730config TI_ADC161S626 1731 tristate "Texas Instruments ADC161S626 1-channel differential ADC" 1732 depends on SPI 1733 select IIO_BUFFER 1734 select IIO_TRIGGERED_BUFFER 1735 help 1736 If you say yes here you get support for Texas Instruments ADC141S626, 1737 and ADC161S626 chips. 1738 1739 This driver can also be built as a module. If so, the module will be 1740 called ti-adc161s626. 1741 1742config TI_ADS1015 1743 tristate "Texas Instruments ADS1015 ADC" 1744 depends on I2C 1745 select REGMAP_I2C 1746 select IIO_BUFFER 1747 select IIO_TRIGGERED_BUFFER 1748 help 1749 If you say yes here you get support for Texas Instruments ADS1015 1750 ADC chip. 1751 1752 This driver can also be built as a module. If so, the module will be 1753 called ti-ads1015. 1754 1755config TI_ADS1018 1756 tristate "Texas Instruments ADS1018 ADC" 1757 depends on SPI 1758 select IIO_BUFFER 1759 select IIO_TRIGGERED_BUFFER 1760 help 1761 If you say yes here you get support for Texas Instruments ADS1018 and 1762 ADS1118 ADC chips. 1763 1764 This driver can also be built as a module. If so, the module will be 1765 called ti-ads1018. 1766 1767config TI_ADS1100 1768 tristate "Texas Instruments ADS1100 and ADS1000 ADC" 1769 depends on I2C 1770 help 1771 If you say yes here you get support for Texas Instruments ADS1100 and 1772 ADS1000 ADC chips. 1773 1774 This driver can also be built as a module. If so, the module will be 1775 called ti-ads1100. 1776 1777config TI_ADS1119 1778 tristate "Texas Instruments ADS1119 ADC" 1779 depends on I2C 1780 select IIO_BUFFER 1781 select IIO_TRIGGERED_BUFFER 1782 help 1783 If you say yes here you get support for Texas Instruments ADS1119 1784 ADC chip. 1785 1786 This driver can also be built as a module. If so, the module will be 1787 called ti-ads1119. 1788 1789config TI_ADS124S08 1790 tristate "Texas Instruments ADS124S08" 1791 depends on SPI 1792 select IIO_BUFFER 1793 select IIO_TRIGGERED_BUFFER 1794 help 1795 If you say yes here you get support for Texas Instruments ADS124S08 1796 and ADS124S06 ADC chips 1797 1798 This driver can also be built as a module. If so, the module will be 1799 called ti-ads124s08. 1800 1801config TI_ADS1298 1802 tristate "Texas Instruments ADS1298" 1803 depends on SPI 1804 select IIO_BUFFER 1805 select IIO_KFIFO_BUF 1806 help 1807 If you say yes here you get support for Texas Instruments ADS1298 1808 medical ADC chips 1809 1810 This driver can also be built as a module. If so, the module will be 1811 called ti-ads1298. 1812 1813config TI_ADS131E08 1814 tristate "Texas Instruments ADS131E08" 1815 depends on SPI 1816 select IIO_BUFFER 1817 select IIO_TRIGGERED_BUFFER 1818 help 1819 Say yes here to get support for Texas Instruments ADS131E04, ADS131E06 1820 and ADS131E08 chips. 1821 1822 This driver can also be built as a module. If so, the module will be 1823 called ti-ads131e08. 1824 1825config TI_ADS131M02 1826 tristate "Texas Instruments ADS131M02" 1827 depends on SPI && REGULATOR 1828 select CRC_ITU_T 1829 help 1830 Say yes here to get support for Texas Instruments ADS131M02, ADS131M03, 1831 ADS131M04, ADS131M06 and ADS131M08 chips. 1832 1833 This driver can also be built as a module. If so, the module will be 1834 called ti-ads131m02. 1835 1836config TI_ADS7138 1837 tristate "Texas Instruments ADS7128 and ADS7138 ADC driver" 1838 depends on I2C 1839 help 1840 If you say yes here you get support for Texas Instruments ADS7128 and 1841 ADS7138 8-channel A/D converters with 12-bit resolution. 1842 1843 This driver can also be built as a module. If so, the module will be 1844 called ti-ads7138. 1845 1846config TI_ADS7924 1847 tristate "Texas Instruments ADS7924 ADC" 1848 depends on I2C 1849 select REGMAP_I2C 1850 help 1851 If you say yes here you get support for Texas Instruments ADS7924 1852 4 channels, 12-bit I2C ADC chip. 1853 1854 This driver can also be built as a module. If so, the module will be 1855 called ti-ads7924. 1856 1857config TI_ADS7950 1858 tristate "Texas Instruments ADS7950 ADC driver" 1859 depends on SPI && GPIOLIB 1860 select IIO_BUFFER 1861 select IIO_TRIGGERED_BUFFER 1862 help 1863 Say yes here to build support for Texas Instruments ADS7950, ADS7951, 1864 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959. 1865 ADS7960, ADS7961. 1866 1867 To compile this driver as a module, choose M here: the 1868 module will be called ti-ads7950. 1869 1870config TI_ADS8344 1871 tristate "Texas Instruments ADS8344" 1872 depends on SPI 1873 help 1874 If you say yes here you get support for Texas Instruments ADS8344 1875 ADC chips 1876 1877 This driver can also be built as a module. If so, the module will be 1878 called ti-ads8344. 1879 1880config TI_ADS8688 1881 tristate "Texas Instruments ADS8688" 1882 depends on SPI 1883 select IIO_BUFFER 1884 select IIO_TRIGGERED_BUFFER 1885 help 1886 If you say yes here you get support for Texas Instruments ADS8684 and 1887 and ADS8688 ADC chips 1888 1889 This driver can also be built as a module. If so, the module will be 1890 called ti-ads8688. 1891 1892config TI_AM335X_ADC 1893 tristate "TI's AM335X ADC driver" 1894 depends on MFD_TI_AM335X_TSCADC && HAS_DMA 1895 select IIO_BUFFER 1896 select IIO_KFIFO_BUF 1897 help 1898 Say yes here to build support for Texas Instruments ADC 1899 driver which is also a MFD client. 1900 1901 To compile this driver as a module, choose M here: the module will be 1902 called ti_am335x_adc. 1903 1904config TI_LMP92064 1905 tristate "Texas Instruments LMP92064 ADC driver" 1906 depends on SPI 1907 select REGMAP_SPI 1908 select IIO_BUFFER 1909 select IIO_TRIGGERED_BUFFER 1910 help 1911 Say yes here to build support for the LMP92064 Precision Current and Voltage 1912 sensor. 1913 1914 This driver can also be built as a module. If so, the module will be called 1915 ti-lmp92064. 1916 1917config TI_TLC4541 1918 tristate "Texas Instruments TLC4541 ADC driver" 1919 depends on SPI 1920 select IIO_BUFFER 1921 select IIO_TRIGGERED_BUFFER 1922 help 1923 Say yes here to build support for Texas Instruments TLC4541 / TLC3541 1924 ADC chips. 1925 1926 This driver can also be built as a module. If so, the module will be 1927 called ti-tlc4541. 1928 1929config TI_TSC2046 1930 tristate "Texas Instruments TSC2046 ADC driver" 1931 depends on SPI 1932 select IIO_BUFFER 1933 select IIO_TRIGGERED_BUFFER 1934 help 1935 Say yes here to build support for ADC functionality of Texas 1936 Instruments TSC2046 touch screen controller. 1937 1938 This driver can also be built as a module. If so, the module will be 1939 called ti-tsc2046. 1940 1941config TWL4030_MADC 1942 tristate "TWL4030 MADC (Monitoring A/D Converter)" 1943 depends on TWL4030_CORE 1944 help 1945 This driver provides support for Triton TWL4030-MADC. The 1946 driver supports both RT and SW conversion methods. 1947 1948 This driver can also be built as a module. If so, the module will be 1949 called twl4030-madc. 1950 1951config TWL6030_GPADC 1952 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support" 1953 depends on TWL4030_CORE 1954 help 1955 Say yes here if you want support for the TWL6030/TWL6032 General 1956 Purpose A/D Converter. This will add support for battery type 1957 detection, battery voltage and temperature measurement, die 1958 temperature measurement, system supply voltage, audio accessory, 1959 USB ID detection. 1960 1961 This driver can also be built as a module. If so, the module will be 1962 called twl6030-gpadc. 1963 1964config VF610_ADC 1965 tristate "Freescale vf610 ADC driver" 1966 depends on HAS_IOMEM 1967 select IIO_BUFFER 1968 select IIO_TRIGGERED_BUFFER 1969 help 1970 Say yes here to support for Vybrid board analog-to-digital converter. 1971 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX. 1972 1973 This driver can also be built as a module. If so, the module will be 1974 called vf610_adc. 1975 1976config VIPERBOARD_ADC 1977 tristate "Viperboard ADC support" 1978 depends on MFD_VIPERBOARD && USB 1979 help 1980 Say yes here to access the ADC part of the Nano River 1981 Technologies Viperboard. 1982 1983 To compile this driver as a module, choose M here: the module will be 1984 called viperboard_adc. 1985 1986config XILINX_XADC 1987 tristate "Xilinx XADC driver" 1988 depends on HAS_IOMEM 1989 select IIO_BUFFER 1990 select IIO_TRIGGERED_BUFFER 1991 help 1992 Say yes here to have support for the Xilinx 7 Series XADC or 1993 UltraScale/UltraScale+ System Management Wizard. 1994 1995 For the 7 Series the driver does support both the ZYNQ interface 1996 to the XADC as well as the AXI-XADC interface. 1997 1998 The driver also support the Xilinx System Management Wizard IP core 1999 that can be used to access the System Monitor ADC on the Xilinx 2000 UltraScale and UltraScale+ FPGAs. 2001 2002 The driver can also be build as a module. If so, the module will be called 2003 xilinx-xadc. 2004 2005config XILINX_AMS 2006 tristate "Xilinx AMS driver" 2007 depends on ARCH_ZYNQMP || COMPILE_TEST 2008 depends on HAS_IOMEM 2009 help 2010 Say yes here to have support for the Xilinx AMS for Ultrascale/Ultrascale+ 2011 System Monitor. With this you can measure and monitor the Voltages and 2012 Temperature values on the SOC. 2013 2014 The driver supports Voltage and Temperature monitoring on Xilinx Ultrascale 2015 devices. 2016 2017 The driver can also be built as a module. If so, the module will be called 2018 xilinx-ams. 2019 2020endmenu 2021