Commit 5a3ec28a authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Jonathan Cameron
Browse files

iio: adc: sc27xx_adc: Re-use generic struct u32_fract



Instead of a pair of u32 re-use generic struct u32_fract.
No functional changes intended.

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: default avatarCixi Geng <cixi.geng1@unisoc.com>
Link: https://lore.kernel.org/r/20220530180910.2533-1-andriy.shevchenko@linux.intel.com


Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 754d0134
Loading
Loading
Loading
Loading
+7 −8
Original line number Diff line number Diff line
@@ -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,