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