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 If you say yes here you get support for AVIA HX711 ADC which is used
326 This driver uses two GPIOs, one acts as the clock and controls the
327 channel selection and gain, the other one is used for the measurement
330 Currently the raw value is read from the chip and delivered.
331 To get an actual weight one needs to subtract the
332 zero offset and multiply by a scale factor.
333 This should be done in userspace.
335 This driver can also be built as a module. If so, the module will be
339 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
340 depends on I2C && !SENSORS_INA2XX
345 Say yes here to build support for TI INA2xx family of Power Monitors.
346 This driver is mutually exclusive with the HWMON version.
349 tristate "Freescale IMX7D ADC driver"
350 depends on ARCH_MXC || COMPILE_TEST
353 Say yes here to build support for IMX7D ADC.
355 This driver can also be built as a module. If so, the module will be
359 tristate "LP8788 ADC driver"
360 depends on MFD_LP8788
362 Say yes here to build support for TI LP8788 ADC.
364 To compile this driver as a module, choose M here: the module will be
368 tristate "NXP LPC18xx ADC driver"
369 depends on ARCH_LPC18XX || COMPILE_TEST
370 depends on OF && HAS_IOMEM
372 Say yes here to build support for NXP LPC18XX ADC.
374 To compile this driver as a module, choose M here: the module will be
378 tristate "NXP LPC32XX ADC"
379 depends on ARCH_LPC32XX || COMPILE_TEST
382 Say yes here to build support for the integrated ADC inside the
383 LPC32XX SoC. Note that this feature uses the same hardware as the
384 touchscreen driver, so you should either select only one of the two
385 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
386 activate only one via device tree selection. Provides direct access
390 tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
393 Say yes here to build support for Linear Technology LTC2471 and
394 LTC2473 16-bit I2C ADC.
396 This driver can also be built as a module. If so, the module will
400 tristate "Linear Technology LTC2485 ADC driver"
403 Say yes here to build support for Linear Technology LTC2485 ADC.
405 To compile this driver as a module, choose M here: the module will be
409 tristate "Linear Technology LTC2497 ADC driver"
412 Say yes here to build support for Linear Technology LTC2497
413 16-Bit 8-/16-Channel Delta Sigma ADC.
415 To compile this driver as a module, choose M here: the module will be
419 tristate "Maxim max1027 ADC driver"
422 select IIO_TRIGGERED_BUFFER
424 Say yes here to build support for Maxim SPI ADC models
425 max1027, max1029 and max1031.
427 To compile this driver as a module, choose M here: the module will be
431 tristate "Maxim max11100 ADC driver"
432 depends on SPI_MASTER
434 Say yes here to build support for Maxim max11100 SPI ADC
436 To compile this driver as a module, choose M here: the module will be
440 tristate "Maxim max1117/max1118/max1119 ADCs driver"
443 select IIO_TRIGGERED_BUFFER
445 Say yes here to build support for Maxim max1117/max1118/max1119
446 8-bit, dual-channel ADCs.
448 To compile this driver as a module, choose M here: the module will be
452 tristate "Maxim max1363 ADC driver"
455 select IIO_TRIGGERED_BUFFER
457 Say yes here to build support for many Maxim i2c analog to digital
458 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
459 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
460 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
461 max11602, max11603, max11604, max11605, max11606, max11607,
462 max11608, max11609, max11610, max11611, max11612, max11613,
463 max11614, max11615, max11616, max11617, max11644, max11645,
464 max11646, max11647) Provides direct access via sysfs and buffered
465 data via the iio dev interface.
467 To compile this driver as a module, choose M here: the module will be
471 tristate "Maxim max9611/max9612 ADC driver"
474 Say yes here to build support for Maxim max9611/max9612 current sense
475 amplifier with 12-bits ADC interface.
477 To compile this driver as a module, choose M here: the module will be
481 tristate "Microchip Technology MCP3x01/02/04/08"
484 Say yes here to build support for Microchip Technology's
485 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
486 MCP3208 or MCP3301 analog to digital converter.
488 This driver can also be built as a module. If so, the module will be
492 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
495 Say yes here to build support for Microchip Technology's MCP3421
496 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
497 analog to digital converters.
499 This driver can also be built as a module. If so, the module will be
502 config MEDIATEK_MT6577_AUXADC
503 tristate "MediaTek AUXADC driver"
504 depends on ARCH_MEDIATEK || COMPILE_TEST
507 Say yes here to enable support for MediaTek mt65xx AUXADC.
509 The driver supports immediate mode operation to read from one of sixteen
510 channels (external or internal).
512 This driver can also be built as a module. If so, the module will be
513 called mt6577_auxadc.
516 tristate "MEN 16z188 ADC IP Core support"
519 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
522 This driver can also be built as a module. If so, the module will be
526 tristate "Amlogic Meson SAR ADC driver"
528 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
531 Say yes here to build support for the SAR ADC found in Amlogic Meson
534 To compile this driver as a module, choose M here: the
535 module will be called meson_saradc.
538 tristate "Nuvoton NAU7802 ADC driver"
541 Say yes here to build support for Nuvoton NAU7802 ADC.
543 To compile this driver as a module, choose M here: the
544 module will be called nau7802.
547 tristate "TI Palmas General Purpose ADC"
548 depends on MFD_PALMAS
550 Palmas series pmic chip by Texas Instruments (twl6035/6037)
551 is used in smartphones and tablets and supports a 16 channel
554 config QCOM_VADC_COMMON
557 config QCOM_PM8XXX_XOADC
558 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
559 depends on MFD_PM8XXX
560 select QCOM_VADC_COMMON
562 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
563 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
565 To compile this driver as a module, choose M here: the module
566 will be called qcom-pm8xxx-xoadc.
568 config QCOM_SPMI_IADC
569 tristate "Qualcomm SPMI PMIC current ADC"
573 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
575 The driver supports single mode operation to read from one of two
576 channels (external or internal). Hardware have additional
577 channels internally used for gain and offset calibration.
579 To compile this driver as a module, choose M here: the module will
580 be called qcom-spmi-iadc.
582 config QCOM_SPMI_VADC
583 tristate "Qualcomm SPMI PMIC voltage ADC"
586 select QCOM_VADC_COMMON
588 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
590 The driver supports multiple channels read. The VADC is a 15-bit
591 sigma-delta ADC. Some of the channels are internally used for
594 To compile this driver as a module, choose M here: the module will
595 be called qcom-spmi-vadc.
598 tristate "Renesas R-Car GyroADC driver"
599 depends on ARCH_RCAR_GEN2 || (ARM && COMPILE_TEST)
601 Say yes here to build support for the GyroADC found in Renesas
602 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
603 reading data out of attached compatible ADCs in a round-robin
604 fashion. Up to 4 or 8 ADC channels are supported by this block,
605 depending on which ADCs are attached.
607 To compile this driver as a module, choose M here: the
608 module will be called rcar-gyroadc.
610 config ROCKCHIP_SARADC
611 tristate "Rockchip SARADC driver"
612 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
613 depends on RESET_CONTROLLER
615 Say yes here to build support for the SARADC found in SoCs from
618 To compile this driver as a module, choose M here: the
619 module will be called rockchip_saradc.
622 tristate "ST SPEAr ADC"
623 depends on PLAT_SPEAR || COMPILE_TEST
626 Say yes here to build support for the integrated ADC inside the
627 ST SPEAr SoC. Provides direct access via sysfs.
629 To compile this driver as a module, choose M here: the
630 module will be called spear_adc.
632 config STM32_ADC_CORE
633 tristate "STMicroelectronics STM32 adc core"
634 depends on ARCH_STM32 || COMPILE_TEST
640 select MFD_STM32_TIMERS
641 select IIO_STM32_TIMER_TRIGGER
642 select IIO_TRIGGERED_BUFFER
644 Select this option to enable the core driver for STMicroelectronics
645 STM32 analog-to-digital converter (ADC).
647 This driver can also be built as a module. If so, the module
648 will be called stm32-adc-core.
651 tristate "STMicroelectronics STM32 adc"
652 depends on STM32_ADC_CORE
654 Say yes here to build support for STMicroelectronics stm32 Analog
655 to Digital Converter (ADC).
657 This driver can also be built as a module. If so, the module
658 will be called stm32-adc.
661 tristate "Apex Embedded Systems STX104 driver"
662 depends on PC104 && X86 && ISA_BUS_API
665 Say yes here to build support for the Apex Embedded Systems STX104
666 integrated analog PC/104 card.
668 This driver supports the 16 channels of single-ended (8 channels of
669 differential) analog inputs, 2 channels of analog output, 4 digital
670 inputs, and 4 digital outputs provided by the STX104.
672 The base port addresses for the devices may be configured via the base
673 array module parameter.
676 tristate "Support for the Allwinner SoCs GPADC"
678 depends on MFD_SUN4I_GPADC || MACH_SUN8I
679 depends on THERMAL || !THERMAL_OF
681 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
682 GPADC. This ADC provides 4 channels which can be used as an ADC or as
683 a touchscreen input and one channel for thermal sensor.
685 The thermal sensor slows down ADC readings and can be disabled by
686 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
687 enabled by default since the SoC temperature is usually more critical
690 To compile this driver as a module, choose M here: the module will be
691 called sun4i-gpadc-iio.
694 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
697 select IIO_TRIGGERED_BUFFER
699 If you say yes here you get support for Texas Instruments ADC081C,
700 ADC101C and ADC121C ADC chips.
702 This driver can also be built as a module. If so, the module will be
706 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
709 select IIO_TRIGGERED_BUFFER
711 If you say yes here you get support for Texas Instruments ADC0831,
712 ADC0832, ADC0834, ADC0838 ADC chips.
714 This driver can also be built as a module. If so, the module will be
718 tristate "Texas Instruments ADC084S021"
721 select IIO_TRIGGERED_BUFFER
723 If you say yes here you get support for Texas Instruments ADC084S021
726 This driver can also be built as a module. If so, the module will be
727 called ti-adc084s021.
730 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
733 select IIO_TRIGGERED_BUFFER
735 If you say yes here you get support for Texas Instruments ADC12130,
736 ADC12132 and ADC12138 chips.
738 This driver can also be built as a module. If so, the module will be
742 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
745 select IIO_TRIGGERED_BUFFER
747 Say yes here to build support for Texas Instruments ADC108S102 and
750 To compile this driver as a module, choose M here: the module will
751 be called ti-adc108s102.
754 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
757 If you say yes here you get support for Texas Instruments ADC128S052,
758 ADC122S021 and ADC124S021 chips.
760 This driver can also be built as a module. If so, the module will be
761 called ti-adc128s052.
764 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
767 select IIO_TRIGGERED_BUFFER
769 If you say yes here you get support for Texas Instruments ADC141S626,
770 and ADC161S626 chips.
772 This driver can also be built as a module. If so, the module will be
773 called ti-adc161s626.
776 tristate "Texas Instruments ADS1015 ADC"
777 depends on I2C && !SENSORS_ADS1015
780 select IIO_TRIGGERED_BUFFER
782 If you say yes here you get support for Texas Instruments ADS1015
785 This driver can also be built as a module. If so, the module will be
789 tristate "Texas Instruments ADS7950 ADC driver"
792 select IIO_TRIGGERED_BUFFER
794 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
795 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
798 To compile this driver as a module, choose M here: the
799 module will be called ti-ads7950.
802 tristate "Texas Instruments ADS8688"
805 If you say yes here you get support for Texas Instruments ADS8684 and
806 and ADS8688 ADC chips
808 This driver can also be built as a module. If so, the module will be
812 tristate "TI's AM335X ADC driver"
813 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
817 Say yes here to build support for Texas Instruments ADC
818 driver which is also a MFD client.
820 To compile this driver as a module, choose M here: the module will be
821 called ti_am335x_adc.
824 tristate "Texas Instruments TLC4541 ADC driver"
827 select IIO_TRIGGERED_BUFFER
829 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
832 This driver can also be built as a module. If so, the module will be
836 tristate "TWL4030 MADC (Monitoring A/D Converter)"
837 depends on TWL4030_CORE
839 This driver provides support for Triton TWL4030-MADC. The
840 driver supports both RT and SW conversion methods.
842 This driver can also be built as a module. If so, the module will be
846 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
847 depends on TWL4030_CORE
850 Say yes here if you want support for the TWL6030/TWL6032 General
851 Purpose A/D Converter. This will add support for battery type
852 detection, battery voltage and temperature measurement, die
853 temperature measurement, system supply voltage, audio accessory,
856 This driver can also be built as a module. If so, the module will be
857 called twl6030-gpadc.
860 tristate "Freescale vf610 ADC driver"
864 select IIO_TRIGGERED_BUFFER
866 Say yes here to support for Vybrid board analog-to-digital converter.
867 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
869 This driver can also be built as a module. If so, the module will be
872 config VIPERBOARD_ADC
873 tristate "Viperboard ADC support"
874 depends on MFD_VIPERBOARD && USB
876 Say yes here to access the ADC part of the Nano River
877 Technologies Viperboard.
879 To compile this driver as a module, choose M here: the module will be
880 called viperboard_adc.
883 tristate "Xilinx XADC driver"
884 depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
887 select IIO_TRIGGERED_BUFFER
889 Say yes here to have support for the Xilinx XADC. The driver does support
890 both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
892 The driver can also be build as a module. If so, the module will be called