]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/iio/adc/Kconfig
Merge tag 'iio-for-4.11b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23...
[karo-tx-linux.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 AT91_ADC
134         tristate "Atmel AT91 ADC"
135         depends on ARCH_AT91
136         depends on INPUT
137         select IIO_BUFFER
138         select IIO_TRIGGERED_BUFFER
139         select SYSFS
140         help
141           Say yes here to build support for Atmel AT91 ADC.
142
143           To compile this driver as a module, choose M here: the module will be
144           called at91_adc.
145
146 config AT91_SAMA5D2_ADC
147         tristate "Atmel AT91 SAMA5D2 ADC"
148         depends on ARCH_AT91 || COMPILE_TEST
149         depends on HAS_IOMEM
150         help
151           Say yes here to build support for Atmel SAMA5D2 ADC which is
152           available on SAMA5D2 SoC family.
153
154           To compile this driver as a module, choose M here: the module will be
155           called at91-sama5d2_adc.
156
157 config AXP288_ADC
158         tristate "X-Powers AXP288 ADC driver"
159         depends on MFD_AXP20X
160         help
161           Say yes here to have support for X-Powers power management IC (PMIC) ADC
162           device. Depending on platform configuration, this general purpose ADC can
163           be used for sampling sensors such as thermal resistors.
164
165           To compile this driver as a module, choose M here: the module will be
166           called axp288_adc.
167
168 config BCM_IPROC_ADC
169         tristate "Broadcom IPROC ADC driver"
170         depends on ARCH_BCM_IPROC || COMPILE_TEST
171         depends on MFD_SYSCON
172         default ARCH_BCM_CYGNUS
173         help
174           Say Y here if you want to add support for the Broadcom static
175           ADC driver.
176
177           Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
178           channels. The driver allows the user to read voltage values.
179
180 config BERLIN2_ADC
181         tristate "Marvell Berlin2 ADC driver"
182         depends on ARCH_BERLIN
183         help
184           Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
185           temperature measurement.
186
187 config CC10001_ADC
188         tristate "Cosmic Circuits 10001 ADC driver"
189         depends on HAS_IOMEM && HAVE_CLK && REGULATOR
190         select IIO_BUFFER
191         select IIO_TRIGGERED_BUFFER
192         help
193           Say yes here to build support for Cosmic Circuits 10001 ADC.
194
195           This driver can also be built as a module. If so, the module will be
196           called cc10001_adc.
197
198 config DA9150_GPADC
199         tristate "Dialog DA9150 GPADC driver support"
200         depends on MFD_DA9150
201         help
202           Say yes here to build support for Dialog DA9150 GPADC.
203
204           This driver can also be built as a module. If chosen, the module name
205           will be da9150-gpadc.
206
207           To compile this driver as a module, choose M here: the module will be
208           called berlin2-adc.
209
210 config ENVELOPE_DETECTOR
211         tristate "Envelope detector using a DAC and a comparator"
212         depends on OF
213         help
214           Say yes here to build support for an envelope detector using a DAC
215           and a comparator.
216
217           To compile this driver as a module, choose M here: the module will be
218           called envelope-detector.
219
220 config EXYNOS_ADC
221         tristate "Exynos ADC driver support"
222         depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
223         depends on HAS_IOMEM
224         help
225           Core support for the ADC block found in the Samsung EXYNOS series
226           of SoCs for drivers such as the touchscreen and hwmon to use to share
227           this resource.
228
229           To compile this driver as a module, choose M here: the module will be
230           called exynos_adc.
231
232 config FSL_MX25_ADC
233         tristate "Freescale MX25 ADC driver"
234         depends on MFD_MX25_TSADC
235         help
236           Generic Conversion Queue driver used for general purpose ADC in the
237           MX25. This driver supports single measurements using the MX25 ADC.
238
239 config HI8435
240         tristate "Holt Integrated Circuits HI-8435 threshold detector"
241         select IIO_TRIGGERED_EVENT
242         depends on SPI
243         help
244           If you say yes here you get support for Holt Integrated Circuits
245           HI-8435 chip.
246
247           This driver can also be built as a module. If so, the module will be
248           called hi8435.
249
250 config HX711
251         tristate "AVIA HX711 ADC for weight cells"
252         depends on GPIOLIB
253         help
254           If you say yes here you get support for AVIA HX711 ADC which is used
255           for weigh cells
256
257           This driver uses two GPIOs, one acts as the clock and controls the
258           channel selection and gain, the other one is used for the measurement
259           data
260
261           Currently the raw value is read from the chip and delivered.
262           To get an actual weight one needs to subtract the
263           zero offset and multiply by a scale factor.
264           This should be done in userspace.
265
266           This driver can also be built as a module. If so, the module will be
267           called hx711.
268
269 config INA2XX_ADC
270         tristate "Texas Instruments INA2xx Power Monitors IIO driver"
271         depends on I2C && !SENSORS_INA2XX
272         select REGMAP_I2C
273         select IIO_BUFFER
274         select IIO_KFIFO_BUF
275         help
276           Say yes here to build support for TI INA2xx family of Power Monitors.
277           This driver is mutually exclusive with the HWMON version.
278
279 config IMX7D_ADC
280         tristate "IMX7D ADC driver"
281         depends on ARCH_MXC || COMPILE_TEST
282         depends on HAS_IOMEM
283         help
284           Say yes here to build support for IMX7D ADC.
285
286           This driver can also be built as a module. If so, the module will be
287           called imx7d_adc.
288
289 config LP8788_ADC
290         tristate "LP8788 ADC driver"
291         depends on MFD_LP8788
292         help
293           Say yes here to build support for TI LP8788 ADC.
294
295           To compile this driver as a module, choose M here: the module will be
296           called lp8788_adc.
297
298 config LPC18XX_ADC
299         tristate "NXP LPC18xx ADC driver"
300         depends on ARCH_LPC18XX || COMPILE_TEST
301         depends on OF && HAS_IOMEM
302         help
303           Say yes here to build support for NXP LPC18XX ADC.
304
305           To compile this driver as a module, choose M here: the module will be
306           called lpc18xx_adc.
307
308 config LTC2485
309         tristate "Linear Technology LTC2485 ADC driver"
310         depends on I2C
311         help
312           Say yes here to build support for Linear Technology LTC2485 ADC.
313
314           To compile this driver as a module, choose M here: the module will be
315           called ltc2485.
316
317 config MAX1027
318         tristate "Maxim max1027 ADC driver"
319         depends on SPI
320         select IIO_BUFFER
321         select IIO_TRIGGERED_BUFFER
322         help
323           Say yes here to build support for Maxim SPI ADC models
324           max1027, max1029 and max1031.
325
326           To compile this driver as a module, choose M here: the module will be
327           called max1027.
328
329 config MAX11100
330         tristate "Maxim max11100 ADC driver"
331         depends on SPI_MASTER
332         help
333           Say yes here to build support for Maxim max11100 SPI ADC
334
335           To compile this driver as a module, choose M here: the module will be
336           called max11100.
337
338 config MAX1363
339         tristate "Maxim max1363 ADC driver"
340         depends on I2C
341         select IIO_BUFFER
342         select IIO_TRIGGERED_BUFFER
343         help
344           Say yes here to build support for many Maxim i2c analog to digital
345           converters (ADC). (max1361, max1362, max1363, max1364, max1036,
346           max1037, max1038, max1039, max1136, max1136, max1137, max1138,
347           max1139, max1236, max1237, max11238, max1239, max11600, max11601,
348           max11602, max11603, max11604, max11605, max11606, max11607,
349           max11608, max11609, max11610, max11611, max11612, max11613,
350           max11614, max11615, max11616, max11617, max11644, max11645,
351           max11646, max11647) Provides direct access via sysfs and buffered
352           data via the iio dev interface.
353
354           To compile this driver as a module, choose M here: the module will be
355           called max1363.
356
357 config MCP320X
358         tristate "Microchip Technology MCP3x01/02/04/08"
359         depends on SPI
360         help
361           Say yes here to build support for Microchip Technology's
362           MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
363           MCP3208 or MCP3301 analog to digital converter.
364
365           This driver can also be built as a module. If so, the module will be
366           called mcp320x.
367
368 config MCP3422
369         tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
370         depends on I2C
371         help
372           Say yes here to build support for Microchip Technology's MCP3421
373           MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
374           analog to digital converters.
375
376           This driver can also be built as a module. If so, the module will be
377           called mcp3422.
378
379 config MEDIATEK_MT6577_AUXADC
380         tristate "MediaTek AUXADC driver"
381         depends on ARCH_MEDIATEK || COMPILE_TEST
382         depends on HAS_IOMEM
383         help
384           Say yes here to enable support for MediaTek mt65xx AUXADC.
385
386           The driver supports immediate mode operation to read from one of sixteen
387           channels (external or internal).
388
389           This driver can also be built as a module. If so, the module will be
390           called mt6577_auxadc.
391
392 config MEN_Z188_ADC
393         tristate "MEN 16z188 ADC IP Core support"
394         depends on MCB
395         help
396           Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
397           carrier.
398
399           This driver can also be built as a module. If so, the module will be
400           called men_z188_adc.
401
402 config MXS_LRADC
403         tristate "Freescale i.MX23/i.MX28 LRADC"
404         depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM
405         depends on INPUT
406         select STMP_DEVICE
407         select IIO_BUFFER
408         select IIO_TRIGGERED_BUFFER
409         help
410           Say yes here to build support for i.MX23/i.MX28 LRADC convertor
411           built into these chips.
412
413           To compile this driver as a module, choose M here: the
414           module will be called mxs-lradc.
415
416 config NAU7802
417         tristate "Nuvoton NAU7802 ADC driver"
418         depends on I2C
419         help
420           Say yes here to build support for Nuvoton NAU7802 ADC.
421
422           To compile this driver as a module, choose M here: the
423           module will be called nau7802.
424
425 config PALMAS_GPADC
426         tristate "TI Palmas General Purpose ADC"
427         depends on MFD_PALMAS
428         help
429           Palmas series pmic chip by Texas Instruments (twl6035/6037)
430           is used in smartphones and tablets and supports a 16 channel
431           general purpose ADC.
432
433 config QCOM_SPMI_IADC
434         tristate "Qualcomm SPMI PMIC current ADC"
435         depends on SPMI
436         select REGMAP_SPMI
437         help
438           This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
439
440           The driver supports single mode operation to read from one of two
441           channels (external or internal). Hardware have additional
442           channels internally used for gain and offset calibration.
443
444           To compile this driver as a module, choose M here: the module will
445           be called qcom-spmi-iadc.
446
447 config QCOM_SPMI_VADC
448         tristate "Qualcomm SPMI PMIC voltage ADC"
449         depends on SPMI
450         select REGMAP_SPMI
451         help
452           This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
453
454           The driver supports multiple channels read. The VADC is a 15-bit
455           sigma-delta ADC. Some of the channels are internally used for
456           calibration.
457
458           To compile this driver as a module, choose M here: the module will
459           be called qcom-spmi-vadc.
460
461 config ROCKCHIP_SARADC
462         tristate "Rockchip SARADC driver"
463         depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
464         depends on RESET_CONTROLLER
465         help
466           Say yes here to build support for the SARADC found in SoCs from
467           Rockchip.
468
469           To compile this driver as a module, choose M here: the
470           module will be called rockchip_saradc.
471
472 config STM32_ADC_CORE
473         tristate "STMicroelectronics STM32 adc core"
474         depends on ARCH_STM32 || COMPILE_TEST
475         depends on OF
476         depends on REGULATOR
477         help
478           Select this option to enable the core driver for STMicroelectronics
479           STM32 analog-to-digital converter (ADC).
480
481           This driver can also be built as a module.  If so, the module
482           will be called stm32-adc-core.
483
484 config STM32_ADC
485         tristate "STMicroelectronics STM32 adc"
486         depends on STM32_ADC_CORE
487         help
488           Say yes here to build support for STMicroelectronics stm32 Analog
489           to Digital Converter (ADC).
490
491           This driver can also be built as a module.  If so, the module
492           will be called stm32-adc.
493
494 config STX104
495         tristate "Apex Embedded Systems STX104 driver"
496         depends on X86 && ISA_BUS_API
497         select GPIOLIB
498         help
499           Say yes here to build support for the Apex Embedded Systems STX104
500           integrated analog PC/104 card.
501
502           This driver supports the 16 channels of single-ended (8 channels of
503           differential) analog inputs, 2 channels of analog output, 4 digital
504           inputs, and 4 digital outputs provided by the STX104.
505
506           The base port addresses for the devices may be configured via the base
507           array module parameter.
508
509 config TI_ADC081C
510         tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
511         depends on I2C
512         select IIO_BUFFER
513         select IIO_TRIGGERED_BUFFER
514         help
515           If you say yes here you get support for Texas Instruments ADC081C,
516           ADC101C and ADC121C ADC chips.
517
518           This driver can also be built as a module. If so, the module will be
519           called ti-adc081c.
520
521 config TI_ADC0832
522         tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
523         depends on SPI
524         select IIO_BUFFER
525         select IIO_TRIGGERED_BUFFER
526         help
527           If you say yes here you get support for Texas Instruments ADC0831,
528           ADC0832, ADC0834, ADC0838 ADC chips.
529
530           This driver can also be built as a module. If so, the module will be
531           called ti-adc0832.
532
533 config TI_ADC12138
534         tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
535         depends on SPI
536         select IIO_BUFFER
537         select IIO_TRIGGERED_BUFFER
538         help
539           If you say yes here you get support for Texas Instruments ADC12130,
540           ADC12132 and ADC12138 chips.
541
542           This driver can also be built as a module. If so, the module will be
543           called ti-adc12138.
544
545 config TI_ADC128S052
546         tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
547         depends on SPI
548         help
549           If you say yes here you get support for Texas Instruments ADC128S052,
550           ADC122S021 and ADC124S021 chips.
551
552           This driver can also be built as a module. If so, the module will be
553           called ti-adc128s052.
554
555 config TI_ADC161S626
556         tristate "Texas Instruments ADC161S626 1-channel differential ADC"
557         depends on SPI
558         select IIO_BUFFER
559         select IIO_TRIGGERED_BUFFER
560         help
561           If you say yes here you get support for Texas Instruments ADC141S626,
562           and ADC161S626 chips.
563
564           This driver can also be built as a module. If so, the module will be
565           called ti-adc161s626.
566
567 config TI_ADS1015
568         tristate "Texas Instruments ADS1015 ADC"
569         depends on I2C && !SENSORS_ADS1015
570         select REGMAP_I2C
571         select IIO_BUFFER
572         select IIO_TRIGGERED_BUFFER
573         help
574           If you say yes here you get support for Texas Instruments ADS1015
575           ADC chip.
576
577           This driver can also be built as a module. If so, the module will be
578           called ti-ads1015.
579
580 config TI_ADS7950
581         tristate "Texas Instruments ADS7950 ADC driver"
582         depends on SPI
583         select IIO_BUFFER
584         select IIO_TRIGGERED_BUFFER
585         help
586           Say yes here to build support for Texas Instruments ADS7950, ADS7951,
587           ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
588           ADS7960, ADS7961.
589
590           To compile this driver as a module, choose M here: the
591           module will be called ti-ads7950.
592
593 config TI_ADS8688
594         tristate "Texas Instruments ADS8688"
595         depends on SPI && OF
596         help
597           If you say yes here you get support for Texas Instruments ADS8684 and
598           and ADS8688 ADC chips
599
600           This driver can also be built as a module. If so, the module will be
601           called ti-ads8688.
602
603 config TI_AM335X_ADC
604         tristate "TI's AM335X ADC driver"
605         depends on MFD_TI_AM335X_TSCADC && HAS_DMA
606         select IIO_BUFFER
607         select IIO_KFIFO_BUF
608         help
609           Say yes here to build support for Texas Instruments ADC
610           driver which is also a MFD client.
611
612           To compile this driver as a module, choose M here: the module will be
613           called ti_am335x_adc.
614
615 config TI_TLC4541
616         tristate "Texas Instruments TLC4541 ADC driver"
617         depends on SPI
618         select IIO_BUFFER
619         select IIO_TRIGGERED_BUFFER
620         help
621           Say yes here to build support for Texas Instruments TLC4541 / TLC3541
622           ADC chips.
623
624           This driver can also be built as a module. If so, the module will be
625           called ti-tlc4541.
626
627 config TWL4030_MADC
628         tristate "TWL4030 MADC (Monitoring A/D Converter)"
629         depends on TWL4030_CORE
630         help
631           This driver provides support for Triton TWL4030-MADC. The
632           driver supports both RT and SW conversion methods.
633
634           This driver can also be built as a module. If so, the module will be
635           called twl4030-madc.
636
637 config TWL6030_GPADC
638         tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
639         depends on TWL4030_CORE
640         default n
641         help
642           Say yes here if you want support for the TWL6030/TWL6032 General
643           Purpose A/D Converter. This will add support for battery type
644           detection, battery voltage and temperature measurement, die
645           temperature measurement, system supply voltage, audio accessory,
646           USB ID detection.
647
648           This driver can also be built as a module. If so, the module will be
649           called twl6030-gpadc.
650
651 config VF610_ADC
652         tristate "Freescale vf610 ADC driver"
653         depends on OF
654         depends on HAS_IOMEM
655         select IIO_BUFFER
656         select IIO_TRIGGERED_BUFFER
657         help
658           Say yes here to support for Vybrid board analog-to-digital converter.
659           Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
660
661           This driver can also be built as a module. If so, the module will be
662           called vf610_adc.
663
664 config VIPERBOARD_ADC
665         tristate "Viperboard ADC support"
666         depends on MFD_VIPERBOARD && USB
667         help
668           Say yes here to access the ADC part of the Nano River
669           Technologies Viperboard.
670
671           To compile this driver as a module, choose M here: the module will be
672           called viperboard_adc.
673
674 config XILINX_XADC
675         tristate "Xilinx XADC driver"
676         depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
677         depends on HAS_IOMEM
678         select IIO_BUFFER
679         select IIO_TRIGGERED_BUFFER
680         help
681           Say yes here to have support for the Xilinx XADC. The driver does support
682           both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
683
684           The driver can also be build as a module. If so, the module will be called
685           xilinx-xadc.
686
687 endmenu