#
# DAC drivers
#
# When adding new entries keep the list in alphabetical order

menu "Digital to analog converters"

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 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, AD5601, AD5602, AD5611, AD5612,
	  AD5620, AD5621, AD5622, AD5640, AD5641, AD5660, AD5662 DACs.

	  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 AD5686
	tristate "Analog Devices AD5686R/AD5685R/AD5684R DAC SPI driver"
	depends on SPI
	help
	  Say yes here to build support for Analog Devices AD5686R, AD5685R,
	  AD5684R, AD5791 Voltage Output Digital to
	  Analog Converter.

	  To compile this driver as a module, choose M here: the
	  module will be called ad5686.

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 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 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 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 CIO_DAC
	tristate "Measurement Computing CIO-DAC IIO driver"
	depends on X86 && ISA_BUS_API
	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 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 LPC18XX_DAC
	tristate "NXP LPC18xx DAC driver"
	depends on ARCH_LPC18XX || COMPILE_TEST
	depends on OF && 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 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 MAX5821
	tristate "Maxim MAX5821 DAC driver"
	depends on I2C
	depends on OF
	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 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 VF610_DAC
	tristate "Vybrid vf610 DAC driver"
	depends on OF
	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
