Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# ADC drivers
4#
5# When adding new entries keep the list in alphabetical order
6
7menu "Analog to digital converters"
8
9config IIO_ADC_HELPER
10 tristate
11
12config 88PM886_GPADC
13 tristate "Marvell 88PM886 GPADC driver"
14 depends on MFD_88PM886_PMIC
15 default MFD_88PM886_PMIC
16 help
17 Say Y here to enable support for the GPADC (General Purpose ADC)
18 found on the Marvell 88PM886 PMIC. The GPADC measures various
19 internal voltages and temperatures, including (but not limited to)
20 system, battery and USB Vbus.
21
22 To compile this driver as a module, choose M here: the module will be
23 called 88pm886-gpadc.
24
25config AB8500_GPADC
26 bool "ST-Ericsson AB8500 GPADC driver"
27 depends on AB8500_CORE && REGULATOR_AB8500
28 default y
29 help
30 AB8500 Analog Baseband, mixed signal integrated circuit GPADC
31 (General Purpose Analog to Digital Converter) driver used to monitor
32 internal voltages, convert accessory and battery, AC (charger, mains)
33 and USB voltages integral to the U8500 platform.
34
35config AD_SIGMA_DELTA
36 tristate
37 select IIO_BUFFER
38 select IIO_BUFFER_DMAENGINE
39 select IIO_TRIGGERED_BUFFER
40 select SPI_OFFLOAD
41
42config AD4000
43 tristate "Analog Devices AD4000 ADC Driver"
44 depends on SPI
45 select IIO_BUFFER
46 select IIO_BUFFER_DMAENGINE
47 select IIO_TRIGGERED_BUFFER
48 select SPI_OFFLOAD
49 help
50 Say yes here to build support for Analog Devices AD4000 high speed
51 SPI analog to digital converters (ADC). If intended to use with
52 SPI offloading support, it is recommended to enable
53 CONFIG_SPI_AXI_SPI_ENGINE, CONFIG_PWM_AXI_PWMGEN, and
54 CONFIG_SPI_OFFLOAD_TRIGGER_PWM.
55
56 To compile this driver as a module, choose M here: the module will be
57 called ad4000.
58
59config AD4030
60 tristate "Analog Devices AD4030 ADC Driver"
61 depends on SPI
62 depends on GPIOLIB
63 select REGMAP
64 select IIO_BUFFER
65 select IIO_TRIGGERED_BUFFER
66 help
67 Say yes here to build support for Analog Devices AD4030 and AD4630 high speed
68 SPI analog to digital converters (ADC).
69
70 To compile this driver as a module, choose M here: the module will be
71 called ad4030.
72
73config AD4062
74 tristate "Analog Devices AD4062 Driver"
75 depends on I3C
76 select REGMAP_I3C
77 select IIO_BUFFER
78 select IIO_TRIGGERED_BUFFER
79 help
80 Say yes here to build support for Analog Devices AD4062 I3C analog
81 to digital converters (ADC).
82
83 To compile this driver as a module, choose M here: the module will be
84 called ad4062.
85
86config AD4080
87 tristate "Analog Devices AD4080 high speed ADC"
88 depends on SPI
89 select REGMAP_SPI
90 select IIO_BACKEND
91 help
92 Say yes here to build support for Analog Devices AD4080
93 high speed, low noise, low distortion, 20-bit, Easy Drive,
94 successive approximation register (SAR) analog-to-digital
95 converter (ADC). Supports iio_backended devices for AD4080.
96
97 To compile this driver as a module, choose M here: the module will be
98 called ad4080.
99
100config AD4130
101 tristate "Analog Device AD4130 ADC Driver"
102 depends on SPI
103 depends on GPIOLIB
104 select IIO_BUFFER
105 select IIO_KFIFO_BUF
106 select REGMAP_SPI
107 depends on COMMON_CLK
108 help
109 Say yes here to build support for Analog Devices AD4130-8 SPI analog
110 to digital converters (ADC).
111
112 To compile this driver as a module, choose M here: the module will be
113 called ad4130.
114
115config AD4134
116 tristate "Analog Device AD4134 ADC Driver"
117 depends on SPI
118 select REGMAP_SPI
119 select CRC8
120 help
121 Say yes here to build support for Analog Devices AD4134 SPI analog to
122 digital converters (ADC).
123
124 To compile this driver as a module, choose M here: the module will be
125 called ad4134_spi.
126
127config AD4170_4
128 tristate "Analog Device AD4170-4 ADC Driver"
129 depends on SPI
130 select REGMAP_SPI
131 select IIO_BUFFER
132 select IIO_TRIGGERED_BUFFER
133 depends on COMMON_CLK
134 depends on GPIOLIB
135 help
136 Say yes here to build support for Analog Devices AD4170-4 SPI analog
137 to digital converters (ADC).
138
139 To compile this driver as a module, choose M here: the module will be
140 called ad4170-4.
141
142config AD4695
143 tristate "Analog Device AD4695 ADC Driver"
144 depends on SPI
145 select IIO_BUFFER
146 select IIO_BUFFER_DMAENGINE
147 select IIO_TRIGGERED_BUFFER
148 select REGMAP
149 select SPI_OFFLOAD
150 help
151 Say yes here to build support for Analog Devices AD4695 and similar
152 analog to digital converters (ADC).
153
154 To compile this driver as a module, choose M here: the module will be
155 called ad4695.
156
157config AD4851
158 tristate "Analog Device AD4851 DAS Driver"
159 depends on SPI
160 depends on PWM
161 select REGMAP_SPI
162 select IIO_BACKEND
163 help
164 Say yes here to build support for Analog Devices AD4851, AD4852,
165 AD4853, AD4854, AD4855, AD4856, AD4857, AD4858, AD4858I high speed
166 data acquisition system (DAS).
167
168 To compile this driver as a module, choose M here: the module will be
169 called ad4851.
170
171config AD7091R
172 tristate
173
174config AD7091R5
175 tristate "Analog Devices AD7091R5 ADC Driver"
176 depends on I2C
177 select AD7091R
178 select REGMAP_I2C
179 help
180 Say yes here to build support for Analog Devices AD7091R-5 ADC.
181
182config AD7091R8
183 tristate "Analog Devices AD7091R8 ADC Driver"
184 depends on SPI
185 select AD7091R
186 select REGMAP_SPI
187 help
188 Say yes here to build support for Analog Devices AD7091R-2, AD7091R-4,
189 and AD7091R-8 ADC.
190
191 To compile this driver as a module, choose M here: the module will be
192 called ad7091r8.
193
194config AD7124
195 tristate "Analog Devices AD7124 and similar sigma-delta ADCs driver"
196 depends on SPI_MASTER
197 select AD_SIGMA_DELTA
198 help
199 Say yes here to build support for Analog Devices AD7124-4 and AD7124-8
200 SPI analog to digital converters (ADC).
201
202 To compile this driver as a module, choose M here: the module will be
203 called ad7124.
204
205config AD7173
206 tristate "Analog Devices AD7173 driver"
207 depends on SPI_MASTER
208 select AD_SIGMA_DELTA
209 select GPIOLIB
210 select GPIO_REGMAP
211 select REGMAP_SPI
212 help
213 Say yes here to build support for Analog Devices AD7173 and similar ADC
214 Currently supported models:
215 - AD7172-2
216 - AD7173-8
217 - AD7175-2
218 - AD7176-2
219
220 To compile this driver as a module, choose M here: the module will be
221 called ad7173.
222
223config AD7191
224 tristate "Analog Devices AD7191 ADC driver"
225 depends on SPI
226 select AD_SIGMA_DELTA
227 help
228 Say yes here to build support for Analog Devices AD7191.
229
230 To compile this driver as a module, choose M here: the
231 module will be called ad7191.
232
233config AD7192
234 tristate "Analog Devices AD7192 and similar ADC driver"
235 depends on SPI
236 select AD_SIGMA_DELTA
237 help
238 Say yes here to build support for Analog Devices SPI analog to digital
239 converters (ADC):
240 - AD7190
241 - AD7192
242 - AD7193
243 - AD7194
244 - AD7195
245 If unsure, say N (but it's safe to say "Y").
246
247 To compile this driver as a module, choose M here: the
248 module will be called ad7192.
249
250config AD7266
251 tristate "Analog Devices AD7265/AD7266 ADC driver"
252 depends on SPI_MASTER
253 select IIO_BUFFER
254 select IIO_TRIGGER
255 select IIO_TRIGGERED_BUFFER
256 help
257 Say yes here to build support for Analog Devices AD7265 and AD7266
258 ADCs.
259
260 To compile this driver as a module, choose M here: the module will be
261 called ad7266.
262
263config AD7280
264 tristate "Analog Devices AD7280A Lithium Ion Battery Monitoring System"
265 depends on SPI
266 select CRC8
267 help
268 Say yes here to build support for Analog Devices AD7280A
269 Lithium Ion Battery Monitoring System.
270
271 To compile this driver as a module, choose M here: the
272 module will be called ad7280a
273
274config AD7291
275 tristate "Analog Devices AD7291 ADC driver"
276 depends on I2C
277 help
278 Say yes here to build support for Analog Devices AD7291
279 8 Channel ADC with temperature sensor.
280
281 To compile this driver as a module, choose M here: the
282 module will be called ad7291.
283
284config AD7292
285 tristate "Analog Devices AD7292 ADC driver"
286 depends on SPI
287 help
288 Say yes here to build support for Analog Devices AD7292
289 8 Channel ADC with temperature sensor.
290
291 To compile this driver as a module, choose M here: the
292 module will be called ad7292.
293
294config AD7298
295 tristate "Analog Devices AD7298 ADC driver"
296 depends on SPI
297 select IIO_BUFFER
298 select IIO_TRIGGERED_BUFFER
299 help
300 Say yes here to build support for Analog Devices AD7298
301 8 Channel ADC with temperature sensor.
302
303 To compile this driver as a module, choose M here: the
304 module will be called ad7298.
305
306config AD7380
307 tristate "Analog Devices AD7380 ADC driver"
308 depends on SPI_MASTER
309 select SPI_OFFLOAD
310 select IIO_BUFFER
311 select IIO_BUFFER_DMAENGINE
312 select IIO_TRIGGER
313 select IIO_TRIGGERED_BUFFER
314 help
315 AD7380 is a family of simultaneous sampling ADCs that share the same
316 SPI register map and have similar pinouts.
317
318 Say yes here to build support for Analog Devices AD7380 ADC and
319 similar chips.
320
321 To compile this driver as a module, choose M here: the module will be
322 called ad7380.
323
324config AD7405
325 tristate "Analog Device AD7405 ADC Driver"
326 depends on IIO_BACKEND
327 help
328 Say yes here to build support for Analog Devices AD7405, ADUM7701,
329 ADUM7702, ADUM7703 analog to digital converters (ADC).
330
331 To compile this driver as a module, choose M here: the module will be
332 called ad7405.
333
334config AD7476
335 tristate "Analog Devices AD7476 1-channel ADCs driver and other similar devices from AD and TI"
336 depends on SPI
337 select IIO_BUFFER
338 select IIO_TRIGGERED_BUFFER
339 help
340 Say yes here to build support for the following SPI analog to
341 digital converters (ADCs):
342 Analog Devices: AD7273, AD7274, AD7276, AD7277, AD7278, AD7475,
343 AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495, AD7910,
344 AD7920.
345 Texas Instruments: ADS7866, ADS7867, ADS7868.
346
347 To compile this driver as a module, choose M here: the
348 module will be called ad7476.
349
350config AD7606
351 tristate
352 select IIO_BUFFER
353 select IIO_TRIGGERED_BUFFER
354
355config AD7606_IFACE_PARALLEL
356 tristate "Analog Devices AD7606 ADC driver with parallel interface support"
357 depends on HAS_IOPORT
358 select AD7606
359 select IIO_BACKEND
360 help
361 Say yes here to build parallel interface support for Analog Devices:
362 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC).
363 It also support iio_backended devices for AD7606B.
364
365 To compile this driver as a module, choose M here: the
366 module will be called ad7606_par.
367
368config AD7606_IFACE_SPI
369 tristate "Analog Devices AD7606 ADC driver with spi interface support"
370 depends on SPI
371 select AD7606
372 select IIO_BUFFER_DMAENGINE
373 select SPI_OFFLOAD
374 help
375 Say yes here to build spi interface support for Analog Devices:
376 ad7605-4, ad7606, ad7606-6, ad7606-4 analog to digital converters (ADC).
377
378 To compile this driver as a module, choose M here: the
379 module will be called ad7606_spi.
380
381config AD7625
382 tristate "Analog Devices AD7625/AD7626 High Speed ADC driver"
383 depends on PWM
384 select IIO_BACKEND
385 help
386 Say yes here to build support for Analog Devices:
387 * AD7625 16-Bit, 6 MSPS PulSAR Analog-to-Digital Converter
388 * AD7626 16-Bit, 10 MSPS PulSAR Analog-to-Digital Converter
389 * AD7960 18-Bit, 5 MSPS PulSAR Analog-to-Digital Converter
390 * AD7961 16-Bit, 5 MSPS PulSAR Analog-to-Digital Converter
391
392 The driver requires the assistance of the AXI ADC IP core to operate.
393
394 To compile this driver as a module, choose M here: the module will be
395 called ad7625.
396
397config AD7766
398 tristate "Analog Devices AD7766/AD7767 ADC driver"
399 depends on SPI_MASTER
400 select IIO_BUFFER
401 select IIO_TRIGGERED_BUFFER
402 help
403 Say yes here to build support for Analog Devices AD7766, AD7766-1,
404 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters.
405
406 To compile this driver as a module, choose M here: the module will be
407 called ad7766.
408
409config AD7768_1
410 tristate "Analog Devices AD7768-1 ADC driver"
411 depends on SPI
412 select REGULATOR
413 select REGMAP_SPI
414 select RATIONAL
415 select IIO_BUFFER
416 select IIO_TRIGGER
417 select IIO_TRIGGERED_BUFFER
418 help
419 Say yes here to build support for Analog Devices AD7768-1 SPI
420 simultaneously sampling sigma-delta analog to digital converter (ADC).
421
422 To compile this driver as a module, choose M here: the module will be
423 called ad7768-1.
424
425config AD7779
426 tristate "Analog Devices AD7779 ADC driver"
427 depends on SPI
428 select CRC8
429 select IIO_BUFFER
430 select IIO_BACKEND
431 help
432 Say yes here to build support for Analog Devices AD777X family
433 (AD7770, AD7771, AD7779) analog to digital converter (ADC).
434
435 To compile this driver as a module, choose M here: the module will be
436 called ad7779.
437
438config AD7780
439 tristate "Analog Devices AD7780 and similar ADCs driver"
440 depends on SPI
441 depends on GPIOLIB || COMPILE_TEST
442 select AD_SIGMA_DELTA
443 help
444 Say yes here to build support for Analog Devices AD7170, AD7171,
445 AD7780 and AD7781 SPI analog to digital converters (ADC).
446
447 To compile this driver as a module, choose M here: the
448 module will be called ad7780.
449
450config AD7791
451 tristate "Analog Devices AD7791 ADC driver"
452 depends on SPI
453 select AD_SIGMA_DELTA
454 help
455 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
456 AD7790 and AD7791 SPI analog to digital converters (ADC).
457
458 To compile this driver as a module, choose M here: the module will be
459 called ad7791.
460
461config AD7793
462 tristate "Analog Devices AD7793 and similar ADCs driver"
463 depends on SPI
464 select AD_SIGMA_DELTA
465 help
466 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
467 AD7794 and AD7795 SPI analog to digital converters (ADC).
468
469 To compile this driver as a module, choose M here: the
470 module will be called AD7793.
471
472config AD7887
473 tristate "Analog Devices AD7887 ADC driver"
474 depends on SPI
475 select IIO_BUFFER
476 select IIO_TRIGGERED_BUFFER
477 help
478 Say yes here to build support for Analog Devices
479 AD7887 SPI analog to digital converter (ADC).
480
481 To compile this driver as a module, choose M here: the
482 module will be called ad7887.
483
484config AD7923
485 tristate "Analog Devices AD7923 and similar ADCs driver"
486 depends on SPI
487 select IIO_BUFFER
488 select IIO_TRIGGERED_BUFFER
489 help
490 Say yes here to build support for Analog Devices
491 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
492
493 To compile this driver as a module, choose M here: the
494 module will be called ad7923.
495
496config AD7944
497 tristate "Analog Devices AD7944 and similar ADCs driver"
498 depends on SPI
499 select SPI_OFFLOAD
500 select IIO_BUFFER
501 select IIO_BUFFER_DMAENGINE
502 select IIO_TRIGGERED_BUFFER
503 help
504 Say yes here to build support for Analog Devices
505 AD7944, AD7985, AD7986 ADCs.
506
507 To compile this driver as a module, choose M here: the
508 module will be called ad7944
509
510config AD7949
511 tristate "Analog Devices AD7949 and similar ADCs driver"
512 depends on SPI
513 help
514 Say yes here to build support for Analog Devices
515 AD7949, AD7682, AD7689 8 Channel ADCs.
516
517 To compile this driver as a module, choose M here: the
518 module will be called ad7949.
519
520config AD799X
521 tristate "Analog Devices AD799x ADC driver"
522 depends on I2C
523 select IIO_BUFFER
524 select IIO_TRIGGERED_BUFFER
525 help
526 Say yes here to build support for Analog Devices:
527 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
528 i2c analog to digital converters (ADC). Provides direct access
529 via sysfs.
530
531 To compile this driver as a module, choose M here: the module will be
532 called ad799x.
533
534config AD9467
535 tristate "Analog Devices AD9467 High Speed ADC driver"
536 depends on SPI
537 select IIO_BACKEND
538 help
539 Say yes here to build support for Analog Devices:
540 * AD9467 16-Bit, 200 MSPS/250 MSPS Analog-to-Digital Converter
541
542 The driver requires the assistance of the AXI ADC IP core to operate,
543 since SPI is used for configuration only, while data has to be
544 streamed into memory via DMA.
545
546 To compile this driver as a module, choose M here: the module will be
547 called ad9467.
548
549config ADE9000
550 tristate "Analog Devices ADE9000 Multiphase Energy, and Power Quality Monitoring IC Driver"
551 depends on SPI
552 select REGMAP_SPI
553 select IIO_BUFFER
554 select IIO_KFIFO_BUF
555 help
556 Say yes here to build support for the Analog Devices ADE9000,
557 a highly accurate, multiphase energy and power quality monitoring
558 integrated circuit.
559
560 The device features high-precision analog-to-digital converters
561 and digital signal processing to compute RMS values, power factor,
562 frequency, and harmonic analysis. It supports SPI communication
563 and provides buffered data output through the IIO framework.
564
565 To compile this driver as a module, choose M here: the module will
566 be called ade9000.
567
568config ADI_AXI_ADC
569 tristate "Analog Devices Generic AXI ADC IP core driver"
570 depends on MICROBLAZE || NIOS2 || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_INTEL_SOCFPGA || COMPILE_TEST
571 select IIO_BUFFER
572 select IIO_BUFFER_HW_CONSUMER
573 select IIO_BUFFER_DMAENGINE
574 select REGMAP_MMIO
575 select IIO_BACKEND
576 help
577 Say yes here to build support for Analog Devices Generic
578 AXI ADC IP core. The IP core is used for interfacing with
579 analog-to-digital (ADC) converters that require either a high-speed
580 serial interface (JESD204B/C) or a source synchronous parallel
581 interface (LVDS/CMOS).
582 Typically (for such devices) SPI will be used for configuration only,
583 while this IP core handles the streaming of data into memory via DMA.
584
585 Link: https://wiki.analog.com/resources/fpga/docs/axi_adc_ip
586 If unsure, say N (but it's safe to say "Y").
587
588 To compile this driver as a module, choose M here: the
589 module will be called adi-axi-adc.
590
591config ASPEED_ADC
592 tristate "Aspeed ADC"
593 depends on ARCH_ASPEED || COMPILE_TEST
594 depends on COMMON_CLK
595 help
596 If you say yes here you get support for the ADC included in Aspeed
597 BMC SoCs.
598
599 To compile this driver as a module, choose M here: the module will be
600 called aspeed_adc.
601
602config AT91_ADC
603 tristate "Atmel AT91 ADC"
604 depends on ARCH_AT91 || COMPILE_TEST
605 depends on INPUT && SYSFS && OF
606 select IIO_BUFFER
607 select IIO_TRIGGERED_BUFFER
608 help
609 Say yes here to build support for Atmel AT91 ADC.
610
611 To compile this driver as a module, choose M here: the module will be
612 called at91_adc.
613
614config AT91_SAMA5D2_ADC
615 tristate "Atmel AT91 SAMA5D2 ADC"
616 depends on ARCH_AT91 || COMPILE_TEST
617 depends on HAS_IOMEM
618 select IIO_BUFFER
619 select IIO_TRIGGERED_BUFFER
620 help
621 Say yes here to build support for Atmel SAMA5D2 ADC which is
622 available on SAMA5D2 SoC family.
623
624 To compile this driver as a module, choose M here: the module will be
625 called at91-sama5d2_adc.
626
627config AXP20X_ADC
628 tristate "X-Powers AXP20X and AXP22X ADC driver"
629 depends on MFD_AXP20X
630 help
631 Say yes here to have support for X-Powers power management IC (PMIC)
632 AXP20X and AXP22X ADC devices.
633
634 To compile this driver as a module, choose M here: the module will be
635 called axp20x_adc.
636
637config AXP288_ADC
638 tristate "X-Powers AXP288 ADC driver"
639 depends on MFD_AXP20X
640 help
641 Say yes here to have support for X-Powers power management IC (PMIC) ADC
642 device. Depending on platform configuration, this general purpose ADC can
643 be used for sampling sensors such as thermal resistors.
644
645 To compile this driver as a module, choose M here: the module will be
646 called axp288_adc.
647
648config BCM_IPROC_ADC
649 tristate "Broadcom IPROC ADC driver"
650 depends on (ARCH_BCM_IPROC && OF) || COMPILE_TEST
651 depends on MFD_SYSCON
652 default ARCH_BCM_CYGNUS
653 help
654 Say Y here if you want to add support for the Broadcom static
655 ADC driver.
656
657 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
658 channels. The driver allows the user to read voltage values.
659
660config BERLIN2_ADC
661 tristate "Marvell Berlin2 ADC driver"
662 depends on ARCH_BERLIN || COMPILE_TEST
663 help
664 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
665 temperature measurement.
666
667config CC10001_ADC
668 tristate "Cosmic Circuits 10001 ADC driver"
669 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
670 select IIO_BUFFER
671 select IIO_TRIGGERED_BUFFER
672 help
673 Say yes here to build support for Cosmic Circuits 10001 ADC.
674
675 This driver can also be built as a module. If so, the module will be
676 called cc10001_adc.
677
678config CPCAP_ADC
679 tristate "Motorola CPCAP PMIC ADC driver"
680 depends on MFD_CPCAP
681 select IIO_BUFFER
682 select IIO_TRIGGERED_BUFFER
683 help
684 Say yes here to build support for Motorola CPCAP PMIC ADC.
685
686 This driver can also be built as a module. If so, the module will be
687 called cpcap-adc.
688
689config DA9150_GPADC
690 tristate "Dialog DA9150 GPADC driver support"
691 depends on MFD_DA9150
692 help
693 Say yes here to build support for Dialog DA9150 GPADC.
694
695 This driver can also be built as a module. If chosen, the module name
696 will be da9150-gpadc.
697
698 To compile this driver as a module, choose M here: the module will be
699 called berlin2-adc.
700
701config DLN2_ADC
702 tristate "Diolan DLN-2 ADC driver support"
703 depends on MFD_DLN2
704 select IIO_BUFFER
705 select IIO_TRIGGERED_BUFFER
706 help
707 Say yes here to build support for Diolan DLN-2 ADC.
708
709 This driver can also be built as a module. If so, the module will be
710 called adc_dln2.
711
712config ENVELOPE_DETECTOR
713 tristate "Envelope detector using a DAC and a comparator"
714 help
715 Say yes here to build support for an envelope detector using a DAC
716 and a comparator.
717
718 To compile this driver as a module, choose M here: the module will be
719 called envelope-detector.
720
721config EP93XX_ADC
722 tristate "Cirrus Logic EP93XX ADC driver"
723 depends on ARCH_EP93XX || COMPILE_TEST
724 depends on HAS_IOMEM
725 help
726 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic.
727 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this
728 case driver will reduce its CPU usage by 90% in some use cases.
729
730 To compile this driver as a module, choose M here: the module will be
731 called ep93xx_adc.
732
733config EXYNOS_ADC
734 tristate "Exynos ADC driver support"
735 depends on ARCH_EXYNOS || ARCH_S3C64XX || ARCH_S5PV210 || (OF && COMPILE_TEST)
736 depends on HAS_IOMEM
737 help
738 Driver for the ADC block found in the Samsung S3C6410, S5Pv210 and
739 Exynos SoCs.
740 Choose Y here only if you build for such Samsung SoC.
741
742 To compile this driver as a module, choose M here: the module will be
743 called exynos_adc.
744
745config MXS_LRADC_ADC
746 tristate "Freescale i.MX23/i.MX28 LRADC ADC"
747 depends on MFD_MXS_LRADC
748 select IIO_BUFFER
749 select IIO_TRIGGERED_BUFFER
750 help
751 Say yes here to build support for the ADC functions of the
752 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
753 battery voltage measurement, and die temperature measurement.
754
755 This driver can also be built as a module. If so, the module will be
756 called mxs-lradc-adc.
757
758config FSL_MX25_ADC
759 tristate "Freescale MX25 ADC driver"
760 depends on MFD_MX25_TSADC
761 help
762 Generic Conversion Queue driver used for general purpose ADC in the
763 MX25. This driver supports single measurements using the MX25 ADC.
764
765config GEHC_PMC_ADC
766 tristate "GE HealthCare PMC ADC driver"
767 depends on I2C
768 help
769 Say yes here to build support for the GE HealthCare PMC 16-bit
770 16-Channel ADC.
771
772 To compile this driver as a module, choose M here: the module will be
773 called gehc-pmc-adc.
774
775config HI8435
776 tristate "Holt Integrated Circuits HI-8435 threshold detector"
777 select IIO_TRIGGERED_EVENT
778 depends on SPI
779 help
780 If you say yes here you get support for Holt Integrated Circuits
781 HI-8435 chip.
782
783 This driver can also be built as a module. If so, the module will be
784 called hi8435.
785
786config HX711
787 tristate "AVIA HX711 ADC for weight cells"
788 depends on GPIOLIB
789 select IIO_BUFFER
790 select IIO_TRIGGERED_BUFFER
791 help
792 If you say yes here you get support for AVIA HX711 ADC which is used
793 for weigh cells
794
795 This driver uses two GPIOs, one acts as the clock and controls the
796 channel selection and gain, the other one is used for the measurement
797 data
798
799 Currently the raw value is read from the chip and delivered.
800 To get an actual weight one needs to subtract the
801 zero offset and multiply by a scale factor.
802 This should be done in userspace.
803
804 This driver can also be built as a module. If so, the module will be
805 called hx711.
806
807config INA2XX_ADC
808 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
809 depends on I2C && !SENSORS_INA2XX
810 select REGMAP_I2C
811 select IIO_BUFFER
812 select IIO_KFIFO_BUF
813 help
814 Say yes here to build support for TI INA2xx family of Power Monitors.
815 This driver is mutually exclusive with the HWMON version.
816
817config INGENIC_ADC
818 tristate "Ingenic JZ47xx SoCs ADC driver"
819 depends on MIPS || COMPILE_TEST
820 select IIO_BUFFER
821 help
822 Say yes here to build support for the Ingenic JZ47xx SoCs ADC unit.
823
824 This driver can also be built as a module. If so, the module will be
825 called ingenic_adc.
826
827config INTEL_DC_TI_ADC
828 tristate "Intel Bay Trail / Cherry Trail Dollar Cove TI ADC driver"
829 depends on INTEL_SOC_PMIC_CHTDC_TI
830 help
831 Say yes here to have support for the Dollar Cove TI PMIC ADC device.
832 Depending on platform configuration, this general purpose ADC can be
833 used for sensors such as battery voltage and thermal resistors.
834
835 To compile this driver as a module, choose M here: the module will be
836 called intel_dc_ti_adc.
837
838config INTEL_MRFLD_ADC
839 tristate "Intel Merrifield Basin Cove ADC driver"
840 depends on INTEL_SOC_PMIC_MRFLD
841 help
842 Say yes here to have support for Basin Cove power management IC (PMIC) ADC
843 device. Depending on platform configuration, this general purpose ADC can
844 be used for sampling sensors such as thermal resistors.
845
846 To compile this driver as a module, choose M here: the module will be
847 called intel_mrfld_adc.
848
849config IMX7D_ADC
850 tristate "Freescale IMX7D ADC driver"
851 depends on ARCH_MXC || COMPILE_TEST
852 depends on HAS_IOMEM
853 help
854 Say yes here to build support for IMX7D ADC.
855
856 This driver can also be built as a module. If so, the module will be
857 called imx7d_adc.
858
859config IMX8QXP_ADC
860 tristate "NXP IMX8QXP ADC driver"
861 depends on ARCH_MXC || COMPILE_TEST
862 depends on HAS_IOMEM
863 help
864 Say yes here to build support for IMX8QXP ADC.
865
866 This driver can also be built as a module. If so, the module will be
867 called imx8qxp-adc.
868
869config IMX93_ADC
870 tristate "IMX93 ADC driver"
871 depends on ARCH_MXC || COMPILE_TEST
872 depends on HAS_IOMEM
873 help
874 Say yes here to build support for IMX93 ADC.
875
876 This driver can also be built as a module. If so, the module will be
877 called imx93_adc.
878
879config LP8788_ADC
880 tristate "LP8788 ADC driver"
881 depends on MFD_LP8788
882 help
883 Say yes here to build support for TI LP8788 ADC.
884
885 To compile this driver as a module, choose M here: the module will be
886 called lp8788_adc.
887
888config LPC18XX_ADC
889 tristate "NXP LPC18xx ADC driver"
890 depends on ARCH_LPC18XX || COMPILE_TEST
891 depends on HAS_IOMEM
892 help
893 Say yes here to build support for NXP LPC18XX ADC.
894
895 To compile this driver as a module, choose M here: the module will be
896 called lpc18xx_adc.
897
898config LPC32XX_ADC
899 tristate "NXP LPC32XX ADC"
900 depends on ARCH_LPC32XX || COMPILE_TEST
901 depends on HAS_IOMEM
902 help
903 Say yes here to build support for the integrated ADC inside the
904 LPC32XX SoC. Note that this feature uses the same hardware as the
905 touchscreen driver, so you should either select only one of the two
906 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
907 activate only one via device tree selection. Provides direct access
908 via sysfs.
909
910config LTC2309
911 tristate "Linear Technology LTC2309 ADC driver"
912 depends on I2C
913 help
914 Say yes here to build support for Linear Technology LTC2309, a low
915 noise, low power, 8-channel, 12-bit SAR ADC
916
917 This driver can also be built as a module. If so, the module will
918 be called ltc2309.
919
920config LTC2471
921 tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
922 depends on I2C
923 help
924 Say yes here to build support for Linear Technology LTC2471 and
925 LTC2473 16-bit I2C ADC.
926
927 This driver can also be built as a module. If so, the module will
928 be called ltc2471.
929
930config LTC2485
931 tristate "Linear Technology LTC2485 ADC driver"
932 depends on I2C
933 help
934 Say yes here to build support for Linear Technology LTC2485 ADC.
935
936 To compile this driver as a module, choose M here: the module will be
937 called ltc2485.
938
939config LTC2496
940 tristate "Linear Technology LTC2496 ADC driver"
941 depends on SPI
942 help
943 Say yes here to build support for Linear Technology LTC2496
944 16-Bit 8-/16-Channel Delta Sigma ADC.
945
946 To compile this driver as a module, choose M here: the module will be
947 called ltc2496.
948
949config LTC2497
950 tristate "Linear Technology LTC2497 ADC driver"
951 depends on I2C
952 help
953 Say yes here to build support for Linear Technology LTC2497
954 16-Bit 8-/16-Channel Delta Sigma ADC.
955
956 To compile this driver as a module, choose M here: the module will be
957 called ltc2497.
958
959config MAX1027
960 tristate "Maxim max1027 ADC driver"
961 depends on SPI
962 select IIO_BUFFER
963 select IIO_TRIGGERED_BUFFER
964 help
965 Say yes here to build support for Maxim SPI {10,12}-bit ADC models:
966 max1027, max1029, max1031, max1227, max1229 and max1231.
967
968 To compile this driver as a module, choose M here: the module will be
969 called max1027.
970
971config MAX11100
972 tristate "Maxim max11100 ADC driver"
973 depends on SPI_MASTER
974 help
975 Say yes here to build support for Maxim max11100 SPI ADC
976
977 To compile this driver as a module, choose M here: the module will be
978 called max11100.
979
980config MAX1118
981 tristate "Maxim max1117/max1118/max1119 ADCs driver"
982 depends on SPI
983 select IIO_BUFFER
984 select IIO_TRIGGERED_BUFFER
985 help
986 Say yes here to build support for Maxim max1117/max1118/max1119
987 8-bit, dual-channel ADCs.
988
989 To compile this driver as a module, choose M here: the module will be
990 called max1118.
991
992config MAX11205
993 tristate "Maxim max11205 ADC driver"
994 depends on SPI
995 select AD_SIGMA_DELTA
996 select IIO_BUFFER
997 select IIO_TRIGGERED_BUFFER
998
999 help
1000 Say yes here to build support for Maxim max11205 16-bit, single-channel
1001 ultra-low power delta-sigma ADC.
1002
1003 To compile this driver as a module, choose M here: the module will be
1004 called max11205.
1005
1006config MAX11410
1007 tristate "Analog Devices MAX11410 ADC driver"
1008 depends on SPI
1009 select REGMAP_SPI
1010 select IIO_BUFFER
1011 select IIO_TRIGGER
1012 select IIO_TRIGGERED_BUFFER
1013 help
1014 Say yes here to build support for Analog Devices MAX11410 ADCs.
1015
1016 To compile this driver as a module, choose M here: the module will be
1017 called max11410.
1018
1019config MAX1241
1020 tristate "Maxim max1241 ADC driver"
1021 depends on SPI_MASTER
1022 help
1023 Say yes here to build support for Maxim max1241 12-bit, single-channel
1024 ADC.
1025
1026 To compile this driver as a module, choose M here: the module will be
1027 called max1241.
1028
1029config MAX1363
1030 tristate "Maxim max1363 ADC driver"
1031 depends on I2C
1032 select IIO_BUFFER
1033 select IIO_TRIGGERED_BUFFER
1034 help
1035 Say yes here to build support for many Maxim i2c analog to digital
1036 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
1037 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
1038 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
1039 max11602, max11603, max11604, max11605, max11606, max11607,
1040 max11608, max11609, max11610, max11611, max11612, max11613,
1041 max11614, max11615, max11616, max11617, max11644, max11645,
1042 max11646, max11647) Provides direct access via sysfs and buffered
1043 data via the iio dev interface.
1044
1045 To compile this driver as a module, choose M here: the module will be
1046 called max1363.
1047
1048config MAX14001
1049 tristate "Analog Devices MAX14001/MAX14002 ADC driver"
1050 depends on SPI
1051 help
1052 Say yes here to build support for Analog Devices MAX14001/MAX14002
1053 Configurable, Isolated 10-bit ADCs for Multi-Range Binary Inputs.
1054
1055 To compile this driver as a module, choose M here: the module will be
1056 called max14001.
1057
1058config MAX34408
1059 tristate "Maxim max34408/max344089 ADC driver"
1060 depends on I2C
1061 help
1062 Say yes here to build support for Maxim max34408/max34409 current sense
1063 monitor with 8-bits ADC interface with overcurrent delay/threshold and
1064 shutdown delay.
1065
1066 To compile this driver as a module, choose M here: the module will be
1067 called max34408.
1068
1069config MAX77541_ADC
1070 tristate "Analog Devices MAX77541 ADC driver"
1071 depends on MFD_MAX77541
1072 help
1073 This driver controls a Analog Devices MAX77541 ADC
1074 via I2C bus. This device has one adc. Say yes here to build
1075 support for Analog Devices MAX77541 ADC interface.
1076
1077 To compile this driver as a module, choose M here:
1078 the module will be called max77541-adc.
1079
1080config MAX9611
1081 tristate "Maxim max9611/max9612 ADC driver"
1082 depends on I2C
1083 help
1084 Say yes here to build support for Maxim max9611/max9612 current sense
1085 amplifier with 12-bits ADC interface.
1086
1087 To compile this driver as a module, choose M here: the module will be
1088 called max9611.
1089
1090config MCP320X
1091 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
1092 depends on SPI
1093 help
1094 Say yes here to build support for Microchip Technology's
1095 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
1096 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital
1097 converters.
1098
1099 This driver can also be built as a module. If so, the module will be
1100 called mcp320x.
1101
1102config MCP3422
1103 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
1104 depends on I2C
1105 help
1106 Say yes here to build support for Microchip Technology's MCP3421
1107 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
1108 analog to digital converters.
1109
1110 This driver can also be built as a module. If so, the module will be
1111 called mcp3422.
1112
1113config MCP3564
1114 tristate "Microchip Technology MCP3461/2/4/R, MCP3561/2/4/R driver"
1115 depends on SPI
1116 depends on IIO
1117 help
1118 Say yes here to build support for Microchip Technology's MCP3461,
1119 MCP3462, MCP3464, MCP3461R, MCP3462R, MCP3464R, MCP3561, MCP3562,
1120 MCP3564, MCP3561R, MCP3562R and MCP3564R analog to digital
1121 converters.
1122
1123 This driver can also be built as a module. If so, the module will be
1124 called mcp3564.
1125
1126config MCP3911
1127 tristate "Microchip Technology MCP3911 driver"
1128 depends on SPI
1129 select IIO_BUFFER
1130 select IIO_TRIGGERED_BUFFER
1131 help
1132 Say yes here to build support for one of the following
1133 Microchip Technology's analog to digital converters:
1134 MCP3910, MCP3911, MCP3912, MCP3913, MCP3914,
1135 MCP3918 and MCP3919.
1136
1137 This driver can also be built as a module. If so, the module will be
1138 called mcp3911.
1139
1140config MEDIATEK_MT6359_AUXADC
1141 tristate "MediaTek MT6359 PMIC AUXADC driver"
1142 depends on MFD_MT6397
1143 help
1144 Say yes here to enable support for MediaTek MT6357, MT6358 and
1145 MT6359 PMICs Auxiliary ADC.
1146 This driver provides multiple channels for system monitoring,
1147 such as battery voltage, PMIC temperature, and others.
1148
1149 This driver can also be built as a module. If so, the module will be
1150 called mt6359-auxadc.
1151
1152config MEDIATEK_MT6360_ADC
1153 tristate "Mediatek MT6360 ADC driver"
1154 depends on MFD_MT6360
1155 select IIO_BUFFER
1156 select IIO_TRIGGERED_BUFFER
1157 help
1158 Say Y here to enable MT6360 ADC support.
1159 Integrated for System Monitoring includes
1160 is used in smartphones and tablets and supports a 11 channel
1161 general purpose ADC.
1162
1163config MEDIATEK_MT6370_ADC
1164 tristate "MediaTek MT6370 ADC driver"
1165 depends on MFD_MT6370
1166 help
1167 Say yes here to enable MediaTek MT6370 ADC support.
1168
1169 This ADC driver provides 9 channels for system monitoring (charger
1170 current, voltage, and temperature).
1171
1172 This driver can also be built as a module. If so, the module
1173 will be called "mt6370-adc".
1174
1175config MEDIATEK_MT6577_AUXADC
1176 tristate "MediaTek AUXADC driver"
1177 depends on ARCH_MEDIATEK || COMPILE_TEST
1178 depends on HAS_IOMEM
1179 help
1180 Say yes here to enable support for MediaTek mt65xx AUXADC.
1181
1182 The driver supports immediate mode operation to read from one of sixteen
1183 channels (external or internal).
1184
1185 This driver can also be built as a module. If so, the module will be
1186 called mt6577_auxadc.
1187
1188config MEN_Z188_ADC
1189 tristate "MEN 16z188 ADC IP Core support"
1190 depends on MCB
1191 help
1192 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
1193 carrier.
1194
1195 This driver can also be built as a module. If so, the module will be
1196 called men_z188_adc.
1197
1198config MESON_SARADC
1199 tristate "Amlogic Meson SAR ADC driver"
1200 default ARCH_MESON
1201 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
1202 select REGMAP_MMIO
1203 help
1204 Say yes here to build support for the SAR ADC found in Amlogic Meson
1205 SoCs.
1206
1207 To compile this driver as a module, choose M here: the
1208 module will be called meson_saradc.
1209
1210config MP2629_ADC
1211 tristate "Monolithic MP2629 ADC driver"
1212 depends on MFD_MP2629
1213 help
1214 Say yes to have support for battery charger IC MP2629 ADC device
1215 accessed over I2C.
1216
1217 This driver provides ADC conversion of system, input power supply
1218 and battery voltage & current information.
1219
1220config NAU7802
1221 tristate "Nuvoton NAU7802 ADC driver"
1222 depends on I2C
1223 help
1224 Say yes here to build support for Nuvoton NAU7802 ADC.
1225
1226 To compile this driver as a module, choose M here: the
1227 module will be called nau7802.
1228
1229config NCT7201
1230 tristate "Nuvoton Instruments NCT7201 and NCT7202 Power Monitor"
1231 depends on I2C
1232 select REGMAP_I2C
1233 help
1234 If you say yes here you get support for the Nuvoton NCT7201 and
1235 NCT7202 Voltage Monitor.
1236
1237 This driver can also be built as a module. If so, the module
1238 will be called nct7201.
1239
1240config NPCM_ADC
1241 tristate "Nuvoton NPCM ADC driver"
1242 depends on ARCH_NPCM || COMPILE_TEST
1243 depends on HAS_IOMEM
1244 help
1245 Say yes here to build support for Nuvoton NPCM ADC.
1246
1247 This driver can also be built as a module. If so, the module
1248 will be called npcm_adc.
1249
1250config NXP_SAR_ADC
1251 tristate "NXP S32G SAR-ADC driver"
1252 depends on ARCH_S32 || COMPILE_TEST
1253 select IIO_BUFFER
1254 select IIO_TRIGGERED_BUFFER
1255 help
1256 Say yes here to build support for S32G platforms
1257 analog-to-digital converter.
1258
1259 This driver can also be built as a module. If so, the module will be
1260 called nxp_sar_adc.
1261
1262config PAC1921
1263 tristate "Microchip Technology PAC1921 driver"
1264 depends on I2C
1265 select REGMAP_I2C
1266 select IIO_BUFFER
1267 select IIO_TRIGGERED_BUFFER
1268 help
1269 Say yes here to build support for Microchip Technology's PAC1921
1270 High-Side Power/Current Monitor with Analog Output.
1271
1272 This driver can also be built as a module. If so, the module
1273 will be called pac1921.
1274
1275config PAC1934
1276 tristate "Microchip Technology PAC1934 driver"
1277 depends on I2C
1278 help
1279 Say yes here to build support for Microchip Technology's PAC1931,
1280 PAC1932, PAC1933, PAC1934 Single/Multi-Channel Power Monitor with
1281 Accumulator.
1282
1283 This driver can also be built as a module. If so, the module
1284 will be called pac1934.
1285
1286config PALMAS_GPADC
1287 tristate "TI Palmas General Purpose ADC"
1288 depends on MFD_PALMAS
1289 help
1290 Palmas series pmic chip by Texas Instruments (twl6035/6037)
1291 is used in smartphones and tablets and supports a 16 channel
1292 general purpose ADC.
1293
1294config QCOM_VADC_COMMON
1295 tristate
1296
1297config QCOM_PM8XXX_XOADC
1298 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
1299 depends on MFD_PM8XXX
1300 select QCOM_VADC_COMMON
1301 help
1302 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
1303 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
1304
1305 To compile this driver as a module, choose M here: the module
1306 will be called qcom-pm8xxx-xoadc.
1307
1308config QCOM_SPMI_RRADC
1309 tristate "Qualcomm SPMI RRADC"
1310 depends on MFD_SPMI_PMIC
1311 help
1312 This is for the PMIC Round Robin ADC driver.
1313
1314 This driver exposes the battery ID resistor, battery thermal, PMIC die
1315 temperature, charger USB in and DC in voltage and current.
1316
1317 To compile this driver as a module, choose M here: the module will
1318 be called qcom-qpmi-rradc.
1319
1320config QCOM_SPMI_IADC
1321 tristate "Qualcomm SPMI PMIC current ADC"
1322 depends on SPMI
1323 select REGMAP_SPMI
1324 help
1325 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
1326
1327 The driver supports single mode operation to read from one of two
1328 channels (external or internal). Hardware have additional
1329 channels internally used for gain and offset calibration.
1330
1331 To compile this driver as a module, choose M here: the module will
1332 be called qcom-spmi-iadc.
1333
1334config QCOM_SPMI_VADC
1335 tristate "Qualcomm SPMI PMIC voltage ADC"
1336 depends on SPMI
1337 select REGMAP_SPMI
1338 select QCOM_VADC_COMMON
1339 help
1340 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
1341
1342 The driver supports multiple channels read. The VADC is a 15-bit
1343 sigma-delta ADC. Some of the channels are internally used for
1344 calibration.
1345
1346 To compile this driver as a module, choose M here: the module will
1347 be called qcom-spmi-vadc.
1348
1349config QCOM_SPMI_ADC5
1350 tristate "Qualcomm Technologies Inc. SPMI PMIC5 ADC"
1351 depends on SPMI
1352 select REGMAP_SPMI
1353 select QCOM_VADC_COMMON
1354 help
1355 This is the IIO Voltage PMIC5 ADC driver for Qualcomm Technologies Inc.
1356
1357 The driver supports multiple channels read. The ADC is a 16-bit
1358 sigma-delta ADC. The hardware supports calibrated results for
1359 conversion requests and clients include reading voltage phone
1360 power, on board system thermistors connected to the PMIC ADC,
1361 PMIC die temperature, charger temperature, battery current, USB voltage
1362 input, voltage signals connected to supported PMIC GPIO inputs. The
1363 hardware supports internal pull-up for thermistors and can choose between
1364 a 100k, 30k and 400k pull up using the ADC channels.
1365
1366 To compile this driver as a module, choose M here: the module will
1367 be called qcom-spmi-adc5.
1368
1369config RCAR_GYRO_ADC
1370 tristate "Renesas R-Car GyroADC driver"
1371 depends on ARCH_RCAR_GEN2 || COMPILE_TEST
1372 help
1373 Say yes here to build support for the GyroADC found in Renesas
1374 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
1375 reading data out of attached compatible ADCs in a round-robin
1376 fashion. Up to 4 or 8 ADC channels are supported by this block,
1377 depending on which ADCs are attached.
1378
1379 To compile this driver as a module, choose M here: the
1380 module will be called rcar-gyroadc.
1381
1382config RN5T618_ADC
1383 tristate "ADC for the RN5T618/RC5T619 family of chips"
1384 depends on MFD_RN5T618
1385 help
1386 Say yes here to build support for the integrated ADC inside the
1387 RN5T618/619 series PMICs:
1388
1389 This driver can also be built as a module. If so, the module
1390 will be called rn5t618-adc.
1391
1392config ROHM_BD79112
1393 tristate "Rohm BD79112 ADC driver"
1394 depends on SPI && GPIOLIB
1395 select REGMAP_SPI
1396 select IIO_ADC_HELPER
1397 help
1398 Say yes here to build support for the ROHM BD79112 ADC. The
1399 ROHM BD79112 is a 12-bit, 32-channel, SAR ADC. Analog inputs
1400 can also be used for GPIO.
1401
1402config ROHM_BD79124
1403 tristate "Rohm BD79124 ADC driver"
1404 depends on I2C && GPIOLIB
1405 select REGMAP_I2C
1406 select IIO_ADC_HELPER
1407 help
1408 Say yes here to build support for the ROHM BD79124 ADC. The
1409 ROHM BD79124 is a 12-bit, 8-channel, SAR ADC. The ADC supports
1410 also an automatic measurement mode, with an alarm interrupt for
1411 out-of-window measurements. The window is configurable for each
1412 channel.
1413
1414config ROCKCHIP_SARADC
1415 tristate "Rockchip SARADC driver"
1416 depends on ARCH_ROCKCHIP || COMPILE_TEST
1417 depends on RESET_CONTROLLER
1418 select IIO_BUFFER
1419 select IIO_TRIGGERED_BUFFER
1420 help
1421 Say yes here to build support for the SARADC found in SoCs from
1422 Rockchip.
1423
1424 To compile this driver as a module, choose M here: the
1425 module will be called rockchip_saradc.
1426
1427config RICHTEK_RTQ6056
1428 tristate "Richtek RTQ6056 Current and Power Monitor ADC"
1429 depends on I2C
1430 select REGMAP_I2C
1431 select IIO_BUFFER
1432 select IIO_TRIGGERED_BUFFER
1433 help
1434 Say yes here to enable RQT6056 ADC support.
1435 RTQ6056 is a high accuracy current-sense monitor with I2C and SMBus
1436 compatible interface, and the device provides full information for
1437 system by reading out the load current and power.
1438
1439 This driver can also be built as a module. If so, the module will be
1440 called rtq6056.
1441
1442config RZG2L_ADC
1443 tristate "Renesas RZ/G2L ADC driver"
1444 depends on ARCH_RZG2L || COMPILE_TEST
1445 select IIO_ADC_HELPER
1446 help
1447 Say yes here to build support for the ADC found in Renesas
1448 RZ/G2L family.
1449
1450 To compile this driver as a module, choose M here: the
1451 module will be called rzg2l_adc.
1452
1453config RZN1_ADC
1454 tristate "Renesas RZ/N1 ADC driver"
1455 depends on ARCH_RZN1 || COMPILE_TEST
1456 help
1457 Say yes here to build support for the ADC found in Renesas
1458 RZ/N1 family.
1459
1460 To compile this driver as a module, choose M here: the
1461 module will be called rzn1-adc.
1462
1463config RZT2H_ADC
1464 tristate "Renesas RZ/T2H / RZ/N2H ADC driver"
1465 depends on ARCH_RENESAS || COMPILE_TEST
1466 select IIO_ADC_HELPER
1467 help
1468 Say yes here to build support for the ADC found in Renesas
1469 RZ/T2H / RZ/N2H SoCs.
1470
1471 To compile this driver as a module, choose M here: the
1472 module will be called rzt2h_adc.
1473
1474config SC27XX_ADC
1475 tristate "Spreadtrum SC27xx series PMICs ADC"
1476 depends on MFD_SC27XX_PMIC || COMPILE_TEST
1477 help
1478 Say yes here to build support for the integrated ADC inside the
1479 Spreadtrum SC27xx series PMICs.
1480
1481 This driver can also be built as a module. If so, the module
1482 will be called sc27xx_adc.
1483
1484config SOPHGO_CV1800B_ADC
1485 tristate "Sophgo CV1800B SARADC"
1486 depends on ARCH_SOPHGO || COMPILE_TEST
1487 help
1488 Say yes here to build support for the SARADC integrated inside
1489 the Sophgo CV1800B SoC.
1490
1491 This driver can also be built as a module. If so, the module
1492 will be called sophgo_cv1800b_adc.
1493
1494config SPEAR_ADC
1495 tristate "ST SPEAr ADC"
1496 depends on PLAT_SPEAR || COMPILE_TEST
1497 depends on HAS_IOMEM
1498 help
1499 Say yes here to build support for the integrated ADC inside the
1500 ST SPEAr SoC. Provides direct access via sysfs.
1501
1502 To compile this driver as a module, choose M here: the
1503 module will be called spear_adc.
1504
1505config SD_ADC_MODULATOR
1506 tristate "Generic sigma delta modulator"
1507 select IIO_BUFFER
1508 select IIO_TRIGGERED_BUFFER
1509 select IIO_BACKEND
1510 help
1511 Select this option to enables sigma delta modulator. This driver can
1512 support generic sigma delta modulators.
1513
1514 This driver can also be built as a module. If so, the module
1515 will be called sd_adc_modulator.
1516
1517config STM32_ADC_CORE
1518 tristate "STMicroelectronics STM32 adc core"
1519 depends on ARCH_STM32 || COMPILE_TEST
1520 depends on OF
1521 depends on REGULATOR
1522 depends on HAS_IOMEM
1523 select IIO_BUFFER
1524 select MFD_STM32_TIMERS
1525 select IIO_STM32_TIMER_TRIGGER
1526 select IIO_TRIGGERED_BUFFER
1527 help
1528 Select this option to enable the core driver for STMicroelectronics
1529 STM32 analog-to-digital converter (ADC).
1530
1531 This driver can also be built as a module. If so, the module
1532 will be called stm32-adc-core.
1533
1534config STM32_ADC
1535 tristate "STMicroelectronics STM32 adc"
1536 depends on STM32_ADC_CORE
1537 help
1538 Say yes here to build support for STMicroelectronics stm32 Analog
1539 to Digital Converter (ADC).
1540
1541 This driver can also be built as a module. If so, the module
1542 will be called stm32-adc.
1543
1544config STM32_DFSDM_CORE
1545 tristate "STMicroelectronics STM32 DFSDM core"
1546 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1547 select REGMAP
1548 select REGMAP_MMIO
1549 help
1550 Select this option to enable the driver for STMicroelectronics
1551 STM32 digital filter for sigma delta converter.
1552
1553 This driver can also be built as a module. If so, the module
1554 will be called stm32-dfsdm-core.
1555
1556config STM32_DFSDM_ADC
1557 tristate "STMicroelectronics STM32 dfsdm adc"
1558 depends on (ARCH_STM32 && OF) || COMPILE_TEST
1559 select STM32_DFSDM_CORE
1560 select REGMAP_MMIO
1561 select IIO_BUFFER
1562 select IIO_BUFFER_HW_CONSUMER
1563 select IIO_TRIGGERED_BUFFER
1564 select IIO_BACKEND
1565 help
1566 Select this option to support ADCSigma delta modulator for
1567 STMicroelectronics STM32 digital filter for sigma delta converter.
1568
1569 This driver can also be built as a module. If so, the module
1570 will be called stm32-dfsdm-adc.
1571
1572config STMPE_ADC
1573 tristate "STMicroelectronics STMPE ADC driver"
1574 depends on OF && MFD_STMPE
1575 help
1576 Say yes here to build support for ST Microelectronics STMPE
1577 built-in ADC block (stmpe811).
1578
1579config SUN4I_GPADC
1580 tristate "Allwinner A10/A13/A31 and similar GPADCs driver"
1581 depends on IIO
1582 depends on MFD_SUN4I_GPADC || MACH_SUN8I
1583 depends on THERMAL || !THERMAL_OF
1584 select REGMAP_IRQ
1585 help
1586 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
1587 GPADC. This ADC provides 4 channels which can be used as an ADC or as
1588 a touchscreen input and one channel for thermal sensor.
1589
1590 The thermal sensor slows down ADC readings and can be disabled by
1591 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
1592 enabled by default since the SoC temperature is usually more critical
1593 than ADC readings.
1594
1595 To compile this driver as a module, choose M here: the module will be
1596 called sun4i-gpadc-iio.
1597
1598config SUN20I_GPADC
1599 tristate "Allwinner D1/T113s/T507/R329 and similar GPADCs driver"
1600 depends on ARCH_SUNXI || COMPILE_TEST
1601 select IIO_ADC_HELPER
1602 help
1603 Say yes here to build support for Allwinner (D1, T113, T507 and R329)
1604 SoCs GPADC. This ADC provides up to 16 channels.
1605
1606 To compile this driver as a module, choose M here: the module will be
1607 called sun20i-gpadc-iio.
1608
1609config TI_ADC081C
1610 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
1611 depends on I2C
1612 select IIO_BUFFER
1613 select IIO_TRIGGERED_BUFFER
1614 help
1615 If you say yes here you get support for Texas Instruments ADC081C,
1616 ADC101C and ADC121C ADC chips.
1617
1618 This driver can also be built as a module. If so, the module will be
1619 called ti-adc081c.
1620
1621config TI_ADC0832
1622 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
1623 depends on SPI
1624 select IIO_BUFFER
1625 select IIO_TRIGGERED_BUFFER
1626 help
1627 If you say yes here you get support for Texas Instruments ADC0831,
1628 ADC0832, ADC0834, ADC0838 ADC chips.
1629
1630 This driver can also be built as a module. If so, the module will be
1631 called ti-adc0832.
1632
1633config TI_ADC084S021
1634 tristate "Texas Instruments ADC084S021"
1635 depends on SPI
1636 select IIO_BUFFER
1637 select IIO_TRIGGERED_BUFFER
1638 help
1639 If you say yes here you get support for Texas Instruments ADC084S021
1640 chips.
1641
1642 This driver can also be built as a module. If so, the module will be
1643 called ti-adc084s021.
1644
1645config TI_ADC108S102
1646 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
1647 depends on SPI
1648 select IIO_BUFFER
1649 select IIO_TRIGGERED_BUFFER
1650 help
1651 Say yes here to build support for Texas Instruments ADC108S102 and
1652 ADC128S102 ADC.
1653
1654 To compile this driver as a module, choose M here: the module will
1655 be called ti-adc108s102.
1656
1657config TI_ADC12138
1658 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
1659 depends on SPI
1660 select IIO_BUFFER
1661 select IIO_TRIGGERED_BUFFER
1662 help
1663 If you say yes here you get support for Texas Instruments ADC12130,
1664 ADC12132 and ADC12138 chips.
1665
1666 This driver can also be built as a module. If so, the module will be
1667 called ti-adc12138.
1668
1669config TI_ADC128S052
1670 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
1671 depends on SPI
1672 help
1673 If you say yes here you get support for Texas Instruments ADC128S052,
1674 ADC122S021, ADC124S021 and ROHM Semiconductor BD79104 chips.
1675
1676 This driver can also be built as a module. If so, the module will be
1677 called ti-adc128s052.
1678
1679config TI_ADC161S626
1680 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
1681 depends on SPI
1682 select IIO_BUFFER
1683 select IIO_TRIGGERED_BUFFER
1684 help
1685 If you say yes here you get support for Texas Instruments ADC141S626,
1686 and ADC161S626 chips.
1687
1688 This driver can also be built as a module. If so, the module will be
1689 called ti-adc161s626.
1690
1691config TI_ADS1015
1692 tristate "Texas Instruments ADS1015 ADC"
1693 depends on I2C
1694 select REGMAP_I2C
1695 select IIO_BUFFER
1696 select IIO_TRIGGERED_BUFFER
1697 help
1698 If you say yes here you get support for Texas Instruments ADS1015
1699 ADC chip.
1700
1701 This driver can also be built as a module. If so, the module will be
1702 called ti-ads1015.
1703
1704config TI_ADS1018
1705 tristate "Texas Instruments ADS1018 ADC"
1706 depends on SPI
1707 select IIO_BUFFER
1708 select IIO_TRIGGERED_BUFFER
1709 help
1710 If you say yes here you get support for Texas Instruments ADS1018 and
1711 ADS1118 ADC chips.
1712
1713 This driver can also be built as a module. If so, the module will be
1714 called ti-ads1018.
1715
1716config TI_ADS1100
1717 tristate "Texas Instruments ADS1100 and ADS1000 ADC"
1718 depends on I2C
1719 help
1720 If you say yes here you get support for Texas Instruments ADS1100 and
1721 ADS1000 ADC chips.
1722
1723 This driver can also be built as a module. If so, the module will be
1724 called ti-ads1100.
1725
1726config TI_ADS1119
1727 tristate "Texas Instruments ADS1119 ADC"
1728 depends on I2C
1729 select IIO_BUFFER
1730 select IIO_TRIGGERED_BUFFER
1731 help
1732 If you say yes here you get support for Texas Instruments ADS1119
1733 ADC chip.
1734
1735 This driver can also be built as a module. If so, the module will be
1736 called ti-ads1119.
1737
1738config TI_ADS124S08
1739 tristate "Texas Instruments ADS124S08"
1740 depends on SPI
1741 select IIO_BUFFER
1742 select IIO_TRIGGERED_BUFFER
1743 help
1744 If you say yes here you get support for Texas Instruments ADS124S08
1745 and ADS124S06 ADC chips
1746
1747 This driver can also be built as a module. If so, the module will be
1748 called ti-ads124s08.
1749
1750config TI_ADS1298
1751 tristate "Texas Instruments ADS1298"
1752 depends on SPI
1753 select IIO_BUFFER
1754 select IIO_KFIFO_BUF
1755 help
1756 If you say yes here you get support for Texas Instruments ADS1298
1757 medical ADC chips
1758
1759 This driver can also be built as a module. If so, the module will be
1760 called ti-ads1298.
1761
1762config TI_ADS131E08
1763 tristate "Texas Instruments ADS131E08"
1764 depends on SPI
1765 select IIO_BUFFER
1766 select IIO_TRIGGERED_BUFFER
1767 help
1768 Say yes here to get support for Texas Instruments ADS131E04, ADS131E06
1769 and ADS131E08 chips.
1770
1771 This driver can also be built as a module. If so, the module will be
1772 called ti-ads131e08.
1773
1774config TI_ADS131M02
1775 tristate "Texas Instruments ADS131M02"
1776 depends on SPI && REGULATOR
1777 select CRC_ITU_T
1778 help
1779 Say yes here to get support for Texas Instruments ADS131M02, ADS131M03,
1780 ADS131M04, ADS131M06 and ADS131M08 chips.
1781
1782 This driver can also be built as a module. If so, the module will be
1783 called ti-ads131m02.
1784
1785config TI_ADS7138
1786 tristate "Texas Instruments ADS7128 and ADS7138 ADC driver"
1787 depends on I2C
1788 help
1789 If you say yes here you get support for Texas Instruments ADS7128 and
1790 ADS7138 8-channel A/D converters with 12-bit resolution.
1791
1792 This driver can also be built as a module. If so, the module will be
1793 called ti-ads7138.
1794
1795config TI_ADS7924
1796 tristate "Texas Instruments ADS7924 ADC"
1797 depends on I2C
1798 select REGMAP_I2C
1799 help
1800 If you say yes here you get support for Texas Instruments ADS7924
1801 4 channels, 12-bit I2C ADC chip.
1802
1803 This driver can also be built as a module. If so, the module will be
1804 called ti-ads7924.
1805
1806config TI_ADS7950
1807 tristate "Texas Instruments ADS7950 ADC driver"
1808 depends on SPI && GPIOLIB
1809 select IIO_BUFFER
1810 select IIO_TRIGGERED_BUFFER
1811 help
1812 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
1813 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
1814 ADS7960, ADS7961.
1815
1816 To compile this driver as a module, choose M here: the
1817 module will be called ti-ads7950.
1818
1819config TI_ADS8344
1820 tristate "Texas Instruments ADS8344"
1821 depends on SPI
1822 help
1823 If you say yes here you get support for Texas Instruments ADS8344
1824 ADC chips
1825
1826 This driver can also be built as a module. If so, the module will be
1827 called ti-ads8344.
1828
1829config TI_ADS8688
1830 tristate "Texas Instruments ADS8688"
1831 depends on SPI
1832 select IIO_BUFFER
1833 select IIO_TRIGGERED_BUFFER
1834 help
1835 If you say yes here you get support for Texas Instruments ADS8684 and
1836 and ADS8688 ADC chips
1837
1838 This driver can also be built as a module. If so, the module will be
1839 called ti-ads8688.
1840
1841config TI_AM335X_ADC
1842 tristate "TI's AM335X ADC driver"
1843 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
1844 select IIO_BUFFER
1845 select IIO_KFIFO_BUF
1846 help
1847 Say yes here to build support for Texas Instruments ADC
1848 driver which is also a MFD client.
1849
1850 To compile this driver as a module, choose M here: the module will be
1851 called ti_am335x_adc.
1852
1853config TI_LMP92064
1854 tristate "Texas Instruments LMP92064 ADC driver"
1855 depends on SPI
1856 select REGMAP_SPI
1857 select IIO_BUFFER
1858 select IIO_TRIGGERED_BUFFER
1859 help
1860 Say yes here to build support for the LMP92064 Precision Current and Voltage
1861 sensor.
1862
1863 This driver can also be built as a module. If so, the module will be called
1864 ti-lmp92064.
1865
1866config TI_TLC4541
1867 tristate "Texas Instruments TLC4541 ADC driver"
1868 depends on SPI
1869 select IIO_BUFFER
1870 select IIO_TRIGGERED_BUFFER
1871 help
1872 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
1873 ADC chips.
1874
1875 This driver can also be built as a module. If so, the module will be
1876 called ti-tlc4541.
1877
1878config TI_TSC2046
1879 tristate "Texas Instruments TSC2046 ADC driver"
1880 depends on SPI
1881 select IIO_BUFFER
1882 select IIO_TRIGGERED_BUFFER
1883 help
1884 Say yes here to build support for ADC functionality of Texas
1885 Instruments TSC2046 touch screen controller.
1886
1887 This driver can also be built as a module. If so, the module will be
1888 called ti-tsc2046.
1889
1890config TWL4030_MADC
1891 tristate "TWL4030 MADC (Monitoring A/D Converter)"
1892 depends on TWL4030_CORE
1893 help
1894 This driver provides support for Triton TWL4030-MADC. The
1895 driver supports both RT and SW conversion methods.
1896
1897 This driver can also be built as a module. If so, the module will be
1898 called twl4030-madc.
1899
1900config TWL6030_GPADC
1901 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
1902 depends on TWL4030_CORE
1903 help
1904 Say yes here if you want support for the TWL6030/TWL6032 General
1905 Purpose A/D Converter. This will add support for battery type
1906 detection, battery voltage and temperature measurement, die
1907 temperature measurement, system supply voltage, audio accessory,
1908 USB ID detection.
1909
1910 This driver can also be built as a module. If so, the module will be
1911 called twl6030-gpadc.
1912
1913config VF610_ADC
1914 tristate "Freescale vf610 ADC driver"
1915 depends on HAS_IOMEM
1916 select IIO_BUFFER
1917 select IIO_TRIGGERED_BUFFER
1918 help
1919 Say yes here to support for Vybrid board analog-to-digital converter.
1920 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
1921
1922 This driver can also be built as a module. If so, the module will be
1923 called vf610_adc.
1924
1925config VIPERBOARD_ADC
1926 tristate "Viperboard ADC support"
1927 depends on MFD_VIPERBOARD && USB
1928 help
1929 Say yes here to access the ADC part of the Nano River
1930 Technologies Viperboard.
1931
1932 To compile this driver as a module, choose M here: the module will be
1933 called viperboard_adc.
1934
1935config XILINX_XADC
1936 tristate "Xilinx XADC driver"
1937 depends on HAS_IOMEM
1938 select IIO_BUFFER
1939 select IIO_TRIGGERED_BUFFER
1940 help
1941 Say yes here to have support for the Xilinx 7 Series XADC or
1942 UltraScale/UltraScale+ System Management Wizard.
1943
1944 For the 7 Series the driver does support both the ZYNQ interface
1945 to the XADC as well as the AXI-XADC interface.
1946
1947 The driver also support the Xilinx System Management Wizard IP core
1948 that can be used to access the System Monitor ADC on the Xilinx
1949 UltraScale and UltraScale+ FPGAs.
1950
1951 The driver can also be build as a module. If so, the module will be called
1952 xilinx-xadc.
1953
1954config XILINX_AMS
1955 tristate "Xilinx AMS driver"
1956 depends on ARCH_ZYNQMP || COMPILE_TEST
1957 depends on HAS_IOMEM
1958 help
1959 Say yes here to have support for the Xilinx AMS for Ultrascale/Ultrascale+
1960 System Monitor. With this you can measure and monitor the Voltages and
1961 Temperature values on the SOC.
1962
1963 The driver supports Voltage and Temperature monitoring on Xilinx Ultrascale
1964 devices.
1965
1966 The driver can also be built as a module. If so, the module will be called
1967 xilinx-ams.
1968
1969endmenu