Re: [PATCH V4 3/5] iio: adc: Add support for PMIC7 ADC

From: Andy Shevchenko
Date: Fri May 22 2020 - 11:31:20 EST


On Fri, May 22, 2020 at 2:58 PM Jishnu Prakash <jprakash@xxxxxxxxxxxxxx> wrote:
> On 5/13/2020 3:18 PM, Andy Shevchenko wrote:
> > On Wed, May 13, 2020 at 12:23 PM Jishnu Prakash <jprakash@xxxxxxxxxxxxxx> wrote:

...

> >> +static int qcom_vadc7_scale_hw_calib_die_temp(
> >> + const struct vadc_prescale_ratio *prescale,
> >> + const struct adc5_data *data,
> >> + u16 adc_code, int *result_mdec)
> >> +{
> >> +
> >> + int voltage, vtemp0, temp, i = ARRAY_SIZE(adcmap7_die_temp) - 1;
> > How assignment to i is useful?
>
>
> I'm using it in adcmap7_die_temp[i] below, to keep it within the
> character limit per line. I think it's more readable that way.
>
> >
> >> + voltage = qcom_vadc_scale_code_voltage_factor(adc_code,
> >> + prescale, data, 1);
> >> +
> >> + if (adcmap7_die_temp[0].x > voltage) {
> >> + *result_mdec = DIE_TEMP_ADC7_SCALE_1;
> >> + return 0;
> >> + } else if (adcmap7_die_temp[i].x <= voltage) {

I see now i in use, please, replace with direct meaning.

> > Redundant 'else'.
> The expression is different, it's adcmap7_die_temp[i] here, not
> adcmap7_die_temp[0].

if (a) {
...
return;
} else if (b) {
...
}

'else' is redundant due to 'return'. Same when it's 'goto'.

> >> + *result_mdec = DIE_TEMP_ADC7_MAX;
> >> + return 0;
> >> + }
> >> +
> >> + for (i = 0; i < ARRAY_SIZE(adcmap7_die_temp); i++)
> >> + if (adcmap7_die_temp[i].x > voltage)
> >> + break;
> >> +
> >> + vtemp0 = adcmap7_die_temp[i - 1].x;
> >> + voltage = voltage - vtemp0;
> >> + temp = div64_s64(voltage * DIE_TEMP_ADC7_SCALE_FACTOR,
> >> + adcmap7_die_temp[i - 1].y);
> >> + temp += DIE_TEMP_ADC7_SCALE_1 + (DIE_TEMP_ADC7_SCALE_2 * (i - 1));
> >> + *result_mdec = temp;
> >> +
> >> + return 0;
> >> +}

--
With Best Regards,
Andy Shevchenko