staging:iio:cdc:ad7150: Add sampling_frequency support
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 14 Mar 2021 18:14:56 +0000 (18:14 +0000)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Wed, 7 Apr 2021 07:36:36 +0000 (08:36 +0100)
Device uses a fixed sampling frequency. Let us expose it to userspace.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
Link: https://lore.kernel.org/r/20210314181511.531414-10-jic23@kernel.org
drivers/staging/iio/cdc/ad7150.c

index 8f8e472..54f31aa 100644 (file)
@@ -127,6 +127,10 @@ static int ad7150_read_raw(struct iio_dev *indio_dev,
                *val = ret;
 
                return IIO_VAL_INT;
+       case IIO_CHAN_INFO_SAMP_FREQ:
+               /* Strangely same for both 1 and 2 chan parts */
+               *val = 100;
+               return IIO_VAL_INT;
        default:
                return -EINVAL;
        }
@@ -449,6 +453,7 @@ static const struct iio_event_spec ad7150_events[] = {
                .channel = _chan,                               \
                .info_mask_separate = BIT(IIO_CHAN_INFO_RAW) |  \
                BIT(IIO_CHAN_INFO_AVERAGE_RAW),                 \
+               .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ),\
                .event_spec = ad7150_events,                    \
                .num_event_specs = ARRAY_SIZE(ad7150_events),   \
        }
@@ -459,6 +464,7 @@ static const struct iio_event_spec ad7150_events[] = {
                .channel = _chan,                               \
                .info_mask_separate = BIT(IIO_CHAN_INFO_RAW) |  \
                BIT(IIO_CHAN_INFO_AVERAGE_RAW),                 \
+               .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ),\
        }
 
 static const struct iio_chan_spec ad7150_channels[] = {