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