# # ADC drivers # # When adding new entries keep the list in alphabetical order menu "Analog to digital converters" config AD_SIGMA_DELTA tristate select IIO_BUFFER select IIO_TRIGGERED_BUFFER config AD7266 tristate "Analog Devices AD7265/AD7266 ADC driver" depends on SPI_MASTER select IIO_BUFFER select IIO_TRIGGER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices AD7265 and AD7266 ADCs. To compile this driver as a module, choose M here: the module will be called ad7266. config AD7291 tristate "Analog Devices AD7291 ADC driver" depends on I2C help Say yes here to build support for Analog Devices AD7291 8 Channel ADC with temperature sensor. To compile this driver as a module, choose M here: the module will be called ad7291. config AD7298 tristate "Analog Devices AD7298 ADC driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices AD7298 8 Channel ADC with temperature sensor. To compile this driver as a module, choose M here: the module will be called ad7298. config AD7476 tristate "Analog Devices AD7476 and similar 1-channel ADCs driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices AD7273, AD7274, AD7276, AD7277, AD7278, AD7475, AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495, AD7910, AD7920, AD7920 SPI analog to digital converters (ADC). To compile this driver as a module, choose M here: the module will be called ad7476. config AD7766 tristate "Analog Devices AD7766/AD7767 ADC driver" depends on SPI_MASTER select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices AD7766, AD7766-1, AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters. To compile this driver as a module, choose M here: the module will be called ad7766. config AD7791 tristate "Analog Devices AD7791 ADC driver" depends on SPI select AD_SIGMA_DELTA help Say yes here to build support for Analog Devices AD7787, AD7788, AD7789, AD7790 and AD7791 SPI analog to digital converters (ADC). To compile this driver as a module, choose M here: the module will be called ad7791. config AD7793 tristate "Analog Devices AD7793 and similar ADCs driver" depends on SPI select AD_SIGMA_DELTA help Say yes here to build support for Analog Devices AD7785, AD7792, AD7793, AD7794 and AD7795 SPI analog to digital converters (ADC). To compile this driver as a module, choose M here: the module will be called AD7793. config AD7887 tristate "Analog Devices AD7887 ADC driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices AD7887 SPI analog to digital converter (ADC). To compile this driver as a module, choose M here: the module will be called ad7887. config AD7923 tristate "Analog Devices AD7923 and similar ADCs driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices AD7904, AD7914, AD7923, AD7924 4 Channel ADCs. To compile this driver as a module, choose M here: the module will be called ad7923. config AD799X tristate "Analog Devices AD799x ADC driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Analog Devices: ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998 i2c analog to digital converters (ADC). Provides direct access via sysfs. To compile this driver as a module, choose M here: the module will be called ad799x. config ASPEED_ADC tristate "Aspeed ADC" depends on ARCH_ASPEED || COMPILE_TEST depends on COMMON_CLK help If you say yes here you get support for the ADC included in Aspeed BMC SoCs. To compile this driver as a module, choose M here: the module will be called aspeed_adc. config AT91_ADC tristate "Atmel AT91 ADC" depends on ARCH_AT91 depends on INPUT select IIO_BUFFER select IIO_TRIGGERED_BUFFER select SYSFS help Say yes here to build support for Atmel AT91 ADC. To compile this driver as a module, choose M here: the module will be called at91_adc. config AT91_SAMA5D2_ADC tristate "Atmel AT91 SAMA5D2 ADC" depends on ARCH_AT91 || COMPILE_TEST depends on HAS_IOMEM help Say yes here to build support for Atmel SAMA5D2 ADC which is available on SAMA5D2 SoC family. To compile this driver as a module, choose M here: the module will be called at91-sama5d2_adc. config AXP288_ADC tristate "X-Powers AXP288 ADC driver" depends on MFD_AXP20X help Say yes here to have support for X-Powers power management IC (PMIC) ADC device. Depending on platform configuration, this general purpose ADC can be used for sampling sensors such as thermal resistors. To compile this driver as a module, choose M here: the module will be called axp288_adc. config BCM_IPROC_ADC tristate "Broadcom IPROC ADC driver" depends on ARCH_BCM_IPROC || COMPILE_TEST depends on MFD_SYSCON default ARCH_BCM_CYGNUS help Say Y here if you want to add support for the Broadcom static ADC driver. Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8 channels. The driver allows the user to read voltage values. config BERLIN2_ADC tristate "Marvell Berlin2 ADC driver" depends on ARCH_BERLIN help Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for temperature measurement. config CC10001_ADC tristate "Cosmic Circuits 10001 ADC driver" depends on HAS_IOMEM && HAVE_CLK && REGULATOR select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Cosmic Circuits 10001 ADC. This driver can also be built as a module. If so, the module will be called cc10001_adc. config CPCAP_ADC tristate "Motorola CPCAP PMIC ADC driver" depends on MFD_CPCAP select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Motorola CPCAP PMIC ADC. This driver can also be built as a module. If so, the module will be called cpcap-adc. config DA9150_GPADC tristate "Dialog DA9150 GPADC driver support" depends on MFD_DA9150 help Say yes here to build support for Dialog DA9150 GPADC. This driver can also be built as a module. If chosen, the module name will be da9150-gpadc. To compile this driver as a module, choose M here: the module will be called berlin2-adc. config ENVELOPE_DETECTOR tristate "Envelope detector using a DAC and a comparator" depends on OF help Say yes here to build support for an envelope detector using a DAC and a comparator. To compile this driver as a module, choose M here: the module will be called envelope-detector. config EXYNOS_ADC tristate "Exynos ADC driver support" depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST) depends on HAS_IOMEM help Core support for the ADC block found in the Samsung EXYNOS series of SoCs for drivers such as the touchscreen and hwmon to use to share this resource. To compile this driver as a module, choose M here: the module will be called exynos_adc. config FSL_MX25_ADC tristate "Freescale MX25 ADC driver" depends on MFD_MX25_TSADC help Generic Conversion Queue driver used for general purpose ADC in the MX25. This driver supports single measurements using the MX25 ADC. config HI8435 tristate "Holt Integrated Circuits HI-8435 threshold detector" select IIO_TRIGGERED_EVENT depends on SPI help If you say yes here you get support for Holt Integrated Circuits HI-8435 chip. This driver can also be built as a module. If so, the module will be called hi8435. config HX711 tristate "AVIA HX711 ADC for weight cells" depends on GPIOLIB help If you say yes here you get support for AVIA HX711 ADC which is used for weigh cells This driver uses two GPIOs, one acts as the clock and controls the channel selection and gain, the other one is used for the measurement data Currently the raw value is read from the chip and delivered. To get an actual weight one needs to subtract the zero offset and multiply by a scale factor. This should be done in userspace. This driver can also be built as a module. If so, the module will be called hx711. config INA2XX_ADC tristate "Texas Instruments INA2xx Power Monitors IIO driver" depends on I2C && !SENSORS_INA2XX select REGMAP_I2C select IIO_BUFFER select IIO_KFIFO_BUF help Say yes here to build support for TI INA2xx family of Power Monitors. This driver is mutually exclusive with the HWMON version. config IMX7D_ADC tristate "IMX7D ADC driver" depends on ARCH_MXC || COMPILE_TEST depends on HAS_IOMEM help Say yes here to build support for IMX7D ADC. This driver can also be built as a module. If so, the module will be called imx7d_adc. config LP8788_ADC tristate "LP8788 ADC driver" depends on MFD_LP8788 help Say yes here to build support for TI LP8788 ADC. To compile this driver as a module, choose M here: the module will be called lp8788_adc. config LPC18XX_ADC tristate "NXP LPC18xx ADC driver" depends on ARCH_LPC18XX || COMPILE_TEST depends on OF && HAS_IOMEM help Say yes here to build support for NXP LPC18XX ADC. To compile this driver as a module, choose M here: the module will be called lpc18xx_adc. config LPC32XX_ADC tristate "NXP LPC32XX ADC" depends on ARCH_LPC32XX || COMPILE_TEST depends on HAS_IOMEM help Say yes here to build support for the integrated ADC inside the LPC32XX SoC. Note that this feature uses the same hardware as the touchscreen driver, so you should either select only one of the two drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case, activate only one via device tree selection. Provides direct access via sysfs. config LTC2485 tristate "Linear Technology LTC2485 ADC driver" depends on I2C help Say yes here to build support for Linear Technology LTC2485 ADC. To compile this driver as a module, choose M here: the module will be called ltc2485. config MAX1027 tristate "Maxim max1027 ADC driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Maxim SPI ADC models max1027, max1029 and max1031. To compile this driver as a module, choose M here: the module will be called max1027. config MAX11100 tristate "Maxim max11100 ADC driver" depends on SPI_MASTER help Say yes here to build support for Maxim max11100 SPI ADC To compile this driver as a module, choose M here: the module will be called max11100. config MAX1363 tristate "Maxim max1363 ADC driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for many Maxim i2c analog to digital converters (ADC). (max1361, max1362, max1363, max1364, max1036, max1037, max1038, max1039, max1136, max1136, max1137, max1138, max1139, max1236, max1237, max11238, max1239, max11600, max11601, max11602, max11603, max11604, max11605, max11606, max11607, max11608, max11609, max11610, max11611, max11612, max11613, max11614, max11615, max11616, max11617, max11644, max11645, max11646, max11647) Provides direct access via sysfs and buffered data via the iio dev interface. To compile this driver as a module, choose M here: the module will be called max1363. config MCP320X tristate "Microchip Technology MCP3x01/02/04/08" depends on SPI help Say yes here to build support for Microchip Technology's MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204, MCP3208 or MCP3301 analog to digital converter. This driver can also be built as a module. If so, the module will be called mcp320x. config MCP3422 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver" depends on I2C help Say yes here to build support for Microchip Technology's MCP3421 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428 analog to digital converters. This driver can also be built as a module. If so, the module will be called mcp3422. config MEDIATEK_MT6577_AUXADC tristate "MediaTek AUXADC driver" depends on ARCH_MEDIATEK || COMPILE_TEST depends on HAS_IOMEM help Say yes here to enable support for MediaTek mt65xx AUXADC. The driver supports immediate mode operation to read from one of sixteen channels (external or internal). This driver can also be built as a module. If so, the module will be called mt6577_auxadc. config MEN_Z188_ADC tristate "MEN 16z188 ADC IP Core support" depends on MCB help Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB carrier. This driver can also be built as a module. If so, the module will be called men_z188_adc. config MESON_SARADC tristate "Amlogic Meson SAR ADC driver" default ARCH_MESON depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST) select REGMAP_MMIO help Say yes here to build support for the SAR ADC found in Amlogic Meson SoCs. To compile this driver as a module, choose M here: the module will be called meson_saradc. config MXS_LRADC tristate "Freescale i.MX23/i.MX28 LRADC" depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM depends on INPUT select STMP_DEVICE select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for i.MX23/i.MX28 LRADC convertor built into these chips. To compile this driver as a module, choose M here: the module will be called mxs-lradc. config NAU7802 tristate "Nuvoton NAU7802 ADC driver" depends on I2C help Say yes here to build support for Nuvoton NAU7802 ADC. To compile this driver as a module, choose M here: the module will be called nau7802. config PALMAS_GPADC tristate "TI Palmas General Purpose ADC" depends on MFD_PALMAS help Palmas series pmic chip by Texas Instruments (twl6035/6037) is used in smartphones and tablets and supports a 16 channel general purpose ADC. config QCOM_SPMI_IADC tristate "Qualcomm SPMI PMIC current ADC" depends on SPMI select REGMAP_SPMI help This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip. The driver supports single mode operation to read from one of two channels (external or internal). Hardware have additional channels internally used for gain and offset calibration. To compile this driver as a module, choose M here: the module will be called qcom-spmi-iadc. config QCOM_SPMI_VADC tristate "Qualcomm SPMI PMIC voltage ADC" depends on SPMI select REGMAP_SPMI help This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip. The driver supports multiple channels read. The VADC is a 15-bit sigma-delta ADC. Some of the channels are internally used for calibration. To compile this driver as a module, choose M here: the module will be called qcom-spmi-vadc. config RCAR_GYRO_ADC tristate "Renesas R-Car GyroADC driver" depends on ARCH_RCAR_GEN2 || (ARM && COMPILE_TEST) help Say yes here to build support for the GyroADC found in Renesas R-Car Gen2 SoCs. This block is a simple SPI offload engine for reading data out of attached compatible ADCs in a round-robin fashion. Up to 4 or 8 ADC channels are supported by this block, depending on which ADCs are attached. To compile this driver as a module, choose M here: the module will be called rcar-gyroadc. config ROCKCHIP_SARADC tristate "Rockchip SARADC driver" depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST) depends on RESET_CONTROLLER help Say yes here to build support for the SARADC found in SoCs from Rockchip. To compile this driver as a module, choose M here: the module will be called rockchip_saradc. config SPEAR_ADC tristate "ST SPEAr ADC" depends on PLAT_SPEAR || COMPILE_TEST depends on HAS_IOMEM help Say yes here to build support for the integrated ADC inside the ST SPEAr SoC. Provides direct access via sysfs. To compile this driver as a module, choose M here: the module will be called spear_adc. config STM32_ADC_CORE tristate "STMicroelectronics STM32 adc core" depends on ARCH_STM32 || COMPILE_TEST depends on HAS_DMA depends on OF depends on REGULATOR select IIO_BUFFER select MFD_STM32_TIMERS select IIO_STM32_TIMER_TRIGGER select IIO_TRIGGERED_BUFFER help Select this option to enable the core driver for STMicroelectronics STM32 analog-to-digital converter (ADC). This driver can also be built as a module. If so, the module will be called stm32-adc-core. config STM32_ADC tristate "STMicroelectronics STM32 adc" depends on STM32_ADC_CORE help Say yes here to build support for STMicroelectronics stm32 Analog to Digital Converter (ADC). This driver can also be built as a module. If so, the module will be called stm32-adc. config STX104 tristate "Apex Embedded Systems STX104 driver" depends on PC104 && X86 && ISA_BUS_API select GPIOLIB help Say yes here to build support for the Apex Embedded Systems STX104 integrated analog PC/104 card. This driver supports the 16 channels of single-ended (8 channels of differential) analog inputs, 2 channels of analog output, 4 digital inputs, and 4 digital outputs provided by the STX104. The base port addresses for the devices may be configured via the base array module parameter. config SUN4I_GPADC tristate "Support for the Allwinner SoCs GPADC" depends on IIO depends on MFD_SUN4I_GPADC help Say yes here to build support for Allwinner (A10, A13 and A31) SoCs GPADC. This ADC provides 4 channels which can be used as an ADC or as a touchscreen input and one channel for thermal sensor. The thermal sensor slows down ADC readings and can be disabled by disabling CONFIG_THERMAL_OF. However, the thermal sensor should be enabled by default since the SoC temperature is usually more critical than ADC readings. To compile this driver as a module, choose M here: the module will be called sun4i-gpadc-iio. config TI_ADC081C tristate "Texas Instruments ADC081C/ADC101C/ADC121C family" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help If you say yes here you get support for Texas Instruments ADC081C, ADC101C and ADC121C ADC chips. This driver can also be built as a module. If so, the module will be called ti-adc081c. config TI_ADC0832 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help If you say yes here you get support for Texas Instruments ADC0831, ADC0832, ADC0834, ADC0838 ADC chips. This driver can also be built as a module. If so, the module will be called ti-adc0832. config TI_ADC12138 tristate "Texas Instruments ADC12130/ADC12132/ADC12138" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help If you say yes here you get support for Texas Instruments ADC12130, ADC12132 and ADC12138 chips. This driver can also be built as a module. If so, the module will be called ti-adc12138. config TI_ADC128S052 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021" depends on SPI help If you say yes here you get support for Texas Instruments ADC128S052, ADC122S021 and ADC124S021 chips. This driver can also be built as a module. If so, the module will be called ti-adc128s052. config TI_ADC161S626 tristate "Texas Instruments ADC161S626 1-channel differential ADC" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help If you say yes here you get support for Texas Instruments ADC141S626, and ADC161S626 chips. This driver can also be built as a module. If so, the module will be called ti-adc161s626. config TI_ADS1015 tristate "Texas Instruments ADS1015 ADC" depends on I2C && !SENSORS_ADS1015 select REGMAP_I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help If you say yes here you get support for Texas Instruments ADS1015 ADC chip. This driver can also be built as a module. If so, the module will be called ti-ads1015. config TI_ADS7950 tristate "Texas Instruments ADS7950 ADC driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Texas Instruments ADS7950, ADS7951, ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959. ADS7960, ADS7961. To compile this driver as a module, choose M here: the module will be called ti-ads7950. config TI_ADS8688 tristate "Texas Instruments ADS8688" depends on SPI && OF help If you say yes here you get support for Texas Instruments ADS8684 and and ADS8688 ADC chips This driver can also be built as a module. If so, the module will be called ti-ads8688. config TI_AM335X_ADC tristate "TI's AM335X ADC driver" depends on MFD_TI_AM335X_TSCADC && HAS_DMA select IIO_BUFFER select IIO_KFIFO_BUF help Say yes here to build support for Texas Instruments ADC driver which is also a MFD client. To compile this driver as a module, choose M here: the module will be called ti_am335x_adc. config TI_TLC4541 tristate "Texas Instruments TLC4541 ADC driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Texas Instruments TLC4541 / TLC3541 ADC chips. This driver can also be built as a module. If so, the module will be called ti-tlc4541. config TWL4030_MADC tristate "TWL4030 MADC (Monitoring A/D Converter)" depends on TWL4030_CORE help This driver provides support for Triton TWL4030-MADC. The driver supports both RT and SW conversion methods. This driver can also be built as a module. If so, the module will be called twl4030-madc. config TWL6030_GPADC tristate "TWL6030 GPADC (General Purpose A/D Converter) Support" depends on TWL4030_CORE default n help Say yes here if you want support for the TWL6030/TWL6032 General Purpose A/D Converter. This will add support for battery type detection, battery voltage and temperature measurement, die temperature measurement, system supply voltage, audio accessory, USB ID detection. This driver can also be built as a module. If so, the module will be called twl6030-gpadc. config VF610_ADC tristate "Freescale vf610 ADC driver" depends on OF depends on HAS_IOMEM select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to support for Vybrid board analog-to-digital converter. Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX. This driver can also be built as a module. If so, the module will be called vf610_adc. config VIPERBOARD_ADC tristate "Viperboard ADC support" depends on MFD_VIPERBOARD && USB help Say yes here to access the ADC part of the Nano River Technologies Viperboard. To compile this driver as a module, choose M here: the module will be called viperboard_adc. config XILINX_XADC tristate "Xilinx XADC driver" depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST depends on HAS_IOMEM select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to have support for the Xilinx XADC. The driver does support both the ZYNQ interface to the XADC as well as the AXI-XADC interface. The driver can also be build as a module. If so, the module will be called xilinx-xadc. endmenu