Merge tag 'mm-hotfixes-stable-2025-07-11-16-16' of git://git.kernel.org/pub/scm/linux...
[linux-2.6-block.git] / drivers / iio / dac / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # DAC drivers
4 #
5 # When adding new entries keep the list in alphabetical order
6
7 menu "Digital to analog converters"
8
9 config AD3530R
10         tristate "Analog Devices AD3530R and Similar DACs driver"
11         depends on SPI
12         select REGMAP_SPI
13         help
14           Say yes here to build support for Analog Devices AD3530R, AD3531R
15           Digital to Analog Converter.
16
17           To compile this driver as a module, choose M here: the
18           module will be called ad3530r.
19
20 config AD3552R_HS
21         tristate "Analog Devices AD3552R DAC High Speed driver"
22         select AD3552R_LIB
23         select IIO_BACKEND
24         help
25           Say yes here to build support for Analog Devices AD3552R
26           Digital to Analog Converter High Speed driver.
27
28           The driver requires the assistance of an IP core to operate,
29           since data is streamed into target device via DMA, sent over a
30           QSPI + DDR (Double Data Rate) bus.
31
32           To compile this driver as a module, choose M here: the
33           module will be called ad3552r-hs.
34
35 config AD3552R_LIB
36         tristate
37
38 config AD3552R
39         tristate "Analog Devices AD3552R DAC driver"
40         depends on SPI_MASTER
41         select AD3552R_LIB
42         select IIO_BUFFER
43         select IIO_TRIGGERED_BUFFER
44         help
45           Say yes here to build support for Analog Devices AD3552R
46           Digital to Analog Converter.
47
48           To compile this driver as a module, choose M here: the
49           module will be called ad3552r.
50
51 config AD5064
52         tristate "Analog Devices AD5064 and similar multi-channel DAC driver"
53         depends on (SPI_MASTER && I2C!=m) || I2C
54         help
55           Say yes here to build support for Analog Devices AD5024, AD5025, AD5044,
56           AD5045, AD5064, AD5064-1, AD5065, AD5625, AD5625R, AD5627, AD5627R,
57           AD5628, AD5629R, AD5645R, AD5647R, AD5648, AD5665, AD5665R, AD5666,
58           AD5667, AD5667R, AD5668, AD5669R, LTC2606, LTC2607, LTC2609, LTC2616,
59           LTC2617, LTC2619, LTC2626, LTC2627, LTC2629, LTC2631, LTC2633, LTC2635
60           Digital to Analog Converter.
61
62           To compile this driver as a module, choose M here: the
63           module will be called ad5064.
64
65 config AD5360
66         tristate "Analog Devices AD5360/61/62/63/70/71/73 DAC driver"
67         depends on SPI
68         help
69           Say yes here to build support for Analog Devices AD5360, AD5361,
70           AD5362, AD5363, AD5370, AD5371, AD5373 multi-channel
71           Digital to Analog Converters (DAC).
72
73           To compile this driver as module choose M here: the module will be called
74           ad5360.
75
76 config AD5380
77         tristate "Analog Devices AD5380/81/82/83/84/90/91/92 DAC driver"
78         depends on (SPI_MASTER && I2C!=m) || I2C
79         select REGMAP_I2C if I2C
80         select REGMAP_SPI if SPI_MASTER
81         help
82           Say yes here to build support for Analog Devices AD5380, AD5381,
83           AD5382, AD5383, AD5384, AD5390, AD5391, AD5392 multi-channel
84           Digital to Analog Converters (DAC).
85
86           To compile this driver as module choose M here: the module will be called
87           ad5380.
88
89 config AD5421
90         tristate "Analog Devices AD5421 DAC driver"
91         depends on SPI
92         help
93           Say yes here to build support for Analog Devices AD5421 loop-powered
94           digital-to-analog converters (DAC).
95
96           To compile this driver as module choose M here: the module will be called
97           ad5421.
98
99 config AD5446
100         tristate "Analog Devices AD5446 and similar single channel DACs driver"
101         depends on (SPI_MASTER && I2C!=m) || I2C
102         help
103           Say yes here to build support for Analog Devices AD5300, AD5301, AD5310,
104           AD5311, AD5320, AD5321, AD5444, AD5446, AD5450, AD5451, AD5452, AD5453,
105           AD5512A, AD5541A, AD5542A, AD5543, AD5553, AD5600, AD5601, AD5602, AD5611,
106           AD5612, AD5620, AD5621, AD5622, AD5640, AD5641, AD5660, AD5662 DACs
107           as well as Texas Instruments DAC081S101, DAC101S101, DAC121S101.
108
109           To compile this driver as a module, choose M here: the
110           module will be called ad5446.
111
112 config AD5449
113         tristate "Analog Devices AD5449 and similar DACs driver"
114         depends on SPI_MASTER
115         help
116           Say yes here to build support for Analog Devices AD5415, AD5426, AD5429,
117           AD5432, AD5439, AD5443, AD5449 Digital to Analog Converters.
118
119           To compile this driver as a module, choose M here: the
120           module will be called ad5449.
121
122 config AD5592R_BASE
123         tristate
124
125 config AD5592R
126         tristate "Analog Devices AD5592R ADC/DAC driver"
127         depends on SPI_MASTER
128         select GPIOLIB
129         select AD5592R_BASE
130         help
131           Say yes here to build support for Analog Devices AD5592R
132           Digital to Analog / Analog to Digital Converter.
133
134           To compile this driver as a module, choose M here: the
135           module will be called ad5592r.
136
137 config AD5593R
138         tristate "Analog Devices AD5593R ADC/DAC driver"
139         depends on I2C
140         select GPIOLIB
141         select AD5592R_BASE
142         help
143           Say yes here to build support for Analog Devices AD5593R
144           Digital to Analog / Analog to Digital Converter.
145
146           To compile this driver as a module, choose M here: the
147           module will be called ad5593r.
148
149 config AD5504
150         tristate "Analog Devices AD5504/AD5501 DAC SPI driver"
151         depends on SPI
152         help
153           Say yes here to build support for Analog Devices AD5504, AD5501,
154           High Voltage Digital to Analog Converter.
155
156           To compile this driver as a module, choose M here: the
157           module will be called ad5504.
158
159 config AD5624R_SPI
160         tristate "Analog Devices AD5624/44/64R DAC spi driver"
161         depends on SPI
162         help
163           Say yes here to build support for Analog Devices AD5624R, AD5644R and
164           AD5664R converters (DAC). This driver uses the common SPI interface.
165
166 config AD9739A
167         tristate "Analog Devices AD9739A RF DAC spi driver"
168         depends on SPI
169         select REGMAP_SPI
170         select IIO_BACKEND
171         help
172           Say yes here to build support for Analog Devices AD9739A Digital-to
173           Analog Converter.
174
175           The driver requires the assistance of the AXI DAC IP core to operate,
176           since SPI is used for configuration only, while data has to be
177           streamed into memory via DMA.
178
179           To compile this driver as a module, choose M here: the module will be
180           called ad9739a.
181
182 config ADI_AXI_DAC
183         tristate "Analog Devices Generic AXI DAC IP core driver"
184         depends on MICROBLAZE || NIOS2 || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_INTEL_SOCFPGA || COMPILE_TEST
185         select IIO_BUFFER
186         select IIO_BUFFER_DMAENGINE
187         select REGMAP_MMIO
188         select IIO_BACKEND
189         help
190           Say yes here to build support for Analog Devices Generic
191           AXI DAC IP core. The IP core is used for interfacing with
192           digital-to-analog (DAC) converters that require either a high-speed
193           serial interface (JESD204B/C) or a source synchronous parallel
194           interface (LVDS/CMOS).
195           Typically (for such devices) SPI will be used for configuration only,
196           while this IP core handles the streaming of data into memory via DMA.
197
198           Link: https://wiki.analog.com/resources/fpga/docs/axi_dac_ip
199           If unsure, say N (but it's safe to say "Y").
200
201           To compile this driver as a module, choose M here: the
202           module will be called adi-axi-dac.
203
204 config LTC2688
205         tristate "Analog Devices LTC2688 DAC spi driver"
206         depends on SPI
207         select REGMAP
208         help
209           Say yes here to build support for Analog Devices
210           LTC2688 converters (DAC).
211
212           To compile this driver as a module, choose M here: the
213           module will be called ltc2688.
214
215 config AD5686
216         tristate
217
218 config AD5686_SPI
219         tristate "Analog Devices AD5686 and similar multi-channel DACs (SPI)"
220         depends on SPI
221         select AD5686
222         help
223           Say yes here to build support for Analog Devices AD5672R, AD5674R,
224           AD5676, AD5676R, AD5679R, AD5684, AD5684R, AD5684R, AD5685R, AD5686,
225           AD5686R Voltage Output Digital to Analog Converter.
226
227           To compile this driver as a module, choose M here: the
228           module will be called ad5686.
229
230 config AD5696_I2C
231         tristate "Analog Devices AD5696 and similar multi-channel DACs (I2C)"
232         depends on I2C
233         select AD5686
234         help
235           Say yes here to build support for Analog Devices AD5311R, AD5337,
236           AD5338R, AD5671R, AD5673R, AD5675R, AD5677R, AD5691R, AD5692R, AD5693,
237           AD5693R, AD5694, AD5694R, AD5695R, AD5696, and AD5696R Digital to
238           Analog converters.
239
240           To compile this driver as a module, choose M here: the module will be
241           called ad5696.
242
243 config AD5755
244         tristate "Analog Devices AD5755/AD5755-1/AD5757/AD5735/AD5737 DAC driver"
245         depends on SPI_MASTER
246         help
247           Say yes here to build support for Analog Devices AD5755, AD5755-1,
248           AD5757, AD5735, AD5737 quad channel Digital to
249           Analog Converter.
250
251           To compile this driver as a module, choose M here: the
252           module will be called ad5755.
253
254 config AD5758
255         tristate "Analog Devices AD5758 DAC driver"
256         depends on SPI_MASTER
257         help
258           Say yes here to build support for Analog Devices AD5758 single channel
259           Digital to Analog Converter.
260
261           To compile this driver as a module, choose M here: the
262           module will be called ad5758.
263
264 config AD5761
265         tristate "Analog Devices AD5761/61R/21/21R DAC driver"
266         depends on SPI_MASTER
267         help
268           Say yes here to build support for Analog Devices AD5761, AD5761R, AD5721,
269           AD5721R Digital to Analog Converter.
270
271           To compile this driver as a module, choose M here: the
272           module will be called ad5761.
273
274 config AD5764
275         tristate "Analog Devices AD5764/64R/44/44R DAC driver"
276         depends on SPI_MASTER
277         help
278           Say yes here to build support for Analog Devices AD5764, AD5764R, AD5744,
279           AD5744R Digital to Analog Converter.
280
281           To compile this driver as a module, choose M here: the
282           module will be called ad5764.
283
284 config AD5766
285         tristate "Analog Devices AD5766/AD5767 DAC driver"
286         depends on SPI_MASTER
287         select IIO_BUFFER
288         select IIO_TRIGGERED_BUFFER
289         help
290           Say yes here to build support for Analog Devices AD5766, AD5767
291           Digital to Analog Converter.
292
293           To compile this driver as a module, choose M here: the
294           module will be called ad5766.
295
296 config AD5770R
297         tristate "Analog Devices AD5770R IDAC driver"
298         depends on SPI_MASTER
299         select REGMAP_SPI
300         help
301           Say yes here to build support for Analog Devices AD5770R Digital to
302           Analog Converter.
303
304           To compile this driver as a module, choose M here: the
305           module will be called ad5770r.
306
307 config AD5791
308         tristate "Analog Devices AD5760/AD5780/AD5781/AD5790/AD5791 DAC SPI driver"
309         depends on SPI
310         select SPI_OFFLOAD
311         select IIO_BUFFER
312         select IIO_BUFFER_DMAENGINE
313         help
314           Say yes here to build support for Analog Devices AD5760, AD5780,
315           AD5781, AD5790, AD5791 High Resolution Voltage Output Digital to
316           Analog Converter.
317
318           To compile this driver as a module, choose M here: the
319           module will be called ad5791.
320
321 config AD7293
322         tristate "Analog Devices AD7293 Power Amplifier Current Controller"
323         depends on SPI
324         help
325           Say yes here to build support for Analog Devices AD7293
326           Power Amplifier Current Controller with
327           ADC, DACs, and Temperature and Current Sensors
328
329           To compile this driver as a module, choose M here: the
330           module will be called ad7293.
331
332 config AD7303
333         tristate "Analog Devices AD7303 DAC driver"
334         depends on SPI
335         help
336           Say yes here to build support for Analog Devices AD7303 Digital to Analog
337           Converters (DAC).
338
339           To compile this driver as module choose M here: the module will be called
340           ad7303.
341
342 config AD8460
343         tristate "Analog Devices AD8460 DAC driver"
344         depends on SPI
345         select REGMAP_SPI
346         select IIO_BUFFER
347         select IIO_BUFFER_DMAENGINE
348         help
349           Say yes here to build support for Analog Devices AD8460 Digital to
350           Analog Converters (DAC).
351
352           To compile this driver as a module choose M here: the module will be called
353           ad8460.
354
355 config AD8801
356         tristate "Analog Devices AD8801/AD8803 DAC driver"
357         depends on SPI_MASTER
358         help
359           Say yes here to build support for Analog Devices AD8801, AD8803 Digital to
360           Analog Converters (DAC).
361
362           To compile this driver as a module choose M here: the module will be called
363           ad8801.
364
365 config BD79703
366         tristate "ROHM Semiconductor BD79703 DAC driver"
367         depends on SPI
368         select REGMAP_SPI
369         help
370           Say yes here to build support for ROHM Semiconductor BD79703 Digital
371           to Analog Converter (DAC).
372
373 config CIO_DAC
374         tristate "Measurement Computing CIO-DAC IIO driver"
375         depends on X86 && (ISA_BUS || PC104)
376         select ISA_BUS_API
377         select REGMAP_MMIO
378         help
379           Say yes here to build support for the Measurement Computing CIO-DAC
380           analog output device family (CIO-DAC16, CIO-DAC08, PC104-DAC06). The
381           base port addresses for the devices may be configured via the base
382           array module parameter.
383
384 config DPOT_DAC
385         tristate "DAC emulation using a DPOT"
386         help
387           Say yes here to build support for DAC emulation using a digital
388           potentiometer.
389
390           To compile this driver as a module, choose M here: the module will be
391           called dpot-dac.
392
393 config DS4424
394         tristate "Maxim Integrated DS4422/DS4424 DAC driver"
395         depends on I2C
396         help
397           If you say yes here you get support for Maxim chips DS4422, DS4424.
398
399           This driver can also be built as a module.  If so, the module
400           will be called ds4424.
401
402 config LPC18XX_DAC
403         tristate "NXP LPC18xx DAC driver"
404         depends on ARCH_LPC18XX || COMPILE_TEST
405         depends on HAS_IOMEM
406         help
407           Say yes here to build support for NXP LPC18XX DAC.
408
409           To compile this driver as a module, choose M here: the module will be
410           called lpc18xx_dac.
411
412 config LTC1660
413         tristate "Linear Technology LTC1660/LTC1665 DAC SPI driver"
414         depends on SPI
415         select REGMAP_SPI
416         help
417           Say yes here to build support for Linear Technology
418           LTC1660 and LTC1665 Digital to Analog Converters.
419
420           To compile this driver as a module, choose M here: the
421           module will be called ltc1660.
422
423 config LTC2632
424         tristate "Linear Technology LTC2632-12/10/8 and similar DAC spi driver"
425         depends on SPI
426         help
427           Say yes here to build support for Linear Technology
428           LTC2632, LTC2634 and LTC2636 DAC resolution 12/10/8 bit
429           low 0-2.5V and high 0-4.096V range converters.
430
431           To compile this driver as a module, choose M here: the
432           module will be called ltc2632.
433
434 config LTC2664
435         tristate "Analog Devices LTC2664 and LTC2672 DAC SPI driver"
436         depends on SPI
437         select REGMAP_SPI
438         help
439           Say yes here to build support for Analog Devices
440           LTC2664 and LTC2672 converters (DAC).
441
442           To compile this driver as a module, choose M here: the
443           module will be called ltc2664.
444
445 config M62332
446         tristate "Mitsubishi M62332 DAC driver"
447         depends on I2C
448         help
449           If you say yes here you get support for the Mitsubishi M62332
450           (I2C 8-Bit DACs with rail-to-rail outputs).
451
452           This driver can also be built as a module.  If so, the module
453           will be called m62332.
454
455 config MAX517
456         tristate "Maxim MAX517/518/519/520/521 DAC driver"
457         depends on I2C
458         help
459           If you say yes here you get support for the following Maxim chips
460           (I2C 8-Bit DACs with rail-to-rail outputs):
461           MAX517 - Single channel, single reference
462           MAX518 - Dual channel, ref=Vdd
463           MAX519 - Dual channel, dual reference
464           MAX520 - Quad channel, quad reference
465           MAX521 - Octal channel, independent ref for ch0-3, shared ref for ch4-7
466
467           This driver can also be built as a module.  If so, the module
468           will be called max517.
469
470 config MAX5522
471         tristate "Maxim MAX5522 DAC driver"
472         depends on SPI_MASTER
473         select REGMAP_SPI
474         help
475           Say Y here if you want to build a driver for the Maxim MAX5522.
476
477           MAX5522 is a dual, ultra-low-power, 10-Bit, voltage-output
478           digital to analog converter (DAC) offering rail-to-rail buffered
479           voltage outputs.
480
481           If compiled as a module, it will be called max5522.
482
483 config MAX5821
484         tristate "Maxim MAX5821 DAC driver"
485         depends on I2C
486         help
487           Say yes here to build support for Maxim MAX5821
488           10 bits DAC.
489
490 config MCP4725
491         tristate "MCP4725/6 DAC driver"
492         depends on I2C
493         help
494           Say Y here if you want to build a driver for the Microchip
495           MCP 4725/6 12-bit digital-to-analog converter (DAC) with I2C
496           interface.
497
498           To compile this driver as a module, choose M here: the module
499           will be called mcp4725.
500
501 config MCP4728
502         tristate "MCP4728 DAC driver"
503         depends on I2C
504         help
505           Say Y here if you want to build a driver for the Microchip
506           MCP4728 quad channel, 12-bit digital-to-analog converter (DAC)
507           with I2C interface.
508
509           To compile this driver as a module, choose M here: the module
510           will be called mcp4728.
511
512 config MCP4821
513         tristate "MCP4801/02/11/12/21/22 DAC driver"
514         depends on SPI
515         help
516           Say yes here to build the driver for the Microchip MCP4801
517           MCP4802, MCP4811, MCP4812, MCP4821 and MCP4822 DAC devices.
518
519           To compile this driver as a module, choose M here: the module
520           will be called mcp4821.
521
522 config MCP4922
523         tristate "MCP4902, MCP4912, MCP4922 DAC driver"
524         depends on SPI
525         help
526           Say yes here to build the driver for the Microchip MCP4902
527           MCP4912, and MCP4922 DAC devices.
528
529           To compile this driver as a module, choose M here: the module
530           will be called mcp4922.
531
532 config STM32_DAC
533         tristate "STMicroelectronics STM32 DAC"
534         depends on (ARCH_STM32 && OF) || COMPILE_TEST
535         depends on REGULATOR
536         select STM32_DAC_CORE
537         help
538           Say yes here to build support for STMicroelectronics STM32 Digital
539           to Analog Converter (DAC).
540
541           This driver can also be built as a module.  If so, the module
542           will be called stm32-dac.
543
544 config STM32_DAC_CORE
545         tristate
546         select REGMAP_MMIO
547
548 config TI_DAC082S085
549         tristate "Texas Instruments 8/10/12-bit 2/4-channel DAC driver"
550         depends on SPI_MASTER
551         help
552           Driver for the Texas Instruments (formerly National Semiconductor)
553           DAC082S085, DAC102S085, DAC122S085, DAC084S085, DAC104S085 and
554           DAC124S085.
555
556           If compiled as a module, it will be called ti-dac082s085.
557
558 config TI_DAC5571
559         tristate "Texas Instruments 8/10/12/16-bit 1/2/4-channel DAC driver"
560         depends on I2C
561         help
562           Driver for the Texas Instruments
563           DAC5571, DAC6571, DAC7571, DAC5574, DAC6574, DAC7574, DAC5573,
564           DAC6573, DAC7573, DAC8571, DAC8574, DAC121C081.
565
566           If compiled as a module, it will be called ti-dac5571.
567
568 config TI_DAC7311
569         tristate "Texas Instruments 8/10/12-bit 1-channel DAC driver"
570         depends on SPI
571         help
572           Driver for the Texas Instruments
573           DAC7311, DAC6311, DAC5311.
574
575           If compiled as a module, it will be called ti-dac7311.
576
577 config TI_DAC7612
578         tristate "Texas Instruments 12-bit 2-channel DAC driver"
579         depends on SPI_MASTER && GPIOLIB
580         help
581           Driver for the Texas Instruments DAC7612, DAC7612U, DAC7612UB
582           The driver hand drive the load pin automatically, otherwise
583           it needs to be toggled manually.
584
585           If compiled as a module, it will be called ti-dac7612.
586
587 config VF610_DAC
588         tristate "Vybrid vf610 DAC driver"
589         depends on HAS_IOMEM
590         help
591           Say yes here to support Vybrid board digital-to-analog converter.
592
593           This driver can also be built as a module. If so, the module will
594           be called vf610_dac.
595
596 endmenu