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