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