# SPDX-License-Identifier: GPL-2.0-only
#
# DAC drivers
#
# When adding new entries keep the list in alphabetical order
menu "Digital to analog converters"
config AD3552R
tristate "Analog Devices AD3552R DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD3552R
Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad3552r.
config AD5064
tristate "Analog Devices AD5064 and similar multi-channel DAC driver"
depends on (SPI_MASTER && I2C!=m) || I2C
help
Say yes here to build support for Analog Devices AD5024, AD5025, AD5044,
AD5045, AD5064, AD5064-1, AD5065, AD5625, AD5625R, AD5627, AD5627R,
AD5628, AD5629R, AD5645R, AD5647R, AD5648, AD5665, AD5665R, AD5666,
AD5667, AD5667R, AD5668, AD5669R, LTC2606, LTC2607, LTC2609, LTC2616,
LTC2617, LTC2619, LTC2626, LTC2627, LTC2629, LTC2631, LTC2633, LTC2635
Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5064.
config AD5360
tristate "Analog Devices AD5360/61/62/63/70/71/73 DAC driver"
depends on SPI
help
Say yes here to build support for Analog Devices AD5360, AD5361,
AD5362, AD5363, AD5370, AD5371, AD5373 multi-channel
Digital to Analog Converters (DAC).
To compile this driver as module choose M here: the module will be called
ad5360.
config AD5380
tristate "Analog Devices AD5380/81/82/83/84/90/91/92 DAC driver"
depends on (SPI_MASTER && I2C!=m) || I2C
select REGMAP_I2C if I2C
select REGMAP_SPI if SPI_MASTER
help
Say yes here to build support for Analog Devices AD5380, AD5381,
AD5382, AD5383, AD5384, AD5390, AD5391, AD5392 multi-channel
Digital to Analog Converters (DAC).
To compile this driver as module choose M here: the module will be called
ad5380.
config AD5421
tristate "Analog Devices AD5421 DAC driver"
depends on SPI
help
Say yes here to build support for Analog Devices AD5421 loop-powered
digital-to-analog convertors (DAC).
To compile this driver as module choose M here: the module will be called
ad5421.
config AD5446
tristate "Analog Devices AD5446 and similar single channel DACs driver"
depends on (SPI_MASTER && I2C!=m) || I2C
help
Say yes here to build support for Analog Devices AD5300, AD5301, AD5310,
AD5311, AD5320, AD5321, AD5444, AD5446, AD5450, AD5451, AD5452, AD5453,
AD5512A, AD5541A, AD5542A, AD5543, AD5553, AD5600, AD5601, AD5602, AD5611,
AD5612, AD5620, AD5621, AD5622, AD5640, AD5641, AD5660, AD5662 DACs
as well as Texas Instruments DAC081S101, DAC101S101, DAC121S101.
To compile this driver as a module, choose M here: the
module will be called ad5446.
config AD5449
tristate "Analog Devices AD5449 and similar DACs driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5415, AD5426, AD5429,
AD5432, AD5439, AD5443, AD5449 Digital to Analog Converters.
To compile this driver as a module, choose M here: the
module will be called ad5449.
config AD5592R_BASE
tristate
config AD5592R
tristate "Analog Devices AD5592R ADC/DAC driver"
depends on SPI_MASTER
select GPIOLIB
select AD5592R_BASE
help
Say yes here to build support for Analog Devices AD5592R
Digital to Analog / Analog to Digital Converter.
To compile this driver as a module, choose M here: the
module will be called ad5592r.
config AD5593R
tristate "Analog Devices AD5593R ADC/DAC driver"
depends on I2C
select GPIOLIB
select AD5592R_BASE
help
Say yes here to build support for Analog Devices AD5593R
Digital to Analog / Analog to Digital Converter.
To compile this driver as a module, choose M here: the
module will be called ad5593r.
config AD5504
tristate "Analog Devices AD5504/AD5501 DAC SPI driver"
depends on SPI
help
Say yes here to build support for Analog Devices AD5504, AD5501,
High Voltage Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5504.
config AD5624R_SPI
tristate "Analog Devices AD5624/44/64R DAC spi driver"
depends on SPI
help
Say yes here to build support for Analog Devices AD5624R, AD5644R and
AD5664R converters (DAC). This driver uses the common SPI interface.
config AD9739A
tristate "Analog Devices AD9739A RF DAC spi driver"
depends on SPI
select REGMAP_SPI
select IIO_BACKEND
help
Say yes here to build support for Analog Devices AD9739A Digital-to
Analog Converter.
The driver requires the assistance of the AXI DAC IP core to operate,
since SPI is used for configuration only, while data has to be
streamed into memory via DMA.
To compile this driver as a module, choose M here: the module will be
called ad9739a.
config ADI_AXI_DAC
tristate "Analog Devices Generic AXI DAC IP core driver"
depends on MICROBLAZE || NIOS2 || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_INTEL_SOCFPGA || COMPILE_TEST
select IIO_BUFFER
select IIO_BUFFER_DMAENGINE
select REGMAP_MMIO
select IIO_BACKEND
help
Say yes here to build support for Analog Devices Generic
AXI DAC IP core. The IP core is used for interfacing with
digital-to-analog (DAC) converters that require either a high-speed
serial interface (JESD204B/C) or a source synchronous parallel
interface (LVDS/CMOS).
Typically (for such devices) SPI will be used for configuration only,
while this IP core handles the streaming of data into memory via DMA.
Link: https://wiki.analog.com/resources/fpga/docs/axi_dac_ip
If unsure, say N (but it's safe to say "Y").
To compile this driver as a module, choose M here: the
module will be called adi-axi-dac.
config LTC2688
tristate "Analog Devices LTC2688 DAC spi driver"
depends on SPI
select REGMAP
help
Say yes here to build support for Analog Devices
LTC2688 converters (DAC).
To compile this driver as a module, choose M here: the
module will be called ltc2688.
config AD5686
tristate
config AD5686_SPI
tristate "Analog Devices AD5686 and similar multi-channel DACs (SPI)"
depends on SPI
select AD5686
help
Say yes here to build support for Analog Devices AD5672R, AD5674R,
AD5676, AD5676R, AD5679R, AD5684, AD5684R, AD5684R, AD5685R, AD5686,
AD5686R Voltage Output Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5686.
config AD5696_I2C
tristate "Analog Devices AD5696 and similar multi-channel DACs (I2C)"
depends on I2C
select AD5686
help
Say yes here to build support for Analog Devices AD5311R, AD5337,
AD5338R, AD5671R, AD5673R, AD5675R, AD5677R, AD5691R, AD5692R, AD5693,
AD5693R, AD5694, AD5694R, AD5695R, AD5696, and AD5696R Digital to
Analog converters.
To compile this driver as a module, choose M here: the module will be
called ad5696.
config AD5755
tristate "Analog Devices AD5755/AD5755-1/AD5757/AD5735/AD5737 DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5755, AD5755-1,
AD5757, AD5735, AD5737 quad channel Digital to
Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5755.
config AD5758
tristate "Analog Devices AD5758 DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5758 single channel
Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5758.
config AD5761
tristate "Analog Devices AD5761/61R/21/21R DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5761, AD5761R, AD5721,
AD5721R Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5761.
config AD5764
tristate "Analog Devices AD5764/64R/44/44R DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5764, AD5764R, AD5744,
AD5744R Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5764.
config AD5766
tristate "Analog Devices AD5766/AD5767 DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5766, AD5767
Digital to Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5766.
config AD5770R
tristate "Analog Devices AD5770R IDAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD5770R Digital to
Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5770r.
config AD5791
tristate "Analog Devices AD5760/AD5780/AD5781/AD5790/AD5791 DAC SPI driver"
depends on SPI
help
Say yes here to build support for Analog Devices AD5760, AD5780,
AD5781, AD5790, AD5791 High Resolution Voltage Output Digital to
Analog Converter.
To compile this driver as a module, choose M here: the
module will be called ad5791.
config AD7293
tristate "Analog Devices AD7293 Power Amplifier Current Controller"
depends on SPI
help
Say yes here to build support for Analog Devices AD7293
Power Amplifier Current Controller with
ADC, DACs, and Temperature and Current Sensors
To compile this driver as a module, choose M here: the
module will be called ad7293.
config AD7303
tristate "Analog Devices AD7303 DAC driver"
depends on SPI
help
Say yes here to build support for Analog Devices AD7303 Digital to Analog
Converters (DAC).
To compile this driver as module choose M here: the module will be called
ad7303.
config AD8801
tristate "Analog Devices AD8801/AD8803 DAC driver"
depends on SPI_MASTER
help
Say yes here to build support for Analog Devices AD8801, AD8803 Digital to
Analog Converters (DAC).
To compile this driver as a module choose M here: the module will be called
ad8801.
config CIO_DAC
tristate "Measurement Computing CIO-DAC IIO driver"
depends on X86 && (ISA_BUS || PC104)
select ISA_BUS_API
select REGMAP_MMIO
help
Say yes here to build support for the Measurement Computing CIO-DAC
analog output device family (CIO-DAC16, CIO-DAC08, PC104-DAC06). The
base port addresses for the devices may be configured via the base
array module parameter.
config DPOT_DAC
tristate "DAC emulation using a DPOT"
help
Say yes here to build support for DAC emulation using a digital
potentiometer.
To compile this driver as a module, choose M here: the module will be
called dpot-dac.
config DS4424
tristate "Maxim Integrated DS4422/DS4424 DAC driver"
depends on I2C
help
If you say yes here you get support for Maxim chips DS4422, DS4424.
This driver can also be built as a module. If so, the module
will be called ds4424.
config LPC18XX_DAC
tristate "NXP LPC18xx DAC driver"
depends on ARCH_LPC18XX || COMPILE_TEST
depends on HAS_IOMEM
help
Say yes here to build support for NXP LPC18XX DAC.
To compile this driver as a module, choose M here: the module will be
called lpc18xx_dac.
config LTC1660
tristate "Linear Technology LTC1660/LTC1665 DAC SPI driver"
depends on SPI
help
Say yes here to build support for Linear Technology
LTC1660 and LTC1665 Digital to Analog Converters.
To compile this driver as a module, choose M here: the
module will be called ltc1660.
config LTC2632
tristate "Linear Technology LTC2632-12/10/8 and similar DAC spi driver"
depends on SPI
help
Say yes here to build support for Linear Technology
LTC2632, LTC2634 and LTC2636 DAC resolution 12/10/8 bit
low 0-2.5V and high 0-4.096V range converters.
To compile this driver as a module, choose M here: the
module will be called ltc2632.
config M62332
tristate "Mitsubishi M62332 DAC driver"
depends on I2C
help
If you say yes here you get support for the Mitsubishi M62332
(I2C 8-Bit DACs with rail-to-rail outputs).
This driver can also be built as a module. If so, the module
will be called m62332.
config MAX517
tristate "Maxim MAX517/518/519/520/521 DAC driver"
depends on I2C
help
If you say yes here you get support for the following Maxim chips
(I2C 8-Bit DACs with rail-to-rail outputs):
MAX517 - Single channel, single reference
MAX518 - Dual channel, ref=Vdd
MAX519 - Dual channel, dual reference
MAX520 - Quad channel, quad reference
MAX521 - Octal channel, independent ref for ch0-3, shared ref for ch4-7
This driver can also be built as a module. If so, the module
will be called max517.
config MAX5522
tristate "Maxim MAX5522 DAC driver"
depends on SPI_MASTER
select REGMAP_SPI
help
Say Y here if you want to build a driver for the Maxim MAX5522.
MAX5522 is a dual, ultra-low-power, 10-Bit, voltage-output
digital to analog converter (DAC) offering rail-to-rail buffered
voltage outputs.
If compiled as a module, it will be called max5522.
config MAX5821
tristate "Maxim MAX5821 DAC driver"
depends on I2C
help
Say yes here to build support for Maxim MAX5821
10 bits DAC.
config MCP4725
tristate "MCP4725/6 DAC driver"
depends on I2C
help
Say Y here if you want to build a driver for the Microchip
MCP 4725/6 12-bit digital-to-analog converter (DAC) with I2C
interface.
To compile this driver as a module, choose M here: the module
will be called mcp4725.
config MCP4728
tristate "MCP4728 DAC driver"
depends on I2C
help
Say Y here if you want to build a driver for the Microchip
MCP4728 quad channel, 12-bit digital-to-analog converter (DAC)
with I2C interface.
To compile this driver as a module, choose M here: the module
will be called mcp4728.
config MCP4821
tristate "MCP4801/02/11/12/21/22 DAC driver"
depends on SPI
help
Say yes here to build the driver for the Microchip MCP4801
MCP4802, MCP4811, MCP4812, MCP4821 and MCP4822 DAC devices.
To compile this driver as a module, choose M here: the module
will be called mcp4821.
config MCP4922
tristate "MCP4902, MCP4912, MCP4922 DAC driver"
depends on SPI
help
Say yes here to build the driver for the Microchip MCP4902
MCP4912, and MCP4922 DAC devices.
To compile this driver as a module, choose M here: the module
will be called mcp4922.
config STM32_DAC
tristate "STMicroelectronics STM32 DAC"
depends on (ARCH_STM32 && OF) || COMPILE_TEST
depends on REGULATOR
select STM32_DAC_CORE
help
Say yes here to build support for STMicroelectronics STM32 Digital
to Analog Converter (DAC).
This driver can also be built as a module. If so, the module
will be called stm32-dac.
config STM32_DAC_CORE
tristate
config TI_DAC082S085
tristate "Texas Instruments 8/10/12-bit 2/4-channel DAC driver"
depends on SPI_MASTER
help
Driver for the Texas Instruments (formerly National Semiconductor)
DAC082S085, DAC102S085, DAC122S085, DAC084S085, DAC104S085 and
DAC124S085.
If compiled as a module, it will be called ti-dac082s085.
config TI_DAC5571
tristate "Texas Instruments 8/10/12/16-bit 1/2/4-channel DAC driver"
depends on I2C
help
Driver for the Texas Instruments
DAC5571, DAC6571, DAC7571, DAC5574, DAC6574, DAC7574, DAC5573,
DAC6573, DAC7573, DAC8571, DAC8574, DAC121C081.
If compiled as a module, it will be called ti-dac5571.
config TI_DAC7311
tristate "Texas Instruments 8/10/12-bit 1-channel DAC driver"
depends on SPI
help
Driver for the Texas Instruments
DAC7311, DAC6311, DAC5311.
If compiled as a module, it will be called ti-dac7311.
config TI_DAC7612
tristate "Texas Instruments 12-bit 2-channel DAC driver"
depends on SPI_MASTER && GPIOLIB
help
Driver for the Texas Instruments DAC7612, DAC7612U, DAC7612UB
The driver hand drive the load pin automatically, otherwise
it needs to be toggled manually.
If compiled as a module, it will be called ti-dac7612.
config VF610_DAC
tristate "Vybrid vf610 DAC driver"
depends on HAS_IOMEM
help
Say yes here to support Vybrid board digital-to-analog converter.
This driver can also be built as a module. If so, the module will
be called vf610_dac.
endmenu