Re: [PATCH v1 1/1] iio: adc: sc27xx_adc: Re-use generic struct u32_fract

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

 



On Mon, 30 May 2022 21:09:10 +0300
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:

> Instead of custom data type re-use generic struct u32_fract.

There isn't a custom data type  - I'll reword this whilst applying
if there is no reason for a v2.

> No changes intended.

functional changes

> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Given they have been active recently I'd ideally like Cixi Geng
to take a quick glance at this before I apply it.

Thanks,

Jonathan

> ---
>  drivers/iio/adc/sc27xx_adc.c | 15 +++++++--------
>  1 file changed, 7 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/iio/adc/sc27xx_adc.c b/drivers/iio/adc/sc27xx_adc.c
> index e9ff2d6a8a57..f8421cbba8fa 100644
> --- a/drivers/iio/adc/sc27xx_adc.c
> +++ b/drivers/iio/adc/sc27xx_adc.c
> @@ -579,15 +579,14 @@ static int sc27xx_adc_read(struct sc27xx_adc_data *data, int channel,
>  	return ret;
>  }
>  
> -static void sc27xx_adc_volt_ratio(struct sc27xx_adc_data *data,
> -				  int channel, int scale,
> -				  u32 *div_numerator, u32 *div_denominator)
> +static void sc27xx_adc_volt_ratio(struct sc27xx_adc_data *data, int channel, int scale,
> +				  struct u32_fract *fract)
>  {
>  	u32 ratio;
>  
>  	ratio = data->var_data->get_ratio(channel, scale);
> -	*div_numerator = ratio >> SC27XX_RATIO_NUMERATOR_OFFSET;
> -	*div_denominator = ratio & SC27XX_RATIO_DENOMINATOR_MASK;
> +	fract->numerator = ratio >> SC27XX_RATIO_NUMERATOR_OFFSET;
> +	fract->denominator = ratio & SC27XX_RATIO_DENOMINATOR_MASK;
>  }
>  
>  static int adc_to_volt(struct sc27xx_adc_linear_graph *graph,
> @@ -615,7 +614,7 @@ static int sc27xx_adc_to_volt(struct sc27xx_adc_linear_graph *graph,
>  static int sc27xx_adc_convert_volt(struct sc27xx_adc_data *data, int channel,
>  				   int scale, int raw_adc)
>  {
> -	u32 numerator, denominator;
> +	struct u32_fract fract;
>  	u32 volt;
>  
>  	/*
> @@ -637,9 +636,9 @@ static int sc27xx_adc_convert_volt(struct sc27xx_adc_data *data, int channel,
>  		break;
>  	}
>  
> -	sc27xx_adc_volt_ratio(data, channel, scale, &numerator, &denominator);
> +	sc27xx_adc_volt_ratio(data, channel, scale, &fract);
>  
> -	return DIV_ROUND_CLOSEST(volt * denominator, numerator);
> +	return DIV_ROUND_CLOSEST(volt * fract.denominator, fract.numerator);
>  }
>  
>  static int sc27xx_adc_read_processed(struct sc27xx_adc_data *data,




[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