blob: da9644b508469f5325c4c9bedc94179c3a62f63f [file] [log] [blame]
Maxime Ripard0e589d52012-05-11 15:35:33 +02001#
2# ADC drivers
3#
Lars-Peter Clausen3edc84e2013-07-15 08:45:00 +01004# When adding new entries keep the list in alphabetical order
5
Maxime Ripard0e589d52012-05-11 15:35:33 +02006menu "Analog to digital converters"
7
Lars-Peter Clausenaf300842012-08-10 17:36:00 +01008config AD_SIGMA_DELTA
9 tristate
10 select IIO_BUFFER
11 select IIO_TRIGGERED_BUFFER
12
Stefan Popab3af3412018-11-13 13:21:32 +020013config AD7124
14 tristate "Analog Devices AD7124 and similar sigma-delta ADCs driver"
15 depends on SPI_MASTER
16 select AD_SIGMA_DELTA
17 help
18 Say yes here to build support for Analog Devices AD7124-4 and AD7124-8
19 SPI analog to digital converters (ADC).
20
21 To compile this driver as a module, choose M here: the module will be
22 called ad7124.
23
Lars-Peter Clausen8ec4cf52012-06-25 14:52:49 +020024config AD7266
25 tristate "Analog Devices AD7265/AD7266 ADC driver"
26 depends on SPI_MASTER
27 select IIO_BUFFER
28 select IIO_TRIGGER
29 select IIO_TRIGGERED_BUFFER
30 help
31 Say yes here to build support for Analog Devices AD7265 and AD7266
32 ADCs.
33
Hartmut Knaack12ebb052015-06-21 12:18:09 +020034 To compile this driver as a module, choose M here: the module will be
35 called ad7266.
36
Lars-Peter Clausen3b1cae72014-06-30 09:50:00 +010037config AD7291
38 tristate "Analog Devices AD7291 ADC driver"
39 depends on I2C
40 help
41 Say yes here to build support for Analog Devices AD7291
42 8 Channel ADC with temperature sensor.
43
44 To compile this driver as a module, choose M here: the
45 module will be called ad7291.
46
Lars-Peter Clausen709ab362012-11-17 11:42:59 +000047config AD7298
48 tristate "Analog Devices AD7298 ADC driver"
49 depends on SPI
50 select IIO_BUFFER
51 select IIO_TRIGGERED_BUFFER
52 help
53 Say yes here to build support for Analog Devices AD7298
54 8 Channel ADC with temperature sensor.
55
56 To compile this driver as a module, choose M here: the
57 module will be called ad7298.
58
Lars-Peter Clausen3edc84e2013-07-15 08:45:00 +010059config AD7476
60 tristate "Analog Devices AD7476 and similar 1-channel ADCs driver"
Christophe Leroy0eac2592013-02-13 06:47:00 +000061 depends on SPI
62 select IIO_BUFFER
63 select IIO_TRIGGERED_BUFFER
64 help
Lars-Peter Clausen3edc84e2013-07-15 08:45:00 +010065 Say yes here to build support for Analog Devices AD7273, AD7274, AD7276,
66 AD7277, AD7278, AD7475, AD7476, AD7477, AD7478, AD7466, AD7467, AD7468,
67 AD7495, AD7910, AD7920, AD7920 SPI analog to digital converters (ADC).
68
Christophe Leroy0eac2592013-02-13 06:47:00 +000069 To compile this driver as a module, choose M here: the
Lars-Peter Clausen3edc84e2013-07-15 08:45:00 +010070 module will be called ad7476.
Christophe Leroy0eac2592013-02-13 06:47:00 +000071
Lars-Peter Clausenaa16c6b2016-09-23 17:19:44 +020072config AD7766
73 tristate "Analog Devices AD7766/AD7767 ADC driver"
74 depends on SPI_MASTER
75 select IIO_BUFFER
76 select IIO_TRIGGERED_BUFFER
77 help
78 Say yes here to build support for Analog Devices AD7766, AD7766-1,
79 AD7766-2, AD7767, AD7767-1, AD7767-2 SPI analog to digital converters.
80
81 To compile this driver as a module, choose M here: the module will be
82 called ad7766.
83
Lars-Peter Clausen7b123c82012-09-04 16:26:00 +010084config AD7791
85 tristate "Analog Devices AD7791 ADC driver"
86 depends on SPI
87 select AD_SIGMA_DELTA
88 help
89 Say yes here to build support for Analog Devices AD7787, AD7788, AD7789,
Hartmut Knaack12ebb052015-06-21 12:18:09 +020090 AD7790 and AD7791 SPI analog to digital converters (ADC).
Lars-Peter Clausen7b123c82012-09-04 16:26:00 +010091
92 To compile this driver as a module, choose M here: the module will be
93 called ad7791.
94
Lars-Peter Clausenf87f1a22012-11-21 16:27:00 +000095config AD7793
96 tristate "Analog Devices AD7793 and similar ADCs driver"
97 depends on SPI
98 select AD_SIGMA_DELTA
99 help
100 Say yes here to build support for Analog Devices AD7785, AD7792, AD7793,
101 AD7794 and AD7795 SPI analog to digital converters (ADC).
Lars-Peter Clausenf87f1a22012-11-21 16:27:00 +0000102
103 To compile this driver as a module, choose M here: the
104 module will be called AD7793.
105
Lars-Peter Clausen4eb3ccf2012-11-05 09:56:00 +0000106config AD7887
107 tristate "Analog Devices AD7887 ADC driver"
108 depends on SPI
109 select IIO_BUFFER
110 select IIO_TRIGGERED_BUFFER
111 help
112 Say yes here to build support for Analog Devices
113 AD7887 SPI analog to digital converter (ADC).
Lars-Peter Clausen4eb3ccf2012-11-05 09:56:00 +0000114
115 To compile this driver as a module, choose M here: the
116 module will be called ad7887.
117
Lars-Peter Clausen3edc84e2013-07-15 08:45:00 +0100118config AD7923
119 tristate "Analog Devices AD7923 and similar ADCs driver"
120 depends on SPI
121 select IIO_BUFFER
122 select IIO_TRIGGERED_BUFFER
123 help
124 Say yes here to build support for Analog Devices
125 AD7904, AD7914, AD7923, AD7924 4 Channel ADCs.
126
127 To compile this driver as a module, choose M here: the
128 module will be called ad7923.
129
Charles-Antoine Couret7f40e062018-10-22 23:02:42 +0200130config AD7949
131 tristate "Analog Devices AD7949 and similar ADCs driver"
132 depends on SPI
133 help
134 Say yes here to build support for Analog Devices
135 AD7949, AD7682, AD7689 8 Channel ADCs.
136
137 To compile this driver as a module, choose M here: the
138 module will be called ad7949.
139
Lars-Peter Clausenbd75afa2014-10-03 10:31:00 +0100140config AD799X
141 tristate "Analog Devices AD799x ADC driver"
142 depends on I2C
143 select IIO_BUFFER
144 select IIO_TRIGGERED_BUFFER
145 help
146 Say yes here to build support for Analog Devices:
147 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
148 i2c analog to digital converters (ADC). Provides direct access
149 via sysfs.
150
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200151 To compile this driver as a module, choose M here: the module will be
152 called ad799x.
153
Rick Altherr57380322017-03-28 14:52:59 -0700154config ASPEED_ADC
155 tristate "Aspeed ADC"
156 depends on ARCH_ASPEED || COMPILE_TEST
157 depends on COMMON_CLK
158 help
159 If you say yes here you get support for the ADC included in Aspeed
160 BMC SoCs.
161
162 To compile this driver as a module, choose M here: the module will be
163 called aspeed_adc.
164
Maxime Ripard0e589d52012-05-11 15:35:33 +0200165config AT91_ADC
166 tristate "Atmel AT91 ADC"
167 depends on ARCH_AT91
Randy Dunlapea9170e2018-01-14 21:11:05 -0800168 depends on INPUT && SYSFS
Maxime Ripard0e589d52012-05-11 15:35:33 +0200169 select IIO_BUFFER
Lars-Peter Clausen90032e42012-06-18 18:33:49 +0200170 select IIO_TRIGGERED_BUFFER
Maxime Ripard0e589d52012-05-11 15:35:33 +0200171 help
172 Say yes here to build support for Atmel AT91 ADC.
173
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200174 To compile this driver as a module, choose M here: the module will be
175 called at91_adc.
176
Ludovic Desroches27e17712016-01-14 16:38:13 +0100177config AT91_SAMA5D2_ADC
178 tristate "Atmel AT91 SAMA5D2 ADC"
Ludovic Desrochesb9cd7a22016-01-15 09:54:18 +0100179 depends on ARCH_AT91 || COMPILE_TEST
Krzysztof Kozlowskie84a41d2016-03-04 10:05:26 +0900180 depends on HAS_IOMEM
Eugen Hristev76974ef2018-04-16 09:54:03 +0300181 select IIO_BUFFER
Arnd Bergmann3f09b8d2017-08-15 16:46:31 +0200182 select IIO_TRIGGERED_BUFFER
Ludovic Desroches27e17712016-01-14 16:38:13 +0100183 help
184 Say yes here to build support for Atmel SAMA5D2 ADC which is
185 available on SAMA5D2 SoC family.
186
187 To compile this driver as a module, choose M here: the module will be
188 called at91-sama5d2_adc.
189
Quentin Schulz0e34d5d2017-04-04 08:34:41 +0200190config AXP20X_ADC
191 tristate "X-Powers AXP20X and AXP22X ADC driver"
192 depends on MFD_AXP20X
193 help
194 Say yes here to have support for X-Powers power management IC (PMIC)
195 AXP20X and AXP22X ADC devices.
196
197 To compile this driver as a module, choose M here: the module will be
198 called axp20x_adc.
199
Jacob Pande89bd72014-10-06 21:17:15 -0700200config AXP288_ADC
201 tristate "X-Powers AXP288 ADC driver"
202 depends on MFD_AXP20X
203 help
204 Say yes here to have support for X-Powers power management IC (PMIC) ADC
205 device. Depending on platform configuration, this general purpose ADC can
206 be used for sampling sensors such as thermal resistors.
207
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200208 To compile this driver as a module, choose M here: the module will be
209 called axp288_adc.
210
Raveendra Padasalagi4324c972016-06-28 13:10:35 +0530211config BCM_IPROC_ADC
212 tristate "Broadcom IPROC ADC driver"
213 depends on ARCH_BCM_IPROC || COMPILE_TEST
214 depends on MFD_SYSCON
215 default ARCH_BCM_CYGNUS
216 help
217 Say Y here if you want to add support for the Broadcom static
218 ADC driver.
219
220 Broadcom iProc ADC driver. Broadcom iProc ADC controller has 8
221 channels. The driver allows the user to read voltage values.
222
Antoine Tenart70f19372015-05-18 11:19:18 +0200223config BERLIN2_ADC
224 tristate "Marvell Berlin2 ADC driver"
225 depends on ARCH_BERLIN
226 help
227 Marvell Berlin2 ADC driver. This ADC has 8 channels, with one used for
228 temperature measurement.
229
Hartmut Knaack47d5e302015-06-21 12:15:51 +0200230config CC10001_ADC
231 tristate "Cosmic Circuits 10001 ADC driver"
232 depends on HAS_IOMEM && HAVE_CLK && REGULATOR
233 select IIO_BUFFER
234 select IIO_TRIGGERED_BUFFER
235 help
236 Say yes here to build support for Cosmic Circuits 10001 ADC.
237
238 This driver can also be built as a module. If so, the module will be
239 called cc10001_adc.
240
Tony Lindgren25ec2492017-03-23 20:38:42 -0700241config CPCAP_ADC
242 tristate "Motorola CPCAP PMIC ADC driver"
243 depends on MFD_CPCAP
244 select IIO_BUFFER
245 select IIO_TRIGGERED_BUFFER
246 help
247 Say yes here to build support for Motorola CPCAP PMIC ADC.
248
249 This driver can also be built as a module. If so, the module will be
250 called cpcap-adc.
251
Adam Thomsoned5f07b2015-02-18 14:08:28 +0000252config DA9150_GPADC
253 tristate "Dialog DA9150 GPADC driver support"
254 depends on MFD_DA9150
255 help
256 Say yes here to build support for Dialog DA9150 GPADC.
257
258 This driver can also be built as a module. If chosen, the module name
259 will be da9150-gpadc.
260
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200261 To compile this driver as a module, choose M here: the module will be
262 called berlin2-adc.
263
Jack Andersen7c0299e2017-07-06 12:39:33 -1000264config DLN2_ADC
265 tristate "Diolan DLN-2 ADC driver support"
266 depends on MFD_DLN2
Randy Dunlap5151b4a2017-10-07 16:53:20 -0700267 select IIO_BUFFER
268 select IIO_TRIGGERED_BUFFER
Jack Andersen7c0299e2017-07-06 12:39:33 -1000269 help
270 Say yes here to build support for Diolan DLN-2 ADC.
271
272 This driver can also be built as a module. If so, the module will be
273 called adc_dln2.
274
Peter Rosinb475f802016-11-08 12:58:58 +0100275config ENVELOPE_DETECTOR
276 tristate "Envelope detector using a DAC and a comparator"
277 depends on OF
278 help
279 Say yes here to build support for an envelope detector using a DAC
280 and a comparator.
281
282 To compile this driver as a module, choose M here: the module will be
283 called envelope-detector.
284
Alexander Sverdlin86142062017-07-24 22:51:45 +0200285config EP93XX_ADC
286 tristate "Cirrus Logic EP93XX ADC driver"
287 depends on ARCH_EP93XX
288 help
289 Driver for the ADC module on the EP93XX series of SoC from Cirrus Logic.
290 It's recommended to switch on CONFIG_HIGH_RES_TIMERS option, in this
291 case driver will reduce its CPU usage by 90% in some use cases.
292
293 To compile this driver as a module, choose M here: the module will be
294 called ep93xx_adc.
295
Naveen Krishna Chatradhi10f5b142013-02-15 06:56:00 +0000296config EXYNOS_ADC
Doug Andersonbbc28132014-04-22 01:03:00 +0100297 tristate "Exynos ADC driver support"
Chanwoo Choi145b0a52014-07-28 13:44:00 +0100298 depends on ARCH_EXYNOS || ARCH_S3C24XX || ARCH_S3C64XX || (OF && COMPILE_TEST)
Richard Weinberger0165c302016-01-25 23:24:05 +0100299 depends on HAS_IOMEM
Naveen Krishna Chatradhi10f5b142013-02-15 06:56:00 +0000300 help
301 Core support for the ADC block found in the Samsung EXYNOS series
302 of SoCs for drivers such as the touchscreen and hwmon to use to share
303 this resource.
304
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200305 To compile this driver as a module, choose M here: the module will be
306 called exynos_adc.
307
Ksenija Stanojevic6dd112b2017-03-16 13:27:10 +0100308config MXS_LRADC_ADC
309 tristate "Freescale i.MX23/i.MX28 LRADC ADC"
310 depends on MFD_MXS_LRADC
311 select IIO_BUFFER
312 select IIO_TRIGGERED_BUFFER
313 help
314 Say yes here to build support for the ADC functions of the
315 i.MX23/i.MX28 LRADC. This includes general-purpose ADC readings,
316 battery voltage measurement, and die temperature measurement.
317
318 This driver can also be built as a module. If so, the module will be
319 called mxs-lradc-adc.
320
Markus Pargmann6df2e982015-12-14 14:53:51 +0100321config FSL_MX25_ADC
322 tristate "Freescale MX25 ADC driver"
323 depends on MFD_MX25_TSADC
324 help
325 Generic Conversion Queue driver used for general purpose ADC in the
326 MX25. This driver supports single measurements using the MX25 ADC.
327
Vladimir Barinov72aa29c2015-08-28 17:27:52 +0300328config HI8435
329 tristate "Holt Integrated Circuits HI-8435 threshold detector"
330 select IIO_TRIGGERED_EVENT
331 depends on SPI
332 help
333 If you say yes here you get support for Holt Integrated Circuits
334 HI-8435 chip.
335
336 This driver can also be built as a module. If so, the module will be
337 called hi8435.
338
Andreas Klingerc3b2fdd2017-01-05 18:51:57 +0100339config HX711
340 tristate "AVIA HX711 ADC for weight cells"
341 depends on GPIOLIB
Andreas Klingerd3bf6042017-12-13 18:10:11 +0100342 select IIO_BUFFER
343 select IIO_TRIGGERED_BUFFER
Andreas Klingerc3b2fdd2017-01-05 18:51:57 +0100344 help
345 If you say yes here you get support for AVIA HX711 ADC which is used
346 for weigh cells
347
348 This driver uses two GPIOs, one acts as the clock and controls the
349 channel selection and gain, the other one is used for the measurement
350 data
351
352 Currently the raw value is read from the chip and delivered.
353 To get an actual weight one needs to subtract the
354 zero offset and multiply by a scale factor.
355 This should be done in userspace.
356
357 This driver can also be built as a module. If so, the module will be
358 called hx711.
359
Marc Titingerc43a1022015-12-07 10:09:34 +0100360config INA2XX_ADC
361 tristate "Texas Instruments INA2xx Power Monitors IIO driver"
362 depends on I2C && !SENSORS_INA2XX
363 select REGMAP_I2C
364 select IIO_BUFFER
365 select IIO_KFIFO_BUF
366 help
367 Say yes here to build support for TI INA2xx family of Power Monitors.
368 This driver is mutually exclusive with the HWMON version.
369
Haibo Chen16846eb2015-12-08 18:26:20 +0800370config IMX7D_ADC
Fabio Estevamedd80a52017-06-17 18:00:16 -0300371 tristate "Freescale IMX7D ADC driver"
Haibo Chen16846eb2015-12-08 18:26:20 +0800372 depends on ARCH_MXC || COMPILE_TEST
Richard Weinberger0165c302016-01-25 23:24:05 +0100373 depends on HAS_IOMEM
Haibo Chen16846eb2015-12-08 18:26:20 +0800374 help
375 Say yes here to build support for IMX7D ADC.
376
377 This driver can also be built as a module. If so, the module will be
378 called imx7d_adc.
379
Kim, Milof0347c32012-09-17 10:35:00 +0100380config LP8788_ADC
Doug Andersonbbc28132014-04-22 01:03:00 +0100381 tristate "LP8788 ADC driver"
Kim, Milof0347c32012-09-17 10:35:00 +0100382 depends on MFD_LP8788
383 help
384 Say yes here to build support for TI LP8788 ADC.
385
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200386 To compile this driver as a module, choose M here: the module will be
387 called lp8788_adc.
388
Joachim Eastwooda583c242016-03-12 13:30:14 +0100389config LPC18XX_ADC
390 tristate "NXP LPC18xx ADC driver"
391 depends on ARCH_LPC18XX || COMPILE_TEST
392 depends on OF && HAS_IOMEM
393 help
394 Say yes here to build support for NXP LPC18XX ADC.
395
396 To compile this driver as a module, choose M here: the module will be
397 called lpc18xx_adc.
398
Jonathan Cameron0097e202017-02-05 13:07:00 +0000399config LPC32XX_ADC
400 tristate "NXP LPC32XX ADC"
401 depends on ARCH_LPC32XX || COMPILE_TEST
402 depends on HAS_IOMEM
403 help
404 Say yes here to build support for the integrated ADC inside the
405 LPC32XX SoC. Note that this feature uses the same hardware as the
406 touchscreen driver, so you should either select only one of the two
407 drivers (lpc32xx_adc or lpc32xx_ts) or, in the OpenFirmware case,
408 activate only one via device tree selection. Provides direct access
409 via sysfs.
410
Mike Looijmans1d3eacb2017-07-03 08:25:57 +0200411config LTC2471
412 tristate "Linear Technology LTC2471 and LTC2473 ADC driver"
413 depends on I2C
414 help
415 Say yes here to build support for Linear Technology LTC2471 and
416 LTC2473 16-bit I2C ADC.
417
418 This driver can also be built as a module. If so, the module will
419 be called ltc2471.
420
Alison Schofield8c9e7b12016-08-24 22:48:43 -0700421config LTC2485
422 tristate "Linear Technology LTC2485 ADC driver"
423 depends on I2C
424 help
425 Say yes here to build support for Linear Technology LTC2485 ADC.
426
427 To compile this driver as a module, choose M here: the module will be
428 called ltc2485.
429
Michael Hennerichbc822222017-03-29 11:42:58 +0200430config LTC2497
431 tristate "Linear Technology LTC2497 ADC driver"
432 depends on I2C
433 help
434 Say yes here to build support for Linear Technology LTC2497
435 16-Bit 8-/16-Channel Delta Sigma ADC.
436
437 To compile this driver as a module, choose M here: the module will be
438 called ltc2497.
439
Philippe Reynesfc167f62014-06-14 23:27:00 +0100440config MAX1027
441 tristate "Maxim max1027 ADC driver"
442 depends on SPI
443 select IIO_BUFFER
444 select IIO_TRIGGERED_BUFFER
445 help
446 Say yes here to build support for Maxim SPI ADC models
447 max1027, max1029 and max1031.
448
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200449 To compile this driver as a module, choose M here: the module will be
450 called max1027.
451
Jacopo Mondia8e7e882017-01-18 17:30:52 +0100452config MAX11100
453 tristate "Maxim max11100 ADC driver"
454 depends on SPI_MASTER
455 help
456 Say yes here to build support for Maxim max11100 SPI ADC
457
458 To compile this driver as a module, choose M here: the module will be
459 called max11100.
460
Akinobu Mitaa9e9c712017-03-29 01:34:48 +0900461config MAX1118
462 tristate "Maxim max1117/max1118/max1119 ADCs driver"
463 depends on SPI
464 select IIO_BUFFER
465 select IIO_TRIGGERED_BUFFER
466 help
467 Say yes here to build support for Maxim max1117/max1118/max1119
468 8-bit, dual-channel ADCs.
469
470 To compile this driver as a module, choose M here: the module will be
471 called max1118.
472
Jonathan Cameron168c9d92012-10-06 14:42:27 +0100473config MAX1363
474 tristate "Maxim max1363 ADC driver"
475 depends on I2C
Jonathan Cameron168c9d92012-10-06 14:42:27 +0100476 select IIO_BUFFER
Peter Meerwald8a9f6452013-01-10 17:29:00 +0000477 select IIO_TRIGGERED_BUFFER
Jonathan Cameron168c9d92012-10-06 14:42:27 +0100478 help
479 Say yes here to build support for many Maxim i2c analog to digital
480 converters (ADC). (max1361, max1362, max1363, max1364, max1036,
481 max1037, max1038, max1039, max1136, max1136, max1137, max1138,
482 max1139, max1236, max1237, max11238, max1239, max11600, max11601,
483 max11602, max11603, max11604, max11605, max11606, max11607,
484 max11608, max11609, max11610, max11611, max11612, max11613,
485 max11614, max11615, max11616, max11617, max11644, max11645,
486 max11646, max11647) Provides direct access via sysfs and buffered
487 data via the iio dev interface.
488
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200489 To compile this driver as a module, choose M here: the module will be
490 called max1363.
491
Jacopo Mondi69780a32017-04-06 16:20:53 +0200492config MAX9611
493 tristate "Maxim max9611/max9612 ADC driver"
494 depends on I2C
495 help
496 Say yes here to build support for Maxim max9611/max9612 current sense
497 amplifier with 12-bits ADC interface.
498
499 To compile this driver as a module, choose M here: the module will be
500 called max9611.
501
Oskar Anderof5ce4a72013-05-03 10:58:00 +0100502config MCP320X
Lukas Wunnerc1375d62017-09-09 20:32:41 +0200503 tristate "Microchip Technology MCP3x01/02/04/08 and MCP3550/1/3"
Oskar Anderof5ce4a72013-05-03 10:58:00 +0100504 depends on SPI
505 help
Søren Andersenab280022015-03-10 22:12:07 +0100506 Say yes here to build support for Microchip Technology's
Andrea Galbuseraf686a362015-07-14 15:36:21 +0200507 MCP3001, MCP3002, MCP3004, MCP3008, MCP3201, MCP3202, MCP3204,
Lukas Wunnerc1375d62017-09-09 20:32:41 +0200508 MCP3208, MCP3301, MCP3550, MCP3551 and MCP3553 analog to digital
509 converters.
Oskar Anderof5ce4a72013-05-03 10:58:00 +0100510
511 This driver can also be built as a module. If so, the module will be
512 called mcp320x.
513
Angelo Compagnucci07914c82013-09-02 15:00:00 +0100514config MCP3422
Akinobu Mita505abf92015-12-26 21:16:14 +0900515 tristate "Microchip Technology MCP3421/2/3/4/5/6/7/8 driver"
Angelo Compagnucci07914c82013-09-02 15:00:00 +0100516 depends on I2C
517 help
Akinobu Mita505abf92015-12-26 21:16:14 +0900518 Say yes here to build support for Microchip Technology's MCP3421
519 MCP3422, MCP3423, MCP3424, MCP3425, MCP3426, MCP3427 or MCP3428
Angelo Compagnucci2816ac62014-08-03 23:22:00 +0100520 analog to digital converters.
Angelo Compagnucci07914c82013-09-02 15:00:00 +0100521
522 This driver can also be built as a module. If so, the module will be
523 called mcp3422.
524
Marcus Folkesson3a89b282018-08-08 10:09:15 +0200525config MCP3911
526 tristate "Microchip Technology MCP3911 driver"
527 depends on SPI
528 help
529 Say yes here to build support for Microchip Technology's MCP3911
530 analog to digital converter.
531
532 This driver can also be built as a module. If so, the module will be
533 called mcp3911.
534
Zhiyong Taoace4cdf2016-08-18 15:11:36 +0800535config MEDIATEK_MT6577_AUXADC
536 tristate "MediaTek AUXADC driver"
537 depends on ARCH_MEDIATEK || COMPILE_TEST
538 depends on HAS_IOMEM
539 help
540 Say yes here to enable support for MediaTek mt65xx AUXADC.
541
542 The driver supports immediate mode operation to read from one of sixteen
543 channels (external or internal).
544
545 This driver can also be built as a module. If so, the module will be
546 called mt6577_auxadc.
547
Johannes Thumshirn74aeac42014-02-26 17:29:07 +0100548config MEN_Z188_ADC
549 tristate "MEN 16z188 ADC IP Core support"
550 depends on MCB
551 help
552 Say yes here to enable support for the MEN 16z188 ADC IP-Core on a MCB
553 carrier.
554
555 This driver can also be built as a module. If so, the module will be
556 called men_z188_adc.
557
Martin Blumenstingl3adbf342017-01-22 19:17:13 +0100558config MESON_SARADC
559 tristate "Amlogic Meson SAR ADC driver"
560 default ARCH_MESON
561 depends on OF && COMMON_CLK && (ARCH_MESON || COMPILE_TEST)
562 select REGMAP_MMIO
563 help
564 Say yes here to build support for the SAR ADC found in Amlogic Meson
565 SoCs.
566
567 To compile this driver as a module, choose M here: the
568 module will be called meson_saradc.
569
Alexandre Belloni8b20be82013-06-24 18:24:00 +0100570config NAU7802
571 tristate "Nuvoton NAU7802 ADC driver"
572 depends on I2C
573 help
574 Say yes here to build support for Nuvoton NAU7802 ADC.
575
576 To compile this driver as a module, choose M here: the
577 module will be called nau7802.
578
H. Nikolaus Schallere08e19c2015-10-16 14:53:38 +0200579config PALMAS_GPADC
580 tristate "TI Palmas General Purpose ADC"
581 depends on MFD_PALMAS
582 help
583 Palmas series pmic chip by Texas Instruments (twl6035/6037)
584 is used in smartphones and tablets and supports a 16 channel
585 general purpose ADC.
586
Linus Walleije932d4f2017-04-04 14:08:18 +0200587config QCOM_VADC_COMMON
588 tristate
589
Linus Walleij63c3ecd2017-04-04 14:08:19 +0200590config QCOM_PM8XXX_XOADC
591 tristate "Qualcomm SSBI PM8xxx PMIC XOADCs"
592 depends on MFD_PM8XXX
593 select QCOM_VADC_COMMON
594 help
595 ADC driver for the XOADC portions of the Qualcomm PM8xxx PMICs
596 using SSBI transport: PM8018, PM8038, PM8058, PM8921.
597
598 To compile this driver as a module, choose M here: the module
599 will be called qcom-pm8xxx-xoadc.
600
Ivan T. Ivanovce069482014-10-22 17:13:33 +0300601config QCOM_SPMI_IADC
602 tristate "Qualcomm SPMI PMIC current ADC"
603 depends on SPMI
604 select REGMAP_SPMI
605 help
606 This is the IIO Current ADC driver for Qualcomm QPNP IADC Chip.
607
608 The driver supports single mode operation to read from one of two
609 channels (external or internal). Hardware have additional
610 channels internally used for gain and offset calibration.
611
612 To compile this driver as a module, choose M here: the module will
613 be called qcom-spmi-iadc.
614
Stanimir Varbanov0917de92015-01-20 12:15:22 +0200615config QCOM_SPMI_VADC
616 tristate "Qualcomm SPMI PMIC voltage ADC"
617 depends on SPMI
618 select REGMAP_SPMI
Linus Walleije932d4f2017-04-04 14:08:18 +0200619 select QCOM_VADC_COMMON
Stanimir Varbanov0917de92015-01-20 12:15:22 +0200620 help
621 This is the IIO Voltage ADC driver for Qualcomm QPNP VADC Chip.
622
623 The driver supports multiple channels read. The VADC is a 15-bit
624 sigma-delta ADC. Some of the channels are internally used for
625 calibration.
626
627 To compile this driver as a module, choose M here: the module will
628 be called qcom-spmi-vadc.
629
Siddartha Mohanadosse13d7572018-08-02 18:43:53 -0700630config QCOM_SPMI_ADC5
631 tristate "Qualcomm Technologies Inc. SPMI PMIC5 ADC"
632 depends on SPMI
633 select REGMAP_SPMI
634 select QCOM_VADC_COMMON
635 help
636 This is the IIO Voltage PMIC5 ADC driver for Qualcomm Technologies Inc.
637
638 The driver supports multiple channels read. The ADC is a 16-bit
639 sigma-delta ADC. The hardware supports calibrated results for
640 conversion requests and clients include reading voltage phone
641 power, on board system thermistors connected to the PMIC ADC,
642 PMIC die temperature, charger temperature, battery current, USB voltage
643 input, voltage signals connected to supported PMIC GPIO inputs. The
644 hardware supports internal pull-up for thermistors and can choose between
645 a 100k, 30k and 400k pull up using the ADC channels.
646
647 To compile this driver as a module, choose M here: the module will
648 be called qcom-spmi-adc5.
649
Marek Vasut059c53b2017-01-28 00:08:37 +0100650config RCAR_GYRO_ADC
651 tristate "Renesas R-Car GyroADC driver"
Geert Uytterhoevenaf5d7162017-10-04 14:08:25 +0200652 depends on ARCH_RCAR_GEN2 || COMPILE_TEST
Marek Vasut059c53b2017-01-28 00:08:37 +0100653 help
654 Say yes here to build support for the GyroADC found in Renesas
655 R-Car Gen2 SoCs. This block is a simple SPI offload engine for
656 reading data out of attached compatible ADCs in a round-robin
657 fashion. Up to 4 or 8 ADC channels are supported by this block,
658 depending on which ADCs are attached.
659
660 To compile this driver as a module, choose M here: the
661 module will be called rcar-gyroadc.
662
Heiko Stübner44d6f2e2014-07-23 22:24:00 +0100663config ROCKCHIP_SARADC
664 tristate "Rockchip SARADC driver"
665 depends on ARCH_ROCKCHIP || (ARM && COMPILE_TEST)
Caesar Wang543852a2016-07-27 22:24:04 +0800666 depends on RESET_CONTROLLER
Heiko Stübner44d6f2e2014-07-23 22:24:00 +0100667 help
668 Say yes here to build support for the SARADC found in SoCs from
669 Rockchip.
670
671 To compile this driver as a module, choose M here: the
672 module will be called rockchip_saradc.
673
Freeman Liu5df362a62018-06-21 11:14:05 +0800674config SC27XX_ADC
675 tristate "Spreadtrum SC27xx series PMICs ADC"
676 depends on MFD_SC27XX_PMIC || COMPILE_TEST
677 help
678 Say yes here to build support for the integrated ADC inside the
679 Spreadtrum SC27xx series PMICs.
680
681 This driver can also be built as a module. If so, the module
682 will be called sc27xx_adc.
683
Jonathan Cameronaf8f651b2017-02-05 12:34:00 +0000684config SPEAR_ADC
685 tristate "ST SPEAr ADC"
686 depends on PLAT_SPEAR || COMPILE_TEST
687 depends on HAS_IOMEM
688 help
689 Say yes here to build support for the integrated ADC inside the
690 ST SPEAr SoC. Provides direct access via sysfs.
691
692 To compile this driver as a module, choose M here: the
693 module will be called spear_adc.
694
Arnaud Pouliquen8a5f0b62018-01-10 11:13:08 +0100695config SD_ADC_MODULATOR
696 tristate "Generic sigma delta modulator"
697 depends on OF
698 select IIO_BUFFER
699 select IIO_TRIGGERED_BUFFER
700 help
701 Select this option to enables sigma delta modulator. This driver can
702 support generic sigma delta modulators.
703
704 This driver can also be built as a module. If so, the module
705 will be called sd_adc_modulator.
706
Fabrice Gasnier1add69882016-11-15 16:30:57 +0100707config STM32_ADC_CORE
708 tristate "STMicroelectronics STM32 adc core"
709 depends on ARCH_STM32 || COMPILE_TEST
710 depends on OF
711 depends on REGULATOR
Fabrice Gasnierda9b9482017-01-26 15:28:29 +0100712 select IIO_BUFFER
Fabrice Gasnierf24a33b2017-01-26 15:28:30 +0100713 select MFD_STM32_TIMERS
714 select IIO_STM32_TIMER_TRIGGER
Fabrice Gasnierda9b9482017-01-26 15:28:29 +0100715 select IIO_TRIGGERED_BUFFER
Fabrice Gasnier1add69882016-11-15 16:30:57 +0100716 help
717 Select this option to enable the core driver for STMicroelectronics
718 STM32 analog-to-digital converter (ADC).
719
720 This driver can also be built as a module. If so, the module
721 will be called stm32-adc-core.
722
Fabrice Gasnier0f883b22016-11-15 16:30:58 +0100723config STM32_ADC
724 tristate "STMicroelectronics STM32 adc"
725 depends on STM32_ADC_CORE
726 help
727 Say yes here to build support for STMicroelectronics stm32 Analog
728 to Digital Converter (ADC).
729
730 This driver can also be built as a module. If so, the module
731 will be called stm32-adc.
732
Arnaud Pouliquenbed73902018-01-10 11:13:10 +0100733config STM32_DFSDM_CORE
734 tristate "STMicroelectronics STM32 DFSDM core"
735 depends on (ARCH_STM32 && OF) || COMPILE_TEST
736 select REGMAP
737 select REGMAP_MMIO
738 help
739 Select this option to enable the driver for STMicroelectronics
740 STM32 digital filter for sigma delta converter.
741
742 This driver can also be built as a module. If so, the module
743 will be called stm32-dfsdm-core.
744
Arnaud Pouliquene2e67712018-01-10 11:13:11 +0100745config STM32_DFSDM_ADC
746 tristate "STMicroelectronics STM32 dfsdm adc"
747 depends on (ARCH_STM32 && OF) || COMPILE_TEST
748 select STM32_DFSDM_CORE
749 select REGMAP_MMIO
750 select IIO_BUFFER_HW_CONSUMER
751 help
752 Select this option to support ADCSigma delta modulator for
753 STMicroelectronics STM32 digital filter for sigma delta converter.
754
755 This driver can also be built as a module. If so, the module
756 will be called stm32-dfsdm-adc.
757
William Breathitt Gray4075a282016-08-29 16:22:56 -0400758config STX104
759 tristate "Apex Embedded Systems STX104 driver"
William Breathitt Gray1f8f9362017-12-29 15:13:19 -0500760 depends on PC104 && X86
761 select ISA_BUS_API
William Breathitt Gray4075a282016-08-29 16:22:56 -0400762 select GPIOLIB
763 help
764 Say yes here to build support for the Apex Embedded Systems STX104
765 integrated analog PC/104 card.
766
767 This driver supports the 16 channels of single-ended (8 channels of
768 differential) analog inputs, 2 channels of analog output, 4 digital
769 inputs, and 4 digital outputs provided by the STX104.
770
771 The base port addresses for the devices may be configured via the base
772 array module parameter.
773
Quentin Schulzd1caa992016-12-13 15:33:32 +0100774config SUN4I_GPADC
775 tristate "Support for the Allwinner SoCs GPADC"
776 depends on IIO
Quentin Schulz808a8b72017-04-05 11:06:30 +0200777 depends on MFD_SUN4I_GPADC || MACH_SUN8I
Arnd Bergmannbe2d7322017-03-28 12:07:23 +0200778 depends on THERMAL || !THERMAL_OF
Arnd Bergmannc2c84062018-05-25 17:34:23 +0200779 select REGMAP_IRQ
Quentin Schulzd1caa992016-12-13 15:33:32 +0100780 help
781 Say yes here to build support for Allwinner (A10, A13 and A31) SoCs
782 GPADC. This ADC provides 4 channels which can be used as an ADC or as
783 a touchscreen input and one channel for thermal sensor.
784
785 The thermal sensor slows down ADC readings and can be disabled by
786 disabling CONFIG_THERMAL_OF. However, the thermal sensor should be
787 enabled by default since the SoC temperature is usually more critical
788 than ADC readings.
789
790 To compile this driver as a module, choose M here: the module will be
791 called sun4i-gpadc-iio.
792
Thierry Redingbc0a4092012-11-23 15:13:00 +0000793config TI_ADC081C
Crestez Dan Leonarda6b5ec82016-04-11 17:24:26 +0300794 tristate "Texas Instruments ADC081C/ADC101C/ADC121C family"
Thierry Redingbc0a4092012-11-23 15:13:00 +0000795 depends on I2C
Mika Westerberg29679992016-10-05 17:46:50 +0300796 select IIO_BUFFER
797 select IIO_TRIGGERED_BUFFER
Thierry Redingbc0a4092012-11-23 15:13:00 +0000798 help
Crestez Dan Leonarda6b5ec82016-04-11 17:24:26 +0300799 If you say yes here you get support for Texas Instruments ADC081C,
800 ADC101C and ADC121C ADC chips.
Thierry Redingbc0a4092012-11-23 15:13:00 +0000801
802 This driver can also be built as a module. If so, the module will be
803 called ti-adc081c.
804
Akinobu Mitaefc945f2016-02-07 18:14:16 +0900805config TI_ADC0832
806 tristate "Texas Instruments ADC0831/ADC0832/ADC0834/ADC0838"
807 depends on SPI
Akinobu Mita815bbc82016-10-17 00:59:42 +0900808 select IIO_BUFFER
809 select IIO_TRIGGERED_BUFFER
Akinobu Mitaefc945f2016-02-07 18:14:16 +0900810 help
811 If you say yes here you get support for Texas Instruments ADC0831,
812 ADC0832, ADC0834, ADC0838 ADC chips.
813
814 This driver can also be built as a module. If so, the module will be
815 called ti-adc0832.
816
Mårten Lindahl3691e5a2017-05-09 18:05:01 +0200817config TI_ADC084S021
818 tristate "Texas Instruments ADC084S021"
819 depends on SPI
820 select IIO_BUFFER
821 select IIO_TRIGGERED_BUFFER
822 help
823 If you say yes here you get support for Texas Instruments ADC084S021
824 chips.
825
826 This driver can also be built as a module. If so, the module will be
827 called ti-adc084s021.
828
Akinobu Mita50a6edb2016-08-28 23:52:49 +0900829config TI_ADC12138
830 tristate "Texas Instruments ADC12130/ADC12132/ADC12138"
831 depends on SPI
832 select IIO_BUFFER
833 select IIO_TRIGGERED_BUFFER
834 help
835 If you say yes here you get support for Texas Instruments ADC12130,
836 ADC12132 and ADC12138 chips.
837
838 This driver can also be built as a module. If so, the module will be
839 called ti-adc12138.
840
Jan Kiszka7e87d112017-05-17 17:28:17 +0200841config TI_ADC108S102
842 tristate "Texas Instruments ADC108S102 and ADC128S102 driver"
843 depends on SPI
844 select IIO_BUFFER
845 select IIO_TRIGGERED_BUFFER
846 help
847 Say yes here to build support for Texas Instruments ADC108S102 and
848 ADC128S102 ADC.
849
850 To compile this driver as a module, choose M here: the module will
851 be called ti-adc108s102.
852
Angelo Compagnucci913b86462014-03-08 18:38:00 +0000853config TI_ADC128S052
Oliver Stäblerb41fa862015-12-09 10:24:04 +0100854 tristate "Texas Instruments ADC128S052/ADC122S021/ADC124S021"
Angelo Compagnucci913b86462014-03-08 18:38:00 +0000855 depends on SPI
856 help
Oliver Stäblerb41fa862015-12-09 10:24:04 +0100857 If you say yes here you get support for Texas Instruments ADC128S052,
858 ADC122S021 and ADC124S021 chips.
Angelo Compagnucci913b86462014-03-08 18:38:00 +0000859
860 This driver can also be built as a module. If so, the module will be
861 called ti-adc128s052.
862
Matt Ranostay4d671b72016-08-19 20:17:03 -0700863config TI_ADC161S626
864 tristate "Texas Instruments ADC161S626 1-channel differential ADC"
865 depends on SPI
866 select IIO_BUFFER
867 select IIO_TRIGGERED_BUFFER
868 help
869 If you say yes here you get support for Texas Instruments ADC141S626,
870 and ADC161S626 chips.
871
872 This driver can also be built as a module. If so, the module will be
873 called ti-adc161s626.
874
Daniel Balutaecc24e72016-02-11 15:49:54 +0200875config TI_ADS1015
876 tristate "Texas Instruments ADS1015 ADC"
877 depends on I2C && !SENSORS_ADS1015
878 select REGMAP_I2C
879 select IIO_BUFFER
880 select IIO_TRIGGERED_BUFFER
881 help
882 If you say yes here you get support for Texas Instruments ADS1015
883 ADC chip.
884
885 This driver can also be built as a module. If so, the module will be
886 called ti-ads1015.
887
David Lechner902c4b22016-11-28 10:58:15 -0600888config TI_ADS7950
889 tristate "Texas Instruments ADS7950 ADC driver"
890 depends on SPI
891 select IIO_BUFFER
892 select IIO_TRIGGERED_BUFFER
893 help
894 Say yes here to build support for Texas Instruments ADS7950, ADS7951,
895 ADS7952, ADS7953, ADS7954, ADS7955, ADS7956, ADS7957, ADS7958, ADS7959.
896 ADS7960, ADS7961.
897
898 To compile this driver as a module, choose M here: the
899 module will be called ti-ads7950.
900
Sean Nyekjaer3e87e782015-11-09 13:52:59 +0100901config TI_ADS8688
902 tristate "Texas Instruments ADS8688"
903 depends on SPI && OF
904 help
905 If you say yes here you get support for Texas Instruments ADS8684 and
906 and ADS8688 ADC chips
907
908 This driver can also be built as a module. If so, the module will be
909 called ti-ads8688.
910
Patil, Rachna5e53a692012-10-16 12:55:45 +0530911config TI_AM335X_ADC
Sachin Kamatbe856972013-07-23 09:46:00 +0100912 tristate "TI's AM335X ADC driver"
Geert Uytterhoevenb1448ea2016-12-14 13:30:24 +0100913 depends on MFD_TI_AM335X_TSCADC && HAS_DMA
Jonathan Cameron09f33c32013-09-25 21:37:00 +0100914 select IIO_BUFFER
Zubair Lutfullahca9a5632013-09-19 07:24:00 +0100915 select IIO_KFIFO_BUF
Patil, Rachna5e53a692012-10-16 12:55:45 +0530916 help
917 Say yes here to build support for Texas Instruments ADC
918 driver which is also a MFD client.
919
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200920 To compile this driver as a module, choose M here: the module will be
921 called ti_am335x_adc.
922
Phil Reidac2bec92017-01-16 16:38:24 +0800923config TI_TLC4541
924 tristate "Texas Instruments TLC4541 ADC driver"
925 depends on SPI
926 select IIO_BUFFER
927 select IIO_TRIGGERED_BUFFER
928 help
929 Say yes here to build support for Texas Instruments TLC4541 / TLC3541
930 ADC chips.
931
932 This driver can also be built as a module. If so, the module will be
933 called ti-tlc4541.
934
Sebastian Reichelb2931b92014-03-16 02:43:31 +0100935config TWL4030_MADC
936 tristate "TWL4030 MADC (Monitoring A/D Converter)"
937 depends on TWL4030_CORE
938 help
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200939 This driver provides support for Triton TWL4030-MADC. The
940 driver supports both RT and SW conversion methods.
Sebastian Reichelb2931b92014-03-16 02:43:31 +0100941
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200942 This driver can also be built as a module. If so, the module will be
943 called twl4030-madc.
Sebastian Reichelb2931b92014-03-16 02:43:31 +0100944
Oleksandr Kozaruk1696f362013-07-25 14:26:00 +0100945config TWL6030_GPADC
946 tristate "TWL6030 GPADC (General Purpose A/D Converter) Support"
947 depends on TWL4030_CORE
948 default n
949 help
950 Say yes here if you want support for the TWL6030/TWL6032 General
951 Purpose A/D Converter. This will add support for battery type
952 detection, battery voltage and temperature measurement, die
953 temperature measurement, system supply voltage, audio accessory,
954 USB ID detection.
955
956 This driver can also be built as a module. If so, the module will be
957 called twl6030-gpadc.
958
Fugang Duana7754272014-01-26 05:39:00 +0000959config VF610_ADC
960 tristate "Freescale vf610 ADC driver"
961 depends on OF
Richard Weinberger0165c302016-01-25 23:24:05 +0100962 depends on HAS_IOMEM
Sanchayan Maity0010d6b2015-08-17 21:21:40 +0530963 select IIO_BUFFER
964 select IIO_TRIGGERED_BUFFER
Fugang Duana7754272014-01-26 05:39:00 +0000965 help
966 Say yes here to support for Vybrid board analog-to-digital converter.
967 Since the IP is used for i.MX6SLX, the driver also support i.MX6SLX.
968
969 This driver can also be built as a module. If so, the module will be
970 called vf610_adc.
971
Lars Poeschelffd8a6e2012-11-05 15:48:26 +0100972config VIPERBOARD_ADC
973 tristate "Viperboard ADC support"
974 depends on MFD_VIPERBOARD && USB
975 help
976 Say yes here to access the ADC part of the Nano River
977 Technologies Viperboard.
978
Hartmut Knaack12ebb052015-06-21 12:18:09 +0200979 To compile this driver as a module, choose M here: the module will be
980 called viperboard_adc.
981
Lars-Peter Clausenbdc8cda2014-02-17 14:10:00 +0000982config XILINX_XADC
983 tristate "Xilinx XADC driver"
984 depends on ARCH_ZYNQ || MICROBLAZE || COMPILE_TEST
985 depends on HAS_IOMEM
986 select IIO_BUFFER
987 select IIO_TRIGGERED_BUFFER
988 help
989 Say yes here to have support for the Xilinx XADC. The driver does support
990 both the ZYNQ interface to the XADC as well as the AXI-XADC interface.
991
992 The driver can also be build as a module. If so, the module will be called
993 xilinx-xadc.
994
Maxime Ripard0e589d52012-05-11 15:35:33 +0200995endmenu