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 Device AD4130 ADC Driver"
33 Say yes here to build support for Analog Devices AD4130-8 SPI analog
34 to digital converters (ADC).
36 To compile this driver as a module, choose M here: the module will be
43 tristate "Analog Devices AD7091R5 ADC Driver"
48 Say yes here to build support for Analog Devices AD7091R-5 ADC.
51 tristate "Analog Devices AD7091R8 ADC Driver"
56 Say yes here to build support for Analog Devices AD7091R-2, AD7091R-4,
59 To compile this driver as a module, choose M here: the module will be
63 tristate "Analog Devices AD7124 and similar sigma-delta ADCs driver"
67 Say yes here to build support for Analog Devices AD7124-4 and AD7124-8
68 SPI analog to digital converters (ADC).
70 To compile this driver as a module, choose M here: the module will be
74 tristate "Analog Devices AD7190 AD7192 AD7193 AD7195 ADC driver"
78 Say yes here to build support for Analog Devices AD7190,
79 AD7192, AD7193 or AD7195 SPI analog to digital converters (ADC).
80 If unsure, say N (but it's safe to say "Y").
82 To compile this driver as a module, choose M here: the
83 module will be called ad7192.
86 tristate "Analog Devices AD7265/AD7266 ADC driver"
90 select IIO_TRIGGERED_BUFFER
92 Say yes here to build support for Analog Devices AD7265 and AD7266
95 To compile this driver as a module, choose M here: the module will be
99 tristate "Analog Devices AD7280A Lithium Ion Battery Monitoring System"
103 Say yes here to build support for Analog Devices AD7280A
104 Lithium Ion Battery Monitoring System.
106 To compile this driver as a module, choose M here: the
107 module will be called ad7280a
110 tristate "Analog Devices AD7291 ADC driver"
113 Say yes here to build support for Analog Devices AD7291
114 8 Channel ADC with temperature sensor.
116 To compile this driver as a module, choose M here: the
117 module will be called ad7291.
120 tristate "Analog Devices AD7292 ADC driver"
123 Say yes here to build support for Analog Devices AD7292
124 8 Channel ADC with temperature sensor.
126 To compile this driver as a module, choose M here: the
127 module will be called ad7292.
130 tristate "Analog Devices AD7298 ADC driver"
133 select IIO_TRIGGERED_BUFFER
135 Say yes here to build support for Analog Devices AD7298
136 8 Channel ADC with temperature sensor.
138 To compile this driver as a module, choose M here: the
139 module will be called ad7298.
142 tristate "Analog Devices AD7476 1-channel ADCs driver and other similar devices from AD and TI"
145 select IIO_TRIGGERED_BUFFER
147 Say yes here to build support for the following SPI analog to
148 digital converters (ADCs):
149 Analog Devices: AD7273, AD7274, AD7276, AD7277, AD7278, AD7475,
150 AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495, AD7910,
152 Texas Instruments: ADS7866, ADS7867, ADS7868.
154 To compile this driver as a module, choose M here: the
155 module will be called ad7476.
160 select IIO_TRIGGERED_BUFFER
162 config AD7606_IFACE_PARALLEL
163 tristate "Analog Devices AD7606 ADC driver with parallel interface support"
164 depends on HAS_IOPORT
167 Say yes here to build parallel interface support for Analog Devices:
168 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC).
170 To compile this driver as a module, choose M here: the
171 module will be called ad7606_parallel.
173 config AD7606_IFACE_SPI
174 tristate "Analog Devices AD7606 ADC driver with spi interface support"
178 Say yes here to build spi interface support for Analog Devices:
179 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC).
181 To compile this driver as a module, choose M here: the
182 module will be called ad7606_spi.
185 tristate "Analog Devices AD7766/AD7767 ADC driver"
186 depends on SPI_MASTER
188 select IIO_TRIGGERED_BUFFER
190 Say yes here to build support for Analog Devices AD7766, AD7766-1,
191 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters.
193 To compile this driver as a module, choose M here: the module will be
197 tristate "Analog Devices AD7768-1 ADC driver"
201 select IIO_TRIGGERED_BUFFER
203 Say yes here to build support for Analog Devices AD7768-1 SPI
204 simultaneously sampling sigma-delta analog to digital converter (ADC).
206 To compile this driver as a module, choose M here: the module will be
210 tristate "Analog Devices AD7780 and similar ADCs driver"
212 depends on GPIOLIB || COMPILE_TEST
213 select AD_SIGMA_DELTA
215 Say yes here to build support for Analog Devices AD7170, AD7171,
216 AD7780 and AD7781 SPI analog to digital converters (ADC).
218 To compile this driver as a module, choose M here: the
219 module will be called ad7780.
222 tristate "Analog Devices AD7791 ADC driver"
224 select AD_SIGMA_DELTA
226 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
227 AD7790 and AD7791 SPI analog to digital converters (ADC).
229 To compile this driver as a module, choose M here: the module will be
233 tristate "Analog Devices AD7793 and similar ADCs driver"
235 select AD_SIGMA_DELTA
237 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
238 AD7794 and AD7795 SPI analog to digital converters (ADC).
240 To compile this driver as a module, choose M here: the
241 module will be called AD7793.
244 tristate "Analog Devices AD7887 ADC driver"
247 select IIO_TRIGGERED_BUFFER
249 Say yes here to build support for Analog Devices
250 AD7887 SPI analog to digital converter (ADC).
252 To compile this driver as a module, choose M here: the
253 module will be called ad7887.
256 tristate "Analog Devices AD7923 and similar ADCs driver"
259 select IIO_TRIGGERED_BUFFER
261 Say yes here to build support for Analog Devices
262 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
264 To compile this driver as a module, choose M here: the
265 module will be called ad7923.
268 tristate "Analog Devices AD7949 and similar ADCs driver"
271 Say yes here to build support for Analog Devices
272 AD7949, AD7682, AD7689 8 Channel ADCs.
274 To compile this driver as a module, choose M here: the
275 module will be called ad7949.
278 tristate "Analog Devices AD799x ADC driver"
281 select IIO_TRIGGERED_BUFFER
283 Say yes here to build support for Analog Devices:
284 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
285 i2c analog to digital converters (ADC). Provides direct access
288 To compile this driver as a module, choose M here: the module will be
292 tristate "Analog Devices AD9467 High Speed ADC driver"
294 depends on ADI_AXI_ADC
296 Say yes here to build support for Analog Devices:
297 * AD9467 16-Bit, 200 MSPS/250 MSPS Analog-to-Digital Converter
299 The driver requires the assistance of the AXI ADC IP core to operate,
300 since SPI is used for configuration only, while data has to be
301 streamed into memory via DMA.
303 To compile this driver as a module, choose M here: the module will be
307 tristate "Analog Devices Generic AXI ADC IP core driver"
309 select IIO_BUFFER_HW_CONSUMER
310 select IIO_BUFFER_DMAENGINE
314 Say yes here to build support for Analog Devices Generic
315 AXI ADC IP core. The IP core is used for interfacing with
316 analog-to-digital (ADC) converters that require either a high-speed
317 serial interface (JESD204B/C) or a source synchronous parallel
318 interface (LVDS/CMOS).
319 Typically (for such devices) SPI will be used for configuration only,
320 while this IP core handles the streaming of data into memory via DMA.
322 Link: https://wiki.analog.com/resources/fpga/docs/axi_adc_ip
323 If unsure, say N (but it's safe to say "Y").
325 To compile this driver as a module, choose M here: the
326 module will be called adi-axi-adc.
329 tristate "Aspeed ADC"
330 depends on ARCH_ASPEED || COMPILE_TEST
331 depends on COMMON_CLK
333 If you say yes here you get support for the ADC included in Aspeed
336 To compile this driver as a module, choose M here: the module will be
340 tristate "Atmel AT91 ADC"
341 depends on ARCH_AT91 || COMPILE_TEST
342 depends on INPUT && SYSFS && OF
344 select IIO_TRIGGERED_BUFFER
346 Say yes here to build support for Atmel AT91 ADC.
348 To compile this driver as a module, choose M here: the module will be
351 config AT91_SAMA5D2_ADC
352 tristate "Atmel AT91 SAMA5D2 ADC"
353 depends on ARCH_AT91 || COMPILE_TEST
356 select IIO_TRIGGERED_BUFFER
358 Say yes here to build support for Atmel SAMA5D2 ADC which is
359 available on SAMA5D2 SoC family.
361 To compile this driver as a module, choose M here: the module will be
362 called at91-sama5d2_adc.
365 tristate "X-Powers AXP20X and AXP22X ADC driver"
366 depends on MFD_AXP20X
368 Say yes here to have support for X-Powers power management IC (PMIC)
369 AXP20X and AXP22X ADC devices.
371 To compile this driver as a module, choose M here: the module will be
375 tristate "X-Powers AXP288 ADC driver"
376 depends on MFD_AXP20X
378 Say yes here to have support for X-Powers power management IC (PMIC) ADC
379 device. Depending on platform configuration, this general purpose ADC can
380 be used for sampling sensors such as thermal resistors.
382 To compile this driver as a module, choose M here: the module will be
386 tristate "Broadcom IPROC ADC driver"
387 depends on (ARCH_BCM_IPROC && OF) || COMPILE_TEST
388 depends on MFD_SYSCON
389 default ARCH_BCM_CYGNUS
391 Say Y here if you want to add support for the Broadcom static
394 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
395 channels. The driver allows the user to read voltage values.
398 tristate "Marvell Berlin2 ADC driver"
399 depends on ARCH_BERLIN || COMPILE_TEST
401 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
402 temperature measurement.
405 tristate "Cosmic Circuits 10001 ADC driver"
406 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
408 select IIO_TRIGGERED_BUFFER
410 Say yes here to build support for Cosmic Circuits 10001 ADC.
412 This driver can also be built as a module. If so, the module will be
416 tristate "Motorola CPCAP PMIC ADC driver"
419 select IIO_TRIGGERED_BUFFER
421 Say yes here to build support for Motorola CPCAP PMIC ADC.
423 This driver can also be built as a module. If so, the module will be
427 tristate "Dialog DA9150 GPADC driver support"
428 depends on MFD_DA9150
430 Say yes here to build support for Dialog DA9150 GPADC.
432 This driver can also be built as a module. If chosen, the module name
433 will be da9150-gpadc.
435 To compile this driver as a module, choose M here: the module will be
439 tristate "Diolan DLN-2 ADC driver support"
442 select IIO_TRIGGERED_BUFFER
444 Say yes here to build support for Diolan DLN-2 ADC.
446 This driver can also be built as a module. If so, the module will be
449 config ENVELOPE_DETECTOR
450 tristate "Envelope detector using a DAC and a comparator"
452 Say yes here to build support for an envelope detector using a DAC
455 To compile this driver as a module, choose M here: the module will be
456 called envelope-detector.
459 tristate "Cirrus Logic EP93XX ADC driver"
460 depends on ARCH_EP93XX || COMPILE_TEST
463 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic.
464 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this
465 case driver will reduce its CPU usage by 90% in some use cases.
467 To compile this driver as a module, choose M here: the module will be
471 tristate "Exynos ADC driver support"
472 depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
475 Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and
477 Choose Y here only if you build for such Samsung SoC.
479 To compile this driver as a module, choose M here: the module will be
483 tristate "Freescale i.MX23/i.MX28 LRADC ADC"
484 depends on MFD_MXS_LRADC
486 select IIO_TRIGGERED_BUFFER
488 Say yes here to build support for the ADC functions of the
489 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
490 battery voltage measurement, and die temperature measurement.
492 This driver can also be built as a module. If so, the module will be
493 called mxs-lradc-adc.
496 tristate "Freescale MX25 ADC driver"
497 depends on MFD_MX25_TSADC
499 Generic Conversion Queue driver used for general purpose ADC in the
500 MX25. This driver supports single measurements using the MX25 ADC.
503 tristate "Holt Integrated Circuits HI-8435 threshold detector"
504 select IIO_TRIGGERED_EVENT
507 If you say yes here you get support for Holt Integrated Circuits
510 This driver can also be built as a module. If so, the module will be
514 tristate "AVIA HX711 ADC for weight cells"
517 select IIO_TRIGGERED_BUFFER
519 If you say yes here you get support for AVIA HX711 ADC which is used
522 This driver uses two GPIOs, one acts as the clock and controls the
523 channel selection and gain, the other one is used for the measurement
526 Currently the raw value is read from the chip and delivered.
527 To get an actual weight one needs to subtract the
528 zero offset and multiply by a scale factor.
529 This should be done in userspace.
531 This driver can also be built as a module. If so, the module will be
535 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
536 depends on I2C && !SENSORS_INA2XX
541 Say yes here to build support for TI INA2xx family of Power Monitors.
542 This driver is mutually exclusive with the HWMON version.
545 tristate "Ingenic JZ47xx SoCs ADC driver"
546 depends on MIPS || COMPILE_TEST
549 Say yes here to build support for the Ingenic JZ47xx SoCs ADC unit.
551 This driver can also be built as a module. If so, the module will be
554 config INTEL_MRFLD_ADC
555 tristate "Intel Merrifield Basin Cove ADC driver"
556 depends on INTEL_SOC_PMIC_MRFLD
558 Say yes here to have support for Basin Cove power management IC (PMIC) ADC
559 device. Depending on platform configuration, this general purpose ADC can
560 be used for sampling sensors such as thermal resistors.
562 To compile this driver as a module, choose M here: the module will be
563 called intel_mrfld_adc.
566 tristate "Freescale IMX7D ADC driver"
567 depends on ARCH_MXC || COMPILE_TEST
570 Say yes here to build support for IMX7D ADC.
572 This driver can also be built as a module. If so, the module will be
576 tristate "NXP IMX8QXP ADC driver"
577 depends on ARCH_MXC || COMPILE_TEST
580 Say yes here to build support for IMX8QXP ADC.
582 This driver can also be built as a module. If so, the module will be
586 tristate "IMX93 ADC driver"
587 depends on ARCH_MXC || COMPILE_TEST
590 Say yes here to build support for IMX93 ADC.
592 This driver can also be built as a module. If so, the module will be
596 tristate "LP8788 ADC driver"
597 depends on MFD_LP8788
599 Say yes here to build support for TI LP8788 ADC.
601 To compile this driver as a module, choose M here: the module will be
605 tristate "NXP LPC18xx ADC driver"
606 depends on ARCH_LPC18XX || COMPILE_TEST
609 Say yes here to build support for NXP LPC18XX ADC.
611 To compile this driver as a module, choose M here: the module will be
615 tristate "NXP LPC32XX ADC"
616 depends on ARCH_LPC32XX || COMPILE_TEST
619 Say yes here to build support for the integrated ADC inside the
620 LPC32XX SoC. Note that this feature uses the same hardware as the
621 touchscreen driver, so you should either select only one of the two
622 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
623 activate only one via device tree selection. Provides direct access
627 tristate "Linear Technology LTC2309 ADC driver"
630 Say yes here to build support for Linear Technology LTC2309, a low
631 noise, low power, 8-channel, 12-bit SAR ADC
633 This driver can also be built as a module. If so, the module will
637 tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
640 Say yes here to build support for Linear Technology LTC2471 and
641 LTC2473 16-bit I2C ADC.
643 This driver can also be built as a module. If so, the module will
647 tristate "Linear Technology LTC2485 ADC driver"
650 Say yes here to build support for Linear Technology LTC2485 ADC.
652 To compile this driver as a module, choose M here: the module will be
656 tristate "Linear Technology LTC2496 ADC driver"
659 Say yes here to build support for Linear Technology LTC2496
660 16-Bit 8-/16-Channel Delta Sigma ADC.
662 To compile this driver as a module, choose M here: the module will be
666 tristate "Linear Technology LTC2497 ADC driver"
669 Say yes here to build support for Linear Technology LTC2497
670 16-Bit 8-/16-Channel Delta Sigma ADC.
672 To compile this driver as a module, choose M here: the module will be
676 tristate "Maxim max1027 ADC driver"
679 select IIO_TRIGGERED_BUFFER
681 Say yes here to build support for Maxim SPI {10,12}-bit ADC models:
682 max1027, max1029, max1031, max1227, max1229 and max1231.
684 To compile this driver as a module, choose M here: the module will be
688 tristate "Maxim max11100 ADC driver"
689 depends on SPI_MASTER
691 Say yes here to build support for Maxim max11100 SPI ADC
693 To compile this driver as a module, choose M here: the module will be
697 tristate "Maxim max1117/max1118/max1119 ADCs driver"
700 select IIO_TRIGGERED_BUFFER
702 Say yes here to build support for Maxim max1117/max1118/max1119
703 8-bit, dual-channel ADCs.
705 To compile this driver as a module, choose M here: the module will be
709 tristate "Maxim max11205 ADC driver"
711 select AD_SIGMA_DELTA
713 select IIO_TRIGGERED_BUFFER
716 Say yes here to build support for Maxim max11205 16-bit, single-channel
717 ultra-low power delta-sigma ADC.
719 To compile this driver as a module, choose M here: the module will be
723 tristate "Analog Devices MAX11410 ADC driver"
728 select IIO_TRIGGERED_BUFFER
730 Say yes here to build support for Analog Devices MAX11410 ADCs.
732 To compile this driver as a module, choose M here: the module will be
736 tristate "Maxim max1241 ADC driver"
737 depends on SPI_MASTER
739 Say yes here to build support for Maxim max1241 12-bit, single-channel
742 To compile this driver as a module, choose M here: the module will be
746 tristate "Maxim max1363 ADC driver"
749 select IIO_TRIGGERED_BUFFER
751 Say yes here to build support for many Maxim i2c analog to digital
752 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
753 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
754 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
755 max11602, max11603, max11604, max11605, max11606, max11607,
756 max11608, max11609, max11610, max11611, max11612, max11613,
757 max11614, max11615, max11616, max11617, max11644, max11645,
758 max11646, max11647) Provides direct access via sysfs and buffered
759 data via the iio dev interface.
761 To compile this driver as a module, choose M here: the module will be
765 tristate "Maxim max34408/max344089 ADC driver"
768 Say yes here to build support for Maxim max34408/max34409 current sense
769 monitor with 8-bits ADC interface with overcurrent delay/threshold and
772 To compile this driver as a module, choose M here: the module will be
776 tristate "Analog Devices MAX77541 ADC driver"
777 depends on MFD_MAX77541
779 This driver controls a Analog Devices MAX77541 ADC
780 via I2C bus. This device has one adc. Say yes here to build
781 support for Analog Devices MAX77541 ADC interface.
783 To compile this driver as a module, choose M here:
784 the module will be called max77541-adc.
787 tristate "Maxim max9611/max9612 ADC driver"
790 Say yes here to build support for Maxim max9611/max9612 current sense
791 amplifier with 12-bits ADC interface.
793 To compile this driver as a module, choose M here: the module will be
797 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
800 Say yes here to build support for Microchip Technology's
801 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
802 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital
805 This driver can also be built as a module. If so, the module will be
809 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
812 Say yes here to build support for Microchip Technology's MCP3421
813 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
814 analog to digital converters.
816 This driver can also be built as a module. If so, the module will be
820 tristate "Microchip Technology MCP3461/2/4/R, MCP3561/2/4/R driver"
824 Say yes here to build support for Microchip Technology's MCP3461,
825 MCP3462, MCP3464, MCP3461R, MCP3462R, MCP3464R, MCP3561, MCP3562,
826 MCP3564, MCP3561R, MCP3562R and MCP3564R analog to digital
829 This driver can also be built as a module. If so, the module will be
833 tristate "Microchip Technology MCP3911 driver"
836 select IIO_TRIGGERED_BUFFER
838 Say yes here to build support for one of the following
839 Microchip Technology's analog to digital converters:
840 MCP3910, MCP3911, MCP3912, MCP3913, MCP3914,
843 This driver can also be built as a module. If so, the module will be
846 config MEDIATEK_MT6360_ADC
847 tristate "Mediatek MT6360 ADC driver"
848 depends on MFD_MT6360
850 select IIO_TRIGGERED_BUFFER
852 Say Y here to enable MT6360 ADC support.
853 Integrated for System Monitoring includes
854 is used in smartphones and tablets and supports a 11 channel
857 config MEDIATEK_MT6370_ADC
858 tristate "MediaTek MT6370 ADC driver"
859 depends on MFD_MT6370
861 Say yes here to enable MediaTek MT6370 ADC support.
863 This ADC driver provides 9 channels for system monitoring (charger
864 current, voltage, and temperature).
866 This driver can also be built as a module. If so, the module
867 will be called "mt6370-adc".
869 config MEDIATEK_MT6577_AUXADC
870 tristate "MediaTek AUXADC driver"
871 depends on ARCH_MEDIATEK || COMPILE_TEST
874 Say yes here to enable support for MediaTek mt65xx AUXADC.
876 The driver supports immediate mode operation to read from one of sixteen
877 channels (external or internal).
879 This driver can also be built as a module. If so, the module will be
880 called mt6577_auxadc.
883 tristate "MEN 16z188 ADC IP Core support"
886 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
889 This driver can also be built as a module. If so, the module will be
893 tristate "Amlogic Meson SAR ADC driver"
895 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
898 Say yes here to build support for the SAR ADC found in Amlogic Meson
901 To compile this driver as a module, choose M here: the
902 module will be called meson_saradc.
905 tristate "Monolithic MP2629 ADC driver"
906 depends on MFD_MP2629
908 Say yes to have support for battery charger IC MP2629 ADC device
911 This driver provides ADC conversion of system, input power supply
912 and battery voltage & current information.
915 tristate "Nuvoton NAU7802 ADC driver"
918 Say yes here to build support for Nuvoton NAU7802 ADC.
920 To compile this driver as a module, choose M here: the
921 module will be called nau7802.
924 tristate "Nuvoton NPCM ADC driver"
925 depends on ARCH_NPCM || COMPILE_TEST
928 Say yes here to build support for Nuvoton NPCM ADC.
930 This driver can also be built as a module. If so, the module
931 will be called npcm_adc.
934 tristate "TI Palmas General Purpose ADC"
935 depends on MFD_PALMAS
937 Palmas series pmic chip by Texas Instruments (twl6035/6037)
938 is used in smartphones and tablets and supports a 16 channel
941 config QCOM_VADC_COMMON
944 config QCOM_PM8XXX_XOADC
945 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
946 depends on MFD_PM8XXX
947 select QCOM_VADC_COMMON
949 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
950 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
952 To compile this driver as a module, choose M here: the module
953 will be called qcom-pm8xxx-xoadc.
955 config QCOM_SPMI_RRADC
956 tristate "Qualcomm SPMI RRADC"
957 depends on MFD_SPMI_PMIC
959 This is for the PMIC Round Robin ADC driver.
961 This driver exposes the battery ID resistor, battery thermal, PMIC die
962 temperature, charger USB in and DC in voltage and current.
964 To compile this driver as a module, choose M here: the module will
965 be called qcom-qpmi-rradc.
967 config QCOM_SPMI_IADC
968 tristate "Qualcomm SPMI PMIC current ADC"
972 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
974 The driver supports single mode operation to read from one of two
975 channels (external or internal). Hardware have additional
976 channels internally used for gain and offset calibration.
978 To compile this driver as a module, choose M here: the module will
979 be called qcom-spmi-iadc.
981 config QCOM_SPMI_VADC
982 tristate "Qualcomm SPMI PMIC voltage ADC"
985 select QCOM_VADC_COMMON
987 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
989 The driver supports multiple channels read. The VADC is a 15-bit
990 sigma-delta ADC. Some of the channels are internally used for
993 To compile this driver as a module, choose M here: the module will
994 be called qcom-spmi-vadc.
996 config QCOM_SPMI_ADC5
997 tristate "Qualcomm Technologies Inc. SPMI PMIC5 ADC"
1000 select QCOM_VADC_COMMON
1002 This is the IIO Voltage PMIC5 ADC driver for Qualcomm Technologies Inc.
1004 The driver supports multiple channels read. The ADC is a 16-bit
1005 sigma-delta ADC. The hardware supports calibrated results for
1006 conversion requests and clients include reading voltage phone
1007 power, on board system thermistors connected to the PMIC ADC,
1008 PMIC die temperature, charger temperature, battery current, USB voltage
1009 input, voltage signals connected to supported PMIC GPIO inputs. The
1010 hardware supports internal pull-up for thermistors and can choose between
1011 a 100k, 30k and 400k pull up using the ADC channels.
1013 To compile this driver as a module, choose M here: the module will
1014 be called qcom-spmi-adc5.
1016 config RCAR_GYRO_ADC
1017 tristate "Renesas R-Car GyroADC driver"
1018 depends on ARCH_RCAR_GEN2 || COMPILE_TEST
1020 Say yes here to build support for the GyroADC found in Renesas
1021 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
1022 reading data out of attached compatible ADCs in a round-robin
1023 fashion. Up to 4 or 8 ADC channels are supported by this block,
1024 depending on which ADCs are attached.
1026 To compile this driver as a module, choose M here: the
1027 module will be called rcar-gyroadc.
1030 tristate "ADC for the RN5T618/RC5T619 family of chips"
1031 depends on MFD_RN5T618
1033 Say yes here to build support for the integrated ADC inside the
1034 RN5T618/619 series PMICs:
1036 This driver can also be built as a module. If so, the module
1037 will be called rn5t618-adc.
1039 config ROCKCHIP_SARADC
1040 tristate "Rockchip SARADC driver"
1041 depends on ARCH_ROCKCHIP || COMPILE_TEST
1042 depends on RESET_CONTROLLER
1044 select IIO_TRIGGERED_BUFFER
1046 Say yes here to build support for the SARADC found in SoCs from
1049 To compile this driver as a module, choose M here: the
1050 module will be called rockchip_saradc.
1052 config RICHTEK_RTQ6056
1053 tristate "Richtek RTQ6056 Current and Power Monitor ADC"
1057 select IIO_TRIGGERED_BUFFER
1059 Say yes here to enable RQT6056 ADC support.
1060 RTQ6056 is a high accuracy current-sense monitor with I2C and SMBus
1061 compatible interface, and the device provides full information for
1062 system by reading out the load current and power.
1064 This driver can also be built as a module. If so, the module will be
1068 tristate "Renesas RZ/G2L ADC driver"
1069 depends on ARCH_RZG2L || COMPILE_TEST
1071 Say yes here to build support for the ADC found in Renesas
1074 To compile this driver as a module, choose M here: the
1075 module will be called rzg2l_adc.
1078 tristate "Spreadtrum SC27xx series PMICs ADC"
1079 depends on MFD_SC27XX_PMIC || COMPILE_TEST
1081 Say yes here to build support for the integrated ADC inside the
1082 Spreadtrum SC27xx series PMICs.
1084 This driver can also be built as a module. If so, the module
1085 will be called sc27xx_adc.
1088 tristate "ST SPEAr ADC"
1089 depends on PLAT_SPEAR || COMPILE_TEST
1090 depends on HAS_IOMEM
1092 Say yes here to build support for the integrated ADC inside the
1093 ST SPEAr SoC. Provides direct access via sysfs.
1095 To compile this driver as a module, choose M here: the
1096 module will be called spear_adc.
1098 config SD_ADC_MODULATOR
1099 tristate "Generic sigma delta modulator"
1101 select IIO_TRIGGERED_BUFFER
1103 Select this option to enables sigma delta modulator. This driver can
1104 support generic sigma delta modulators.
1106 This driver can also be built as a module. If so, the module
1107 will be called sd_adc_modulator.
1109 config STM32_ADC_CORE
1110 tristate "STMicroelectronics STM32 adc core"
1111 depends on ARCH_STM32 || COMPILE_TEST
1113 depends on REGULATOR
1114 depends on HAS_IOMEM
1116 select MFD_STM32_TIMERS
1117 select IIO_STM32_TIMER_TRIGGER
1118 select IIO_TRIGGERED_BUFFER
1120 Select this option to enable the core driver for STMicroelectronics
1121 STM32 analog-to-digital converter (ADC).
1123 This driver can also be built as a module. If so, the module
1124 will be called stm32-adc-core.
1127 tristate "STMicroelectronics STM32 adc"
1128 depends on STM32_ADC_CORE
1130 Say yes here to build support for STMicroelectronics stm32 Analog
1131 to Digital Converter (ADC).
1133 This driver can also be built as a module. If so, the module
1134 will be called stm32-adc.
1136 config STM32_DFSDM_CORE
1137 tristate "STMicroelectronics STM32 DFSDM core"
1138 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1142 Select this option to enable the driver for STMicroelectronics
1143 STM32 digital filter for sigma delta converter.
1145 This driver can also be built as a module. If so, the module
1146 will be called stm32-dfsdm-core.
1148 config STM32_DFSDM_ADC
1149 tristate "STMicroelectronics STM32 dfsdm adc"
1150 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1151 select STM32_DFSDM_CORE
1154 select IIO_BUFFER_HW_CONSUMER
1155 select IIO_TRIGGERED_BUFFER
1157 Select this option to support ADCSigma delta modulator for
1158 STMicroelectronics STM32 digital filter for sigma delta converter.
1160 This driver can also be built as a module. If so, the module
1161 will be called stm32-dfsdm-adc.
1164 tristate "STMicroelectronics STMPE ADC driver"
1165 depends on OF && MFD_STMPE
1167 Say yes here to build support for ST Microelectronics STMPE
1168 built-in ADC block (stmpe811).
1171 tristate "Allwinner A10/A13/A31 and similar GPADCs driver"
1173 depends on MFD_SUN4I_GPADC || MACH_SUN8I
1174 depends on THERMAL || !THERMAL_OF
1177 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
1178 GPADC. This ADC provides 4 channels which can be used as an ADC or as
1179 a touchscreen input and one channel for thermal sensor.
1181 The thermal sensor slows down ADC readings and can be disabled by
1182 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
1183 enabled by default since the SoC temperature is usually more critical
1186 To compile this driver as a module, choose M here: the module will be
1187 called sun4i-gpadc-iio.
1190 tristate "Allwinner D1/T113s/T507/R329 and similar GPADCs driver"
1191 depends on ARCH_SUNXI || COMPILE_TEST
1193 Say yes here to build support for Allwinner (D1, T113, T507 and R329)
1194 SoCs GPADC. This ADC provides up to 16 channels.
1196 To compile this driver as a module, choose M here: the module will be
1197 called sun20i-gpadc-iio.
1200 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
1203 select IIO_TRIGGERED_BUFFER
1205 If you say yes here you get support for Texas Instruments ADC081C,
1206 ADC101C and ADC121C ADC chips.
1208 This driver can also be built as a module. If so, the module will be
1212 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
1215 select IIO_TRIGGERED_BUFFER
1217 If you say yes here you get support for Texas Instruments ADC0831,
1218 ADC0832, ADC0834, ADC0838 ADC chips.
1220 This driver can also be built as a module. If so, the module will be
1223 config TI_ADC084S021
1224 tristate "Texas Instruments ADC084S021"
1227 select IIO_TRIGGERED_BUFFER
1229 If you say yes here you get support for Texas Instruments ADC084S021
1232 This driver can also be built as a module. If so, the module will be
1233 called ti-adc084s021.
1236 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
1239 select IIO_TRIGGERED_BUFFER
1241 If you say yes here you get support for Texas Instruments ADC12130,
1242 ADC12132 and ADC12138 chips.
1244 This driver can also be built as a module. If so, the module will be
1247 config TI_ADC108S102
1248 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
1251 select IIO_TRIGGERED_BUFFER
1253 Say yes here to build support for Texas Instruments ADC108S102 and
1256 To compile this driver as a module, choose M here: the module will
1257 be called ti-adc108s102.
1259 config TI_ADC128S052
1260 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
1263 If you say yes here you get support for Texas Instruments ADC128S052,
1264 ADC122S021 and ADC124S021 chips.
1266 This driver can also be built as a module. If so, the module will be
1267 called ti-adc128s052.
1269 config TI_ADC161S626
1270 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
1273 select IIO_TRIGGERED_BUFFER
1275 If you say yes here you get support for Texas Instruments ADC141S626,
1276 and ADC161S626 chips.
1278 This driver can also be built as a module. If so, the module will be
1279 called ti-adc161s626.
1282 tristate "Texas Instruments ADS1015 ADC"
1286 select IIO_TRIGGERED_BUFFER
1288 If you say yes here you get support for Texas Instruments ADS1015
1291 This driver can also be built as a module. If so, the module will be
1295 tristate "Texas Instruments ADS7924 ADC"
1299 If you say yes here you get support for Texas Instruments ADS7924
1300 4 channels, 12-bit I2C ADC chip.
1302 This driver can also be built as a module. If so, the module will be
1306 tristate "Texas Instruments ADS1100 and ADS1000 ADC"
1309 If you say yes here you get support for Texas Instruments ADS1100 and
1312 This driver can also be built as a module. If so, the module will be
1316 tristate "Texas Instruments ADS7950 ADC driver"
1317 depends on SPI && GPIOLIB
1319 select IIO_TRIGGERED_BUFFER
1321 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
1322 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
1325 To compile this driver as a module, choose M here: the
1326 module will be called ti-ads7950.
1329 tristate "Texas Instruments ADS8344"
1332 If you say yes here you get support for Texas Instruments ADS8344
1335 This driver can also be built as a module. If so, the module will be
1339 tristate "Texas Instruments ADS8688"
1342 If you say yes here you get support for Texas Instruments ADS8684 and
1343 and ADS8688 ADC chips
1345 This driver can also be built as a module. If so, the module will be
1349 tristate "Texas Instruments ADS124S08"
1352 If you say yes here you get support for Texas Instruments ADS124S08
1353 and ADS124S06 ADC chips
1355 This driver can also be built as a module. If so, the module will be
1356 called ti-ads124s08.
1359 tristate "Texas Instruments ADS131E08"
1362 select IIO_TRIGGERED_BUFFER
1364 Say yes here to get support for Texas Instruments ADS131E04, ADS131E06
1365 and ADS131E08 chips.
1367 This driver can also be built as a module. If so, the module will be
1368 called ti-ads131e08.
1370 config TI_AM335X_ADC
1371 tristate "TI's AM335X ADC driver"
1372 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
1374 select IIO_KFIFO_BUF
1376 Say yes here to build support for Texas Instruments ADC
1377 driver which is also a MFD client.
1379 To compile this driver as a module, choose M here: the module will be
1380 called ti_am335x_adc.
1383 tristate "Texas Instruments LMP92064 ADC driver"
1386 Say yes here to build support for the LMP92064 Precision Current and Voltage
1389 This driver can also be built as a module. If so, the module will be called
1393 tristate "Texas Instruments TLC4541 ADC driver"
1396 select IIO_TRIGGERED_BUFFER
1398 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
1401 This driver can also be built as a module. If so, the module will be
1405 tristate "Texas Instruments TSC2046 ADC driver"
1408 select IIO_TRIGGERED_BUFFER
1410 Say yes here to build support for ADC functionality of Texas
1411 Instruments TSC2046 touch screen controller.
1413 This driver can also be built as a module. If so, the module will be
1417 tristate "TWL4030 MADC (Monitoring A/D Converter)"
1418 depends on TWL4030_CORE
1420 This driver provides support for Triton TWL4030-MADC. The
1421 driver supports both RT and SW conversion methods.
1423 This driver can also be built as a module. If so, the module will be
1424 called twl4030-madc.
1426 config TWL6030_GPADC
1427 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
1428 depends on TWL4030_CORE
1431 Say yes here if you want support for the TWL6030/TWL6032 General
1432 Purpose A/D Converter. This will add support for battery type
1433 detection, battery voltage and temperature measurement, die
1434 temperature measurement, system supply voltage, audio accessory,
1437 This driver can also be built as a module. If so, the module will be
1438 called twl6030-gpadc.
1441 tristate "Freescale vf610 ADC driver"
1442 depends on HAS_IOMEM
1444 select IIO_TRIGGERED_BUFFER
1446 Say yes here to support for Vybrid board analog-to-digital converter.
1447 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
1449 This driver can also be built as a module. If so, the module will be
1452 config VIPERBOARD_ADC
1453 tristate "Viperboard ADC support"
1454 depends on MFD_VIPERBOARD && USB
1456 Say yes here to access the ADC part of the Nano River
1457 Technologies Viperboard.
1459 To compile this driver as a module, choose M here: the module will be
1460 called viperboard_adc.
1463 tristate "Xilinx XADC driver"
1464 depends on HAS_IOMEM
1466 select IIO_TRIGGERED_BUFFER
1468 Say yes here to have support for the Xilinx 7 Series XADC or
1469 UltraScale/UltraScale+ System Management Wizard.
1471 For the 7 Series the driver does support both the ZYNQ interface
1472 to the XADC as well as the AXI-XADC interface.
1474 The driver also support the Xilinx System Management Wizard IP core
1475 that can be used to access the System Monitor ADC on the Xilinx
1476 UltraScale and UltraScale+ FPGAs.
1478 The driver can also be build as a module. If so, the module will be called
1482 tristate "Xilinx AMS driver"
1483 depends on ARCH_ZYNQMP || COMPILE_TEST
1484 depends on HAS_IOMEM
1486 Say yes here to have support for the Xilinx AMS for Ultrascale/Ultrascale+
1487 System Monitor. With this you can measure and monitor the Voltages and
1488 Temperature values on the SOC.
1490 The driver supports Voltage and Temperature monitoring on Xilinx Ultrascale
1493 The driver can also be built as a module. If so, the module will be called