From 9841e3f5cbf0df8864a6406733376e8ab1dacc17 Mon Sep 17 00:00:00 2001 From: hujun5 Date: Fri, 30 Jun 2023 08:50:02 +0800 Subject: [PATCH] arm/trustzone: time interrupt setting failed we should use a secure clock when the CPU is in secure mode Signed-off-by: hujun5 --- arch/arm/src/armv7-a/arm_timer.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/arch/arm/src/armv7-a/arm_timer.c b/arch/arm/src/armv7-a/arm_timer.c index 70f7f59412380..2a7d685996280 100644 --- a/arch/arm/src/armv7-a/arm_timer.c +++ b/arch/arm/src/armv7-a/arm_timer.c @@ -275,8 +275,13 @@ struct oneshot_lowerhalf_s *arm_timer_initialize(unsigned int freq) ctrl |= ARM_TIMER_CTRL_ENABLE | ARM_TIMER_CTRL_INT_MASK; arm_timer_set_ctrl(ctrl); +#ifdef CONFIG_ARCH_TRUSTZONE_SECURE + irq_attach(GIC_IRQ_SEPTM, arm_timer_interrupt, lower); + up_enable_irq(GIC_IRQ_SEPTM); +#else irq_attach(GIC_IRQ_PTM, arm_timer_interrupt, lower); up_enable_irq(GIC_IRQ_PTM); +#endif return (struct oneshot_lowerhalf_s *)lower; }