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