[PATCH] clocksource/drivers/exynos_mct: Use percpu interrupts only on ARM64
Marek Szyprowski
m.szyprowski at samsung.com
Wed Aug 27 03:26:45 PDT 2025
For some unknown reasons forcing percpu interrupts for local timers
breaks CPU hotplug for 'little' cores on legacy ARM 32bit Exynos based
machines (for example Exynos5422-based Odroid-XU3/XU4 boards). Use percpu
flag only when driver is compiled for newer ARM64 architecture.
Fixes: f3cec54ee3bf ("clocksource/drivers/exynos_mct: Set local timer interrupts as percpu")
Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
---
drivers/clocksource/exynos_mct.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_mct.c
index 62febeb4e1de..fece6bbc190e 100644
--- a/drivers/clocksource/exynos_mct.c
+++ b/drivers/clocksource/exynos_mct.c
@@ -603,7 +603,8 @@ static int __init exynos4_timer_interrupts(struct device_node *np,
if (request_irq(mct_irq,
exynos4_mct_tick_isr,
IRQF_TIMER | IRQF_NOBALANCING |
- IRQF_PERCPU,
+ (IS_ENABLED(CONFIG_ARM64) ?
+ IRQF_PERCPU : 0),
pcpu_mevt->name, pcpu_mevt)) {
pr_err("exynos-mct: cannot register IRQ (cpu%d)\n",
cpu);
--
2.34.1
More information about the linux-arm-kernel
mailing list