[PATCH] clocksource/drivers/timer-mediatek: Fix "no-cfi indirect call" warning
From: Luca Leonardo Scorcia
Date: Sun Nov 01 2026 - 04:56:24 EST
After converting the driver to OF probing, kernel-test-robot reported the
following new warning:
vmlinux.o: warning: objtool: mtk_timer_probe+0x23: no-cfi indirect call!
This occurs because of_device_get_match_data() returns NULL when
CONFIG_OF is disabled, which results in LLVM dropping the kCFI setup
since it knows that there is no valid target for this call. Adding a
check for a NULL timer_init avoids the warning and it makes the probe
more robust since of_device_get_match_data() could return NULL even
when CONFIG_OF=y.
Fixes: 7a097aba7255 ("clocksource/drivers/timer-mediatek: Convert to OF probing")
Reported-by: kernel test robot <lkp@xxxxxxxxx>
Closes: https://lore.kernel.org/oe-kbuild-all/202610290223.iOEGeDs2-lkp@xxxxxxxxx/
Suggested-by: Nathan Chancellor <nathan@xxxxxxxxxx>
Signed-off-by: Luca Leonardo Scorcia <l.scorcia@xxxxxxxxx>
---
drivers/clocksource/timer-mediatek.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/clocksource/timer-mediatek.c b/drivers/clocksource/timer-mediatek.c
index 842d6ee4259e..e772f5fe8742 100644
--- a/drivers/clocksource/timer-mediatek.c
+++ b/drivers/clocksource/timer-mediatek.c
@@ -353,6 +353,9 @@ static int mtk_timer_probe(struct platform_device *pdev)
int (*timer_init)(struct platform_device *pdev);
timer_init = of_device_get_match_data(&pdev->dev);
+ if (!timer_init)
+ return -ENODEV;
+
return timer_init(pdev);
}
--
2.43.0