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