diff options
author | Jean-Francois Dagenais <jeff.dagenais@gmail.com> | 2012-08-21 15:28:00 +0100 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2012-09-03 20:26:45 +0100 |
commit | 2e15c903c1e6238735775b9ce491fa4f942cd5fc (patch) | |
tree | 7c9af3d02da10d7e034c13322d1133bea78bea29 /drivers/iio/dac/ad5446.c | |
parent | 3ec36a2cf0d50db61e15c6ee77d1dcdc73a7aca5 (diff) | |
download | op-kernel-dev-2e15c903c1e6238735775b9ce491fa4f942cd5fc.zip op-kernel-dev-2e15c903c1e6238735775b9ce491fa4f942cd5fc.tar.gz |
iio:ad5446: get rid of private header file
Most of the defines in there were not even used, and the structs left are
private to the .c file. Makes the driver more in line with most of the
kernel drivers.
Signed-off-by: Jean-Francois Dagenais <jeff.dagenais@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio/dac/ad5446.c')
-rw-r--r-- | drivers/iio/dac/ad5446.c | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/drivers/iio/dac/ad5446.c b/drivers/iio/dac/ad5446.c index 241665b..7f11c1c 100644 --- a/drivers/iio/dac/ad5446.c +++ b/drivers/iio/dac/ad5446.c @@ -22,7 +22,40 @@ #include <linux/iio/iio.h> #include <linux/iio/sysfs.h> -#include "ad5446.h" +#define MODE_PWRDWN_1k 0x1 +#define MODE_PWRDWN_100k 0x2 +#define MODE_PWRDWN_TRISTATE 0x3 + +/** + * struct ad5446_state - driver instance specific data + * @spi: spi_device + * @chip_info: chip model specific constants, available modes etc + * @reg: supply regulator + * @vref_mv: actual reference voltage used + */ + +struct ad5446_state { + struct device *dev; + const struct ad5446_chip_info *chip_info; + struct regulator *reg; + unsigned short vref_mv; + unsigned cached_val; + unsigned pwr_down_mode; + unsigned pwr_down; +}; + +/** + * struct ad5446_chip_info - chip specific information + * @channel: channel spec for the DAC + * @int_vref_mv: AD5620/40/60: the internal reference voltage + * @write: chip specific helper function to write to the register + */ + +struct ad5446_chip_info { + struct iio_chan_spec channel; + u16 int_vref_mv; + int (*write)(struct ad5446_state *st, unsigned val); +}; static const char * const ad5446_powerdown_modes[] = { "1kohm_to_gnd", "100kohm_to_gnd", "three_state" |