Re: [PATCH v11 11/15] iio: test: add basic tests for the iio-rescale driver

From: Liam Beguin
Date: Wed Dec 22 2021 - 14:13:44 EST


On Wed, Dec 22, 2021 at 02:38:13PM +0200, Andy Shevchenko wrote:
> On Wed, Dec 22, 2021 at 5:47 AM Liam Beguin <liambeguin@xxxxxxxxx> wrote:
> >
> > From: Liam Beguin <lvb@xxxxxxxxxx>
> >
> > The iio-rescale driver supports various combinations of scale types and
> > offsets. These can often result in large integer multiplications. Make
> > sure these calculations are done right by adding a set of kunit test
> > cases that build on top of iio-test-format.
>
> ...
>
> > + int fract_mult = 100000000LL;
>
> Perhaps also change to use the prefix?

Argh.. I missed this file. Sorry, will update.

> ...
>
> > + *nano = (s64)tmp * 10 * fract_mult + tmp2;
>
> I'm also puzzled what the meaning of the 10 is here?

That comes from iio_str_to_fixpoint().
I sould've added a comment to make it more explicit as details escape me
right now... Will fix.

> ...
>
> > + err = 1000000 * abs(exp - real);
>
> Prefix?

Ok

> ...
>
> > + err = div64_u64(err, abs(exp));
> > + return (int)err;
>
> return div64_u64();

will do.

Cheers,
Liam

> --
> With Best Regards,
> Andy Shevchenko