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