From: Arnd Bergmann Date: Mon, 24 Mar 2025 16:11:11 +0000 (+0100) Subject: platform: cznic: use ffs() instead of __bf_shf() X-Git-Tag: v6.16-rc1~100^2~15^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b24e88b42d68d388f97ca71e11e50cb3e78406ec;p=thirdparty%2Fkernel%2Flinux.git platform: cznic: use ffs() instead of __bf_shf() __bf_shf() on a 64-bit variable causes a link failure during compile-testing: drivers-platform-cznic-turris-omnia-mcu-gpio.c:(.text):undefined-reference-to-__ffsdi2 Open-code this using ffs()-1, which has the same result but avoids the library call. Signed-off-by: Arnd Bergmann --- diff --git a/drivers/platform/cznic/turris-omnia-mcu-gpio.c b/drivers/platform/cznic/turris-omnia-mcu-gpio.c index 932383f7491a3..c2df24ea86867 100644 --- a/drivers/platform/cznic/turris-omnia-mcu-gpio.c +++ b/drivers/platform/cznic/turris-omnia-mcu-gpio.c @@ -1104,7 +1104,7 @@ int omnia_mcu_request_irq(struct omnia_mcu *mcu, u32 spec, if (!spec) return -EINVAL; - irq_idx = omnia_int_to_gpio_idx[__bf_shf(spec)]; + irq_idx = omnia_int_to_gpio_idx[ffs(spec) - 1]; irq = gpiod_to_irq(gpio_device_get_desc(mcu->gc.gpiodev, irq_idx)); if (irq < 0) return irq;