Commit ccba40e9 authored by Victor Colombo's avatar Victor Colombo Committed by Jonathan Cameron

staging:iio:ad2s90: Add IIO_CHAN_INFO_SCALE to channel spec and read_raw

This patch adds the IIO_CHAN_INFO_SCALE mask to ad2s90_chan and
implements the relative read behavior at ad2s90_read_raw.
Signed-off-by: default avatarVictor Colombo <victorcolombo@gmail.com>
Signed-off-by: default avatarMatheus Tavares <matheus.bernardino@usp.br>
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent f14a283c
......@@ -34,6 +34,13 @@ static int ad2s90_read_raw(struct iio_dev *indio_dev,
int ret;
struct ad2s90_state *st = iio_priv(indio_dev);
switch (m) {
case IIO_CHAN_INFO_SCALE:
/* 2 * Pi / 2^12 */
*val = 6283; /* mV */
*val2 = 12;
return IIO_VAL_FRACTIONAL_LOG2;
case IIO_CHAN_INFO_RAW:
mutex_lock(&st->lock);
ret = spi_read(st->sdev, st->rx, 2);
if (ret < 0) {
......@@ -45,6 +52,11 @@ static int ad2s90_read_raw(struct iio_dev *indio_dev,
mutex_unlock(&st->lock);
return IIO_VAL_INT;
default:
break;
}
return -EINVAL;
}
static const struct iio_info ad2s90_info = {
......@@ -55,7 +67,7 @@ static const struct iio_chan_spec ad2s90_chan = {
.type = IIO_ANGL,
.indexed = 1,
.channel = 0,
.info_mask_separate = BIT(IIO_CHAN_INFO_RAW),
.info_mask_separate = BIT(IIO_CHAN_INFO_RAW) | BIT(IIO_CHAN_INFO_SCALE),
};
static int ad2s90_probe(struct spi_device *spi)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment