xref: /linux/drivers/iio/dac/Kconfig (revision c26f4fbd58375bd6ef74f95eb73d61762ad97c59)
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 "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
112config 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
122config AD5592R_BASE
123	tristate
124
125config 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
137config 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
149config 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
159config 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
166config 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
182config 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
204config 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
215config AD5686
216	tristate
217
218config 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
230config 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
243config 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
254config 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
264config 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
274config 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
284config 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
296config 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
307config 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
321config 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
332config 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
342config 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
355config 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
365config 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
373config 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
384config 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
393config 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
402config 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
412config 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
423config 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
434config 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
445config 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
455config 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
470config 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
483config 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
490config 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
501config 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
512config 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
522config 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
532config 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
544config STM32_DAC_CORE
545	tristate
546	select REGMAP_MMIO
547
548config 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
558config 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
568config 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
577config 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
587config 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
596endmenu
597