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