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 Say yes here to build support for Atmel SAMA5D2 ADC which is
163 available on SAMA5D2 SoC family.
165 To compile this driver as a module, choose M here: the module will be
166 called at91-sama5d2_adc.
169 tristate "X-Powers AXP288 ADC driver"
170 depends on MFD_AXP20X
172 Say yes here to have support for X-Powers power management IC (PMIC) ADC
173 device. Depending on platform configuration, this general purpose ADC can
174 be used for sampling sensors such as thermal resistors.
176 To compile this driver as a module, choose M here: the module will be
180 tristate "Broadcom IPROC ADC driver"
181 depends on ARCH_BCM_IPROC || COMPILE_TEST
182 depends on MFD_SYSCON
183 default ARCH_BCM_CYGNUS
185 Say Y here if you want to add support for the Broadcom static
188 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
189 channels. The driver allows the user to read voltage values.
192 tristate "Marvell Berlin2 ADC driver"
193 depends on ARCH_BERLIN
195 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
196 temperature measurement.
199 tristate "Cosmic Circuits 10001 ADC driver"
200 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
202 select IIO_TRIGGERED_BUFFER
204 Say yes here to build support for Cosmic Circuits 10001 ADC.
206 This driver can also be built as a module. If so, the module will be
210 tristate "Motorola CPCAP PMIC ADC driver"
213 select IIO_TRIGGERED_BUFFER
215 Say yes here to build support for Motorola CPCAP PMIC ADC.
217 This driver can also be built as a module. If so, the module will be
221 tristate "Dialog DA9150 GPADC driver support"
222 depends on MFD_DA9150
224 Say yes here to build support for Dialog DA9150 GPADC.
226 This driver can also be built as a module. If chosen, the module name
227 will be da9150-gpadc.
229 To compile this driver as a module, choose M here: the module will be
232 config ENVELOPE_DETECTOR
233 tristate "Envelope detector using a DAC and a comparator"
236 Say yes here to build support for an envelope detector using a DAC
239 To compile this driver as a module, choose M here: the module will be
240 called envelope-detector.
243 tristate "Exynos ADC driver support"
244 depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
247 Core support for the ADC block found in the Samsung EXYNOS series
248 of SoCs for drivers such as the touchscreen and hwmon to use to share
251 To compile this driver as a module, choose M here: the module will be
255 tristate "Freescale MX25 ADC driver"
256 depends on MFD_MX25_TSADC
258 Generic Conversion Queue driver used for general purpose ADC in the
259 MX25. This driver supports single measurements using the MX25 ADC.
262 tristate "Holt Integrated Circuits HI-8435 threshold detector"
263 select IIO_TRIGGERED_EVENT
266 If you say yes here you get support for Holt Integrated Circuits
269 This driver can also be built as a module. If so, the module will be
273 tristate "AVIA HX711 ADC for weight cells"
276 If you say yes here you get support for AVIA HX711 ADC which is used
279 This driver uses two GPIOs, one acts as the clock and controls the
280 channel selection and gain, the other one is used for the measurement
283 Currently the raw value is read from the chip and delivered.
284 To get an actual weight one needs to subtract the
285 zero offset and multiply by a scale factor.
286 This should be done in userspace.
288 This driver can also be built as a module. If so, the module will be
292 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
293 depends on I2C && !SENSORS_INA2XX
298 Say yes here to build support for TI INA2xx family of Power Monitors.
299 This driver is mutually exclusive with the HWMON version.
302 tristate "IMX7D ADC driver"
303 depends on ARCH_MXC || COMPILE_TEST
306 Say yes here to build support for IMX7D ADC.
308 This driver can also be built as a module. If so, the module will be
312 tristate "LP8788 ADC driver"
313 depends on MFD_LP8788
315 Say yes here to build support for TI LP8788 ADC.
317 To compile this driver as a module, choose M here: the module will be
321 tristate "NXP LPC18xx ADC driver"
322 depends on ARCH_LPC18XX || COMPILE_TEST
323 depends on OF && HAS_IOMEM
325 Say yes here to build support for NXP LPC18XX ADC.
327 To compile this driver as a module, choose M here: the module will be
331 tristate "NXP LPC32XX ADC"
332 depends on ARCH_LPC32XX || COMPILE_TEST
335 Say yes here to build support for the integrated ADC inside the
336 LPC32XX SoC. Note that this feature uses the same hardware as the
337 touchscreen driver, so you should either select only one of the two
338 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
339 activate only one via device tree selection. Provides direct access
343 tristate "Linear Technology LTC2485 ADC driver"
346 Say yes here to build support for Linear Technology LTC2485 ADC.
348 To compile this driver as a module, choose M here: the module will be
352 tristate "Linear Technology LTC2497 ADC driver"
355 Say yes here to build support for Linear Technology LTC2497
356 16-Bit 8-/16-Channel Delta Sigma ADC.
358 To compile this driver as a module, choose M here: the module will be
362 tristate "Maxim max1027 ADC driver"
365 select IIO_TRIGGERED_BUFFER
367 Say yes here to build support for Maxim SPI ADC models
368 max1027, max1029 and max1031.
370 To compile this driver as a module, choose M here: the module will be
374 tristate "Maxim max11100 ADC driver"
375 depends on SPI_MASTER
377 Say yes here to build support for Maxim max11100 SPI ADC
379 To compile this driver as a module, choose M here: the module will be
383 tristate "Maxim max1117/max1118/max1119 ADCs driver"
386 select IIO_TRIGGERED_BUFFER
388 Say yes here to build support for Maxim max1117/max1118/max1119
389 8-bit, dual-channel ADCs.
391 To compile this driver as a module, choose M here: the module will be
395 tristate "Maxim max1363 ADC driver"
398 select IIO_TRIGGERED_BUFFER
400 Say yes here to build support for many Maxim i2c analog to digital
401 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
402 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
403 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
404 max11602, max11603, max11604, max11605, max11606, max11607,
405 max11608, max11609, max11610, max11611, max11612, max11613,
406 max11614, max11615, max11616, max11617, max11644, max11645,
407 max11646, max11647) Provides direct access via sysfs and buffered
408 data via the iio dev interface.
410 To compile this driver as a module, choose M here: the module will be
414 tristate "Maxim max9611/max9612 ADC driver"
417 Say yes here to build support for Maxim max9611/max9612 current sense
418 amplifier with 12-bits ADC interface.
420 To compile this driver as a module, choose M here: the module will be
424 tristate "Microchip Technology MCP3x01/02/04/08"
427 Say yes here to build support for Microchip Technology's
428 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
429 MCP3208 or MCP3301 analog to digital converter.
431 This driver can also be built as a module. If so, the module will be
435 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
438 Say yes here to build support for Microchip Technology's MCP3421
439 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
440 analog to digital converters.
442 This driver can also be built as a module. If so, the module will be
445 config MEDIATEK_MT6577_AUXADC
446 tristate "MediaTek AUXADC driver"
447 depends on ARCH_MEDIATEK || COMPILE_TEST
450 Say yes here to enable support for MediaTek mt65xx AUXADC.
452 The driver supports immediate mode operation to read from one of sixteen
453 channels (external or internal).
455 This driver can also be built as a module. If so, the module will be
456 called mt6577_auxadc.
459 tristate "MEN 16z188 ADC IP Core support"
462 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
465 This driver can also be built as a module. If so, the module will be
469 tristate "Amlogic Meson SAR ADC driver"
471 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
474 Say yes here to build support for the SAR ADC found in Amlogic Meson
477 To compile this driver as a module, choose M here: the
478 module will be called meson_saradc.
481 tristate "Freescale i.MX23/i.MX28 LRADC"
482 depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM
486 select IIO_TRIGGERED_BUFFER
488 Say yes here to build support for i.MX23/i.MX28 LRADC convertor
489 built into these chips.
491 To compile this driver as a module, choose M here: the
492 module will be called mxs-lradc.
495 tristate "Nuvoton NAU7802 ADC driver"
498 Say yes here to build support for Nuvoton NAU7802 ADC.
500 To compile this driver as a module, choose M here: the
501 module will be called nau7802.
504 tristate "TI Palmas General Purpose ADC"
505 depends on MFD_PALMAS
507 Palmas series pmic chip by Texas Instruments (twl6035/6037)
508 is used in smartphones and tablets and supports a 16 channel
511 config QCOM_VADC_COMMON
514 config QCOM_PM8XXX_XOADC
515 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
516 depends on MFD_PM8XXX
517 select QCOM_VADC_COMMON
519 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
520 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
522 To compile this driver as a module, choose M here: the module
523 will be called qcom-pm8xxx-xoadc.
525 config QCOM_SPMI_IADC
526 tristate "Qualcomm SPMI PMIC current ADC"
530 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
532 The driver supports single mode operation to read from one of two
533 channels (external or internal). Hardware have additional
534 channels internally used for gain and offset calibration.
536 To compile this driver as a module, choose M here: the module will
537 be called qcom-spmi-iadc.
539 config QCOM_SPMI_VADC
540 tristate "Qualcomm SPMI PMIC voltage ADC"
543 select QCOM_VADC_COMMON
545 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
547 The driver supports multiple channels read. The VADC is a 15-bit
548 sigma-delta ADC. Some of the channels are internally used for
551 To compile this driver as a module, choose M here: the module will
552 be called qcom-spmi-vadc.
555 tristate "Renesas R-Car GyroADC driver"
556 depends on ARCH_RCAR_GEN2 || (ARM && COMPILE_TEST)
558 Say yes here to build support for the GyroADC found in Renesas
559 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
560 reading data out of attached compatible ADCs in a round-robin
561 fashion. Up to 4 or 8 ADC channels are supported by this block,
562 depending on which ADCs are attached.
564 To compile this driver as a module, choose M here: the
565 module will be called rcar-gyroadc.
567 config ROCKCHIP_SARADC
568 tristate "Rockchip SARADC driver"
569 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
570 depends on RESET_CONTROLLER
572 Say yes here to build support for the SARADC found in SoCs from
575 To compile this driver as a module, choose M here: the
576 module will be called rockchip_saradc.
579 tristate "ST SPEAr ADC"
580 depends on PLAT_SPEAR || COMPILE_TEST
583 Say yes here to build support for the integrated ADC inside the
584 ST SPEAr SoC. Provides direct access via sysfs.
586 To compile this driver as a module, choose M here: the
587 module will be called spear_adc.
589 config STM32_ADC_CORE
590 tristate "STMicroelectronics STM32 adc core"
591 depends on ARCH_STM32 || COMPILE_TEST
596 select MFD_STM32_TIMERS
597 select IIO_STM32_TIMER_TRIGGER
598 select IIO_TRIGGERED_BUFFER
600 Select this option to enable the core driver for STMicroelectronics
601 STM32 analog-to-digital converter (ADC).
603 This driver can also be built as a module. If so, the module
604 will be called stm32-adc-core.
607 tristate "STMicroelectronics STM32 adc"
608 depends on STM32_ADC_CORE
610 Say yes here to build support for STMicroelectronics stm32 Analog
611 to Digital Converter (ADC).
613 This driver can also be built as a module. If so, the module
614 will be called stm32-adc.
617 tristate "Apex Embedded Systems STX104 driver"
618 depends on PC104 && X86 && ISA_BUS_API
621 Say yes here to build support for the Apex Embedded Systems STX104
622 integrated analog PC/104 card.
624 This driver supports the 16 channels of single-ended (8 channels of
625 differential) analog inputs, 2 channels of analog output, 4 digital
626 inputs, and 4 digital outputs provided by the STX104.
628 The base port addresses for the devices may be configured via the base
629 array module parameter.
632 tristate "Support for the Allwinner SoCs GPADC"
634 depends on MFD_SUN4I_GPADC || MACH_SUN8I
635 depends on THERMAL || !THERMAL_OF
637 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
638 GPADC. This ADC provides 4 channels which can be used as an ADC or as
639 a touchscreen input and one channel for thermal sensor.
641 The thermal sensor slows down ADC readings and can be disabled by
642 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
643 enabled by default since the SoC temperature is usually more critical
646 To compile this driver as a module, choose M here: the module will be
647 called sun4i-gpadc-iio.
650 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
653 select IIO_TRIGGERED_BUFFER
655 If you say yes here you get support for Texas Instruments ADC081C,
656 ADC101C and ADC121C ADC chips.
658 This driver can also be built as a module. If so, the module will be
662 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
665 select IIO_TRIGGERED_BUFFER
667 If you say yes here you get support for Texas Instruments ADC0831,
668 ADC0832, ADC0834, ADC0838 ADC chips.
670 This driver can also be built as a module. If so, the module will be
674 tristate "Texas Instruments ADC084S021"
677 select IIO_TRIGGERED_BUFFER
679 If you say yes here you get support for Texas Instruments ADC084S021
682 This driver can also be built as a module. If so, the module will be
683 called ti-adc084s021.
686 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
689 select IIO_TRIGGERED_BUFFER
691 If you say yes here you get support for Texas Instruments ADC12130,
692 ADC12132 and ADC12138 chips.
694 This driver can also be built as a module. If so, the module will be
698 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
701 select IIO_TRIGGERED_BUFFER
703 Say yes here to build support for Texas Instruments ADC108S102 and
706 To compile this driver as a module, choose M here: the module will
707 be called ti-adc108s102.
710 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
713 If you say yes here you get support for Texas Instruments ADC128S052,
714 ADC122S021 and ADC124S021 chips.
716 This driver can also be built as a module. If so, the module will be
717 called ti-adc128s052.
720 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
723 select IIO_TRIGGERED_BUFFER
725 If you say yes here you get support for Texas Instruments ADC141S626,
726 and ADC161S626 chips.
728 This driver can also be built as a module. If so, the module will be
729 called ti-adc161s626.
732 tristate "Texas Instruments ADS1015 ADC"
733 depends on I2C && !SENSORS_ADS1015
736 select IIO_TRIGGERED_BUFFER
738 If you say yes here you get support for Texas Instruments ADS1015
741 This driver can also be built as a module. If so, the module will be
745 tristate "Texas Instruments ADS7950 ADC driver"
748 select IIO_TRIGGERED_BUFFER
750 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
751 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
754 To compile this driver as a module, choose M here: the
755 module will be called ti-ads7950.
758 tristate "Texas Instruments ADS8688"
761 If you say yes here you get support for Texas Instruments ADS8684 and
762 and ADS8688 ADC chips
764 This driver can also be built as a module. If so, the module will be
768 tristate "TI's AM335X ADC driver"
769 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
773 Say yes here to build support for Texas Instruments ADC
774 driver which is also a MFD client.
776 To compile this driver as a module, choose M here: the module will be
777 called ti_am335x_adc.
780 tristate "Texas Instruments TLC4541 ADC driver"
783 select IIO_TRIGGERED_BUFFER
785 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
788 This driver can also be built as a module. If so, the module will be
792 tristate "TWL4030 MADC (Monitoring A/D Converter)"
793 depends on TWL4030_CORE
795 This driver provides support for Triton TWL4030-MADC. The
796 driver supports both RT and SW conversion methods.
798 This driver can also be built as a module. If so, the module will be
802 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
803 depends on TWL4030_CORE
806 Say yes here if you want support for the TWL6030/TWL6032 General
807 Purpose A/D Converter. This will add support for battery type
808 detection, battery voltage and temperature measurement, die
809 temperature measurement, system supply voltage, audio accessory,
812 This driver can also be built as a module. If so, the module will be
813 called twl6030-gpadc.
816 tristate "Freescale vf610 ADC driver"
820 select IIO_TRIGGERED_BUFFER
822 Say yes here to support for Vybrid board analog-to-digital converter.
823 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
825 This driver can also be built as a module. If so, the module will be
828 config VIPERBOARD_ADC
829 tristate "Viperboard ADC support"
830 depends on MFD_VIPERBOARD && USB
832 Say yes here to access the ADC part of the Nano River
833 Technologies Viperboard.
835 To compile this driver as a module, choose M here: the module will be
836 called viperboard_adc.
839 tristate "Xilinx XADC driver"
840 depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
843 select IIO_TRIGGERED_BUFFER
845 Say yes here to have support for the Xilinx XADC. The driver does support
846 both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
848 The driver can also be build as a module. If so, the module will be called