xref: /openbmc/linux/drivers/iio/adc/Kconfig (revision 78700c0a)
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 BERLIN2_ADC
157	tristate "Marvell Berlin2 ADC driver"
158	depends on ARCH_BERLIN
159	help
160	  Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
161	  temperature measurement.
162
163config CC10001_ADC
164	tristate "Cosmic Circuits 10001 ADC driver"
165	depends on HAS_IOMEM && HAVE_CLK && REGULATOR
166	select IIO_BUFFER
167	select IIO_TRIGGERED_BUFFER
168	help
169	  Say yes here to build support for Cosmic Circuits 10001 ADC.
170
171	  This driver can also be built as a module. If so, the module will be
172	  called cc10001_adc.
173
174config DA9150_GPADC
175	tristate "Dialog DA9150 GPADC driver support"
176	depends on MFD_DA9150
177	help
178	  Say yes here to build support for Dialog DA9150 GPADC.
179
180	  This driver can also be built as a module. If chosen, the module name
181	  will be da9150-gpadc.
182
183	  To compile this driver as a module, choose M here: the module will be
184	  called berlin2-adc.
185
186config EXYNOS_ADC
187	tristate "Exynos ADC driver support"
188	depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
189	depends on HAS_IOMEM
190	help
191	  Core support for the ADC block found in the Samsung EXYNOS series
192	  of SoCs for drivers such as the touchscreen and hwmon to use to share
193	  this resource.
194
195	  To compile this driver as a module, choose M here: the module will be
196	  called exynos_adc.
197
198config FSL_MX25_ADC
199	tristate "Freescale MX25 ADC driver"
200	depends on MFD_MX25_TSADC
201	help
202	  Generic Conversion Queue driver used for general purpose ADC in the
203	  MX25. This driver supports single measurements using the MX25 ADC.
204
205config HI8435
206	tristate "Holt Integrated Circuits HI-8435 threshold detector"
207	select IIO_TRIGGERED_EVENT
208	depends on SPI
209	help
210	  If you say yes here you get support for Holt Integrated Circuits
211	  HI-8435 chip.
212
213	  This driver can also be built as a module. If so, the module will be
214	  called hi8435.
215
216config INA2XX_ADC
217	tristate "Texas Instruments INA2xx Power Monitors IIO driver"
218	depends on I2C && !SENSORS_INA2XX
219	select REGMAP_I2C
220	select IIO_BUFFER
221	select IIO_KFIFO_BUF
222	help
223	  Say yes here to build support for TI INA2xx family of Power Monitors.
224	  This driver is mutually exclusive with the HWMON version.
225
226config IMX7D_ADC
227	tristate "IMX7D ADC driver"
228	depends on ARCH_MXC || COMPILE_TEST
229	depends on HAS_IOMEM
230	help
231	  Say yes here to build support for IMX7D ADC.
232
233	  This driver can also be built as a module. If so, the module will be
234	  called imx7d_adc.
235
236config LP8788_ADC
237	tristate "LP8788 ADC driver"
238	depends on MFD_LP8788
239	help
240	  Say yes here to build support for TI LP8788 ADC.
241
242	  To compile this driver as a module, choose M here: the module will be
243	  called lp8788_adc.
244
245config LPC18XX_ADC
246	tristate "NXP LPC18xx ADC driver"
247	depends on ARCH_LPC18XX || COMPILE_TEST
248	depends on OF && HAS_IOMEM
249	help
250	  Say yes here to build support for NXP LPC18XX ADC.
251
252	  To compile this driver as a module, choose M here: the module will be
253	  called lpc18xx_adc.
254
255config MAX1027
256	tristate "Maxim max1027 ADC driver"
257	depends on SPI
258	select IIO_BUFFER
259	select IIO_TRIGGERED_BUFFER
260	help
261	  Say yes here to build support for Maxim SPI ADC models
262	  max1027, max1029 and max1031.
263
264	  To compile this driver as a module, choose M here: the module will be
265	  called max1027.
266
267config MAX1363
268	tristate "Maxim max1363 ADC driver"
269	depends on I2C
270	select IIO_BUFFER
271	select IIO_TRIGGERED_BUFFER
272	help
273	  Say yes here to build support for many Maxim i2c analog to digital
274	  converters (ADC). (max1361, max1362, max1363, max1364, max1036,
275	  max1037, max1038, max1039, max1136, max1136, max1137, max1138,
276	  max1139, max1236, max1237, max11238, max1239, max11600, max11601,
277	  max11602, max11603, max11604, max11605, max11606, max11607,
278	  max11608, max11609, max11610, max11611, max11612, max11613,
279	  max11614, max11615, max11616, max11617, max11644, max11645,
280	  max11646, max11647) Provides direct access via sysfs and buffered
281	  data via the iio dev interface.
282
283	  To compile this driver as a module, choose M here: the module will be
284	  called max1363.
285
286config MCP320X
287	tristate "Microchip Technology MCP3x01/02/04/08"
288	depends on SPI
289	help
290	  Say yes here to build support for Microchip Technology's
291	  MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
292	  MCP3208 or MCP3301 analog to digital converter.
293
294	  This driver can also be built as a module. If so, the module will be
295	  called mcp320x.
296
297config MCP3422
298	tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
299	depends on I2C
300	help
301	  Say yes here to build support for Microchip Technology's MCP3421
302	  MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
303	  analog to digital converters.
304
305	  This driver can also be built as a module. If so, the module will be
306	  called mcp3422.
307
308config MEN_Z188_ADC
309	tristate "MEN 16z188 ADC IP Core support"
310	depends on MCB
311	help
312	  Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
313	  carrier.
314
315	  This driver can also be built as a module. If so, the module will be
316	  called men_z188_adc.
317
318config MXS_LRADC
319        tristate "Freescale i.MX23/i.MX28 LRADC"
320        depends on (ARCH_MXS || COMPILE_TEST) && HAS_IOMEM
321        depends on INPUT
322        select STMP_DEVICE
323        select IIO_BUFFER
324        select IIO_TRIGGERED_BUFFER
325        help
326          Say yes here to build support for i.MX23/i.MX28 LRADC convertor
327          built into these chips.
328
329          To compile this driver as a module, choose M here: the
330          module will be called mxs-lradc.
331
332config NAU7802
333	tristate "Nuvoton NAU7802 ADC driver"
334	depends on I2C
335	help
336	  Say yes here to build support for Nuvoton NAU7802 ADC.
337
338	  To compile this driver as a module, choose M here: the
339	  module will be called nau7802.
340
341config PALMAS_GPADC
342	tristate "TI Palmas General Purpose ADC"
343	depends on MFD_PALMAS
344	help
345	  Palmas series pmic chip by Texas Instruments (twl6035/6037)
346	  is used in smartphones and tablets and supports a 16 channel
347	  general purpose ADC.
348
349config QCOM_SPMI_IADC
350	tristate "Qualcomm SPMI PMIC current ADC"
351	depends on SPMI
352	select REGMAP_SPMI
353	help
354	  This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
355
356	  The driver supports single mode operation to read from one of two
357	  channels (external or internal). Hardware have additional
358	  channels internally used for gain and offset calibration.
359
360	  To compile this driver as a module, choose M here: the module will
361	  be called qcom-spmi-iadc.
362
363config QCOM_SPMI_VADC
364	tristate "Qualcomm SPMI PMIC voltage ADC"
365	depends on SPMI
366	select REGMAP_SPMI
367	help
368	  This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
369
370	  The driver supports multiple channels read. The VADC is a 15-bit
371	  sigma-delta ADC. Some of the channels are internally used for
372	  calibration.
373
374	  To compile this driver as a module, choose M here: the module will
375	  be called qcom-spmi-vadc.
376
377config ROCKCHIP_SARADC
378	tristate "Rockchip SARADC driver"
379	depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
380	help
381	  Say yes here to build support for the SARADC found in SoCs from
382	  Rockchip.
383
384	  To compile this driver as a module, choose M here: the
385	  module will be called rockchip_saradc.
386
387config TI_ADC081C
388	tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
389	depends on I2C
390	help
391	  If you say yes here you get support for Texas Instruments ADC081C,
392	  ADC101C and ADC121C ADC chips.
393
394	  This driver can also be built as a module. If so, the module will be
395	  called ti-adc081c.
396
397config TI_ADC0832
398	tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
399	depends on SPI
400	help
401	  If you say yes here you get support for Texas Instruments ADC0831,
402	  ADC0832, ADC0834, ADC0838 ADC chips.
403
404	  This driver can also be built as a module. If so, the module will be
405	  called ti-adc0832.
406
407config TI_ADC128S052
408	tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
409	depends on SPI
410	help
411	  If you say yes here you get support for Texas Instruments ADC128S052,
412	  ADC122S021 and ADC124S021 chips.
413
414	  This driver can also be built as a module. If so, the module will be
415	  called ti-adc128s052.
416
417config TI_ADS1015
418	tristate "Texas Instruments ADS1015 ADC"
419	depends on I2C && !SENSORS_ADS1015
420	select REGMAP_I2C
421	select IIO_BUFFER
422	select IIO_TRIGGERED_BUFFER
423	help
424	  If you say yes here you get support for Texas Instruments ADS1015
425	  ADC chip.
426
427	  This driver can also be built as a module. If so, the module will be
428	  called ti-ads1015.
429
430config TI_ADS8688
431	tristate "Texas Instruments ADS8688"
432	depends on SPI && OF
433	help
434	  If you say yes here you get support for Texas Instruments ADS8684 and
435	  and ADS8688 ADC chips
436
437	  This driver can also be built as a module. If so, the module will be
438	  called ti-ads8688.
439
440config TI_AM335X_ADC
441	tristate "TI's AM335X ADC driver"
442	depends on MFD_TI_AM335X_TSCADC
443	select IIO_BUFFER
444	select IIO_KFIFO_BUF
445	help
446	  Say yes here to build support for Texas Instruments ADC
447	  driver which is also a MFD client.
448
449	  To compile this driver as a module, choose M here: the module will be
450	  called ti_am335x_adc.
451
452config TWL4030_MADC
453	tristate "TWL4030 MADC (Monitoring A/D Converter)"
454	depends on TWL4030_CORE
455	help
456	  This driver provides support for Triton TWL4030-MADC. The
457	  driver supports both RT and SW conversion methods.
458
459	  This driver can also be built as a module. If so, the module will be
460	  called twl4030-madc.
461
462config TWL6030_GPADC
463	tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
464	depends on TWL4030_CORE
465	default n
466	help
467	  Say yes here if you want support for the TWL6030/TWL6032 General
468	  Purpose A/D Converter. This will add support for battery type
469	  detection, battery voltage and temperature measurement, die
470	  temperature measurement, system supply voltage, audio accessory,
471	  USB ID detection.
472
473	  This driver can also be built as a module. If so, the module will be
474	  called twl6030-gpadc.
475
476config VF610_ADC
477	tristate "Freescale vf610 ADC driver"
478	depends on OF
479	depends on HAS_IOMEM
480	select IIO_BUFFER
481	select IIO_TRIGGERED_BUFFER
482	help
483	  Say yes here to support for Vybrid board analog-to-digital converter.
484	  Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
485
486	  This driver can also be built as a module. If so, the module will be
487	  called vf610_adc.
488
489config VIPERBOARD_ADC
490	tristate "Viperboard ADC support"
491	depends on MFD_VIPERBOARD && USB
492	help
493	  Say yes here to access the ADC part of the Nano River
494	  Technologies Viperboard.
495
496	  To compile this driver as a module, choose M here: the module will be
497	  called viperboard_adc.
498
499config XILINX_XADC
500	tristate "Xilinx XADC driver"
501	depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
502	depends on HAS_IOMEM
503	select IIO_BUFFER
504	select IIO_TRIGGERED_BUFFER
505	help
506	  Say yes here to have support for the Xilinx XADC. The driver does support
507	  both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
508
509	  The driver can also be build as a module. If so, the module will be called
510	  xilinx-xadc.
511
512endmenu
513