xref: /openbmc/linux/drivers/iio/adc/Kconfig (revision 1491eaf9)
1#
2# ADC drivers
3#
4# When adding new entries keep the list in alphabetical order
5
6menu "Analog to digital converters"
7
8config AD_SIGMA_DELTA
9	tristate
10	select IIO_BUFFER
11	select IIO_TRIGGERED_BUFFER
12
13config AD7266
14	tristate "Analog Devices AD7265/AD7266 ADC driver"
15	depends on SPI_MASTER
16	select IIO_BUFFER
17	select IIO_TRIGGER
18	select IIO_TRIGGERED_BUFFER
19	help
20	  Say yes here to build support for Analog Devices AD7265 and AD7266
21	  ADCs.
22
23	  To compile this driver as a module, choose M here: the module will be
24	  called ad7266.
25
26config AD7291
27	tristate "Analog Devices AD7291 ADC driver"
28	depends on I2C
29	help
30	  Say yes here to build support for Analog Devices AD7291
31	  8 Channel ADC with temperature sensor.
32
33	  To compile this driver as a module, choose M here: the
34	  module will be called ad7291.
35
36config AD7298
37	tristate "Analog Devices AD7298 ADC driver"
38	depends on SPI
39	select IIO_BUFFER
40	select IIO_TRIGGERED_BUFFER
41	help
42	  Say yes here to build support for Analog Devices AD7298
43	  8 Channel ADC with temperature sensor.
44
45	  To compile this driver as a module, choose M here: the
46	  module will be called ad7298.
47
48config AD7476
49	tristate "Analog Devices AD7476 and similar 1-channel ADCs driver"
50	depends on SPI
51	select IIO_BUFFER
52	select IIO_TRIGGERED_BUFFER
53	help
54	  Say yes here to build support for Analog Devices AD7273, AD7274, AD7276,
55	  AD7277, AD7278, AD7475, AD7476, AD7477, AD7478, AD7466, AD7467, AD7468,
56	  AD7495, AD7910, AD7920, AD7920 SPI analog to digital converters (ADC).
57
58	  To compile this driver as a module, choose M here: the
59	  module will be called ad7476.
60
61config AD7791
62	tristate "Analog Devices AD7791 ADC driver"
63	depends on SPI
64	select AD_SIGMA_DELTA
65	help
66	  Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
67	  AD7790 and AD7791 SPI analog to digital converters (ADC).
68
69	  To compile this driver as a module, choose M here: the module will be
70	  called ad7791.
71
72config AD7793
73	tristate "Analog Devices AD7793 and similar ADCs driver"
74	depends on SPI
75	select AD_SIGMA_DELTA
76	help
77	  Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
78	  AD7794 and AD7795 SPI analog to digital converters (ADC).
79
80	  To compile this driver as a module, choose M here: the
81	  module will be called AD7793.
82
83config AD7887
84	tristate "Analog Devices AD7887 ADC driver"
85	depends on SPI
86	select IIO_BUFFER
87	select IIO_TRIGGERED_BUFFER
88	help
89	  Say yes here to build support for Analog Devices
90	  AD7887 SPI analog to digital converter (ADC).
91
92	  To compile this driver as a module, choose M here: the
93	  module will be called ad7887.
94
95config AD7923
96	tristate "Analog Devices AD7923 and similar ADCs driver"
97	depends on SPI
98	select IIO_BUFFER
99	select IIO_TRIGGERED_BUFFER
100	help
101	  Say yes here to build support for Analog Devices
102	  AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
103
104	  To compile this driver as a module, choose M here: the
105	  module will be called ad7923.
106
107config AD799X
108	tristate "Analog Devices AD799x ADC driver"
109	depends on I2C
110	select IIO_BUFFER
111	select IIO_TRIGGERED_BUFFER
112	help
113	  Say yes here to build support for Analog Devices:
114	  ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
115	  i2c analog to digital converters (ADC). Provides direct access
116	  via sysfs.
117
118	  To compile this driver as a module, choose M here: the module will be
119	  called ad799x.
120
121config AT91_ADC
122	tristate "Atmel AT91 ADC"
123	depends on ARCH_AT91
124	depends on INPUT
125	select IIO_BUFFER
126	select IIO_TRIGGERED_BUFFER
127	select SYSFS
128	help
129	  Say yes here to build support for Atmel AT91 ADC.
130
131	  To compile this driver as a module, choose M here: the module will be
132	  called at91_adc.
133
134config AT91_SAMA5D2_ADC
135	tristate "Atmel AT91 SAMA5D2 ADC"
136	depends on ARCH_AT91 || COMPILE_TEST
137	depends on HAS_IOMEM
138	help
139	  Say yes here to build support for Atmel SAMA5D2 ADC which is
140	  available on SAMA5D2 SoC family.
141
142	  To compile this driver as a module, choose M here: the module will be
143	  called at91-sama5d2_adc.
144
145config AXP288_ADC
146	tristate "X-Powers AXP288 ADC driver"
147	depends on MFD_AXP20X
148	help
149	  Say yes here to have support for X-Powers power management IC (PMIC) ADC
150	  device. Depending on platform configuration, this general purpose ADC can
151	  be used for sampling sensors such as thermal resistors.
152
153	  To compile this driver as a module, choose M here: the module will be
154	  called axp288_adc.
155
156config BCM_IPROC_ADC
157	tristate "Broadcom IPROC ADC driver"
158	depends on ARCH_BCM_IPROC || COMPILE_TEST
159	depends on MFD_SYSCON
160	default ARCH_BCM_CYGNUS
161	help
162	  Say Y here if you want to add support for the Broadcom static
163	  ADC driver.
164
165	  Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
166	  channels. The driver allows the user to read voltage values.
167
168config BERLIN2_ADC
169	tristate "Marvell Berlin2 ADC driver"
170	depends on ARCH_BERLIN
171	help
172	  Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
173	  temperature measurement.
174
175config CC10001_ADC
176	tristate "Cosmic Circuits 10001 ADC driver"
177	depends on HAS_IOMEM && HAVE_CLK && REGULATOR
178	select IIO_BUFFER
179	select IIO_TRIGGERED_BUFFER
180	help
181	  Say yes here to build support for Cosmic Circuits 10001 ADC.
182
183	  This driver can also be built as a module. If so, the module will be
184	  called cc10001_adc.
185
186config DA9150_GPADC
187	tristate "Dialog DA9150 GPADC driver support"
188	depends on MFD_DA9150
189	help
190	  Say yes here to build support for Dialog DA9150 GPADC.
191
192	  This driver can also be built as a module. If chosen, the module name
193	  will be da9150-gpadc.
194
195	  To compile this driver as a module, choose M here: the module will be
196	  called berlin2-adc.
197
198config EXYNOS_ADC
199	tristate "Exynos ADC driver support"
200	depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
201	depends on HAS_IOMEM
202	help
203	  Core support for the ADC block found in the Samsung EXYNOS series
204	  of SoCs for drivers such as the touchscreen and hwmon to use to share
205	  this resource.
206
207	  To compile this driver as a module, choose M here: the module will be
208	  called exynos_adc.
209
210config FSL_MX25_ADC
211	tristate "Freescale MX25 ADC driver"
212	depends on MFD_MX25_TSADC
213	help
214	  Generic Conversion Queue driver used for general purpose ADC in the
215	  MX25. This driver supports single measurements using the MX25 ADC.
216
217config HI8435
218	tristate "Holt Integrated Circuits HI-8435 threshold detector"
219	select IIO_TRIGGERED_EVENT
220	depends on SPI
221	help
222	  If you say yes here you get support for Holt Integrated Circuits
223	  HI-8435 chip.
224
225	  This driver can also be built as a module. If so, the module will be
226	  called hi8435.
227
228config INA2XX_ADC
229	tristate "Texas Instruments INA2xx Power Monitors IIO driver"
230	depends on I2C && !SENSORS_INA2XX
231	select REGMAP_I2C
232	select IIO_BUFFER
233	select IIO_KFIFO_BUF
234	help
235	  Say yes here to build support for TI INA2xx family of Power Monitors.
236	  This driver is mutually exclusive with the HWMON version.
237
238config IMX7D_ADC
239	tristate "IMX7D ADC driver"
240	depends on ARCH_MXC || COMPILE_TEST
241	depends on HAS_IOMEM
242	help
243	  Say yes here to build support for IMX7D ADC.
244
245	  This driver can also be built as a module. If so, the module will be
246	  called imx7d_adc.
247
248config LP8788_ADC
249	tristate "LP8788 ADC driver"
250	depends on MFD_LP8788
251	help
252	  Say yes here to build support for TI LP8788 ADC.
253
254	  To compile this driver as a module, choose M here: the module will be
255	  called lp8788_adc.
256
257config LPC18XX_ADC
258	tristate "NXP LPC18xx ADC driver"
259	depends on ARCH_LPC18XX || COMPILE_TEST
260	depends on OF && HAS_IOMEM
261	help
262	  Say yes here to build support for NXP LPC18XX ADC.
263
264	  To compile this driver as a module, choose M here: the module will be
265	  called lpc18xx_adc.
266
267config MAX1027
268	tristate "Maxim max1027 ADC driver"
269	depends on SPI
270	select IIO_BUFFER
271	select IIO_TRIGGERED_BUFFER
272	help
273	  Say yes here to build support for Maxim SPI ADC models
274	  max1027, max1029 and max1031.
275
276	  To compile this driver as a module, choose M here: the module will be
277	  called max1027.
278
279config MAX1363
280	tristate "Maxim max1363 ADC driver"
281	depends on I2C
282	select IIO_BUFFER
283	select IIO_TRIGGERED_BUFFER
284	help
285	  Say yes here to build support for many Maxim i2c analog to digital
286	  converters (ADC). (max1361, max1362, max1363, max1364, max1036,
287	  max1037, max1038, max1039, max1136, max1136, max1137, max1138,
288	  max1139, max1236, max1237, max11238, max1239, max11600, max11601,
289	  max11602, max11603, max11604, max11605, max11606, max11607,
290	  max11608, max11609, max11610, max11611, max11612, max11613,
291	  max11614, max11615, max11616, max11617, max11644, max11645,
292	  max11646, max11647) Provides direct access via sysfs and buffered
293	  data via the iio dev interface.
294
295	  To compile this driver as a module, choose M here: the module will be
296	  called max1363.
297
298config MCP320X
299	tristate "Microchip Technology MCP3x01/02/04/08"
300	depends on SPI
301	help
302	  Say yes here to build support for Microchip Technology's
303	  MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
304	  MCP3208 or MCP3301 analog to digital converter.
305
306	  This driver can also be built as a module. If so, the module will be
307	  called mcp320x.
308
309config MCP3422
310	tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
311	depends on I2C
312	help
313	  Say yes here to build support for Microchip Technology's MCP3421
314	  MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
315	  analog to digital converters.
316
317	  This driver can also be built as a module. If so, the module will be
318	  called mcp3422.
319
320config MEN_Z188_ADC
321	tristate "MEN 16z188 ADC IP Core support"
322	depends on MCB
323	help
324	  Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
325	  carrier.
326
327	  This driver can also be built as a module. If so, the module will be
328	  called men_z188_adc.
329
330config MXS_LRADC
331        tristate "Freescale i.MX23/i.MX28 LRADC"
332        depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM
333        depends on INPUT
334        select STMP_DEVICE
335        select IIO_BUFFER
336        select IIO_TRIGGERED_BUFFER
337        help
338          Say yes here to build support for i.MX23/i.MX28 LRADC convertor
339          built into these chips.
340
341          To compile this driver as a module, choose M here: the
342          module will be called mxs-lradc.
343
344config NAU7802
345	tristate "Nuvoton NAU7802 ADC driver"
346	depends on I2C
347	help
348	  Say yes here to build support for Nuvoton NAU7802 ADC.
349
350	  To compile this driver as a module, choose M here: the
351	  module will be called nau7802.
352
353config PALMAS_GPADC
354	tristate "TI Palmas General Purpose ADC"
355	depends on MFD_PALMAS
356	help
357	  Palmas series pmic chip by Texas Instruments (twl6035/6037)
358	  is used in smartphones and tablets and supports a 16 channel
359	  general purpose ADC.
360
361config QCOM_SPMI_IADC
362	tristate "Qualcomm SPMI PMIC current ADC"
363	depends on SPMI
364	select REGMAP_SPMI
365	help
366	  This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
367
368	  The driver supports single mode operation to read from one of two
369	  channels (external or internal). Hardware have additional
370	  channels internally used for gain and offset calibration.
371
372	  To compile this driver as a module, choose M here: the module will
373	  be called qcom-spmi-iadc.
374
375config QCOM_SPMI_VADC
376	tristate "Qualcomm SPMI PMIC voltage ADC"
377	depends on SPMI
378	select REGMAP_SPMI
379	help
380	  This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
381
382	  The driver supports multiple channels read. The VADC is a 15-bit
383	  sigma-delta ADC. Some of the channels are internally used for
384	  calibration.
385
386	  To compile this driver as a module, choose M here: the module will
387	  be called qcom-spmi-vadc.
388
389config ROCKCHIP_SARADC
390	tristate "Rockchip SARADC driver"
391	depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
392	depends on RESET_CONTROLLER
393	help
394	  Say yes here to build support for the SARADC found in SoCs from
395	  Rockchip.
396
397	  To compile this driver as a module, choose M here: the
398	  module will be called rockchip_saradc.
399
400config TI_ADC081C
401	tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
402	depends on I2C
403	help
404	  If you say yes here you get support for Texas Instruments ADC081C,
405	  ADC101C and ADC121C ADC chips.
406
407	  This driver can also be built as a module. If so, the module will be
408	  called ti-adc081c.
409
410config TI_ADC0832
411	tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
412	depends on SPI
413	help
414	  If you say yes here you get support for Texas Instruments ADC0831,
415	  ADC0832, ADC0834, ADC0838 ADC chips.
416
417	  This driver can also be built as a module. If so, the module will be
418	  called ti-adc0832.
419
420config TI_ADC128S052
421	tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
422	depends on SPI
423	help
424	  If you say yes here you get support for Texas Instruments ADC128S052,
425	  ADC122S021 and ADC124S021 chips.
426
427	  This driver can also be built as a module. If so, the module will be
428	  called ti-adc128s052.
429
430config TI_ADS1015
431	tristate "Texas Instruments ADS1015 ADC"
432	depends on I2C && !SENSORS_ADS1015
433	select REGMAP_I2C
434	select IIO_BUFFER
435	select IIO_TRIGGERED_BUFFER
436	help
437	  If you say yes here you get support for Texas Instruments ADS1015
438	  ADC chip.
439
440	  This driver can also be built as a module. If so, the module will be
441	  called ti-ads1015.
442
443config TI_ADS8688
444	tristate "Texas Instruments ADS8688"
445	depends on SPI && OF
446	help
447	  If you say yes here you get support for Texas Instruments ADS8684 and
448	  and ADS8688 ADC chips
449
450	  This driver can also be built as a module. If so, the module will be
451	  called ti-ads8688.
452
453config TI_AM335X_ADC
454	tristate "TI's AM335X ADC driver"
455	depends on MFD_TI_AM335X_TSCADC
456	select IIO_BUFFER
457	select IIO_KFIFO_BUF
458	help
459	  Say yes here to build support for Texas Instruments ADC
460	  driver which is also a MFD client.
461
462	  To compile this driver as a module, choose M here: the module will be
463	  called ti_am335x_adc.
464
465config TWL4030_MADC
466	tristate "TWL4030 MADC (Monitoring A/D Converter)"
467	depends on TWL4030_CORE
468	help
469	  This driver provides support for Triton TWL4030-MADC. The
470	  driver supports both RT and SW conversion methods.
471
472	  This driver can also be built as a module. If so, the module will be
473	  called twl4030-madc.
474
475config TWL6030_GPADC
476	tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
477	depends on TWL4030_CORE
478	default n
479	help
480	  Say yes here if you want support for the TWL6030/TWL6032 General
481	  Purpose A/D Converter. This will add support for battery type
482	  detection, battery voltage and temperature measurement, die
483	  temperature measurement, system supply voltage, audio accessory,
484	  USB ID detection.
485
486	  This driver can also be built as a module. If so, the module will be
487	  called twl6030-gpadc.
488
489config VF610_ADC
490	tristate "Freescale vf610 ADC driver"
491	depends on OF
492	depends on HAS_IOMEM
493	select IIO_BUFFER
494	select IIO_TRIGGERED_BUFFER
495	help
496	  Say yes here to support for Vybrid board analog-to-digital converter.
497	  Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
498
499	  This driver can also be built as a module. If so, the module will be
500	  called vf610_adc.
501
502config VIPERBOARD_ADC
503	tristate "Viperboard ADC support"
504	depends on MFD_VIPERBOARD && USB
505	help
506	  Say yes here to access the ADC part of the Nano River
507	  Technologies Viperboard.
508
509	  To compile this driver as a module, choose M here: the module will be
510	  called viperboard_adc.
511
512config XILINX_XADC
513	tristate "Xilinx XADC driver"
514	depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
515	depends on HAS_IOMEM
516	select IIO_BUFFER
517	select IIO_TRIGGERED_BUFFER
518	help
519	  Say yes here to have support for the Xilinx XADC. The driver does support
520	  both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
521
522	  The driver can also be build as a module. If so, the module will be called
523	  xilinx-xadc.
524
525endmenu
526