4 # When adding new entries keep the list in alphabetical order
6 menu "Analog to digital converters"
11 select IIO_TRIGGERED_BUFFER
14 tristate "Analog Devices AD7265/AD7266 ADC driver"
18 select IIO_TRIGGERED_BUFFER
20 Say yes here to build support for Analog Devices AD7265 and AD7266
23 To compile this driver as a module, choose M here: the module will be
27 tristate "Analog Devices AD7291 ADC driver"
30 Say yes here to build support for Analog Devices AD7291
31 8 Channel ADC with temperature sensor.
33 To compile this driver as a module, choose M here: the
34 module will be called ad7291.
37 tristate "Analog Devices AD7298 ADC driver"
40 select IIO_TRIGGERED_BUFFER
42 Say yes here to build support for Analog Devices AD7298
43 8 Channel ADC with temperature sensor.
45 To compile this driver as a module, choose M here: the
46 module will be called ad7298.
49 tristate "Analog Devices AD7476 and similar 1-channel ADCs driver"
52 select IIO_TRIGGERED_BUFFER
54 Say yes here to build support for Analog Devices AD7273, AD7274, AD7276,
55 AD7277, AD7278, AD7475, AD7476, AD7477, AD7478, AD7466, AD7467, AD7468,
56 AD7495, AD7910, AD7920, AD7920 SPI analog to digital converters (ADC).
58 To compile this driver as a module, choose M here: the
59 module will be called ad7476.
62 tristate "Analog Devices AD7766/AD7767 ADC driver"
65 select IIO_TRIGGERED_BUFFER
67 Say yes here to build support for Analog Devices AD7766, AD7766-1,
68 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters.
70 To compile this driver as a module, choose M here: the module will be
74 tristate "Analog Devices AD7791 ADC driver"
78 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
79 AD7790 and AD7791 SPI analog to digital converters (ADC).
81 To compile this driver as a module, choose M here: the module will be
85 tristate "Analog Devices AD7793 and similar ADCs driver"
89 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
90 AD7794 and AD7795 SPI analog to digital converters (ADC).
92 To compile this driver as a module, choose M here: the
93 module will be called AD7793.
96 tristate "Analog Devices AD7887 ADC driver"
99 select IIO_TRIGGERED_BUFFER
101 Say yes here to build support for Analog Devices
102 AD7887 SPI analog to digital converter (ADC).
104 To compile this driver as a module, choose M here: the
105 module will be called ad7887.
108 tristate "Analog Devices AD7923 and similar ADCs driver"
111 select IIO_TRIGGERED_BUFFER
113 Say yes here to build support for Analog Devices
114 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
116 To compile this driver as a module, choose M here: the
117 module will be called ad7923.
120 tristate "Analog Devices AD799x ADC driver"
123 select IIO_TRIGGERED_BUFFER
125 Say yes here to build support for Analog Devices:
126 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
127 i2c analog to digital converters (ADC). Provides direct access
130 To compile this driver as a module, choose M here: the module will be
134 tristate "Aspeed ADC"
135 depends on ARCH_ASPEED || COMPILE_TEST
136 depends on COMMON_CLK
138 If you say yes here you get support for the ADC included in Aspeed
141 To compile this driver as a module, choose M here: the module will be
145 tristate "Atmel AT91 ADC"
149 select IIO_TRIGGERED_BUFFER
152 Say yes here to build support for Atmel AT91 ADC.
154 To compile this driver as a module, choose M here: the module will be
157 config AT91_SAMA5D2_ADC
158 tristate "Atmel AT91 SAMA5D2 ADC"
159 depends on ARCH_AT91 || COMPILE_TEST
162 select IIO_TRIGGERED_BUFFER
164 Say yes here to build support for Atmel SAMA5D2 ADC which is
165 available on SAMA5D2 SoC family.
167 To compile this driver as a module, choose M here: the module will be
168 called at91-sama5d2_adc.
171 tristate "X-Powers AXP20X and AXP22X ADC driver"
172 depends on MFD_AXP20X
174 Say yes here to have support for X-Powers power management IC (PMIC)
175 AXP20X and AXP22X ADC devices.
177 To compile this driver as a module, choose M here: the module will be
181 tristate "X-Powers AXP288 ADC driver"
182 depends on MFD_AXP20X
184 Say yes here to have support for X-Powers power management IC (PMIC) ADC
185 device. Depending on platform configuration, this general purpose ADC can
186 be used for sampling sensors such as thermal resistors.
188 To compile this driver as a module, choose M here: the module will be
192 tristate "Broadcom IPROC ADC driver"
193 depends on ARCH_BCM_IPROC || COMPILE_TEST
194 depends on MFD_SYSCON
195 default ARCH_BCM_CYGNUS
197 Say Y here if you want to add support for the Broadcom static
200 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
201 channels. The driver allows the user to read voltage values.
204 tristate "Marvell Berlin2 ADC driver"
205 depends on ARCH_BERLIN
207 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
208 temperature measurement.
211 tristate "Cosmic Circuits 10001 ADC driver"
212 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
214 select IIO_TRIGGERED_BUFFER
216 Say yes here to build support for Cosmic Circuits 10001 ADC.
218 This driver can also be built as a module. If so, the module will be
222 tristate "Motorola CPCAP PMIC ADC driver"
225 select IIO_TRIGGERED_BUFFER
227 Say yes here to build support for Motorola CPCAP PMIC ADC.
229 This driver can also be built as a module. If so, the module will be
233 tristate "Dialog DA9150 GPADC driver support"
234 depends on MFD_DA9150
236 Say yes here to build support for Dialog DA9150 GPADC.
238 This driver can also be built as a module. If chosen, the module name
239 will be da9150-gpadc.
241 To compile this driver as a module, choose M here: the module will be
245 tristate "Diolan DLN-2 ADC driver support"
248 select IIO_TRIGGERED_BUFFER
250 Say yes here to build support for Diolan DLN-2 ADC.
252 This driver can also be built as a module. If so, the module will be
255 config ENVELOPE_DETECTOR
256 tristate "Envelope detector using a DAC and a comparator"
259 Say yes here to build support for an envelope detector using a DAC
262 To compile this driver as a module, choose M here: the module will be
263 called envelope-detector.
266 tristate "Cirrus Logic EP93XX ADC driver"
267 depends on ARCH_EP93XX
269 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic.
270 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this
271 case driver will reduce its CPU usage by 90% in some use cases.
273 To compile this driver as a module, choose M here: the module will be
277 tristate "Exynos ADC driver support"
278 depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
281 Core support for the ADC block found in the Samsung EXYNOS series
282 of SoCs for drivers such as the touchscreen and hwmon to use to share
285 To compile this driver as a module, choose M here: the module will be
289 tristate "Freescale i.MX23/i.MX28 LRADC ADC"
290 depends on MFD_MXS_LRADC
292 select IIO_TRIGGERED_BUFFER
294 Say yes here to build support for the ADC functions of the
295 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
296 battery voltage measurement, and die temperature measurement.
298 This driver can also be built as a module. If so, the module will be
299 called mxs-lradc-adc.
302 tristate "Freescale MX25 ADC driver"
303 depends on MFD_MX25_TSADC
305 Generic Conversion Queue driver used for general purpose ADC in the
306 MX25. This driver supports single measurements using the MX25 ADC.
309 tristate "Holt Integrated Circuits HI-8435 threshold detector"
310 select IIO_TRIGGERED_EVENT
313 If you say yes here you get support for Holt Integrated Circuits
316 This driver can also be built as a module. If so, the module will be
320 tristate "AVIA HX711 ADC for weight cells"
323 select IIO_TRIGGERED_BUFFER
325 If you say yes here you get support for AVIA HX711 ADC which is used
328 This driver uses two GPIOs, one acts as the clock and controls the
329 channel selection and gain, the other one is used for the measurement
332 Currently the raw value is read from the chip and delivered.
333 To get an actual weight one needs to subtract the
334 zero offset and multiply by a scale factor.
335 This should be done in userspace.
337 This driver can also be built as a module. If so, the module will be
341 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
342 depends on I2C && !SENSORS_INA2XX
347 Say yes here to build support for TI INA2xx family of Power Monitors.
348 This driver is mutually exclusive with the HWMON version.
351 tristate "Freescale IMX7D ADC driver"
352 depends on ARCH_MXC || COMPILE_TEST
355 Say yes here to build support for IMX7D ADC.
357 This driver can also be built as a module. If so, the module will be
361 tristate "LP8788 ADC driver"
362 depends on MFD_LP8788
364 Say yes here to build support for TI LP8788 ADC.
366 To compile this driver as a module, choose M here: the module will be
370 tristate "NXP LPC18xx ADC driver"
371 depends on ARCH_LPC18XX || COMPILE_TEST
372 depends on OF && HAS_IOMEM
374 Say yes here to build support for NXP LPC18XX ADC.
376 To compile this driver as a module, choose M here: the module will be
380 tristate "NXP LPC32XX ADC"
381 depends on ARCH_LPC32XX || COMPILE_TEST
384 Say yes here to build support for the integrated ADC inside the
385 LPC32XX SoC. Note that this feature uses the same hardware as the
386 touchscreen driver, so you should either select only one of the two
387 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
388 activate only one via device tree selection. Provides direct access
392 tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
395 Say yes here to build support for Linear Technology LTC2471 and
396 LTC2473 16-bit I2C ADC.
398 This driver can also be built as a module. If so, the module will
402 tristate "Linear Technology LTC2485 ADC driver"
405 Say yes here to build support for Linear Technology LTC2485 ADC.
407 To compile this driver as a module, choose M here: the module will be
411 tristate "Linear Technology LTC2497 ADC driver"
414 Say yes here to build support for Linear Technology LTC2497
415 16-Bit 8-/16-Channel Delta Sigma ADC.
417 To compile this driver as a module, choose M here: the module will be
421 tristate "Maxim max1027 ADC driver"
424 select IIO_TRIGGERED_BUFFER
426 Say yes here to build support for Maxim SPI ADC models
427 max1027, max1029 and max1031.
429 To compile this driver as a module, choose M here: the module will be
433 tristate "Maxim max11100 ADC driver"
434 depends on SPI_MASTER
436 Say yes here to build support for Maxim max11100 SPI ADC
438 To compile this driver as a module, choose M here: the module will be
442 tristate "Maxim max1117/max1118/max1119 ADCs driver"
445 select IIO_TRIGGERED_BUFFER
447 Say yes here to build support for Maxim max1117/max1118/max1119
448 8-bit, dual-channel ADCs.
450 To compile this driver as a module, choose M here: the module will be
454 tristate "Maxim max1363 ADC driver"
457 select IIO_TRIGGERED_BUFFER
459 Say yes here to build support for many Maxim i2c analog to digital
460 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
461 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
462 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
463 max11602, max11603, max11604, max11605, max11606, max11607,
464 max11608, max11609, max11610, max11611, max11612, max11613,
465 max11614, max11615, max11616, max11617, max11644, max11645,
466 max11646, max11647) Provides direct access via sysfs and buffered
467 data via the iio dev interface.
469 To compile this driver as a module, choose M here: the module will be
473 tristate "Maxim max9611/max9612 ADC driver"
476 Say yes here to build support for Maxim max9611/max9612 current sense
477 amplifier with 12-bits ADC interface.
479 To compile this driver as a module, choose M here: the module will be
483 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
486 Say yes here to build support for Microchip Technology's
487 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
488 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital
491 This driver can also be built as a module. If so, the module will be
495 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
498 Say yes here to build support for Microchip Technology's MCP3421
499 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
500 analog to digital converters.
502 This driver can also be built as a module. If so, the module will be
505 config MEDIATEK_MT6577_AUXADC
506 tristate "MediaTek AUXADC driver"
507 depends on ARCH_MEDIATEK || COMPILE_TEST
510 Say yes here to enable support for MediaTek mt65xx AUXADC.
512 The driver supports immediate mode operation to read from one of sixteen
513 channels (external or internal).
515 This driver can also be built as a module. If so, the module will be
516 called mt6577_auxadc.
519 tristate "MEN 16z188 ADC IP Core support"
522 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
525 This driver can also be built as a module. If so, the module will be
529 tristate "Amlogic Meson SAR ADC driver"
531 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
534 Say yes here to build support for the SAR ADC found in Amlogic Meson
537 To compile this driver as a module, choose M here: the
538 module will be called meson_saradc.
541 tristate "Nuvoton NAU7802 ADC driver"
544 Say yes here to build support for Nuvoton NAU7802 ADC.
546 To compile this driver as a module, choose M here: the
547 module will be called nau7802.
550 tristate "TI Palmas General Purpose ADC"
551 depends on MFD_PALMAS
553 Palmas series pmic chip by Texas Instruments (twl6035/6037)
554 is used in smartphones and tablets and supports a 16 channel
557 config QCOM_VADC_COMMON
560 config QCOM_PM8XXX_XOADC
561 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
562 depends on MFD_PM8XXX
563 select QCOM_VADC_COMMON
565 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
566 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
568 To compile this driver as a module, choose M here: the module
569 will be called qcom-pm8xxx-xoadc.
571 config QCOM_SPMI_IADC
572 tristate "Qualcomm SPMI PMIC current ADC"
576 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
578 The driver supports single mode operation to read from one of two
579 channels (external or internal). Hardware have additional
580 channels internally used for gain and offset calibration.
582 To compile this driver as a module, choose M here: the module will
583 be called qcom-spmi-iadc.
585 config QCOM_SPMI_VADC
586 tristate "Qualcomm SPMI PMIC voltage ADC"
589 select QCOM_VADC_COMMON
591 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
593 The driver supports multiple channels read. The VADC is a 15-bit
594 sigma-delta ADC. Some of the channels are internally used for
597 To compile this driver as a module, choose M here: the module will
598 be called qcom-spmi-vadc.
601 tristate "Renesas R-Car GyroADC driver"
602 depends on ARCH_RCAR_GEN2 || COMPILE_TEST
604 Say yes here to build support for the GyroADC found in Renesas
605 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
606 reading data out of attached compatible ADCs in a round-robin
607 fashion. Up to 4 or 8 ADC channels are supported by this block,
608 depending on which ADCs are attached.
610 To compile this driver as a module, choose M here: the
611 module will be called rcar-gyroadc.
613 config ROCKCHIP_SARADC
614 tristate "Rockchip SARADC driver"
615 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
616 depends on RESET_CONTROLLER
618 Say yes here to build support for the SARADC found in SoCs from
621 To compile this driver as a module, choose M here: the
622 module will be called rockchip_saradc.
625 tristate "ST SPEAr ADC"
626 depends on PLAT_SPEAR || COMPILE_TEST
629 Say yes here to build support for the integrated ADC inside the
630 ST SPEAr SoC. Provides direct access via sysfs.
632 To compile this driver as a module, choose M here: the
633 module will be called spear_adc.
635 config STM32_ADC_CORE
636 tristate "STMicroelectronics STM32 adc core"
637 depends on ARCH_STM32 || COMPILE_TEST
642 select MFD_STM32_TIMERS
643 select IIO_STM32_TIMER_TRIGGER
644 select IIO_TRIGGERED_BUFFER
646 Select this option to enable the core driver for STMicroelectronics
647 STM32 analog-to-digital converter (ADC).
649 This driver can also be built as a module. If so, the module
650 will be called stm32-adc-core.
653 tristate "STMicroelectronics STM32 adc"
654 depends on STM32_ADC_CORE
656 Say yes here to build support for STMicroelectronics stm32 Analog
657 to Digital Converter (ADC).
659 This driver can also be built as a module. If so, the module
660 will be called stm32-adc.
663 tristate "Apex Embedded Systems STX104 driver"
664 depends on PC104 && X86 && ISA_BUS_API
667 Say yes here to build support for the Apex Embedded Systems STX104
668 integrated analog PC/104 card.
670 This driver supports the 16 channels of single-ended (8 channels of
671 differential) analog inputs, 2 channels of analog output, 4 digital
672 inputs, and 4 digital outputs provided by the STX104.
674 The base port addresses for the devices may be configured via the base
675 array module parameter.
678 tristate "Support for the Allwinner SoCs GPADC"
680 depends on MFD_SUN4I_GPADC || MACH_SUN8I
681 depends on THERMAL || !THERMAL_OF
683 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
684 GPADC. This ADC provides 4 channels which can be used as an ADC or as
685 a touchscreen input and one channel for thermal sensor.
687 The thermal sensor slows down ADC readings and can be disabled by
688 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
689 enabled by default since the SoC temperature is usually more critical
692 To compile this driver as a module, choose M here: the module will be
693 called sun4i-gpadc-iio.
696 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
699 select IIO_TRIGGERED_BUFFER
701 If you say yes here you get support for Texas Instruments ADC081C,
702 ADC101C and ADC121C ADC chips.
704 This driver can also be built as a module. If so, the module will be
708 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
711 select IIO_TRIGGERED_BUFFER
713 If you say yes here you get support for Texas Instruments ADC0831,
714 ADC0832, ADC0834, ADC0838 ADC chips.
716 This driver can also be built as a module. If so, the module will be
720 tristate "Texas Instruments ADC084S021"
723 select IIO_TRIGGERED_BUFFER
725 If you say yes here you get support for Texas Instruments ADC084S021
728 This driver can also be built as a module. If so, the module will be
729 called ti-adc084s021.
732 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
735 select IIO_TRIGGERED_BUFFER
737 If you say yes here you get support for Texas Instruments ADC12130,
738 ADC12132 and ADC12138 chips.
740 This driver can also be built as a module. If so, the module will be
744 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
747 select IIO_TRIGGERED_BUFFER
749 Say yes here to build support for Texas Instruments ADC108S102 and
752 To compile this driver as a module, choose M here: the module will
753 be called ti-adc108s102.
756 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
759 If you say yes here you get support for Texas Instruments ADC128S052,
760 ADC122S021 and ADC124S021 chips.
762 This driver can also be built as a module. If so, the module will be
763 called ti-adc128s052.
766 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
769 select IIO_TRIGGERED_BUFFER
771 If you say yes here you get support for Texas Instruments ADC141S626,
772 and ADC161S626 chips.
774 This driver can also be built as a module. If so, the module will be
775 called ti-adc161s626.
778 tristate "Texas Instruments ADS1015 ADC"
779 depends on I2C && !SENSORS_ADS1015
782 select IIO_TRIGGERED_BUFFER
784 If you say yes here you get support for Texas Instruments ADS1015
787 This driver can also be built as a module. If so, the module will be
791 tristate "Texas Instruments ADS7950 ADC driver"
794 select IIO_TRIGGERED_BUFFER
796 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
797 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
800 To compile this driver as a module, choose M here: the
801 module will be called ti-ads7950.
804 tristate "Texas Instruments ADS8688"
807 If you say yes here you get support for Texas Instruments ADS8684 and
808 and ADS8688 ADC chips
810 This driver can also be built as a module. If so, the module will be
814 tristate "TI's AM335X ADC driver"
815 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
819 Say yes here to build support for Texas Instruments ADC
820 driver which is also a MFD client.
822 To compile this driver as a module, choose M here: the module will be
823 called ti_am335x_adc.
826 tristate "Texas Instruments TLC4541 ADC driver"
829 select IIO_TRIGGERED_BUFFER
831 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
834 This driver can also be built as a module. If so, the module will be
838 tristate "TWL4030 MADC (Monitoring A/D Converter)"
839 depends on TWL4030_CORE
841 This driver provides support for Triton TWL4030-MADC. The
842 driver supports both RT and SW conversion methods.
844 This driver can also be built as a module. If so, the module will be
848 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
849 depends on TWL4030_CORE
852 Say yes here if you want support for the TWL6030/TWL6032 General
853 Purpose A/D Converter. This will add support for battery type
854 detection, battery voltage and temperature measurement, die
855 temperature measurement, system supply voltage, audio accessory,
858 This driver can also be built as a module. If so, the module will be
859 called twl6030-gpadc.
862 tristate "Freescale vf610 ADC driver"
866 select IIO_TRIGGERED_BUFFER
868 Say yes here to support for Vybrid board analog-to-digital converter.
869 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
871 This driver can also be built as a module. If so, the module will be
874 config VIPERBOARD_ADC
875 tristate "Viperboard ADC support"
876 depends on MFD_VIPERBOARD && USB
878 Say yes here to access the ADC part of the Nano River
879 Technologies Viperboard.
881 To compile this driver as a module, choose M here: the module will be
882 called viperboard_adc.
885 tristate "Xilinx XADC driver"
886 depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
889 select IIO_TRIGGERED_BUFFER
891 Say yes here to have support for the Xilinx XADC. The driver does support
892 both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
894 The driver can also be build as a module. If so, the module will be called