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 converters (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 BD79703 352 tristate "ROHM Semiconductor BD79703 DAC driver" 353 depends on SPI 354 select REGMAP_SPI 355 help 356 Say yes here to build support for ROHM Semiconductor BD79703 Digital 357 to Analog Converter (DAC). 358 359config CIO_DAC 360 tristate "Measurement Computing CIO-DAC IIO driver" 361 depends on X86 && (ISA_BUS || PC104) 362 select ISA_BUS_API 363 select REGMAP_MMIO 364 help 365 Say yes here to build support for the Measurement Computing CIO-DAC 366 analog output device family (CIO-DAC16, CIO-DAC08, PC104-DAC06). The 367 base port addresses for the devices may be configured via the base 368 array module parameter. 369 370config DPOT_DAC 371 tristate "DAC emulation using a DPOT" 372 help 373 Say yes here to build support for DAC emulation using a digital 374 potentiometer. 375 376 To compile this driver as a module, choose M here: the module will be 377 called dpot-dac. 378 379config DS4424 380 tristate "Maxim Integrated DS4422/DS4424 DAC driver" 381 depends on I2C 382 help 383 If you say yes here you get support for Maxim chips DS4422, DS4424. 384 385 This driver can also be built as a module. If so, the module 386 will be called ds4424. 387 388config LPC18XX_DAC 389 tristate "NXP LPC18xx DAC driver" 390 depends on ARCH_LPC18XX || COMPILE_TEST 391 depends on HAS_IOMEM 392 help 393 Say yes here to build support for NXP LPC18XX DAC. 394 395 To compile this driver as a module, choose M here: the module will be 396 called lpc18xx_dac. 397 398config LTC1660 399 tristate "Linear Technology LTC1660/LTC1665 DAC SPI driver" 400 depends on SPI 401 select REGMAP_SPI 402 help 403 Say yes here to build support for Linear Technology 404 LTC1660 and LTC1665 Digital to Analog Converters. 405 406 To compile this driver as a module, choose M here: the 407 module will be called ltc1660. 408 409config LTC2632 410 tristate "Linear Technology LTC2632-12/10/8 and similar DAC spi driver" 411 depends on SPI 412 help 413 Say yes here to build support for Linear Technology 414 LTC2632, LTC2634 and LTC2636 DAC resolution 12/10/8 bit 415 low 0-2.5V and high 0-4.096V range converters. 416 417 To compile this driver as a module, choose M here: the 418 module will be called ltc2632. 419 420config LTC2664 421 tristate "Analog Devices LTC2664 and LTC2672 DAC SPI driver" 422 depends on SPI 423 select REGMAP_SPI 424 help 425 Say yes here to build support for Analog Devices 426 LTC2664 and LTC2672 converters (DAC). 427 428 To compile this driver as a module, choose M here: the 429 module will be called ltc2664. 430 431config M62332 432 tristate "Mitsubishi M62332 DAC driver" 433 depends on I2C 434 help 435 If you say yes here you get support for the Mitsubishi M62332 436 (I2C 8-Bit DACs with rail-to-rail outputs). 437 438 This driver can also be built as a module. If so, the module 439 will be called m62332. 440 441config MAX517 442 tristate "Maxim MAX517/518/519/520/521 DAC driver" 443 depends on I2C 444 help 445 If you say yes here you get support for the following Maxim chips 446 (I2C 8-Bit DACs with rail-to-rail outputs): 447 MAX517 - Single channel, single reference 448 MAX518 - Dual channel, ref=Vdd 449 MAX519 - Dual channel, dual reference 450 MAX520 - Quad channel, quad reference 451 MAX521 - Octal channel, independent ref for ch0-3, shared ref for ch4-7 452 453 This driver can also be built as a module. If so, the module 454 will be called max517. 455 456config MAX5522 457 tristate "Maxim MAX5522 DAC driver" 458 depends on SPI_MASTER 459 select REGMAP_SPI 460 help 461 Say Y here if you want to build a driver for the Maxim MAX5522. 462 463 MAX5522 is a dual, ultra-low-power, 10-Bit, voltage-output 464 digital to analog converter (DAC) offering rail-to-rail buffered 465 voltage outputs. 466 467 If compiled as a module, it will be called max5522. 468 469config MAX5821 470 tristate "Maxim MAX5821 DAC driver" 471 depends on I2C 472 help 473 Say yes here to build support for Maxim MAX5821 474 10 bits DAC. 475 476config MCP4725 477 tristate "MCP4725/6 DAC driver" 478 depends on I2C 479 help 480 Say Y here if you want to build a driver for the Microchip 481 MCP 4725/6 12-bit digital-to-analog converter (DAC) with I2C 482 interface. 483 484 To compile this driver as a module, choose M here: the module 485 will be called mcp4725. 486 487config MCP4728 488 tristate "MCP4728 DAC driver" 489 depends on I2C 490 help 491 Say Y here if you want to build a driver for the Microchip 492 MCP4728 quad channel, 12-bit digital-to-analog converter (DAC) 493 with I2C interface. 494 495 To compile this driver as a module, choose M here: the module 496 will be called mcp4728. 497 498config MCP4821 499 tristate "MCP4801/02/11/12/21/22 DAC driver" 500 depends on SPI 501 help 502 Say yes here to build the driver for the Microchip MCP4801 503 MCP4802, MCP4811, MCP4812, MCP4821 and MCP4822 DAC devices. 504 505 To compile this driver as a module, choose M here: the module 506 will be called mcp4821. 507 508config MCP4922 509 tristate "MCP4902, MCP4912, MCP4922 DAC driver" 510 depends on SPI 511 help 512 Say yes here to build the driver for the Microchip MCP4902 513 MCP4912, and MCP4922 DAC devices. 514 515 To compile this driver as a module, choose M here: the module 516 will be called mcp4922. 517 518config STM32_DAC 519 tristate "STMicroelectronics STM32 DAC" 520 depends on (ARCH_STM32 && OF) || COMPILE_TEST 521 depends on REGULATOR 522 select STM32_DAC_CORE 523 help 524 Say yes here to build support for STMicroelectronics STM32 Digital 525 to Analog Converter (DAC). 526 527 This driver can also be built as a module. If so, the module 528 will be called stm32-dac. 529 530config STM32_DAC_CORE 531 tristate 532 select REGMAP_MMIO 533 534config TI_DAC082S085 535 tristate "Texas Instruments 8/10/12-bit 2/4-channel DAC driver" 536 depends on SPI_MASTER 537 help 538 Driver for the Texas Instruments (formerly National Semiconductor) 539 DAC082S085, DAC102S085, DAC122S085, DAC084S085, DAC104S085 and 540 DAC124S085. 541 542 If compiled as a module, it will be called ti-dac082s085. 543 544config TI_DAC5571 545 tristate "Texas Instruments 8/10/12/16-bit 1/2/4-channel DAC driver" 546 depends on I2C 547 help 548 Driver for the Texas Instruments 549 DAC5571, DAC6571, DAC7571, DAC5574, DAC6574, DAC7574, DAC5573, 550 DAC6573, DAC7573, DAC8571, DAC8574, DAC121C081. 551 552 If compiled as a module, it will be called ti-dac5571. 553 554config TI_DAC7311 555 tristate "Texas Instruments 8/10/12-bit 1-channel DAC driver" 556 depends on SPI 557 help 558 Driver for the Texas Instruments 559 DAC7311, DAC6311, DAC5311. 560 561 If compiled as a module, it will be called ti-dac7311. 562 563config TI_DAC7612 564 tristate "Texas Instruments 12-bit 2-channel DAC driver" 565 depends on SPI_MASTER && GPIOLIB 566 help 567 Driver for the Texas Instruments DAC7612, DAC7612U, DAC7612UB 568 The driver hand drive the load pin automatically, otherwise 569 it needs to be toggled manually. 570 571 If compiled as a module, it will be called ti-dac7612. 572 573config VF610_DAC 574 tristate "Vybrid vf610 DAC driver" 575 depends on HAS_IOMEM 576 help 577 Say yes here to support Vybrid board digital-to-analog converter. 578 579 This driver can also be built as a module. If so, the module will 580 be called vf610_dac. 581 582endmenu 583