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