]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - drivers/iio/adc/Kconfig
Merge tag 'iio-for-4.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23...
[mirror_ubuntu-artful-kernel.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 MAX1363
330 tristate "Maxim max1363 ADC driver"
331 depends on I2C
332 select IIO_BUFFER
333 select IIO_TRIGGERED_BUFFER
334 help
335 Say yes here to build support for many Maxim i2c analog to digital
336 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
337 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
338 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
339 max11602, max11603, max11604, max11605, max11606, max11607,
340 max11608, max11609, max11610, max11611, max11612, max11613,
341 max11614, max11615, max11616, max11617, max11644, max11645,
342 max11646, max11647) Provides direct access via sysfs and buffered
343 data via the iio dev interface.
344
345 To compile this driver as a module, choose M here: the module will be
346 called max1363.
347
348 config MCP320X
349 tristate "Microchip Technology MCP3x01/02/04/08"
350 depends on SPI
351 help
352 Say yes here to build support for Microchip Technology's
353 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
354 MCP3208 or MCP3301 analog to digital converter.
355
356 This driver can also be built as a module. If so, the module will be
357 called mcp320x.
358
359 config MCP3422
360 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
361 depends on I2C
362 help
363 Say yes here to build support for Microchip Technology's MCP3421
364 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
365 analog to digital converters.
366
367 This driver can also be built as a module. If so, the module will be
368 called mcp3422.
369
370 config MEDIATEK_MT6577_AUXADC
371 tristate "MediaTek AUXADC driver"
372 depends on ARCH_MEDIATEK || COMPILE_TEST
373 depends on HAS_IOMEM
374 help
375 Say yes here to enable support for MediaTek mt65xx AUXADC.
376
377 The driver supports immediate mode operation to read from one of sixteen
378 channels (external or internal).
379
380 This driver can also be built as a module. If so, the module will be
381 called mt6577_auxadc.
382
383 config MEN_Z188_ADC
384 tristate "MEN 16z188 ADC IP Core support"
385 depends on MCB
386 help
387 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
388 carrier.
389
390 This driver can also be built as a module. If so, the module will be
391 called men_z188_adc.
392
393 config MXS_LRADC
394 tristate "Freescale i.MX23/i.MX28 LRADC"
395 depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM
396 depends on INPUT
397 select STMP_DEVICE
398 select IIO_BUFFER
399 select IIO_TRIGGERED_BUFFER
400 help
401 Say yes here to build support for i.MX23/i.MX28 LRADC convertor
402 built into these chips.
403
404 To compile this driver as a module, choose M here: the
405 module will be called mxs-lradc.
406
407 config NAU7802
408 tristate "Nuvoton NAU7802 ADC driver"
409 depends on I2C
410 help
411 Say yes here to build support for Nuvoton NAU7802 ADC.
412
413 To compile this driver as a module, choose M here: the
414 module will be called nau7802.
415
416 config PALMAS_GPADC
417 tristate "TI Palmas General Purpose ADC"
418 depends on MFD_PALMAS
419 help
420 Palmas series pmic chip by Texas Instruments (twl6035/6037)
421 is used in smartphones and tablets and supports a 16 channel
422 general purpose ADC.
423
424 config QCOM_SPMI_IADC
425 tristate "Qualcomm SPMI PMIC current ADC"
426 depends on SPMI
427 select REGMAP_SPMI
428 help
429 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
430
431 The driver supports single mode operation to read from one of two
432 channels (external or internal). Hardware have additional
433 channels internally used for gain and offset calibration.
434
435 To compile this driver as a module, choose M here: the module will
436 be called qcom-spmi-iadc.
437
438 config QCOM_SPMI_VADC
439 tristate "Qualcomm SPMI PMIC voltage ADC"
440 depends on SPMI
441 select REGMAP_SPMI
442 help
443 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
444
445 The driver supports multiple channels read. The VADC is a 15-bit
446 sigma-delta ADC. Some of the channels are internally used for
447 calibration.
448
449 To compile this driver as a module, choose M here: the module will
450 be called qcom-spmi-vadc.
451
452 config ROCKCHIP_SARADC
453 tristate "Rockchip SARADC driver"
454 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
455 depends on RESET_CONTROLLER
456 help
457 Say yes here to build support for the SARADC found in SoCs from
458 Rockchip.
459
460 To compile this driver as a module, choose M here: the
461 module will be called rockchip_saradc.
462
463 config STM32_ADC_CORE
464 tristate "STMicroelectronics STM32 adc core"
465 depends on ARCH_STM32 || COMPILE_TEST
466 depends on OF
467 depends on REGULATOR
468 help
469 Select this option to enable the core driver for STMicroelectronics
470 STM32 analog-to-digital converter (ADC).
471
472 This driver can also be built as a module. If so, the module
473 will be called stm32-adc-core.
474
475 config STM32_ADC
476 tristate "STMicroelectronics STM32 adc"
477 depends on STM32_ADC_CORE
478 help
479 Say yes here to build support for STMicroelectronics stm32 Analog
480 to Digital Converter (ADC).
481
482 This driver can also be built as a module. If so, the module
483 will be called stm32-adc.
484
485 config STX104
486 tristate "Apex Embedded Systems STX104 driver"
487 depends on X86 && ISA_BUS_API
488 select GPIOLIB
489 help
490 Say yes here to build support for the Apex Embedded Systems STX104
491 integrated analog PC/104 card.
492
493 This driver supports the 16 channels of single-ended (8 channels of
494 differential) analog inputs, 2 channels of analog output, 4 digital
495 inputs, and 4 digital outputs provided by the STX104.
496
497 The base port addresses for the devices may be configured via the base
498 array module parameter.
499
500 config TI_ADC081C
501 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
502 depends on I2C
503 select IIO_BUFFER
504 select IIO_TRIGGERED_BUFFER
505 help
506 If you say yes here you get support for Texas Instruments ADC081C,
507 ADC101C and ADC121C ADC chips.
508
509 This driver can also be built as a module. If so, the module will be
510 called ti-adc081c.
511
512 config TI_ADC0832
513 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
514 depends on SPI
515 select IIO_BUFFER
516 select IIO_TRIGGERED_BUFFER
517 help
518 If you say yes here you get support for Texas Instruments ADC0831,
519 ADC0832, ADC0834, ADC0838 ADC chips.
520
521 This driver can also be built as a module. If so, the module will be
522 called ti-adc0832.
523
524 config TI_ADC12138
525 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
526 depends on SPI
527 select IIO_BUFFER
528 select IIO_TRIGGERED_BUFFER
529 help
530 If you say yes here you get support for Texas Instruments ADC12130,
531 ADC12132 and ADC12138 chips.
532
533 This driver can also be built as a module. If so, the module will be
534 called ti-adc12138.
535
536 config TI_ADC128S052
537 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
538 depends on SPI
539 help
540 If you say yes here you get support for Texas Instruments ADC128S052,
541 ADC122S021 and ADC124S021 chips.
542
543 This driver can also be built as a module. If so, the module will be
544 called ti-adc128s052.
545
546 config TI_ADC161S626
547 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
548 depends on SPI
549 select IIO_BUFFER
550 select IIO_TRIGGERED_BUFFER
551 help
552 If you say yes here you get support for Texas Instruments ADC141S626,
553 and ADC161S626 chips.
554
555 This driver can also be built as a module. If so, the module will be
556 called ti-adc161s626.
557
558 config TI_ADS1015
559 tristate "Texas Instruments ADS1015 ADC"
560 depends on I2C && !SENSORS_ADS1015
561 select REGMAP_I2C
562 select IIO_BUFFER
563 select IIO_TRIGGERED_BUFFER
564 help
565 If you say yes here you get support for Texas Instruments ADS1015
566 ADC chip.
567
568 This driver can also be built as a module. If so, the module will be
569 called ti-ads1015.
570
571 config TI_ADS7950
572 tristate "Texas Instruments ADS7950 ADC driver"
573 depends on SPI
574 select IIO_BUFFER
575 select IIO_TRIGGERED_BUFFER
576 help
577 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
578 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
579 ADS7960, ADS7961.
580
581 To compile this driver as a module, choose M here: the
582 module will be called ti-ads7950.
583
584 config TI_ADS8688
585 tristate "Texas Instruments ADS8688"
586 depends on SPI && OF
587 help
588 If you say yes here you get support for Texas Instruments ADS8684 and
589 and ADS8688 ADC chips
590
591 This driver can also be built as a module. If so, the module will be
592 called ti-ads8688.
593
594 config TI_AM335X_ADC
595 tristate "TI's AM335X ADC driver"
596 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
597 select IIO_BUFFER
598 select IIO_KFIFO_BUF
599 help
600 Say yes here to build support for Texas Instruments ADC
601 driver which is also a MFD client.
602
603 To compile this driver as a module, choose M here: the module will be
604 called ti_am335x_adc.
605
606 config TWL4030_MADC
607 tristate "TWL4030 MADC (Monitoring A/D Converter)"
608 depends on TWL4030_CORE
609 help
610 This driver provides support for Triton TWL4030-MADC. The
611 driver supports both RT and SW conversion methods.
612
613 This driver can also be built as a module. If so, the module will be
614 called twl4030-madc.
615
616 config TWL6030_GPADC
617 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
618 depends on TWL4030_CORE
619 default n
620 help
621 Say yes here if you want support for the TWL6030/TWL6032 General
622 Purpose A/D Converter. This will add support for battery type
623 detection, battery voltage and temperature measurement, die
624 temperature measurement, system supply voltage, audio accessory,
625 USB ID detection.
626
627 This driver can also be built as a module. If so, the module will be
628 called twl6030-gpadc.
629
630 config VF610_ADC
631 tristate "Freescale vf610 ADC driver"
632 depends on OF
633 depends on HAS_IOMEM
634 select IIO_BUFFER
635 select IIO_TRIGGERED_BUFFER
636 help
637 Say yes here to support for Vybrid board analog-to-digital converter.
638 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
639
640 This driver can also be built as a module. If so, the module will be
641 called vf610_adc.
642
643 config VIPERBOARD_ADC
644 tristate "Viperboard ADC support"
645 depends on MFD_VIPERBOARD && USB
646 help
647 Say yes here to access the ADC part of the Nano River
648 Technologies Viperboard.
649
650 To compile this driver as a module, choose M here: the module will be
651 called viperboard_adc.
652
653 config XILINX_XADC
654 tristate "Xilinx XADC driver"
655 depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
656 depends on HAS_IOMEM
657 select IIO_BUFFER
658 select IIO_TRIGGERED_BUFFER
659 help
660 Say yes here to have support for the Xilinx XADC. The driver does support
661 both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
662
663 The driver can also be build as a module. If so, the module will be called
664 xilinx-xadc.
665
666 endmenu