From 8cb0e654a34bd083a0540e145d0b4478ea9c93fc Mon Sep 17 00:00:00 2001 From: buxiasen Date: Fri, 19 Sep 2025 13:31:38 +0800 Subject: [PATCH] arch/armv8-r/timer: fix the UINT64_MAX mask cause tick mode no isr When TICKLESS not enabled, up_alarm_set_lowerhalf will call start, if we overwrite the compare register will cause TICK mode no longer isr. Signed-off-by: buxiasen --- arch/arm/src/armv8-r/arm_timer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/src/armv8-r/arm_timer.c b/arch/arm/src/armv8-r/arm_timer.c index db79fbafa14..2dccc2b4aee 100644 --- a/arch/arm/src/armv8-r/arm_timer.c +++ b/arch/arm/src/armv8-r/arm_timer.c @@ -233,10 +233,10 @@ void up_timer_initialize(void) tmrinfo("%s: cp15 timer(s) running at %" PRIu64 ".%" PRIu64 "MHz\n", __func__, freq / 1000000, (freq / 10000) % 100); - up_alarm_set_lowerhalf(arm_oneshot_initialize()); - arm_timer_phy_set_absolute(UINT64_MAX); + up_alarm_set_lowerhalf(arm_oneshot_initialize()); + up_enable_irq(ARM_ARCH_TIMER_IRQ); arm_timer_phy_enable(true); arm_timer_phy_set_irq_mask(false);