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