|
@@ -201,6 +201,18 @@ static int ms5611_read_raw(struct iio_dev *indio_dev,
|
|
default:
|
|
default:
|
|
return -EINVAL;
|
|
return -EINVAL;
|
|
}
|
|
}
|
|
|
|
+ case IIO_CHAN_INFO_SCALE:
|
|
|
|
+ switch (chan->type) {
|
|
|
|
+ case IIO_TEMP:
|
|
|
|
+ *val = 10;
|
|
|
|
+ return IIO_VAL_INT;
|
|
|
|
+ case IIO_PRESSURE:
|
|
|
|
+ *val = 0;
|
|
|
|
+ *val2 = 1000;
|
|
|
|
+ return IIO_VAL_INT_PLUS_MICRO;
|
|
|
|
+ default:
|
|
|
|
+ return -EINVAL;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
return -EINVAL;
|
|
return -EINVAL;
|
|
@@ -218,11 +230,13 @@ static struct ms5611_chip_info chip_info_tbl[] = {
|
|
static const struct iio_chan_spec ms5611_channels[] = {
|
|
static const struct iio_chan_spec ms5611_channels[] = {
|
|
{
|
|
{
|
|
.type = IIO_PRESSURE,
|
|
.type = IIO_PRESSURE,
|
|
- .info_mask_separate = BIT(IIO_CHAN_INFO_PROCESSED),
|
|
|
|
|
|
+ .info_mask_separate = BIT(IIO_CHAN_INFO_PROCESSED) |
|
|
|
|
+ BIT(IIO_CHAN_INFO_SCALE),
|
|
},
|
|
},
|
|
{
|
|
{
|
|
.type = IIO_TEMP,
|
|
.type = IIO_TEMP,
|
|
- .info_mask_separate = BIT(IIO_CHAN_INFO_PROCESSED),
|
|
|
|
|
|
+ .info_mask_separate = BIT(IIO_CHAN_INFO_PROCESSED) |
|
|
|
|
+ BIT(IIO_CHAN_INFO_SCALE),
|
|
}
|
|
}
|
|
};
|
|
};
|
|
|
|
|