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 AXP20X and AXP22X ADC driver"
170 depends on MFD_AXP20X
172 Say yes here to have support for X-Powers power management IC (PMIC)
173 AXP20X and AXP22X ADC devices.
175 To compile this driver as a module, choose M here: the module will be
179 tristate "X-Powers AXP288 ADC driver"
180 depends on MFD_AXP20X
182 Say yes here to have support for X-Powers power management IC (PMIC) ADC
183 device. Depending on platform configuration, this general purpose ADC can
184 be used for sampling sensors such as thermal resistors.
186 To compile this driver as a module, choose M here: the module will be
190 tristate "Broadcom IPROC ADC driver"
191 depends on ARCH_BCM_IPROC || COMPILE_TEST
192 depends on MFD_SYSCON
193 default ARCH_BCM_CYGNUS
195 Say Y here if you want to add support for the Broadcom static
198 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
199 channels. The driver allows the user to read voltage values.
202 tristate "Marvell Berlin2 ADC driver"
203 depends on ARCH_BERLIN
205 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
206 temperature measurement.
209 tristate "Cosmic Circuits 10001 ADC driver"
210 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
212 select IIO_TRIGGERED_BUFFER
214 Say yes here to build support for Cosmic Circuits 10001 ADC.
216 This driver can also be built as a module. If so, the module will be
220 tristate "Motorola CPCAP PMIC ADC driver"
223 select IIO_TRIGGERED_BUFFER
225 Say yes here to build support for Motorola CPCAP PMIC ADC.
227 This driver can also be built as a module. If so, the module will be
231 tristate "Dialog DA9150 GPADC driver support"
232 depends on MFD_DA9150
234 Say yes here to build support for Dialog DA9150 GPADC.
236 This driver can also be built as a module. If chosen, the module name
237 will be da9150-gpadc.
239 To compile this driver as a module, choose M here: the module will be
242 config ENVELOPE_DETECTOR
243 tristate "Envelope detector using a DAC and a comparator"
246 Say yes here to build support for an envelope detector using a DAC
249 To compile this driver as a module, choose M here: the module will be
250 called envelope-detector.
253 tristate "Exynos ADC driver support"
254 depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
257 Core support for the ADC block found in the Samsung EXYNOS series
258 of SoCs for drivers such as the touchscreen and hwmon to use to share
261 To compile this driver as a module, choose M here: the module will be
265 tristate "Freescale i.MX23/i.MX28 LRADC ADC"
266 depends on MFD_MXS_LRADC
268 select IIO_TRIGGERED_BUFFER
270 Say yes here to build support for the ADC functions of the
271 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
272 battery voltage measurement, and die temperature measurement.
274 This driver can also be built as a module. If so, the module will be
275 called mxs-lradc-adc.
278 tristate "Freescale MX25 ADC driver"
279 depends on MFD_MX25_TSADC
281 Generic Conversion Queue driver used for general purpose ADC in the
282 MX25. This driver supports single measurements using the MX25 ADC.
285 tristate "Holt Integrated Circuits HI-8435 threshold detector"
286 select IIO_TRIGGERED_EVENT
289 If you say yes here you get support for Holt Integrated Circuits
292 This driver can also be built as a module. If so, the module will be
296 tristate "AVIA HX711 ADC for weight cells"
299 If you say yes here you get support for AVIA HX711 ADC which is used
302 This driver uses two GPIOs, one acts as the clock and controls the
303 channel selection and gain, the other one is used for the measurement
306 Currently the raw value is read from the chip and delivered.
307 To get an actual weight one needs to subtract the
308 zero offset and multiply by a scale factor.
309 This should be done in userspace.
311 This driver can also be built as a module. If so, the module will be
315 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
316 depends on I2C && !SENSORS_INA2XX
321 Say yes here to build support for TI INA2xx family of Power Monitors.
322 This driver is mutually exclusive with the HWMON version.
325 tristate "IMX7D ADC driver"
326 depends on ARCH_MXC || COMPILE_TEST
329 Say yes here to build support for IMX7D ADC.
331 This driver can also be built as a module. If so, the module will be
335 tristate "LP8788 ADC driver"
336 depends on MFD_LP8788
338 Say yes here to build support for TI LP8788 ADC.
340 To compile this driver as a module, choose M here: the module will be
344 tristate "NXP LPC18xx ADC driver"
345 depends on ARCH_LPC18XX || COMPILE_TEST
346 depends on OF && HAS_IOMEM
348 Say yes here to build support for NXP LPC18XX ADC.
350 To compile this driver as a module, choose M here: the module will be
354 tristate "NXP LPC32XX ADC"
355 depends on ARCH_LPC32XX || COMPILE_TEST
358 Say yes here to build support for the integrated ADC inside the
359 LPC32XX SoC. Note that this feature uses the same hardware as the
360 touchscreen driver, so you should either select only one of the two
361 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
362 activate only one via device tree selection. Provides direct access
366 tristate "Linear Technology LTC2485 ADC driver"
369 Say yes here to build support for Linear Technology LTC2485 ADC.
371 To compile this driver as a module, choose M here: the module will be
375 tristate "Linear Technology LTC2497 ADC driver"
378 Say yes here to build support for Linear Technology LTC2497
379 16-Bit 8-/16-Channel Delta Sigma ADC.
381 To compile this driver as a module, choose M here: the module will be
385 tristate "Maxim max1027 ADC driver"
388 select IIO_TRIGGERED_BUFFER
390 Say yes here to build support for Maxim SPI ADC models
391 max1027, max1029 and max1031.
393 To compile this driver as a module, choose M here: the module will be
397 tristate "Maxim max11100 ADC driver"
398 depends on SPI_MASTER
400 Say yes here to build support for Maxim max11100 SPI ADC
402 To compile this driver as a module, choose M here: the module will be
406 tristate "Maxim max1117/max1118/max1119 ADCs driver"
409 select IIO_TRIGGERED_BUFFER
411 Say yes here to build support for Maxim max1117/max1118/max1119
412 8-bit, dual-channel ADCs.
414 To compile this driver as a module, choose M here: the module will be
418 tristate "Maxim max1363 ADC driver"
421 select IIO_TRIGGERED_BUFFER
423 Say yes here to build support for many Maxim i2c analog to digital
424 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
425 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
426 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
427 max11602, max11603, max11604, max11605, max11606, max11607,
428 max11608, max11609, max11610, max11611, max11612, max11613,
429 max11614, max11615, max11616, max11617, max11644, max11645,
430 max11646, max11647) Provides direct access via sysfs and buffered
431 data via the iio dev interface.
433 To compile this driver as a module, choose M here: the module will be
437 tristate "Maxim max9611/max9612 ADC driver"
440 Say yes here to build support for Maxim max9611/max9612 current sense
441 amplifier with 12-bits ADC interface.
443 To compile this driver as a module, choose M here: the module will be
447 tristate "Microchip Technology MCP3x01/02/04/08"
450 Say yes here to build support for Microchip Technology's
451 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
452 MCP3208 or MCP3301 analog to digital converter.
454 This driver can also be built as a module. If so, the module will be
458 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
461 Say yes here to build support for Microchip Technology's MCP3421
462 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
463 analog to digital converters.
465 This driver can also be built as a module. If so, the module will be
468 config MEDIATEK_MT6577_AUXADC
469 tristate "MediaTek AUXADC driver"
470 depends on ARCH_MEDIATEK || COMPILE_TEST
473 Say yes here to enable support for MediaTek mt65xx AUXADC.
475 The driver supports immediate mode operation to read from one of sixteen
476 channels (external or internal).
478 This driver can also be built as a module. If so, the module will be
479 called mt6577_auxadc.
482 tristate "MEN 16z188 ADC IP Core support"
485 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
488 This driver can also be built as a module. If so, the module will be
492 tristate "Amlogic Meson SAR ADC driver"
494 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
497 Say yes here to build support for the SAR ADC found in Amlogic Meson
500 To compile this driver as a module, choose M here: the
501 module will be called meson_saradc.
504 tristate "Nuvoton NAU7802 ADC driver"
507 Say yes here to build support for Nuvoton NAU7802 ADC.
509 To compile this driver as a module, choose M here: the
510 module will be called nau7802.
513 tristate "TI Palmas General Purpose ADC"
514 depends on MFD_PALMAS
516 Palmas series pmic chip by Texas Instruments (twl6035/6037)
517 is used in smartphones and tablets and supports a 16 channel
520 config QCOM_VADC_COMMON
523 config QCOM_PM8XXX_XOADC
524 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
525 depends on MFD_PM8XXX
526 select QCOM_VADC_COMMON
528 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
529 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
531 To compile this driver as a module, choose M here: the module
532 will be called qcom-pm8xxx-xoadc.
534 config QCOM_SPMI_IADC
535 tristate "Qualcomm SPMI PMIC current ADC"
539 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
541 The driver supports single mode operation to read from one of two
542 channels (external or internal). Hardware have additional
543 channels internally used for gain and offset calibration.
545 To compile this driver as a module, choose M here: the module will
546 be called qcom-spmi-iadc.
548 config QCOM_SPMI_VADC
549 tristate "Qualcomm SPMI PMIC voltage ADC"
552 select QCOM_VADC_COMMON
554 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
556 The driver supports multiple channels read. The VADC is a 15-bit
557 sigma-delta ADC. Some of the channels are internally used for
560 To compile this driver as a module, choose M here: the module will
561 be called qcom-spmi-vadc.
564 tristate "Renesas R-Car GyroADC driver"
565 depends on ARCH_RCAR_GEN2 || (ARM && COMPILE_TEST)
567 Say yes here to build support for the GyroADC found in Renesas
568 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
569 reading data out of attached compatible ADCs in a round-robin
570 fashion. Up to 4 or 8 ADC channels are supported by this block,
571 depending on which ADCs are attached.
573 To compile this driver as a module, choose M here: the
574 module will be called rcar-gyroadc.
576 config ROCKCHIP_SARADC
577 tristate "Rockchip SARADC driver"
578 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
579 depends on RESET_CONTROLLER
581 Say yes here to build support for the SARADC found in SoCs from
584 To compile this driver as a module, choose M here: the
585 module will be called rockchip_saradc.
588 tristate "ST SPEAr ADC"
589 depends on PLAT_SPEAR || COMPILE_TEST
592 Say yes here to build support for the integrated ADC inside the
593 ST SPEAr SoC. Provides direct access via sysfs.
595 To compile this driver as a module, choose M here: the
596 module will be called spear_adc.
598 config STM32_ADC_CORE
599 tristate "STMicroelectronics STM32 adc core"
600 depends on ARCH_STM32 || COMPILE_TEST
605 select MFD_STM32_TIMERS
606 select IIO_STM32_TIMER_TRIGGER
607 select IIO_TRIGGERED_BUFFER
609 Select this option to enable the core driver for STMicroelectronics
610 STM32 analog-to-digital converter (ADC).
612 This driver can also be built as a module. If so, the module
613 will be called stm32-adc-core.
616 tristate "STMicroelectronics STM32 adc"
617 depends on STM32_ADC_CORE
619 Say yes here to build support for STMicroelectronics stm32 Analog
620 to Digital Converter (ADC).
622 This driver can also be built as a module. If so, the module
623 will be called stm32-adc.
626 tristate "Apex Embedded Systems STX104 driver"
627 depends on PC104 && X86 && ISA_BUS_API
630 Say yes here to build support for the Apex Embedded Systems STX104
631 integrated analog PC/104 card.
633 This driver supports the 16 channels of single-ended (8 channels of
634 differential) analog inputs, 2 channels of analog output, 4 digital
635 inputs, and 4 digital outputs provided by the STX104.
637 The base port addresses for the devices may be configured via the base
638 array module parameter.
641 tristate "Support for the Allwinner SoCs GPADC"
643 depends on MFD_SUN4I_GPADC || MACH_SUN8I
644 depends on THERMAL || !THERMAL_OF
646 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
647 GPADC. This ADC provides 4 channels which can be used as an ADC or as
648 a touchscreen input and one channel for thermal sensor.
650 The thermal sensor slows down ADC readings and can be disabled by
651 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
652 enabled by default since the SoC temperature is usually more critical
655 To compile this driver as a module, choose M here: the module will be
656 called sun4i-gpadc-iio.
659 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
662 select IIO_TRIGGERED_BUFFER
664 If you say yes here you get support for Texas Instruments ADC081C,
665 ADC101C and ADC121C ADC chips.
667 This driver can also be built as a module. If so, the module will be
671 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
674 select IIO_TRIGGERED_BUFFER
676 If you say yes here you get support for Texas Instruments ADC0831,
677 ADC0832, ADC0834, ADC0838 ADC chips.
679 This driver can also be built as a module. If so, the module will be
683 tristate "Texas Instruments ADC084S021"
686 select IIO_TRIGGERED_BUFFER
688 If you say yes here you get support for Texas Instruments ADC084S021
691 This driver can also be built as a module. If so, the module will be
692 called ti-adc084s021.
695 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
698 select IIO_TRIGGERED_BUFFER
700 If you say yes here you get support for Texas Instruments ADC12130,
701 ADC12132 and ADC12138 chips.
703 This driver can also be built as a module. If so, the module will be
707 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
710 select IIO_TRIGGERED_BUFFER
712 Say yes here to build support for Texas Instruments ADC108S102 and
715 To compile this driver as a module, choose M here: the module will
716 be called ti-adc108s102.
719 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
722 If you say yes here you get support for Texas Instruments ADC128S052,
723 ADC122S021 and ADC124S021 chips.
725 This driver can also be built as a module. If so, the module will be
726 called ti-adc128s052.
729 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
732 select IIO_TRIGGERED_BUFFER
734 If you say yes here you get support for Texas Instruments ADC141S626,
735 and ADC161S626 chips.
737 This driver can also be built as a module. If so, the module will be
738 called ti-adc161s626.
741 tristate "Texas Instruments ADS1015 ADC"
742 depends on I2C && !SENSORS_ADS1015
745 select IIO_TRIGGERED_BUFFER
747 If you say yes here you get support for Texas Instruments ADS1015
750 This driver can also be built as a module. If so, the module will be
754 tristate "Texas Instruments ADS7950 ADC driver"
757 select IIO_TRIGGERED_BUFFER
759 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
760 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
763 To compile this driver as a module, choose M here: the
764 module will be called ti-ads7950.
767 tristate "Texas Instruments ADS8688"
770 If you say yes here you get support for Texas Instruments ADS8684 and
771 and ADS8688 ADC chips
773 This driver can also be built as a module. If so, the module will be
777 tristate "TI's AM335X ADC driver"
778 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
782 Say yes here to build support for Texas Instruments ADC
783 driver which is also a MFD client.
785 To compile this driver as a module, choose M here: the module will be
786 called ti_am335x_adc.
789 tristate "Texas Instruments TLC4541 ADC driver"
792 select IIO_TRIGGERED_BUFFER
794 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
797 This driver can also be built as a module. If so, the module will be
801 tristate "TWL4030 MADC (Monitoring A/D Converter)"
802 depends on TWL4030_CORE
804 This driver provides support for Triton TWL4030-MADC. The
805 driver supports both RT and SW conversion methods.
807 This driver can also be built as a module. If so, the module will be
811 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
812 depends on TWL4030_CORE
815 Say yes here if you want support for the TWL6030/TWL6032 General
816 Purpose A/D Converter. This will add support for battery type
817 detection, battery voltage and temperature measurement, die
818 temperature measurement, system supply voltage, audio accessory,
821 This driver can also be built as a module. If so, the module will be
822 called twl6030-gpadc.
825 tristate "Freescale vf610 ADC driver"
829 select IIO_TRIGGERED_BUFFER
831 Say yes here to support for Vybrid board analog-to-digital converter.
832 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
834 This driver can also be built as a module. If so, the module will be
837 config VIPERBOARD_ADC
838 tristate "Viperboard ADC support"
839 depends on MFD_VIPERBOARD && USB
841 Say yes here to access the ADC part of the Nano River
842 Technologies Viperboard.
844 To compile this driver as a module, choose M here: the module will be
845 called viperboard_adc.
848 tristate "Xilinx XADC driver"
849 depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
852 select IIO_TRIGGERED_BUFFER
854 Say yes here to have support for the Xilinx XADC. The driver does support
855 both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
857 The driver can also be build as a module. If so, the module will be called