GNU Linux-libre 4.19.281-gnu1
[releases.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         select IIO_BUFFER
161         select IIO_TRIGGERED_BUFFER
162         help
163           Say yes here to build support for Atmel SAMA5D2 ADC which is
164           available on SAMA5D2 SoC family.
165
166           To compile this driver as a module, choose M here: the module will be
167           called at91-sama5d2_adc.
168
169 config AXP20X_ADC
170         tristate "X-Powers AXP20X and AXP22X ADC driver"
171         depends on MFD_AXP20X
172         help
173           Say yes here to have support for X-Powers power management IC (PMIC)
174           AXP20X and AXP22X ADC devices.
175
176           To compile this driver as a module, choose M here: the module will be
177           called axp20x_adc.
178
179 config AXP288_ADC
180         tristate "X-Powers AXP288 ADC driver"
181         depends on MFD_AXP20X
182         help
183           Say yes here to have support for X-Powers power management IC (PMIC) ADC
184           device. Depending on platform configuration, this general purpose ADC can
185           be used for sampling sensors such as thermal resistors.
186
187           To compile this driver as a module, choose M here: the module will be
188           called axp288_adc.
189
190 config BCM_IPROC_ADC
191         tristate "Broadcom IPROC ADC driver"
192         depends on ARCH_BCM_IPROC || COMPILE_TEST
193         depends on MFD_SYSCON
194         default ARCH_BCM_CYGNUS
195         help
196           Say Y here if you want to add support for the Broadcom static
197           ADC driver.
198
199           Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
200           channels. The driver allows the user to read voltage values.
201
202 config BERLIN2_ADC
203         tristate "Marvell Berlin2 ADC driver"
204         depends on ARCH_BERLIN
205         help
206           Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
207           temperature measurement.
208
209 config CC10001_ADC
210         tristate "Cosmic Circuits 10001 ADC driver"
211         depends on HAS_IOMEM && HAVE_CLK && REGULATOR
212         select IIO_BUFFER
213         select IIO_TRIGGERED_BUFFER
214         help
215           Say yes here to build support for Cosmic Circuits 10001 ADC.
216
217           This driver can also be built as a module. If so, the module will be
218           called cc10001_adc.
219
220 config CPCAP_ADC
221         tristate "Motorola CPCAP PMIC ADC driver"
222         depends on MFD_CPCAP
223         select IIO_BUFFER
224         select IIO_TRIGGERED_BUFFER
225         help
226           Say yes here to build support for Motorola CPCAP PMIC ADC.
227
228           This driver can also be built as a module. If so, the module will be
229           called cpcap-adc.
230
231 config DA9150_GPADC
232         tristate "Dialog DA9150 GPADC driver support"
233         depends on MFD_DA9150
234         help
235           Say yes here to build support for Dialog DA9150 GPADC.
236
237           This driver can also be built as a module. If chosen, the module name
238           will be da9150-gpadc.
239
240           To compile this driver as a module, choose M here: the module will be
241           called berlin2-adc.
242
243 config DLN2_ADC
244         tristate "Diolan DLN-2 ADC driver support"
245         depends on MFD_DLN2
246         select IIO_BUFFER
247         select IIO_TRIGGERED_BUFFER
248         help
249           Say yes here to build support for Diolan DLN-2 ADC.
250
251           This driver can also be built as a module. If so, the module will be
252           called adc_dln2.
253
254 config ENVELOPE_DETECTOR
255         tristate "Envelope detector using a DAC and a comparator"
256         depends on OF
257         help
258           Say yes here to build support for an envelope detector using a DAC
259           and a comparator.
260
261           To compile this driver as a module, choose M here: the module will be
262           called envelope-detector.
263
264 config EP93XX_ADC
265         tristate "Cirrus Logic EP93XX ADC driver"
266         depends on ARCH_EP93XX
267         help
268           Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic.
269           It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this
270           case driver will reduce its CPU usage by 90% in some use cases.
271
272           To compile this driver as a module, choose M here: the module will be
273           called ep93xx_adc.
274
275 config EXYNOS_ADC
276         tristate "Exynos ADC driver support"
277         depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
278         depends on HAS_IOMEM
279         help
280           Core support for the ADC block found in the Samsung EXYNOS series
281           of SoCs for drivers such as the touchscreen and hwmon to use to share
282           this resource.
283
284           To compile this driver as a module, choose M here: the module will be
285           called exynos_adc.
286
287 config MXS_LRADC_ADC
288         tristate "Freescale i.MX23/i.MX28 LRADC ADC"
289         depends on MFD_MXS_LRADC
290         select IIO_BUFFER
291         select IIO_TRIGGERED_BUFFER
292         help
293           Say yes here to build support for the ADC functions of the
294           i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
295           battery voltage measurement, and die temperature measurement.
296
297           This driver can also be built as a module. If so, the module will be
298           called mxs-lradc-adc.
299
300 config FSL_MX25_ADC
301         tristate "Freescale MX25 ADC driver"
302         depends on MFD_MX25_TSADC
303         help
304           Generic Conversion Queue driver used for general purpose ADC in the
305           MX25. This driver supports single measurements using the MX25 ADC.
306
307 config HI8435
308         tristate "Holt Integrated Circuits HI-8435 threshold detector"
309         select IIO_TRIGGERED_EVENT
310         depends on SPI
311         help
312           If you say yes here you get support for Holt Integrated Circuits
313           HI-8435 chip.
314
315           This driver can also be built as a module. If so, the module will be
316           called hi8435.
317
318 config HX711
319         tristate "AVIA HX711 ADC for weight cells"
320         depends on GPIOLIB
321         select IIO_BUFFER
322         select IIO_TRIGGERED_BUFFER
323         help
324           If you say yes here you get support for AVIA HX711 ADC which is used
325           for weigh cells
326
327           This driver uses two GPIOs, one acts as the clock and controls the
328           channel selection and gain, the other one is used for the measurement
329           data
330
331           Currently the raw value is read from the chip and delivered.
332           To get an actual weight one needs to subtract the
333           zero offset and multiply by a scale factor.
334           This should be done in userspace.
335
336           This driver can also be built as a module. If so, the module will be
337           called hx711.
338
339 config INA2XX_ADC
340         tristate "Texas Instruments INA2xx Power Monitors IIO driver"
341         depends on I2C && !SENSORS_INA2XX
342         select REGMAP_I2C
343         select IIO_BUFFER
344         select IIO_KFIFO_BUF
345         help
346           Say yes here to build support for TI INA2xx family of Power Monitors.
347           This driver is mutually exclusive with the HWMON version.
348
349 config IMX7D_ADC
350         tristate "Freescale IMX7D ADC driver"
351         depends on ARCH_MXC || COMPILE_TEST
352         depends on HAS_IOMEM
353         help
354           Say yes here to build support for IMX7D ADC.
355
356           This driver can also be built as a module. If so, the module will be
357           called imx7d_adc.
358
359 config LP8788_ADC
360         tristate "LP8788 ADC driver"
361         depends on MFD_LP8788
362         help
363           Say yes here to build support for TI LP8788 ADC.
364
365           To compile this driver as a module, choose M here: the module will be
366           called lp8788_adc.
367
368 config LPC18XX_ADC
369         tristate "NXP LPC18xx ADC driver"
370         depends on ARCH_LPC18XX || COMPILE_TEST
371         depends on OF && HAS_IOMEM
372         help
373           Say yes here to build support for NXP LPC18XX ADC.
374
375           To compile this driver as a module, choose M here: the module will be
376           called lpc18xx_adc.
377
378 config LPC32XX_ADC
379         tristate "NXP LPC32XX ADC"
380         depends on ARCH_LPC32XX || COMPILE_TEST
381         depends on HAS_IOMEM
382         help
383           Say yes here to build support for the integrated ADC inside the
384           LPC32XX SoC. Note that this feature uses the same hardware as the
385           touchscreen driver, so you should either select only one of the two
386           drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
387           activate only one via device tree selection.  Provides direct access
388           via sysfs.
389
390 config LTC2471
391         tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
392         depends on I2C
393         help
394           Say yes here to build support for Linear Technology LTC2471 and
395           LTC2473 16-bit I2C ADC.
396
397           This driver can also be built as a module. If so, the module will
398           be called ltc2471.
399
400 config LTC2485
401         tristate "Linear Technology LTC2485 ADC driver"
402         depends on I2C
403         help
404           Say yes here to build support for Linear Technology LTC2485 ADC.
405
406           To compile this driver as a module, choose M here: the module will be
407           called ltc2485.
408
409 config LTC2497
410         tristate "Linear Technology LTC2497 ADC driver"
411         depends on I2C
412         help
413           Say yes here to build support for Linear Technology LTC2497
414           16-Bit 8-/16-Channel Delta Sigma ADC.
415
416           To compile this driver as a module, choose M here: the module will be
417           called ltc2497.
418
419 config MAX1027
420         tristate "Maxim max1027 ADC driver"
421         depends on SPI
422         select IIO_BUFFER
423         select IIO_TRIGGERED_BUFFER
424         help
425           Say yes here to build support for Maxim SPI ADC models
426           max1027, max1029 and max1031.
427
428           To compile this driver as a module, choose M here: the module will be
429           called max1027.
430
431 config MAX11100
432         tristate "Maxim max11100 ADC driver"
433         depends on SPI_MASTER
434         help
435           Say yes here to build support for Maxim max11100 SPI ADC
436
437           To compile this driver as a module, choose M here: the module will be
438           called max11100.
439
440 config MAX1118
441         tristate "Maxim max1117/max1118/max1119 ADCs driver"
442         depends on SPI
443         select IIO_BUFFER
444         select IIO_TRIGGERED_BUFFER
445         help
446           Say yes here to build support for Maxim max1117/max1118/max1119
447           8-bit, dual-channel ADCs.
448
449           To compile this driver as a module, choose M here: the module will be
450           called max1118.
451
452 config MAX1363
453         tristate "Maxim max1363 ADC driver"
454         depends on I2C
455         select IIO_BUFFER
456         select IIO_TRIGGERED_BUFFER
457         help
458           Say yes here to build support for many Maxim i2c analog to digital
459           converters (ADC). (max1361, max1362, max1363, max1364, max1036,
460           max1037, max1038, max1039, max1136, max1136, max1137, max1138,
461           max1139, max1236, max1237, max11238, max1239, max11600, max11601,
462           max11602, max11603, max11604, max11605, max11606, max11607,
463           max11608, max11609, max11610, max11611, max11612, max11613,
464           max11614, max11615, max11616, max11617, max11644, max11645,
465           max11646, max11647) Provides direct access via sysfs and buffered
466           data via the iio dev interface.
467
468           To compile this driver as a module, choose M here: the module will be
469           called max1363.
470
471 config  MAX9611
472         tristate "Maxim max9611/max9612 ADC driver"
473         depends on I2C
474         help
475           Say yes here to build support for Maxim max9611/max9612 current sense
476           amplifier with 12-bits ADC interface.
477
478           To compile this driver as a module, choose M here: the module will be
479           called max9611.
480
481 config MCP320X
482         tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
483         depends on SPI
484         help
485           Say yes here to build support for Microchip Technology's
486           MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
487           MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital
488           converters.
489
490           This driver can also be built as a module. If so, the module will be
491           called mcp320x.
492
493 config MCP3422
494         tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
495         depends on I2C
496         help
497           Say yes here to build support for Microchip Technology's MCP3421
498           MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
499           analog to digital converters.
500
501           This driver can also be built as a module. If so, the module will be
502           called mcp3422.
503
504 config MEDIATEK_MT6577_AUXADC
505         tristate "MediaTek AUXADC driver"
506         depends on ARCH_MEDIATEK || COMPILE_TEST
507         depends on HAS_IOMEM
508         help
509           Say yes here to enable support for MediaTek mt65xx AUXADC.
510
511           The driver supports immediate mode operation to read from one of sixteen
512           channels (external or internal).
513
514           This driver can also be built as a module. If so, the module will be
515           called mt6577_auxadc.
516
517 config MEN_Z188_ADC
518         tristate "MEN 16z188 ADC IP Core support"
519         depends on MCB
520         help
521           Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
522           carrier.
523
524           This driver can also be built as a module. If so, the module will be
525           called men_z188_adc.
526
527 config MESON_SARADC
528         tristate "Amlogic Meson SAR ADC driver"
529         default ARCH_MESON
530         depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
531         select REGMAP_MMIO
532         help
533           Say yes here to build support for the SAR ADC found in Amlogic Meson
534           SoCs.
535
536           To compile this driver as a module, choose M here: the
537           module will be called meson_saradc.
538
539 config NAU7802
540         tristate "Nuvoton NAU7802 ADC driver"
541         depends on I2C
542         help
543           Say yes here to build support for Nuvoton NAU7802 ADC.
544
545           To compile this driver as a module, choose M here: the
546           module will be called nau7802.
547
548 config PALMAS_GPADC
549         tristate "TI Palmas General Purpose ADC"
550         depends on MFD_PALMAS
551         help
552           Palmas series pmic chip by Texas Instruments (twl6035/6037)
553           is used in smartphones and tablets and supports a 16 channel
554           general purpose ADC.
555
556 config QCOM_VADC_COMMON
557         tristate
558
559 config QCOM_PM8XXX_XOADC
560         tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
561         depends on MFD_PM8XXX
562         select QCOM_VADC_COMMON
563         help
564           ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
565           using SSBI transport: PM8018, PM8038, PM8058, PM8921.
566
567           To compile this driver as a module, choose M here: the module
568           will be called qcom-pm8xxx-xoadc.
569
570 config QCOM_SPMI_IADC
571         tristate "Qualcomm SPMI PMIC current ADC"
572         depends on SPMI
573         select REGMAP_SPMI
574         help
575           This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
576
577           The driver supports single mode operation to read from one of two
578           channels (external or internal). Hardware have additional
579           channels internally used for gain and offset calibration.
580
581           To compile this driver as a module, choose M here: the module will
582           be called qcom-spmi-iadc.
583
584 config QCOM_SPMI_VADC
585         tristate "Qualcomm SPMI PMIC voltage ADC"
586         depends on SPMI
587         select REGMAP_SPMI
588         select QCOM_VADC_COMMON
589         help
590           This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
591
592           The driver supports multiple channels read. The VADC is a 15-bit
593           sigma-delta ADC. Some of the channels are internally used for
594           calibration.
595
596           To compile this driver as a module, choose M here: the module will
597           be called qcom-spmi-vadc.
598
599 config RCAR_GYRO_ADC
600         tristate "Renesas R-Car GyroADC driver"
601         depends on ARCH_RCAR_GEN2 || COMPILE_TEST
602         help
603           Say yes here to build support for the GyroADC found in Renesas
604           R-Car Gen2 SoCs. This block is a simple SPI offload engine for
605           reading data out of attached compatible ADCs in a round-robin
606           fashion. Up to 4 or 8 ADC channels are supported by this block,
607           depending on which ADCs are attached.
608
609           To compile this driver as a module, choose M here: the
610           module will be called rcar-gyroadc.
611
612 config ROCKCHIP_SARADC
613         tristate "Rockchip SARADC driver"
614         depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
615         depends on RESET_CONTROLLER
616         help
617           Say yes here to build support for the SARADC found in SoCs from
618           Rockchip.
619
620           To compile this driver as a module, choose M here: the
621           module will be called rockchip_saradc.
622
623 config SC27XX_ADC
624         tristate "Spreadtrum SC27xx series PMICs ADC"
625         depends on MFD_SC27XX_PMIC || COMPILE_TEST
626         help
627           Say yes here to build support for the integrated ADC inside the
628           Spreadtrum SC27xx series PMICs.
629
630           This driver can also be built as a module. If so, the module
631           will be called sc27xx_adc.
632
633 config SPEAR_ADC
634         tristate "ST SPEAr ADC"
635         depends on PLAT_SPEAR || COMPILE_TEST
636         depends on HAS_IOMEM
637         help
638           Say yes here to build support for the integrated ADC inside the
639           ST SPEAr SoC. Provides direct access via sysfs.
640
641           To compile this driver as a module, choose M here: the
642           module will be called spear_adc.
643
644 config SD_ADC_MODULATOR
645         tristate "Generic sigma delta modulator"
646         depends on OF
647         select IIO_BUFFER
648         select IIO_TRIGGERED_BUFFER
649         help
650           Select this option to enables sigma delta modulator. This driver can
651           support generic sigma delta modulators.
652
653           This driver can also be built as a module.  If so, the module
654           will be called sd_adc_modulator.
655
656 config STM32_ADC_CORE
657         tristate "STMicroelectronics STM32 adc core"
658         depends on ARCH_STM32 || COMPILE_TEST
659         depends on OF
660         depends on REGULATOR
661         depends on HAS_IOMEM
662         select IIO_BUFFER
663         select MFD_STM32_TIMERS
664         select IIO_STM32_TIMER_TRIGGER
665         select IIO_TRIGGERED_BUFFER
666         help
667           Select this option to enable the core driver for STMicroelectronics
668           STM32 analog-to-digital converter (ADC).
669
670           This driver can also be built as a module.  If so, the module
671           will be called stm32-adc-core.
672
673 config STM32_ADC
674         tristate "STMicroelectronics STM32 adc"
675         depends on STM32_ADC_CORE
676         help
677           Say yes here to build support for STMicroelectronics stm32 Analog
678           to Digital Converter (ADC).
679
680           This driver can also be built as a module.  If so, the module
681           will be called stm32-adc.
682
683 config STM32_DFSDM_CORE
684         tristate "STMicroelectronics STM32 DFSDM core"
685         depends on (ARCH_STM32 && OF) || COMPILE_TEST
686         select REGMAP
687         select REGMAP_MMIO
688         help
689           Select this option to enable the  driver for STMicroelectronics
690           STM32 digital filter for sigma delta converter.
691
692           This driver can also be built as a module.  If so, the module
693           will be called stm32-dfsdm-core.
694
695 config STM32_DFSDM_ADC
696         tristate "STMicroelectronics STM32 dfsdm adc"
697         depends on (ARCH_STM32 && OF) || COMPILE_TEST
698         select STM32_DFSDM_CORE
699         select REGMAP_MMIO
700         select IIO_BUFFER
701         select IIO_BUFFER_HW_CONSUMER
702         help
703           Select this option to support ADCSigma delta modulator for
704           STMicroelectronics STM32 digital filter for sigma delta converter.
705
706           This driver can also be built as a module.  If so, the module
707           will be called stm32-dfsdm-adc.
708
709 config STX104
710         tristate "Apex Embedded Systems STX104 driver"
711         depends on PC104 && X86
712         select ISA_BUS_API
713         select GPIOLIB
714         help
715           Say yes here to build support for the Apex Embedded Systems STX104
716           integrated analog PC/104 card.
717
718           This driver supports the 16 channels of single-ended (8 channels of
719           differential) analog inputs, 2 channels of analog output, 4 digital
720           inputs, and 4 digital outputs provided by the STX104.
721
722           The base port addresses for the devices may be configured via the base
723           array module parameter.
724
725 config SUN4I_GPADC
726         tristate "Support for the Allwinner SoCs GPADC"
727         depends on IIO
728         depends on MFD_SUN4I_GPADC || MACH_SUN8I
729         depends on THERMAL || !THERMAL_OF
730         select REGMAP_IRQ
731         help
732           Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
733           GPADC. This ADC provides 4 channels which can be used as an ADC or as
734           a touchscreen input and one channel for thermal sensor.
735
736           The thermal sensor slows down ADC readings and can be disabled by
737           disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
738           enabled by default since the SoC temperature is usually more critical
739           than ADC readings.
740
741           To compile this driver as a module, choose M here: the module will be
742           called sun4i-gpadc-iio.
743
744 config TI_ADC081C
745         tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
746         depends on I2C
747         select IIO_BUFFER
748         select IIO_TRIGGERED_BUFFER
749         help
750           If you say yes here you get support for Texas Instruments ADC081C,
751           ADC101C and ADC121C ADC chips.
752
753           This driver can also be built as a module. If so, the module will be
754           called ti-adc081c.
755
756 config TI_ADC0832
757         tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
758         depends on SPI
759         select IIO_BUFFER
760         select IIO_TRIGGERED_BUFFER
761         help
762           If you say yes here you get support for Texas Instruments ADC0831,
763           ADC0832, ADC0834, ADC0838 ADC chips.
764
765           This driver can also be built as a module. If so, the module will be
766           called ti-adc0832.
767
768 config TI_ADC084S021
769         tristate "Texas Instruments ADC084S021"
770         depends on SPI
771         select IIO_BUFFER
772         select IIO_TRIGGERED_BUFFER
773         help
774           If you say yes here you get support for Texas Instruments ADC084S021
775           chips.
776
777           This driver can also be built as a module. If so, the module will be
778           called ti-adc084s021.
779
780 config TI_ADC12138
781         tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
782         depends on SPI
783         select IIO_BUFFER
784         select IIO_TRIGGERED_BUFFER
785         help
786           If you say yes here you get support for Texas Instruments ADC12130,
787           ADC12132 and ADC12138 chips.
788
789           This driver can also be built as a module. If so, the module will be
790           called ti-adc12138.
791
792 config TI_ADC108S102
793         tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
794         depends on SPI
795         select IIO_BUFFER
796         select IIO_TRIGGERED_BUFFER
797         help
798           Say yes here to build support for Texas Instruments ADC108S102 and
799           ADC128S102 ADC.
800
801           To compile this driver as a module, choose M here: the module will
802           be called ti-adc108s102.
803
804 config TI_ADC128S052
805         tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
806         depends on SPI
807         help
808           If you say yes here you get support for Texas Instruments ADC128S052,
809           ADC122S021 and ADC124S021 chips.
810
811           This driver can also be built as a module. If so, the module will be
812           called ti-adc128s052.
813
814 config TI_ADC161S626
815         tristate "Texas Instruments ADC161S626 1-channel differential ADC"
816         depends on SPI
817         select IIO_BUFFER
818         select IIO_TRIGGERED_BUFFER
819         help
820           If you say yes here you get support for Texas Instruments ADC141S626,
821           and ADC161S626 chips.
822
823           This driver can also be built as a module. If so, the module will be
824           called ti-adc161s626.
825
826 config TI_ADS1015
827         tristate "Texas Instruments ADS1015 ADC"
828         depends on I2C && !SENSORS_ADS1015
829         select REGMAP_I2C
830         select IIO_BUFFER
831         select IIO_TRIGGERED_BUFFER
832         help
833           If you say yes here you get support for Texas Instruments ADS1015
834           ADC chip.
835
836           This driver can also be built as a module. If so, the module will be
837           called ti-ads1015.
838
839 config TI_ADS7950
840         tristate "Texas Instruments ADS7950 ADC driver"
841         depends on SPI
842         select IIO_BUFFER
843         select IIO_TRIGGERED_BUFFER
844         help
845           Say yes here to build support for Texas Instruments ADS7950, ADS7951,
846           ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
847           ADS7960, ADS7961.
848
849           To compile this driver as a module, choose M here: the
850           module will be called ti-ads7950.
851
852 config TI_ADS8688
853         tristate "Texas Instruments ADS8688"
854         depends on SPI && OF
855         help
856           If you say yes here you get support for Texas Instruments ADS8684 and
857           and ADS8688 ADC chips
858
859           This driver can also be built as a module. If so, the module will be
860           called ti-ads8688.
861
862 config TI_AM335X_ADC
863         tristate "TI's AM335X ADC driver"
864         depends on MFD_TI_AM335X_TSCADC && HAS_DMA
865         select IIO_BUFFER
866         select IIO_KFIFO_BUF
867         help
868           Say yes here to build support for Texas Instruments ADC
869           driver which is also a MFD client.
870
871           To compile this driver as a module, choose M here: the module will be
872           called ti_am335x_adc.
873
874 config TI_TLC4541
875         tristate "Texas Instruments TLC4541 ADC driver"
876         depends on SPI
877         select IIO_BUFFER
878         select IIO_TRIGGERED_BUFFER
879         help
880           Say yes here to build support for Texas Instruments TLC4541 / TLC3541
881           ADC chips.
882
883           This driver can also be built as a module. If so, the module will be
884           called ti-tlc4541.
885
886 config TWL4030_MADC
887         tristate "TWL4030 MADC (Monitoring A/D Converter)"
888         depends on TWL4030_CORE
889         help
890           This driver provides support for Triton TWL4030-MADC. The
891           driver supports both RT and SW conversion methods.
892
893           This driver can also be built as a module. If so, the module will be
894           called twl4030-madc.
895
896 config TWL6030_GPADC
897         tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
898         depends on TWL4030_CORE
899         default n
900         help
901           Say yes here if you want support for the TWL6030/TWL6032 General
902           Purpose A/D Converter. This will add support for battery type
903           detection, battery voltage and temperature measurement, die
904           temperature measurement, system supply voltage, audio accessory,
905           USB ID detection.
906
907           This driver can also be built as a module. If so, the module will be
908           called twl6030-gpadc.
909
910 config VF610_ADC
911         tristate "Freescale vf610 ADC driver"
912         depends on OF
913         depends on HAS_IOMEM
914         select IIO_BUFFER
915         select IIO_TRIGGERED_BUFFER
916         help
917           Say yes here to support for Vybrid board analog-to-digital converter.
918           Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
919
920           This driver can also be built as a module. If so, the module will be
921           called vf610_adc.
922
923 config VIPERBOARD_ADC
924         tristate "Viperboard ADC support"
925         depends on MFD_VIPERBOARD && USB
926         help
927           Say yes here to access the ADC part of the Nano River
928           Technologies Viperboard.
929
930           To compile this driver as a module, choose M here: the module will be
931           called viperboard_adc.
932
933 config XILINX_XADC
934         tristate "Xilinx XADC driver"
935         depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
936         depends on HAS_IOMEM
937         select IIO_BUFFER
938         select IIO_TRIGGERED_BUFFER
939         help
940           Say yes here to have support for the Xilinx XADC. The driver does support
941           both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
942
943           The driver can also be build as a module. If so, the module will be called
944           xilinx-xadc.
945
946 endmenu