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