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