1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * AD5415, AD5426, AD5429, AD5432, AD5439, AD5443, AD5449 Digital to Analog
4  * Converter driver.
5  *
6  * Copyright 2012 Analog Devices Inc.
7  *  Author: Lars-Peter Clausen <lars@metafoo.de>
8  */
9 
10 #ifndef __LINUX_PLATFORM_DATA_AD5449_H__
11 #define __LINUX_PLATFORM_DATA_AD5449_H__
12 
13 /**
14  * enum ad5449_sdo_mode - AD5449 SDO pin configuration
15  * @AD5449_SDO_DRIVE_FULL: Drive the SDO pin with full strength.
16  * @AD5449_SDO_DRIVE_WEAK: Drive the SDO pin with not full strength.
17  * @AD5449_SDO_OPEN_DRAIN: Operate the SDO pin in open-drain mode.
18  * @AD5449_SDO_DISABLED: Disable the SDO pin, in this mode it is not possible to
19  *			read back from the device.
20  */
21 enum ad5449_sdo_mode {
22 	AD5449_SDO_DRIVE_FULL = 0x0,
23 	AD5449_SDO_DRIVE_WEAK = 0x1,
24 	AD5449_SDO_OPEN_DRAIN = 0x2,
25 	AD5449_SDO_DISABLED = 0x3,
26 };
27 
28 /**
29  * struct ad5449_platform_data - Platform data for the ad5449 DAC driver
30  * @sdo_mode: SDO pin mode
31  * @hardware_clear_to_midscale: Whether asserting the hardware CLR pin sets the
32  *			outputs to midscale (true) or to zero scale(false).
33  */
34 struct ad5449_platform_data {
35 	enum ad5449_sdo_mode sdo_mode;
36 	bool hardware_clear_to_midscale;
37 };
38 
39 #endif
40