On Thu,  1 Aug 2019 16:39:08 +0200
Martin Kepplinger <martin.kepplin...@puri.sm> wrote:

> in_accel_x_scale, in_accel_y_scale and in_accel_z_scale are always
> the same. The scale is still defined to be in "info_mask_separate".
> 
> Userspace (iio-sensor-proxy and others) is not used to that and only
> looks for "in_accel_scale" for the scaling factor to apply.
> 
> Change IIO_CHAN_INFO_SCALE from being separate in all channel to be
> shared by type.
> 
> This removes in_accel_x_scale, in_accel_y_scale and in_accel_z_scale and
> makes available in_accel_scale.
> 
> Signed-off-by: Martin Kepplinger <martin.kepplin...@puri.sm>
> ---
> 
> AFAIK in all other drivers, IIO_CHAN_INFO_SCALE is "shared by type". Sure
> devices are different, but LSM6DSX devices still don't have different
> scales for x/y/z channels :)

I'm fine with this, but would like a Lorenzo ack as we have had
devices in other series where these are not equal.   It used to
be common in accelerometers as I think it was hard to get a large
range in the vertical direction.  Doubt that applies on these modern
parts though!

Thanks,

Jonathan


> 
> thanks,
> 
>                               martin
> 
> 
> 
>  drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h 
> b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h
> index af379a5429ed..59c3ab7cbb6f 100644
> --- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h
> +++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.h
> @@ -56,8 +56,8 @@ enum st_lsm6dsx_hw_id {
>       .address = addr,                                                \
>       .modified = 1,                                                  \
>       .channel2 = mod,                                                \
> -     .info_mask_separate = BIT(IIO_CHAN_INFO_RAW) |                  \
> -                           BIT(IIO_CHAN_INFO_SCALE),                 \
> +     .info_mask_separate = BIT(IIO_CHAN_INFO_RAW),                   \
> +     .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE),           \
>       .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ),        \
>       .scan_index = scan_idx,                                         \
>       .scan_type = {                                                  \

Reply via email to