mirror of
https://github.com/torvalds/linux.git
synced 2024-12-06 19:11:31 +00:00
staging: iio: ad7780: add gain reading to ad778x
This patch adds a new functionality of reading gain values from the ad778x chips. This value is stored in the chip's state struct and is updated whenever a read or write call is performed on the driver. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
ae9f86feb4
commit
0149ba2d5b
@ -42,6 +42,8 @@
|
|||||||
#define AD7780_GAIN_MIDPOINT 64
|
#define AD7780_GAIN_MIDPOINT 64
|
||||||
#define AD7780_FILTER_MIDPOINT 13350
|
#define AD7780_FILTER_MIDPOINT 13350
|
||||||
|
|
||||||
|
static const unsigned int ad778x_gain[2] = { 1, 128 };
|
||||||
|
|
||||||
struct ad7780_chip_info {
|
struct ad7780_chip_info {
|
||||||
struct iio_chan_spec channel;
|
struct iio_chan_spec channel;
|
||||||
unsigned int pattern_mask;
|
unsigned int pattern_mask;
|
||||||
@ -179,6 +181,9 @@ static int ad7780_postprocess_sample(struct ad_sigma_delta *sigma_delta,
|
|||||||
((raw_sample & chip_info->pattern_mask) != chip_info->pattern))
|
((raw_sample & chip_info->pattern_mask) != chip_info->pattern))
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|
||||||
|
if (chip_info->is_ad778x)
|
||||||
|
st->gain = ad778x_gain[raw_sample & AD7780_GAIN];
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user