1 # SPDX-License-Identifier: GPL-2.0-only
5 # When adding new entries keep the list in alphabetical order
7 menu "Analog to digital converters"
10 bool "ST-Ericsson AB8500 GPADC driver"
11 depends on AB8500_CORE && REGULATOR_AB8500
14 AB8500 Analog Baseband, mixed signal integrated circuit GPADC
15 (General Purpose Analog to Digital Converter) driver used to monitor
16 internal voltages, convert accessory and battery, AC (charger, mains)
17 and USB voltages integral to the U8500 platform.
22 select IIO_TRIGGERED_BUFFER
25 tristate "Analog Devices AD4000 ADC Driver"
28 select IIO_TRIGGERED_BUFFER
30 Say yes here to build support for Analog Devices AD4000 high speed
31 SPI analog to digital converters (ADC).
33 To compile this driver as a module, choose M here: the module will be
37 tristate "Analog Device AD4130 ADC Driver"
45 Say yes here to build support for Analog Devices AD4130-8 SPI analog
46 to digital converters (ADC).
48 To compile this driver as a module, choose M here: the module will be
52 tristate "Analog Device AD4695 ADC Driver"
56 select IIO_TRIGGERED_BUFFER
58 Say yes here to build support for Analog Devices AD4695 and similar
59 analog to digital converters (ADC).
61 To compile this driver as a module, choose M here: the module will be
68 tristate "Analog Devices AD7091R5 ADC Driver"
73 Say yes here to build support for Analog Devices AD7091R-5 ADC.
76 tristate "Analog Devices AD7091R8 ADC Driver"
81 Say yes here to build support for Analog Devices AD7091R-2, AD7091R-4,
84 To compile this driver as a module, choose M here: the module will be
88 tristate "Analog Devices AD7124 and similar sigma-delta ADCs driver"
92 Say yes here to build support for Analog Devices AD7124-4 and AD7124-8
93 SPI analog to digital converters (ADC).
95 To compile this driver as a module, choose M here: the module will be
99 tristate "Analog Devices AD7173 driver"
100 depends on SPI_MASTER
101 select AD_SIGMA_DELTA
102 select GPIO_REGMAP if GPIOLIB
103 select REGMAP_SPI if GPIOLIB
105 Say yes here to build support for Analog Devices AD7173 and similar ADC
106 Currently supported models:
112 To compile this driver as a module, choose M here: the module will be
116 tristate "Analog Devices AD7192 and similar ADC driver"
118 select AD_SIGMA_DELTA
120 Say yes here to build support for Analog Devices SPI analog to digital
127 If unsure, say N (but it's safe to say "Y").
129 To compile this driver as a module, choose M here: the
130 module will be called ad7192.
133 tristate "Analog Devices AD7265/AD7266 ADC driver"
134 depends on SPI_MASTER
137 select IIO_TRIGGERED_BUFFER
139 Say yes here to build support for Analog Devices AD7265 and AD7266
142 To compile this driver as a module, choose M here: the module will be
146 tristate "Analog Devices AD7280A Lithium Ion Battery Monitoring System"
150 Say yes here to build support for Analog Devices AD7280A
151 Lithium Ion Battery Monitoring System.
153 To compile this driver as a module, choose M here: the
154 module will be called ad7280a
157 tristate "Analog Devices AD7291 ADC driver"
160 Say yes here to build support for Analog Devices AD7291
161 8 Channel ADC with temperature sensor.
163 To compile this driver as a module, choose M here: the
164 module will be called ad7291.
167 tristate "Analog Devices AD7292 ADC driver"
170 Say yes here to build support for Analog Devices AD7292
171 8 Channel ADC with temperature sensor.
173 To compile this driver as a module, choose M here: the
174 module will be called ad7292.
177 tristate "Analog Devices AD7298 ADC driver"
180 select IIO_TRIGGERED_BUFFER
182 Say yes here to build support for Analog Devices AD7298
183 8 Channel ADC with temperature sensor.
185 To compile this driver as a module, choose M here: the
186 module will be called ad7298.
189 tristate "Analog Devices AD7380 ADC driver"
190 depends on SPI_MASTER
193 select IIO_TRIGGERED_BUFFER
195 AD7380 is a family of simultaneous sampling ADCs that share the same
196 SPI register map and have similar pinouts.
198 Say yes here to build support for Analog Devices AD7380 ADC and
201 To compile this driver as a module, choose M here: the module will be
205 tristate "Analog Devices AD7476 1-channel ADCs driver and other similar devices from AD and TI"
208 select IIO_TRIGGERED_BUFFER
210 Say yes here to build support for the following SPI analog to
211 digital converters (ADCs):
212 Analog Devices: AD7273, AD7274, AD7276, AD7277, AD7278, AD7475,
213 AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495, AD7910,
215 Texas Instruments: ADS7866, ADS7867, ADS7868.
217 To compile this driver as a module, choose M here: the
218 module will be called ad7476.
223 select IIO_TRIGGERED_BUFFER
225 config AD7606_IFACE_PARALLEL
226 tristate "Analog Devices AD7606 ADC driver with parallel interface support"
227 depends on HAS_IOPORT
231 Say yes here to build parallel interface support for Analog Devices:
232 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC).
233 It also support iio_backended devices for AD7606B.
235 To compile this driver as a module, choose M here: the
236 module will be called ad7606_par.
238 config AD7606_IFACE_SPI
239 tristate "Analog Devices AD7606 ADC driver with spi interface support"
243 Say yes here to build spi interface support for Analog Devices:
244 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC).
246 To compile this driver as a module, choose M here: the
247 module will be called ad7606_spi.
250 tristate "Analog Devices AD7625/AD7626 High Speed ADC driver"
254 Say yes here to build support for Analog Devices:
255 * AD7625 16-Bit, 6 MSPS PulSAR Analog-to-Digital Converter
256 * AD7626 16-Bit, 10 MSPS PulSAR Analog-to-Digital Converter
257 * AD7960 18-Bit, 5 MSPS PulSAR Analog-to-Digital Converter
258 * AD7961 16-Bit, 5 MSPS PulSAR Analog-to-Digital Converter
260 The driver requires the assistance of the AXI ADC IP core to operate.
262 To compile this driver as a module, choose M here: the module will be
266 tristate "Analog Devices AD7766/AD7767 ADC driver"
267 depends on SPI_MASTER
269 select IIO_TRIGGERED_BUFFER
271 Say yes here to build support for Analog Devices AD7766, AD7766-1,
272 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters.
274 To compile this driver as a module, choose M here: the module will be
278 tristate "Analog Devices AD7768-1 ADC driver"
282 select IIO_TRIGGERED_BUFFER
284 Say yes here to build support for Analog Devices AD7768-1 SPI
285 simultaneously sampling sigma-delta analog to digital converter (ADC).
287 To compile this driver as a module, choose M here: the module will be
291 tristate "Analog Devices AD7779 ADC driver"
296 Say yes here to build support for Analog Devices AD777X family
297 (AD7770, AD7771, AD7779) analog to digital converter (ADC).
299 To compile this driver as a module, choose M here: the module will be
303 tristate "Analog Devices AD7780 and similar ADCs driver"
305 depends on GPIOLIB || COMPILE_TEST
306 select AD_SIGMA_DELTA
308 Say yes here to build support for Analog Devices AD7170, AD7171,
309 AD7780 and AD7781 SPI analog to digital converters (ADC).
311 To compile this driver as a module, choose M here: the
312 module will be called ad7780.
315 tristate "Analog Devices AD7791 ADC driver"
317 select AD_SIGMA_DELTA
319 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
320 AD7790 and AD7791 SPI analog to digital converters (ADC).
322 To compile this driver as a module, choose M here: the module will be
326 tristate "Analog Devices AD7793 and similar ADCs driver"
328 select AD_SIGMA_DELTA
330 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
331 AD7794 and AD7795 SPI analog to digital converters (ADC).
333 To compile this driver as a module, choose M here: the
334 module will be called AD7793.
337 tristate "Analog Devices AD7887 ADC driver"
340 select IIO_TRIGGERED_BUFFER
342 Say yes here to build support for Analog Devices
343 AD7887 SPI analog to digital converter (ADC).
345 To compile this driver as a module, choose M here: the
346 module will be called ad7887.
349 tristate "Analog Devices AD7923 and similar ADCs driver"
352 select IIO_TRIGGERED_BUFFER
354 Say yes here to build support for Analog Devices
355 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
357 To compile this driver as a module, choose M here: the
358 module will be called ad7923.
361 tristate "Analog Devices AD7944 and similar ADCs driver"
364 select IIO_TRIGGERED_BUFFER
366 Say yes here to build support for Analog Devices
367 AD7944, AD7985, AD7986 ADCs.
369 To compile this driver as a module, choose M here: the
370 module will be called ad7944
373 tristate "Analog Devices AD7949 and similar ADCs driver"
376 Say yes here to build support for Analog Devices
377 AD7949, AD7682, AD7689 8 Channel ADCs.
379 To compile this driver as a module, choose M here: the
380 module will be called ad7949.
383 tristate "Analog Devices AD799x ADC driver"
386 select IIO_TRIGGERED_BUFFER
388 Say yes here to build support for Analog Devices:
389 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
390 i2c analog to digital converters (ADC). Provides direct access
393 To compile this driver as a module, choose M here: the module will be
397 tristate "Analog Devices AD9467 High Speed ADC driver"
401 Say yes here to build support for Analog Devices:
402 * AD9467 16-Bit, 200 MSPS/250 MSPS Analog-to-Digital Converter
404 The driver requires the assistance of the AXI ADC IP core to operate,
405 since SPI is used for configuration only, while data has to be
406 streamed into memory via DMA.
408 To compile this driver as a module, choose M here: the module will be
412 tristate "Analog Devices Generic AXI ADC IP core driver"
413 depends on MICROBLAZE || NIOS2 || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_INTEL_SOCFPGA || COMPILE_TEST
415 select IIO_BUFFER_HW_CONSUMER
416 select IIO_BUFFER_DMAENGINE
420 Say yes here to build support for Analog Devices Generic
421 AXI ADC IP core. The IP core is used for interfacing with
422 analog-to-digital (ADC) converters that require either a high-speed
423 serial interface (JESD204B/C) or a source synchronous parallel
424 interface (LVDS/CMOS).
425 Typically (for such devices) SPI will be used for configuration only,
426 while this IP core handles the streaming of data into memory via DMA.
428 Link: https://wiki.analog.com/resources/fpga/docs/axi_adc_ip
429 If unsure, say N (but it's safe to say "Y").
431 To compile this driver as a module, choose M here: the
432 module will be called adi-axi-adc.
435 tristate "Aspeed ADC"
436 depends on ARCH_ASPEED || COMPILE_TEST
437 depends on COMMON_CLK
439 If you say yes here you get support for the ADC included in Aspeed
442 To compile this driver as a module, choose M here: the module will be
446 tristate "Atmel AT91 ADC"
447 depends on ARCH_AT91 || COMPILE_TEST
448 depends on INPUT && SYSFS && OF
450 select IIO_TRIGGERED_BUFFER
452 Say yes here to build support for Atmel AT91 ADC.
454 To compile this driver as a module, choose M here: the module will be
457 config AT91_SAMA5D2_ADC
458 tristate "Atmel AT91 SAMA5D2 ADC"
459 depends on ARCH_AT91 || COMPILE_TEST
462 select IIO_TRIGGERED_BUFFER
464 Say yes here to build support for Atmel SAMA5D2 ADC which is
465 available on SAMA5D2 SoC family.
467 To compile this driver as a module, choose M here: the module will be
468 called at91-sama5d2_adc.
471 tristate "X-Powers AXP20X and AXP22X ADC driver"
472 depends on MFD_AXP20X
474 Say yes here to have support for X-Powers power management IC (PMIC)
475 AXP20X and AXP22X ADC devices.
477 To compile this driver as a module, choose M here: the module will be
481 tristate "X-Powers AXP288 ADC driver"
482 depends on MFD_AXP20X
484 Say yes here to have support for X-Powers power management IC (PMIC) ADC
485 device. Depending on platform configuration, this general purpose ADC can
486 be used for sampling sensors such as thermal resistors.
488 To compile this driver as a module, choose M here: the module will be
492 tristate "Broadcom IPROC ADC driver"
493 depends on (ARCH_BCM_IPROC && OF) || COMPILE_TEST
494 depends on MFD_SYSCON
495 default ARCH_BCM_CYGNUS
497 Say Y here if you want to add support for the Broadcom static
500 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
501 channels. The driver allows the user to read voltage values.
504 tristate "Marvell Berlin2 ADC driver"
505 depends on ARCH_BERLIN || COMPILE_TEST
507 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
508 temperature measurement.
511 tristate "Cosmic Circuits 10001 ADC driver"
512 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
514 select IIO_TRIGGERED_BUFFER
516 Say yes here to build support for Cosmic Circuits 10001 ADC.
518 This driver can also be built as a module. If so, the module will be
522 tristate "Motorola CPCAP PMIC ADC driver"
525 select IIO_TRIGGERED_BUFFER
527 Say yes here to build support for Motorola CPCAP PMIC ADC.
529 This driver can also be built as a module. If so, the module will be
533 tristate "Dialog DA9150 GPADC driver support"
534 depends on MFD_DA9150
536 Say yes here to build support for Dialog DA9150 GPADC.
538 This driver can also be built as a module. If chosen, the module name
539 will be da9150-gpadc.
541 To compile this driver as a module, choose M here: the module will be
545 tristate "Diolan DLN-2 ADC driver support"
548 select IIO_TRIGGERED_BUFFER
550 Say yes here to build support for Diolan DLN-2 ADC.
552 This driver can also be built as a module. If so, the module will be
555 config ENVELOPE_DETECTOR
556 tristate "Envelope detector using a DAC and a comparator"
558 Say yes here to build support for an envelope detector using a DAC
561 To compile this driver as a module, choose M here: the module will be
562 called envelope-detector.
565 tristate "Cirrus Logic EP93XX ADC driver"
566 depends on ARCH_EP93XX || COMPILE_TEST
569 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic.
570 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this
571 case driver will reduce its CPU usage by 90% in some use cases.
573 To compile this driver as a module, choose M here: the module will be
577 tristate "Exynos ADC driver support"
578 depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
581 Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and
583 Choose Y here only if you build for such Samsung SoC.
585 To compile this driver as a module, choose M here: the module will be
589 tristate "Freescale i.MX23/i.MX28 LRADC ADC"
590 depends on MFD_MXS_LRADC
592 select IIO_TRIGGERED_BUFFER
594 Say yes here to build support for the ADC functions of the
595 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
596 battery voltage measurement, and die temperature measurement.
598 This driver can also be built as a module. If so, the module will be
599 called mxs-lradc-adc.
602 tristate "Freescale MX25 ADC driver"
603 depends on MFD_MX25_TSADC
605 Generic Conversion Queue driver used for general purpose ADC in the
606 MX25. This driver supports single measurements using the MX25 ADC.
609 tristate "GE HealthCare PMC ADC driver"
612 Say yes here to build support for the GE HealthCare PMC 16-bit
615 To compile this driver as a module, choose M here: the module will be
619 tristate "Holt Integrated Circuits HI-8435 threshold detector"
620 select IIO_TRIGGERED_EVENT
623 If you say yes here you get support for Holt Integrated Circuits
626 This driver can also be built as a module. If so, the module will be
630 tristate "AVIA HX711 ADC for weight cells"
633 select IIO_TRIGGERED_BUFFER
635 If you say yes here you get support for AVIA HX711 ADC which is used
638 This driver uses two GPIOs, one acts as the clock and controls the
639 channel selection and gain, the other one is used for the measurement
642 Currently the raw value is read from the chip and delivered.
643 To get an actual weight one needs to subtract the
644 zero offset and multiply by a scale factor.
645 This should be done in userspace.
647 This driver can also be built as a module. If so, the module will be
651 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
652 depends on I2C && !SENSORS_INA2XX
657 Say yes here to build support for TI INA2xx family of Power Monitors.
658 This driver is mutually exclusive with the HWMON version.
661 tristate "Ingenic JZ47xx SoCs ADC driver"
662 depends on MIPS || COMPILE_TEST
665 Say yes here to build support for the Ingenic JZ47xx SoCs ADC unit.
667 This driver can also be built as a module. If so, the module will be
670 config INTEL_MRFLD_ADC
671 tristate "Intel Merrifield Basin Cove ADC driver"
672 depends on INTEL_SOC_PMIC_MRFLD
674 Say yes here to have support for Basin Cove power management IC (PMIC) ADC
675 device. Depending on platform configuration, this general purpose ADC can
676 be used for sampling sensors such as thermal resistors.
678 To compile this driver as a module, choose M here: the module will be
679 called intel_mrfld_adc.
682 tristate "Freescale IMX7D ADC driver"
683 depends on ARCH_MXC || COMPILE_TEST
686 Say yes here to build support for IMX7D ADC.
688 This driver can also be built as a module. If so, the module will be
692 tristate "NXP IMX8QXP ADC driver"
693 depends on ARCH_MXC || COMPILE_TEST
696 Say yes here to build support for IMX8QXP ADC.
698 This driver can also be built as a module. If so, the module will be
702 tristate "IMX93 ADC driver"
703 depends on ARCH_MXC || COMPILE_TEST
706 Say yes here to build support for IMX93 ADC.
708 This driver can also be built as a module. If so, the module will be
712 tristate "LP8788 ADC driver"
713 depends on MFD_LP8788
715 Say yes here to build support for TI LP8788 ADC.
717 To compile this driver as a module, choose M here: the module will be
721 tristate "NXP LPC18xx ADC driver"
722 depends on ARCH_LPC18XX || COMPILE_TEST
725 Say yes here to build support for NXP LPC18XX ADC.
727 To compile this driver as a module, choose M here: the module will be
731 tristate "NXP LPC32XX ADC"
732 depends on ARCH_LPC32XX || COMPILE_TEST
735 Say yes here to build support for the integrated ADC inside the
736 LPC32XX SoC. Note that this feature uses the same hardware as the
737 touchscreen driver, so you should either select only one of the two
738 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
739 activate only one via device tree selection. Provides direct access
743 tristate "Linear Technology LTC2309 ADC driver"
746 Say yes here to build support for Linear Technology LTC2309, a low
747 noise, low power, 8-channel, 12-bit SAR ADC
749 This driver can also be built as a module. If so, the module will
753 tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
756 Say yes here to build support for Linear Technology LTC2471 and
757 LTC2473 16-bit I2C ADC.
759 This driver can also be built as a module. If so, the module will
763 tristate "Linear Technology LTC2485 ADC driver"
766 Say yes here to build support for Linear Technology LTC2485 ADC.
768 To compile this driver as a module, choose M here: the module will be
772 tristate "Linear Technology LTC2496 ADC driver"
775 Say yes here to build support for Linear Technology LTC2496
776 16-Bit 8-/16-Channel Delta Sigma ADC.
778 To compile this driver as a module, choose M here: the module will be
782 tristate "Linear Technology LTC2497 ADC driver"
785 Say yes here to build support for Linear Technology LTC2497
786 16-Bit 8-/16-Channel Delta Sigma ADC.
788 To compile this driver as a module, choose M here: the module will be
792 tristate "Maxim max1027 ADC driver"
795 select IIO_TRIGGERED_BUFFER
797 Say yes here to build support for Maxim SPI {10,12}-bit ADC models:
798 max1027, max1029, max1031, max1227, max1229 and max1231.
800 To compile this driver as a module, choose M here: the module will be
804 tristate "Maxim max11100 ADC driver"
805 depends on SPI_MASTER
807 Say yes here to build support for Maxim max11100 SPI ADC
809 To compile this driver as a module, choose M here: the module will be
813 tristate "Maxim max1117/max1118/max1119 ADCs driver"
816 select IIO_TRIGGERED_BUFFER
818 Say yes here to build support for Maxim max1117/max1118/max1119
819 8-bit, dual-channel ADCs.
821 To compile this driver as a module, choose M here: the module will be
825 tristate "Maxim max11205 ADC driver"
827 select AD_SIGMA_DELTA
829 select IIO_TRIGGERED_BUFFER
832 Say yes here to build support for Maxim max11205 16-bit, single-channel
833 ultra-low power delta-sigma ADC.
835 To compile this driver as a module, choose M here: the module will be
839 tristate "Analog Devices MAX11410 ADC driver"
844 select IIO_TRIGGERED_BUFFER
846 Say yes here to build support for Analog Devices MAX11410 ADCs.
848 To compile this driver as a module, choose M here: the module will be
852 tristate "Maxim max1241 ADC driver"
853 depends on SPI_MASTER
855 Say yes here to build support for Maxim max1241 12-bit, single-channel
858 To compile this driver as a module, choose M here: the module will be
862 tristate "Maxim max1363 ADC driver"
865 select IIO_TRIGGERED_BUFFER
867 Say yes here to build support for many Maxim i2c analog to digital
868 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
869 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
870 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
871 max11602, max11603, max11604, max11605, max11606, max11607,
872 max11608, max11609, max11610, max11611, max11612, max11613,
873 max11614, max11615, max11616, max11617, max11644, max11645,
874 max11646, max11647) Provides direct access via sysfs and buffered
875 data via the iio dev interface.
877 To compile this driver as a module, choose M here: the module will be
881 tristate "Maxim max34408/max344089 ADC driver"
884 Say yes here to build support for Maxim max34408/max34409 current sense
885 monitor with 8-bits ADC interface with overcurrent delay/threshold and
888 To compile this driver as a module, choose M here: the module will be
892 tristate "Analog Devices MAX77541 ADC driver"
893 depends on MFD_MAX77541
895 This driver controls a Analog Devices MAX77541 ADC
896 via I2C bus. This device has one adc. Say yes here to build
897 support for Analog Devices MAX77541 ADC interface.
899 To compile this driver as a module, choose M here:
900 the module will be called max77541-adc.
903 tristate "Maxim max9611/max9612 ADC driver"
906 Say yes here to build support for Maxim max9611/max9612 current sense
907 amplifier with 12-bits ADC interface.
909 To compile this driver as a module, choose M here: the module will be
913 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
916 Say yes here to build support for Microchip Technology's
917 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
918 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital
921 This driver can also be built as a module. If so, the module will be
925 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
928 Say yes here to build support for Microchip Technology's MCP3421
929 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
930 analog to digital converters.
932 This driver can also be built as a module. If so, the module will be
936 tristate "Microchip Technology MCP3461/2/4/R, MCP3561/2/4/R driver"
940 Say yes here to build support for Microchip Technology's MCP3461,
941 MCP3462, MCP3464, MCP3461R, MCP3462R, MCP3464R, MCP3561, MCP3562,
942 MCP3564, MCP3561R, MCP3562R and MCP3564R analog to digital
945 This driver can also be built as a module. If so, the module will be
949 tristate "Microchip Technology MCP3911 driver"
952 select IIO_TRIGGERED_BUFFER
954 Say yes here to build support for one of the following
955 Microchip Technology's analog to digital converters:
956 MCP3910, MCP3911, MCP3912, MCP3913, MCP3914,
959 This driver can also be built as a module. If so, the module will be
962 config MEDIATEK_MT6359_AUXADC
963 tristate "MediaTek MT6359 PMIC AUXADC driver"
964 depends on MFD_MT6397
966 Say yes here to enable support for MediaTek MT6357, MT6358 and
967 MT6359 PMICs Auxiliary ADC.
968 This driver provides multiple channels for system monitoring,
969 such as battery voltage, PMIC temperature, and others.
971 This driver can also be built as a module. If so, the module will be
972 called mt6359-auxadc.
974 config MEDIATEK_MT6360_ADC
975 tristate "Mediatek MT6360 ADC driver"
976 depends on MFD_MT6360
978 select IIO_TRIGGERED_BUFFER
980 Say Y here to enable MT6360 ADC support.
981 Integrated for System Monitoring includes
982 is used in smartphones and tablets and supports a 11 channel
985 config MEDIATEK_MT6370_ADC
986 tristate "MediaTek MT6370 ADC driver"
987 depends on MFD_MT6370
989 Say yes here to enable MediaTek MT6370 ADC support.
991 This ADC driver provides 9 channels for system monitoring (charger
992 current, voltage, and temperature).
994 This driver can also be built as a module. If so, the module
995 will be called "mt6370-adc".
997 config MEDIATEK_MT6577_AUXADC
998 tristate "MediaTek AUXADC driver"
999 depends on ARCH_MEDIATEK || COMPILE_TEST
1000 depends on HAS_IOMEM
1002 Say yes here to enable support for MediaTek mt65xx AUXADC.
1004 The driver supports immediate mode operation to read from one of sixteen
1005 channels (external or internal).
1007 This driver can also be built as a module. If so, the module will be
1008 called mt6577_auxadc.
1011 tristate "MEN 16z188 ADC IP Core support"
1014 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
1017 This driver can also be built as a module. If so, the module will be
1018 called men_z188_adc.
1021 tristate "Amlogic Meson SAR ADC driver"
1023 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
1026 Say yes here to build support for the SAR ADC found in Amlogic Meson
1029 To compile this driver as a module, choose M here: the
1030 module will be called meson_saradc.
1033 tristate "Monolithic MP2629 ADC driver"
1034 depends on MFD_MP2629
1036 Say yes to have support for battery charger IC MP2629 ADC device
1039 This driver provides ADC conversion of system, input power supply
1040 and battery voltage & current information.
1043 tristate "Nuvoton NAU7802 ADC driver"
1046 Say yes here to build support for Nuvoton NAU7802 ADC.
1048 To compile this driver as a module, choose M here: the
1049 module will be called nau7802.
1052 tristate "Nuvoton NPCM ADC driver"
1053 depends on ARCH_NPCM || COMPILE_TEST
1054 depends on HAS_IOMEM
1056 Say yes here to build support for Nuvoton NPCM ADC.
1058 This driver can also be built as a module. If so, the module
1059 will be called npcm_adc.
1062 tristate "Microchip Technology PAC1921 driver"
1066 select IIO_TRIGGERED_BUFFER
1068 Say yes here to build support for Microchip Technology's PAC1921
1069 High-Side Power/Current Monitor with Analog Output.
1071 This driver can also be built as a module. If so, the module
1072 will be called pac1921.
1075 tristate "Microchip Technology PAC1934 driver"
1078 Say yes here to build support for Microchip Technology's PAC1931,
1079 PAC1932, PAC1933, PAC1934 Single/Multi-Channel Power Monitor with
1082 This driver can also be built as a module. If so, the module
1083 will be called pac1934.
1086 tristate "TI Palmas General Purpose ADC"
1087 depends on MFD_PALMAS
1089 Palmas series pmic chip by Texas Instruments (twl6035/6037)
1090 is used in smartphones and tablets and supports a 16 channel
1091 general purpose ADC.
1093 config QCOM_VADC_COMMON
1096 config QCOM_PM8XXX_XOADC
1097 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
1098 depends on MFD_PM8XXX
1099 select QCOM_VADC_COMMON
1101 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
1102 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
1104 To compile this driver as a module, choose M here: the module
1105 will be called qcom-pm8xxx-xoadc.
1107 config QCOM_SPMI_RRADC
1108 tristate "Qualcomm SPMI RRADC"
1109 depends on MFD_SPMI_PMIC
1111 This is for the PMIC Round Robin ADC driver.
1113 This driver exposes the battery ID resistor, battery thermal, PMIC die
1114 temperature, charger USB in and DC in voltage and current.
1116 To compile this driver as a module, choose M here: the module will
1117 be called qcom-qpmi-rradc.
1119 config QCOM_SPMI_IADC
1120 tristate "Qualcomm SPMI PMIC current ADC"
1124 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
1126 The driver supports single mode operation to read from one of two
1127 channels (external or internal). Hardware have additional
1128 channels internally used for gain and offset calibration.
1130 To compile this driver as a module, choose M here: the module will
1131 be called qcom-spmi-iadc.
1133 config QCOM_SPMI_VADC
1134 tristate "Qualcomm SPMI PMIC voltage ADC"
1137 select QCOM_VADC_COMMON
1139 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
1141 The driver supports multiple channels read. The VADC is a 15-bit
1142 sigma-delta ADC. Some of the channels are internally used for
1145 To compile this driver as a module, choose M here: the module will
1146 be called qcom-spmi-vadc.
1148 config QCOM_SPMI_ADC5
1149 tristate "Qualcomm Technologies Inc. SPMI PMIC5 ADC"
1152 select QCOM_VADC_COMMON
1154 This is the IIO Voltage PMIC5 ADC driver for Qualcomm Technologies Inc.
1156 The driver supports multiple channels read. The ADC is a 16-bit
1157 sigma-delta ADC. The hardware supports calibrated results for
1158 conversion requests and clients include reading voltage phone
1159 power, on board system thermistors connected to the PMIC ADC,
1160 PMIC die temperature, charger temperature, battery current, USB voltage
1161 input, voltage signals connected to supported PMIC GPIO inputs. The
1162 hardware supports internal pull-up for thermistors and can choose between
1163 a 100k, 30k and 400k pull up using the ADC channels.
1165 To compile this driver as a module, choose M here: the module will
1166 be called qcom-spmi-adc5.
1168 config RCAR_GYRO_ADC
1169 tristate "Renesas R-Car GyroADC driver"
1170 depends on ARCH_RCAR_GEN2 || COMPILE_TEST
1172 Say yes here to build support for the GyroADC found in Renesas
1173 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
1174 reading data out of attached compatible ADCs in a round-robin
1175 fashion. Up to 4 or 8 ADC channels are supported by this block,
1176 depending on which ADCs are attached.
1178 To compile this driver as a module, choose M here: the
1179 module will be called rcar-gyroadc.
1182 tristate "ADC for the RN5T618/RC5T619 family of chips"
1183 depends on MFD_RN5T618
1185 Say yes here to build support for the integrated ADC inside the
1186 RN5T618/619 series PMICs:
1188 This driver can also be built as a module. If so, the module
1189 will be called rn5t618-adc.
1191 config ROCKCHIP_SARADC
1192 tristate "Rockchip SARADC driver"
1193 depends on ARCH_ROCKCHIP || COMPILE_TEST
1194 depends on RESET_CONTROLLER
1196 select IIO_TRIGGERED_BUFFER
1198 Say yes here to build support for the SARADC found in SoCs from
1201 To compile this driver as a module, choose M here: the
1202 module will be called rockchip_saradc.
1204 config RICHTEK_RTQ6056
1205 tristate "Richtek RTQ6056 Current and Power Monitor ADC"
1209 select IIO_TRIGGERED_BUFFER
1211 Say yes here to enable RQT6056 ADC support.
1212 RTQ6056 is a high accuracy current-sense monitor with I2C and SMBus
1213 compatible interface, and the device provides full information for
1214 system by reading out the load current and power.
1216 This driver can also be built as a module. If so, the module will be
1220 tristate "Renesas RZ/G2L ADC driver"
1221 depends on ARCH_RZG2L || COMPILE_TEST
1223 Say yes here to build support for the ADC found in Renesas
1226 To compile this driver as a module, choose M here: the
1227 module will be called rzg2l_adc.
1230 tristate "Spreadtrum SC27xx series PMICs ADC"
1231 depends on MFD_SC27XX_PMIC || COMPILE_TEST
1233 Say yes here to build support for the integrated ADC inside the
1234 Spreadtrum SC27xx series PMICs.
1236 This driver can also be built as a module. If so, the module
1237 will be called sc27xx_adc.
1239 config SOPHGO_CV1800B_ADC
1240 tristate "Sophgo CV1800B SARADC"
1241 depends on ARCH_SOPHGO || COMPILE_TEST
1243 Say yes here to build support for the SARADC integrated inside
1244 the Sophgo CV1800B SoC.
1246 This driver can also be built as a module. If so, the module
1247 will be called sophgo_cv1800b_adc.
1250 tristate "ST SPEAr ADC"
1251 depends on PLAT_SPEAR || COMPILE_TEST
1252 depends on HAS_IOMEM
1254 Say yes here to build support for the integrated ADC inside the
1255 ST SPEAr SoC. Provides direct access via sysfs.
1257 To compile this driver as a module, choose M here: the
1258 module will be called spear_adc.
1260 config SD_ADC_MODULATOR
1261 tristate "Generic sigma delta modulator"
1263 select IIO_TRIGGERED_BUFFER
1266 Select this option to enables sigma delta modulator. This driver can
1267 support generic sigma delta modulators.
1269 This driver can also be built as a module. If so, the module
1270 will be called sd_adc_modulator.
1272 config STM32_ADC_CORE
1273 tristate "STMicroelectronics STM32 adc core"
1274 depends on ARCH_STM32 || COMPILE_TEST
1276 depends on REGULATOR
1277 depends on HAS_IOMEM
1279 select MFD_STM32_TIMERS
1280 select IIO_STM32_TIMER_TRIGGER
1281 select IIO_TRIGGERED_BUFFER
1283 Select this option to enable the core driver for STMicroelectronics
1284 STM32 analog-to-digital converter (ADC).
1286 This driver can also be built as a module. If so, the module
1287 will be called stm32-adc-core.
1290 tristate "STMicroelectronics STM32 adc"
1291 depends on STM32_ADC_CORE
1293 Say yes here to build support for STMicroelectronics stm32 Analog
1294 to Digital Converter (ADC).
1296 This driver can also be built as a module. If so, the module
1297 will be called stm32-adc.
1299 config STM32_DFSDM_CORE
1300 tristate "STMicroelectronics STM32 DFSDM core"
1301 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1305 Select this option to enable the driver for STMicroelectronics
1306 STM32 digital filter for sigma delta converter.
1308 This driver can also be built as a module. If so, the module
1309 will be called stm32-dfsdm-core.
1311 config STM32_DFSDM_ADC
1312 tristate "STMicroelectronics STM32 dfsdm adc"
1313 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1314 select STM32_DFSDM_CORE
1317 select IIO_BUFFER_HW_CONSUMER
1318 select IIO_TRIGGERED_BUFFER
1321 Select this option to support ADCSigma delta modulator for
1322 STMicroelectronics STM32 digital filter for sigma delta converter.
1324 This driver can also be built as a module. If so, the module
1325 will be called stm32-dfsdm-adc.
1328 tristate "STMicroelectronics STMPE ADC driver"
1329 depends on OF && MFD_STMPE
1331 Say yes here to build support for ST Microelectronics STMPE
1332 built-in ADC block (stmpe811).
1335 tristate "Allwinner A10/A13/A31 and similar GPADCs driver"
1337 depends on MFD_SUN4I_GPADC || MACH_SUN8I
1338 depends on THERMAL || !THERMAL_OF
1341 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
1342 GPADC. This ADC provides 4 channels which can be used as an ADC or as
1343 a touchscreen input and one channel for thermal sensor.
1345 The thermal sensor slows down ADC readings and can be disabled by
1346 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
1347 enabled by default since the SoC temperature is usually more critical
1350 To compile this driver as a module, choose M here: the module will be
1351 called sun4i-gpadc-iio.
1354 tristate "Allwinner D1/T113s/T507/R329 and similar GPADCs driver"
1355 depends on ARCH_SUNXI || COMPILE_TEST
1357 Say yes here to build support for Allwinner (D1, T113, T507 and R329)
1358 SoCs GPADC. This ADC provides up to 16 channels.
1360 To compile this driver as a module, choose M here: the module will be
1361 called sun20i-gpadc-iio.
1364 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
1367 select IIO_TRIGGERED_BUFFER
1369 If you say yes here you get support for Texas Instruments ADC081C,
1370 ADC101C and ADC121C ADC chips.
1372 This driver can also be built as a module. If so, the module will be
1376 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
1379 select IIO_TRIGGERED_BUFFER
1381 If you say yes here you get support for Texas Instruments ADC0831,
1382 ADC0832, ADC0834, ADC0838 ADC chips.
1384 This driver can also be built as a module. If so, the module will be
1387 config TI_ADC084S021
1388 tristate "Texas Instruments ADC084S021"
1391 select IIO_TRIGGERED_BUFFER
1393 If you say yes here you get support for Texas Instruments ADC084S021
1396 This driver can also be built as a module. If so, the module will be
1397 called ti-adc084s021.
1400 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
1403 select IIO_TRIGGERED_BUFFER
1405 If you say yes here you get support for Texas Instruments ADC12130,
1406 ADC12132 and ADC12138 chips.
1408 This driver can also be built as a module. If so, the module will be
1411 config TI_ADC108S102
1412 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
1415 select IIO_TRIGGERED_BUFFER
1417 Say yes here to build support for Texas Instruments ADC108S102 and
1420 To compile this driver as a module, choose M here: the module will
1421 be called ti-adc108s102.
1423 config TI_ADC128S052
1424 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
1427 If you say yes here you get support for Texas Instruments ADC128S052,
1428 ADC122S021 and ADC124S021 chips.
1430 This driver can also be built as a module. If so, the module will be
1431 called ti-adc128s052.
1433 config TI_ADC161S626
1434 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
1437 select IIO_TRIGGERED_BUFFER
1439 If you say yes here you get support for Texas Instruments ADC141S626,
1440 and ADC161S626 chips.
1442 This driver can also be built as a module. If so, the module will be
1443 called ti-adc161s626.
1446 tristate "Texas Instruments ADS1015 ADC"
1450 select IIO_TRIGGERED_BUFFER
1452 If you say yes here you get support for Texas Instruments ADS1015
1455 This driver can also be built as a module. If so, the module will be
1459 tristate "Texas Instruments ADS1119 ADC"
1462 select IIO_TRIGGERED_BUFFER
1464 If you say yes here you get support for Texas Instruments ADS1119
1467 This driver can also be built as a module. If so, the module will be
1471 tristate "Texas Instruments ADS7924 ADC"
1475 If you say yes here you get support for Texas Instruments ADS7924
1476 4 channels, 12-bit I2C ADC chip.
1478 This driver can also be built as a module. If so, the module will be
1482 tristate "Texas Instruments ADS1100 and ADS1000 ADC"
1485 If you say yes here you get support for Texas Instruments ADS1100 and
1488 This driver can also be built as a module. If so, the module will be
1492 tristate "Texas Instruments ADS1298"
1496 If you say yes here you get support for Texas Instruments ADS1298
1499 This driver can also be built as a module. If so, the module will be
1503 tristate "Texas Instruments ADS7950 ADC driver"
1504 depends on SPI && GPIOLIB
1506 select IIO_TRIGGERED_BUFFER
1508 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
1509 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
1512 To compile this driver as a module, choose M here: the
1513 module will be called ti-ads7950.
1516 tristate "Texas Instruments ADS8344"
1519 If you say yes here you get support for Texas Instruments ADS8344
1522 This driver can also be built as a module. If so, the module will be
1526 tristate "Texas Instruments ADS8688"
1529 select IIO_TRIGGERED_BUFFER
1531 If you say yes here you get support for Texas Instruments ADS8684 and
1532 and ADS8688 ADC chips
1534 This driver can also be built as a module. If so, the module will be
1538 tristate "Texas Instruments ADS124S08"
1541 select IIO_TRIGGERED_BUFFER
1543 If you say yes here you get support for Texas Instruments ADS124S08
1544 and ADS124S06 ADC chips
1546 This driver can also be built as a module. If so, the module will be
1547 called ti-ads124s08.
1550 tristate "Texas Instruments ADS131E08"
1553 select IIO_TRIGGERED_BUFFER
1555 Say yes here to get support for Texas Instruments ADS131E04, ADS131E06
1556 and ADS131E08 chips.
1558 This driver can also be built as a module. If so, the module will be
1559 called ti-ads131e08.
1561 config TI_AM335X_ADC
1562 tristate "TI's AM335X ADC driver"
1563 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
1565 select IIO_KFIFO_BUF
1567 Say yes here to build support for Texas Instruments ADC
1568 driver which is also a MFD client.
1570 To compile this driver as a module, choose M here: the module will be
1571 called ti_am335x_adc.
1574 tristate "Texas Instruments LMP92064 ADC driver"
1578 select IIO_TRIGGERED_BUFFER
1580 Say yes here to build support for the LMP92064 Precision Current and Voltage
1583 This driver can also be built as a module. If so, the module will be called
1587 tristate "Texas Instruments TLC4541 ADC driver"
1590 select IIO_TRIGGERED_BUFFER
1592 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
1595 This driver can also be built as a module. If so, the module will be
1599 tristate "Texas Instruments TSC2046 ADC driver"
1602 select IIO_TRIGGERED_BUFFER
1604 Say yes here to build support for ADC functionality of Texas
1605 Instruments TSC2046 touch screen controller.
1607 This driver can also be built as a module. If so, the module will be
1611 tristate "TWL4030 MADC (Monitoring A/D Converter)"
1612 depends on TWL4030_CORE
1614 This driver provides support for Triton TWL4030-MADC. The
1615 driver supports both RT and SW conversion methods.
1617 This driver can also be built as a module. If so, the module will be
1618 called twl4030-madc.
1620 config TWL6030_GPADC
1621 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
1622 depends on TWL4030_CORE
1624 Say yes here if you want support for the TWL6030/TWL6032 General
1625 Purpose A/D Converter. This will add support for battery type
1626 detection, battery voltage and temperature measurement, die
1627 temperature measurement, system supply voltage, audio accessory,
1630 This driver can also be built as a module. If so, the module will be
1631 called twl6030-gpadc.
1634 tristate "Freescale vf610 ADC driver"
1635 depends on HAS_IOMEM
1637 select IIO_TRIGGERED_BUFFER
1639 Say yes here to support for Vybrid board analog-to-digital converter.
1640 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
1642 This driver can also be built as a module. If so, the module will be
1645 config VIPERBOARD_ADC
1646 tristate "Viperboard ADC support"
1647 depends on MFD_VIPERBOARD && USB
1649 Say yes here to access the ADC part of the Nano River
1650 Technologies Viperboard.
1652 To compile this driver as a module, choose M here: the module will be
1653 called viperboard_adc.
1656 tristate "Xilinx XADC driver"
1657 depends on HAS_IOMEM
1659 select IIO_TRIGGERED_BUFFER
1661 Say yes here to have support for the Xilinx 7 Series XADC or
1662 UltraScale/UltraScale+ System Management Wizard.
1664 For the 7 Series the driver does support both the ZYNQ interface
1665 to the XADC as well as the AXI-XADC interface.
1667 The driver also support the Xilinx System Management Wizard IP core
1668 that can be used to access the System Monitor ADC on the Xilinx
1669 UltraScale and UltraScale+ FPGAs.
1671 The driver can also be build as a module. If so, the module will be called
1675 tristate "Xilinx AMS driver"
1676 depends on ARCH_ZYNQMP || COMPILE_TEST
1677 depends on HAS_IOMEM
1679 Say yes here to have support for the Xilinx AMS for Ultrascale/Ultrascale+
1680 System Monitor. With this you can measure and monitor the Voltages and
1681 Temperature values on the SOC.
1683 The driver supports Voltage and Temperature monitoring on Xilinx Ultrascale
1686 The driver can also be built as a module. If so, the module will be called