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