1d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich/*
2d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * AD7780/AD7781 SPI ADC driver
3d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich *
4d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * Copyright 2011 Analog Devices Inc.
5d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich *
6d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * Licensed under the GPL-2.
7d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich */
8d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich#ifndef IIO_ADC_AD7780_H_
9d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich#define IIO_ADC_AD7780_H_
10d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich
11d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich/*
12d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * TODO: struct ad7780_platform_data needs to go into include/linux/iio
13d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich */
14d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich
15d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich/* NOTE:
16d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * The AD7780 doesn't feature a dedicated SPI chip select, in addition it
17d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * features a dual use data out ready DOUT/RDY output.
18d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * In order to avoid contentions on the SPI bus, it's therefore necessary
19d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * to use spi bus locking combined with a dedicated GPIO to control the
20d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * power down reset signal of the AD7780.
21d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich *
22d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich * The DOUT/RDY output must also be wired to an interrupt capable GPIO.
23d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich */
24d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich
25d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerichstruct ad7780_platform_data {
26d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich	u16				vref_mv;
27d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich	int				gpio_pdrst;
28d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich};
29d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich
30d6f087ec9c7ba029419762273a685460c93c8454Michael Hennerich#endif /* IIO_ADC_AD7780_H_ */
31