Merge tag 'iio-fixes-for-4.17a' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-block.git] / drivers / iio / adc / Kconfig
1 #
2 # ADC drivers
3 #
4 # When adding new entries keep the list in alphabetical order
5
6 menu "Analog to digital converters"
7
8 config AD_SIGMA_DELTA
9         tristate
10         select IIO_BUFFER
11         select IIO_TRIGGERED_BUFFER
12
13 config AD7266
14         tristate "Analog Devices AD7265/AD7266 ADC driver"
15         depends on SPI_MASTER
16         select IIO_BUFFER
17         select IIO_TRIGGER
18         select IIO_TRIGGERED_BUFFER
19         help
20           Say yes here to build support for Analog Devices AD7265 and AD7266
21           ADCs.
22
23           To compile this driver as a module, choose M here: the module will be
24           called ad7266.
25
26 config AD7291
27         tristate "Analog Devices AD7291 ADC driver"
28         depends on I2C
29         help
30           Say yes here to build support for Analog Devices AD7291
31           8 Channel ADC with temperature sensor.
32
33           To compile this driver as a module, choose M here: the
34           module will be called ad7291.
35
36 config AD7298
37         tristate "Analog Devices AD7298 ADC driver"
38         depends on SPI
39         select IIO_BUFFER
40         select IIO_TRIGGERED_BUFFER
41         help
42           Say yes here to build support for Analog Devices AD7298
43           8 Channel ADC with temperature sensor.
44
45           To compile this driver as a module, choose M here: the
46           module will be called ad7298.
47
48 config AD7476
49         tristate "Analog Devices AD7476 and similar 1-channel ADCs driver"
50         depends on SPI
51         select IIO_BUFFER
52         select IIO_TRIGGERED_BUFFER
53         help
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).
57
58           To compile this driver as a module, choose M here: the
59           module will be called ad7476.
60
61 config AD7766
62         tristate "Analog Devices AD7766/AD7767 ADC driver"
63         depends on SPI_MASTER
64         select IIO_BUFFER
65         select IIO_TRIGGERED_BUFFER
66         help
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.
69
70           To compile this driver as a module, choose M here: the module will be
71           called ad7766.
72
73 config AD7791
74         tristate "Analog Devices AD7791 ADC driver"
75         depends on SPI
76         select AD_SIGMA_DELTA
77         help
78           Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
79           AD7790 and AD7791 SPI analog to digital converters (ADC).
80
81           To compile this driver as a module, choose M here: the module will be
82           called ad7791.
83
84 config AD7793
85         tristate "Analog Devices AD7793 and similar ADCs driver"
86         depends on SPI
87         select AD_SIGMA_DELTA
88         help
89           Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
90           AD7794 and AD7795 SPI analog to digital converters (ADC).
91
92           To compile this driver as a module, choose M here: the
93           module will be called AD7793.
94
95 config AD7887
96         tristate "Analog Devices AD7887 ADC driver"
97         depends on SPI
98         select IIO_BUFFER
99         select IIO_TRIGGERED_BUFFER
100         help
101           Say yes here to build support for Analog Devices
102           AD7887 SPI analog to digital converter (ADC).
103
104           To compile this driver as a module, choose M here: the
105           module will be called ad7887.
106
107 config AD7923
108         tristate "Analog Devices AD7923 and similar ADCs driver"
109         depends on SPI
110         select IIO_BUFFER
111         select IIO_TRIGGERED_BUFFER
112         help
113           Say yes here to build support for Analog Devices
114           AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
115
116           To compile this driver as a module, choose M here: the
117           module will be called ad7923.
118
119 config AD799X
120         tristate "Analog Devices AD799x ADC driver"
121         depends on I2C
122         select IIO_BUFFER
123         select IIO_TRIGGERED_BUFFER
124         help
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
128           via sysfs.
129
130           To compile this driver as a module, choose M here: the module will be
131           called ad799x.
132
133 config ASPEED_ADC
134         tristate "Aspeed ADC"
135         depends on ARCH_ASPEED || COMPILE_TEST
136         depends on COMMON_CLK
137         help
138           If you say yes here you get support for the ADC included in Aspeed
139           BMC SoCs.
140
141           To compile this driver as a module, choose M here: the module will be
142           called aspeed_adc.
143
144 config AT91_ADC
145         tristate "Atmel AT91 ADC"
146         depends on ARCH_AT91
147         depends on INPUT && SYSFS
148         select IIO_BUFFER
149         select IIO_TRIGGERED_BUFFER
150         help
151           Say yes here to build support for Atmel AT91 ADC.
152
153           To compile this driver as a module, choose M here: the module will be
154           called at91_adc.
155
156 config AT91_SAMA5D2_ADC
157         tristate "Atmel AT91 SAMA5D2 ADC"
158         depends on ARCH_AT91 || COMPILE_TEST
159         depends on HAS_IOMEM
160         depends on HAS_DMA
161         select IIO_BUFFER
162         select IIO_TRIGGERED_BUFFER
163         help
164           Say yes here to build support for Atmel SAMA5D2 ADC which is
165           available on SAMA5D2 SoC family.
166
167           To compile this driver as a module, choose M here: the module will be
168           called at91-sama5d2_adc.
169
170 config AXP20X_ADC
171         tristate "X-Powers AXP20X and AXP22X ADC driver"
172         depends on MFD_AXP20X
173         help
174           Say yes here to have support for X-Powers power management IC (PMIC)
175           AXP20X and AXP22X ADC devices.
176
177           To compile this driver as a module, choose M here: the module will be
178           called axp20x_adc.
179
180 config AXP288_ADC
181         tristate "X-Powers AXP288 ADC driver"
182         depends on MFD_AXP20X
183         help
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.
187
188           To compile this driver as a module, choose M here: the module will be
189           called axp288_adc.
190
191 config BCM_IPROC_ADC
192         tristate "Broadcom IPROC ADC driver"
193         depends on ARCH_BCM_IPROC || COMPILE_TEST
194         depends on MFD_SYSCON
195         default ARCH_BCM_CYGNUS
196         help
197           Say Y here if you want to add support for the Broadcom static
198           ADC driver.
199
200           Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
201           channels. The driver allows the user to read voltage values.
202
203 config BERLIN2_ADC
204         tristate "Marvell Berlin2 ADC driver"
205         depends on ARCH_BERLIN
206         help
207           Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
208           temperature measurement.
209
210 config CC10001_ADC
211         tristate "Cosmic Circuits 10001 ADC driver"
212         depends on HAS_IOMEM && HAVE_CLK && REGULATOR
213         select IIO_BUFFER
214         select IIO_TRIGGERED_BUFFER
215         help
216           Say yes here to build support for Cosmic Circuits 10001 ADC.
217
218           This driver can also be built as a module. If so, the module will be
219           called cc10001_adc.
220
221 config CPCAP_ADC
222         tristate "Motorola CPCAP PMIC ADC driver"
223         depends on MFD_CPCAP
224         select IIO_BUFFER
225         select IIO_TRIGGERED_BUFFER
226         help
227           Say yes here to build support for Motorola CPCAP PMIC ADC.
228
229           This driver can also be built as a module. If so, the module will be
230           called cpcap-adc.
231
232 config DA9150_GPADC
233         tristate "Dialog DA9150 GPADC driver support"
234         depends on MFD_DA9150
235         help
236           Say yes here to build support for Dialog DA9150 GPADC.
237
238           This driver can also be built as a module. If chosen, the module name
239           will be da9150-gpadc.
240
241           To compile this driver as a module, choose M here: the module will be
242           called berlin2-adc.
243
244 config DLN2_ADC
245         tristate "Diolan DLN-2 ADC driver support"
246         depends on MFD_DLN2
247         select IIO_BUFFER
248         select IIO_TRIGGERED_BUFFER
249         help
250           Say yes here to build support for Diolan DLN-2 ADC.
251
252           This driver can also be built as a module. If so, the module will be
253           called adc_dln2.
254
255 config ENVELOPE_DETECTOR
256         tristate "Envelope detector using a DAC and a comparator"
257         depends on OF
258         help
259           Say yes here to build support for an envelope detector using a DAC
260           and a comparator.
261
262           To compile this driver as a module, choose M here: the module will be
263           called envelope-detector.
264
265 config EP93XX_ADC
266         tristate "Cirrus Logic EP93XX ADC driver"
267         depends on ARCH_EP93XX
268         help
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.
272
273           To compile this driver as a module, choose M here: the module will be
274           called ep93xx_adc.
275
276 config EXYNOS_ADC
277         tristate "Exynos ADC driver support"
278         depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
279         depends on HAS_IOMEM
280         help
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
283           this resource.
284
285           To compile this driver as a module, choose M here: the module will be
286           called exynos_adc.
287
288 config MXS_LRADC_ADC
289         tristate "Freescale i.MX23/i.MX28 LRADC ADC"
290         depends on MFD_MXS_LRADC
291         select IIO_BUFFER
292         select IIO_TRIGGERED_BUFFER
293         help
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.
297
298           This driver can also be built as a module. If so, the module will be
299           called mxs-lradc-adc.
300
301 config FSL_MX25_ADC
302         tristate "Freescale MX25 ADC driver"
303         depends on MFD_MX25_TSADC
304         help
305           Generic Conversion Queue driver used for general purpose ADC in the
306           MX25. This driver supports single measurements using the MX25 ADC.
307
308 config HI8435
309         tristate "Holt Integrated Circuits HI-8435 threshold detector"
310         select IIO_TRIGGERED_EVENT
311         depends on SPI
312         help
313           If you say yes here you get support for Holt Integrated Circuits
314           HI-8435 chip.
315
316           This driver can also be built as a module. If so, the module will be
317           called hi8435.
318
319 config HX711
320         tristate "AVIA HX711 ADC for weight cells"
321         depends on GPIOLIB
322         select IIO_BUFFER
323         select IIO_TRIGGERED_BUFFER
324         help
325           If you say yes here you get support for AVIA HX711 ADC which is used
326           for weigh cells
327
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
330           data
331
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.
336
337           This driver can also be built as a module. If so, the module will be
338           called hx711.
339
340 config INA2XX_ADC
341         tristate "Texas Instruments INA2xx Power Monitors IIO driver"
342         depends on I2C && !SENSORS_INA2XX
343         select REGMAP_I2C
344         select IIO_BUFFER
345         select IIO_KFIFO_BUF
346         help
347           Say yes here to build support for TI INA2xx family of Power Monitors.
348           This driver is mutually exclusive with the HWMON version.
349
350 config IMX7D_ADC
351         tristate "Freescale IMX7D ADC driver"
352         depends on ARCH_MXC || COMPILE_TEST
353         depends on HAS_IOMEM
354         help
355           Say yes here to build support for IMX7D ADC.
356
357           This driver can also be built as a module. If so, the module will be
358           called imx7d_adc.
359
360 config LP8788_ADC
361         tristate "LP8788 ADC driver"
362         depends on MFD_LP8788
363         help
364           Say yes here to build support for TI LP8788 ADC.
365
366           To compile this driver as a module, choose M here: the module will be
367           called lp8788_adc.
368
369 config LPC18XX_ADC
370         tristate "NXP LPC18xx ADC driver"
371         depends on ARCH_LPC18XX || COMPILE_TEST
372         depends on OF && HAS_IOMEM
373         help
374           Say yes here to build support for NXP LPC18XX ADC.
375
376           To compile this driver as a module, choose M here: the module will be
377           called lpc18xx_adc.
378
379 config LPC32XX_ADC
380         tristate "NXP LPC32XX ADC"
381         depends on ARCH_LPC32XX || COMPILE_TEST
382         depends on HAS_IOMEM
383         help
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
389           via sysfs.
390
391 config LTC2471
392         tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
393         depends on I2C
394         help
395           Say yes here to build support for Linear Technology LTC2471 and
396           LTC2473 16-bit I2C ADC.
397
398           This driver can also be built as a module. If so, the module will
399           be called ltc2471.
400
401 config LTC2485
402         tristate "Linear Technology LTC2485 ADC driver"
403         depends on I2C
404         help
405           Say yes here to build support for Linear Technology LTC2485 ADC.
406
407           To compile this driver as a module, choose M here: the module will be
408           called ltc2485.
409
410 config LTC2497
411         tristate "Linear Technology LTC2497 ADC driver"
412         depends on I2C
413         help
414           Say yes here to build support for Linear Technology LTC2497
415           16-Bit 8-/16-Channel Delta Sigma ADC.
416
417           To compile this driver as a module, choose M here: the module will be
418           called ltc2497.
419
420 config MAX1027
421         tristate "Maxim max1027 ADC driver"
422         depends on SPI
423         select IIO_BUFFER
424         select IIO_TRIGGERED_BUFFER
425         help
426           Say yes here to build support for Maxim SPI ADC models
427           max1027, max1029 and max1031.
428
429           To compile this driver as a module, choose M here: the module will be
430           called max1027.
431
432 config MAX11100
433         tristate "Maxim max11100 ADC driver"
434         depends on SPI_MASTER
435         help
436           Say yes here to build support for Maxim max11100 SPI ADC
437
438           To compile this driver as a module, choose M here: the module will be
439           called max11100.
440
441 config MAX1118
442         tristate "Maxim max1117/max1118/max1119 ADCs driver"
443         depends on SPI
444         select IIO_BUFFER
445         select IIO_TRIGGERED_BUFFER
446         help
447           Say yes here to build support for Maxim max1117/max1118/max1119
448           8-bit, dual-channel ADCs.
449
450           To compile this driver as a module, choose M here: the module will be
451           called max1118.
452
453 config MAX1363
454         tristate "Maxim max1363 ADC driver"
455         depends on I2C
456         select IIO_BUFFER
457         select IIO_TRIGGERED_BUFFER
458         help
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.
468
469           To compile this driver as a module, choose M here: the module will be
470           called max1363.
471
472 config  MAX9611
473         tristate "Maxim max9611/max9612 ADC driver"
474         depends on I2C
475         help
476           Say yes here to build support for Maxim max9611/max9612 current sense
477           amplifier with 12-bits ADC interface.
478
479           To compile this driver as a module, choose M here: the module will be
480           called max9611.
481
482 config MCP320X
483         tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
484         depends on SPI
485         help
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
489           converters.
490
491           This driver can also be built as a module. If so, the module will be
492           called mcp320x.
493
494 config MCP3422
495         tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
496         depends on I2C
497         help
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.
501
502           This driver can also be built as a module. If so, the module will be
503           called mcp3422.
504
505 config MEDIATEK_MT6577_AUXADC
506         tristate "MediaTek AUXADC driver"
507         depends on ARCH_MEDIATEK || COMPILE_TEST
508         depends on HAS_IOMEM
509         help
510           Say yes here to enable support for MediaTek mt65xx AUXADC.
511
512           The driver supports immediate mode operation to read from one of sixteen
513           channels (external or internal).
514
515           This driver can also be built as a module. If so, the module will be
516           called mt6577_auxadc.
517
518 config MEN_Z188_ADC
519         tristate "MEN 16z188 ADC IP Core support"
520         depends on MCB
521         help
522           Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
523           carrier.
524
525           This driver can also be built as a module. If so, the module will be
526           called men_z188_adc.
527
528 config MESON_SARADC
529         tristate "Amlogic Meson SAR ADC driver"
530         default ARCH_MESON
531         depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
532         select REGMAP_MMIO
533         help
534           Say yes here to build support for the SAR ADC found in Amlogic Meson
535           SoCs.
536
537           To compile this driver as a module, choose M here: the
538           module will be called meson_saradc.
539
540 config NAU7802
541         tristate "Nuvoton NAU7802 ADC driver"
542         depends on I2C
543         help
544           Say yes here to build support for Nuvoton NAU7802 ADC.
545
546           To compile this driver as a module, choose M here: the
547           module will be called nau7802.
548
549 config PALMAS_GPADC
550         tristate "TI Palmas General Purpose ADC"
551         depends on MFD_PALMAS
552         help
553           Palmas series pmic chip by Texas Instruments (twl6035/6037)
554           is used in smartphones and tablets and supports a 16 channel
555           general purpose ADC.
556
557 config QCOM_VADC_COMMON
558         tristate
559
560 config QCOM_PM8XXX_XOADC
561         tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
562         depends on MFD_PM8XXX
563         select QCOM_VADC_COMMON
564         help
565           ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
566           using SSBI transport: PM8018, PM8038, PM8058, PM8921.
567
568           To compile this driver as a module, choose M here: the module
569           will be called qcom-pm8xxx-xoadc.
570
571 config QCOM_SPMI_IADC
572         tristate "Qualcomm SPMI PMIC current ADC"
573         depends on SPMI
574         select REGMAP_SPMI
575         help
576           This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
577
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.
581
582           To compile this driver as a module, choose M here: the module will
583           be called qcom-spmi-iadc.
584
585 config QCOM_SPMI_VADC
586         tristate "Qualcomm SPMI PMIC voltage ADC"
587         depends on SPMI
588         select REGMAP_SPMI
589         select QCOM_VADC_COMMON
590         help
591           This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
592
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
595           calibration.
596
597           To compile this driver as a module, choose M here: the module will
598           be called qcom-spmi-vadc.
599
600 config RCAR_GYRO_ADC
601         tristate "Renesas R-Car GyroADC driver"
602         depends on ARCH_RCAR_GEN2 || COMPILE_TEST
603         help
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.
609
610           To compile this driver as a module, choose M here: the
611           module will be called rcar-gyroadc.
612
613 config ROCKCHIP_SARADC
614         tristate "Rockchip SARADC driver"
615         depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
616         depends on RESET_CONTROLLER
617         help
618           Say yes here to build support for the SARADC found in SoCs from
619           Rockchip.
620
621           To compile this driver as a module, choose M here: the
622           module will be called rockchip_saradc.
623
624 config SPEAR_ADC
625         tristate "ST SPEAr ADC"
626         depends on PLAT_SPEAR || COMPILE_TEST
627         depends on HAS_IOMEM
628         help
629           Say yes here to build support for the integrated ADC inside the
630           ST SPEAr SoC. Provides direct access via sysfs.
631
632           To compile this driver as a module, choose M here: the
633           module will be called spear_adc.
634
635 config SD_ADC_MODULATOR
636         tristate "Generic sigma delta modulator"
637         depends on OF
638         select IIO_BUFFER
639         select IIO_TRIGGERED_BUFFER
640         help
641           Select this option to enables sigma delta modulator. This driver can
642           support generic sigma delta modulators.
643
644           This driver can also be built as a module.  If so, the module
645           will be called sd_adc_modulator.
646
647 config STM32_ADC_CORE
648         tristate "STMicroelectronics STM32 adc core"
649         depends on ARCH_STM32 || COMPILE_TEST
650         depends on HAS_DMA
651         depends on OF
652         depends on REGULATOR
653         select IIO_BUFFER
654         select MFD_STM32_TIMERS
655         select IIO_STM32_TIMER_TRIGGER
656         select IIO_TRIGGERED_BUFFER
657         help
658           Select this option to enable the core driver for STMicroelectronics
659           STM32 analog-to-digital converter (ADC).
660
661           This driver can also be built as a module.  If so, the module
662           will be called stm32-adc-core.
663
664 config STM32_ADC
665         tristate "STMicroelectronics STM32 adc"
666         depends on STM32_ADC_CORE
667         help
668           Say yes here to build support for STMicroelectronics stm32 Analog
669           to Digital Converter (ADC).
670
671           This driver can also be built as a module.  If so, the module
672           will be called stm32-adc.
673
674 config STM32_DFSDM_CORE
675         tristate "STMicroelectronics STM32 DFSDM core"
676         depends on (ARCH_STM32 && OF) || COMPILE_TEST
677         select REGMAP
678         select REGMAP_MMIO
679         help
680           Select this option to enable the  driver for STMicroelectronics
681           STM32 digital filter for sigma delta converter.
682
683           This driver can also be built as a module.  If so, the module
684           will be called stm32-dfsdm-core.
685
686 config STM32_DFSDM_ADC
687         tristate "STMicroelectronics STM32 dfsdm adc"
688         depends on (ARCH_STM32 && OF) || COMPILE_TEST
689         select STM32_DFSDM_CORE
690         select REGMAP_MMIO
691         select IIO_BUFFER_HW_CONSUMER
692         help
693           Select this option to support ADCSigma delta modulator for
694           STMicroelectronics STM32 digital filter for sigma delta converter.
695
696           This driver can also be built as a module.  If so, the module
697           will be called stm32-dfsdm-adc.
698
699 config STX104
700         tristate "Apex Embedded Systems STX104 driver"
701         depends on PC104 && X86
702         select ISA_BUS_API
703         select GPIOLIB
704         help
705           Say yes here to build support for the Apex Embedded Systems STX104
706           integrated analog PC/104 card.
707
708           This driver supports the 16 channels of single-ended (8 channels of
709           differential) analog inputs, 2 channels of analog output, 4 digital
710           inputs, and 4 digital outputs provided by the STX104.
711
712           The base port addresses for the devices may be configured via the base
713           array module parameter.
714
715 config SUN4I_GPADC
716         tristate "Support for the Allwinner SoCs GPADC"
717         depends on IIO
718         depends on MFD_SUN4I_GPADC || MACH_SUN8I
719         depends on THERMAL || !THERMAL_OF
720         help
721           Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
722           GPADC. This ADC provides 4 channels which can be used as an ADC or as
723           a touchscreen input and one channel for thermal sensor.
724
725           The thermal sensor slows down ADC readings and can be disabled by
726           disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
727           enabled by default since the SoC temperature is usually more critical
728           than ADC readings.
729
730           To compile this driver as a module, choose M here: the module will be
731           called sun4i-gpadc-iio.
732
733 config TI_ADC081C
734         tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
735         depends on I2C
736         select IIO_BUFFER
737         select IIO_TRIGGERED_BUFFER
738         help
739           If you say yes here you get support for Texas Instruments ADC081C,
740           ADC101C and ADC121C ADC chips.
741
742           This driver can also be built as a module. If so, the module will be
743           called ti-adc081c.
744
745 config TI_ADC0832
746         tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
747         depends on SPI
748         select IIO_BUFFER
749         select IIO_TRIGGERED_BUFFER
750         help
751           If you say yes here you get support for Texas Instruments ADC0831,
752           ADC0832, ADC0834, ADC0838 ADC chips.
753
754           This driver can also be built as a module. If so, the module will be
755           called ti-adc0832.
756
757 config TI_ADC084S021
758         tristate "Texas Instruments ADC084S021"
759         depends on SPI
760         select IIO_BUFFER
761         select IIO_TRIGGERED_BUFFER
762         help
763           If you say yes here you get support for Texas Instruments ADC084S021
764           chips.
765
766           This driver can also be built as a module. If so, the module will be
767           called ti-adc084s021.
768
769 config TI_ADC12138
770         tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
771         depends on SPI
772         select IIO_BUFFER
773         select IIO_TRIGGERED_BUFFER
774         help
775           If you say yes here you get support for Texas Instruments ADC12130,
776           ADC12132 and ADC12138 chips.
777
778           This driver can also be built as a module. If so, the module will be
779           called ti-adc12138.
780
781 config TI_ADC108S102
782         tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
783         depends on SPI
784         select IIO_BUFFER
785         select IIO_TRIGGERED_BUFFER
786         help
787           Say yes here to build support for Texas Instruments ADC108S102 and
788           ADC128S102 ADC.
789
790           To compile this driver as a module, choose M here: the module will
791           be called ti-adc108s102.
792
793 config TI_ADC128S052
794         tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
795         depends on SPI
796         help
797           If you say yes here you get support for Texas Instruments ADC128S052,
798           ADC122S021 and ADC124S021 chips.
799
800           This driver can also be built as a module. If so, the module will be
801           called ti-adc128s052.
802
803 config TI_ADC161S626
804         tristate "Texas Instruments ADC161S626 1-channel differential ADC"
805         depends on SPI
806         select IIO_BUFFER
807         select IIO_TRIGGERED_BUFFER
808         help
809           If you say yes here you get support for Texas Instruments ADC141S626,
810           and ADC161S626 chips.
811
812           This driver can also be built as a module. If so, the module will be
813           called ti-adc161s626.
814
815 config TI_ADS1015
816         tristate "Texas Instruments ADS1015 ADC"
817         depends on I2C && !SENSORS_ADS1015
818         select REGMAP_I2C
819         select IIO_BUFFER
820         select IIO_TRIGGERED_BUFFER
821         help
822           If you say yes here you get support for Texas Instruments ADS1015
823           ADC chip.
824
825           This driver can also be built as a module. If so, the module will be
826           called ti-ads1015.
827
828 config TI_ADS7950
829         tristate "Texas Instruments ADS7950 ADC driver"
830         depends on SPI
831         select IIO_BUFFER
832         select IIO_TRIGGERED_BUFFER
833         help
834           Say yes here to build support for Texas Instruments ADS7950, ADS7951,
835           ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
836           ADS7960, ADS7961.
837
838           To compile this driver as a module, choose M here: the
839           module will be called ti-ads7950.
840
841 config TI_ADS8688
842         tristate "Texas Instruments ADS8688"
843         depends on SPI && OF
844         help
845           If you say yes here you get support for Texas Instruments ADS8684 and
846           and ADS8688 ADC chips
847
848           This driver can also be built as a module. If so, the module will be
849           called ti-ads8688.
850
851 config TI_AM335X_ADC
852         tristate "TI's AM335X ADC driver"
853         depends on MFD_TI_AM335X_TSCADC && HAS_DMA
854         select IIO_BUFFER
855         select IIO_KFIFO_BUF
856         help
857           Say yes here to build support for Texas Instruments ADC
858           driver which is also a MFD client.
859
860           To compile this driver as a module, choose M here: the module will be
861           called ti_am335x_adc.
862
863 config TI_TLC4541
864         tristate "Texas Instruments TLC4541 ADC driver"
865         depends on SPI
866         select IIO_BUFFER
867         select IIO_TRIGGERED_BUFFER
868         help
869           Say yes here to build support for Texas Instruments TLC4541 / TLC3541
870           ADC chips.
871
872           This driver can also be built as a module. If so, the module will be
873           called ti-tlc4541.
874
875 config TWL4030_MADC
876         tristate "TWL4030 MADC (Monitoring A/D Converter)"
877         depends on TWL4030_CORE
878         help
879           This driver provides support for Triton TWL4030-MADC. The
880           driver supports both RT and SW conversion methods.
881
882           This driver can also be built as a module. If so, the module will be
883           called twl4030-madc.
884
885 config TWL6030_GPADC
886         tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
887         depends on TWL4030_CORE
888         default n
889         help
890           Say yes here if you want support for the TWL6030/TWL6032 General
891           Purpose A/D Converter. This will add support for battery type
892           detection, battery voltage and temperature measurement, die
893           temperature measurement, system supply voltage, audio accessory,
894           USB ID detection.
895
896           This driver can also be built as a module. If so, the module will be
897           called twl6030-gpadc.
898
899 config VF610_ADC
900         tristate "Freescale vf610 ADC driver"
901         depends on OF
902         depends on HAS_IOMEM
903         select IIO_BUFFER
904         select IIO_TRIGGERED_BUFFER
905         help
906           Say yes here to support for Vybrid board analog-to-digital converter.
907           Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
908
909           This driver can also be built as a module. If so, the module will be
910           called vf610_adc.
911
912 config VIPERBOARD_ADC
913         tristate "Viperboard ADC support"
914         depends on MFD_VIPERBOARD && USB
915         help
916           Say yes here to access the ADC part of the Nano River
917           Technologies Viperboard.
918
919           To compile this driver as a module, choose M here: the module will be
920           called viperboard_adc.
921
922 config XILINX_XADC
923         tristate "Xilinx XADC driver"
924         depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
925         depends on HAS_IOMEM
926         select IIO_BUFFER
927         select IIO_TRIGGERED_BUFFER
928         help
929           Say yes here to have support for the Xilinx XADC. The driver does support
930           both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
931
932           The driver can also be build as a module. If so, the module will be called
933           xilinx-xadc.
934
935 endmenu