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