Re: [PATCH] [RFC] Revert "iio: hid-sensor-attributes: Convert to use int_pow()"

From: Arnd Bergmann
Date: Fri Sep 06 2019 - 14:46:38 EST


On Fri, Sep 6, 2019 at 6:55 PM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
>
> On Fri, Sep 06, 2019 at 05:45:55PM +0200, Arnd Bergmann wrote:
> > The change to use the generic int_pow instead of the private version
> > caused a number of build issues on 32-bit architectures and makes
> > it generally less efficient because of the 64-bit math:
> >
> > drivers/iio/common/hid-sensors/hid-sensor-attributes.o: In function `hid_sensor_write_samp_freq_value':
> > hid-sensor-attributes.c:(.text+0x29c): undefined reference to `__aeabi_uldivmod'
> > drivers/iio/common/hid-sensors/hid-sensor-attributes.o: In function `hid_sensor_read_raw_hyst_value':
> > hid-sensor-attributes.c:(.text+0x420): undefined reference to `__aeabi_uldivmod'
> > hid-sensor-attributes.c:(.text+0x448): undefined reference to `__aeabi_uldivmod'
> > drivers/iio/common/hid-sensors/hid-sensor-attributes.o: In function `hid_sensor_write_raw_hyst_value':
> > hid-sensor-attributes.c:(.text+0x570): undefined reference to `__aeabi_uldivmod'
> >
> > There is probably a nicer solution to this, but for the moment,
> > the revert makes it compile again.
> >
> > Fixes: 473d12f7638c ("iio: hid-sensor-attributes: Convert to use int_pow()")
>
> Does the fix [1] works for you?
>
> [1]: https://lore.kernel.org/linux-iio/6851830d050ddb2f27d1e6969755ee4f3293d37c.camel@xxxxxxxxx/

It looks like a better fix, I applied that on my test build tree now, will
let you know if I find any remaining unexpected problems with it.

Arnd