Re: [PATCH V2] staging:iio:ad7606: fix voltage scales

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 13 Sep 2018 11:44:09 +0300
Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx> wrote:

> Fixes commit 17be2a2905a6ec9aa27cd59521495e2f490d2af0 ("staging: iio:
> ad7606: replace range/range_available with corresponding scale").
> 
> The AD7606 devices don't have a 2.5V voltage range, they have 5V & 10V
> voltage range, which is selectable via the `gpio_range` descriptor.
> 
> The scales also seem to have been miscomputed, because when they were
> applied to the raw values, the results differ from the expected values.
> After checking the ADC transfer function in the datasheet, these were
> re-computed.
> 
> Signed-off-by: Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx>
On thing inline.

Applied to the togreg branch of iio.git and pushed out as testing for
the autobuilders to play with it.

Thanks,

Jonathan

> ---
> 
> Changelog V1 -> V2:
> * changed 2.5/2**16 and 5/2**16 -> 5000/32768 and 10000/32768, because
>   my computation of 32768 in power of 2 is also wrong; it's 2**15, not 2**16
>   and the datasheet mentions 32768, so use that value
> 
>  drivers/staging/iio/adc/ad7606.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/staging/iio/adc/ad7606.c b/drivers/staging/iio/adc/ad7606.c
> index c5fe3003075b..87d5fb073c95 100644
> --- a/drivers/staging/iio/adc/ad7606.c
> +++ b/drivers/staging/iio/adc/ad7606.c
> @@ -26,9 +26,11 @@
>  
>  #include "ad7606.h"
>  
> -/* Scales are computed as 2.5/2**16 and 5/2**16 respectively */

This isn't a kernel comment style. I'll fix up.

> +/* Scales are computed as 5000/32768 and 10000/32768 respectively,
> + * so that when applied to the raw values they provide mV values
> + */
>  static const unsigned int scale_avail[2][2] = {
> -	{0, 38147}, {0, 76294}
> +	{0, 152588}, {0, 305176}
>  };
>  
>  static int ad7606_reset(struct ad7606_state *st)




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux