From eb8793c0f35ee9d0de4b9ddbc1ca8a553bd39491 Mon Sep 17 00:00:00 2001 From: Yong Cong Sin Date: Fri, 1 Dec 2023 14:01:06 +0800 Subject: [PATCH] driver: intc: plic: fix trigger type register bit calculation The bit position calculation for the trigger type is wrong, fix that. Signed-off-by: Yong Cong Sin --- drivers/interrupt_controller/intc_plic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/interrupt_controller/intc_plic.c b/drivers/interrupt_controller/intc_plic.c index 42f6cbc1f069..ed055017d69c 100644 --- a/drivers/interrupt_controller/intc_plic.c +++ b/drivers/interrupt_controller/intc_plic.c @@ -70,7 +70,7 @@ static int riscv_plic_is_edge_irq(uint32_t irq) volatile uint32_t *trig = (volatile uint32_t *)PLIC_EDGE_TRIG_TYPE; trig += (irq >> PLIC_EDGE_TRIG_SHIFT); - return *trig & BIT(irq); + return *trig & BIT(irq & BIT_MASK(PLIC_EDGE_TRIG_SHIFT)); } /**