From 31f6452e06e38c89c720969c8e882842d03a61b2 Mon Sep 17 00:00:00 2001 From: Enrico Zelioli Date: Mon, 24 Jul 2023 01:50:13 +0200 Subject: [PATCH] decoder/clic: Ignore CLINT interrupts in CLIC mode Co-authored-by: Enrico Zelioli --- core/decoder.sv | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/decoder.sv b/core/decoder.sv index 7c6ad722f2..2e1894f662 100644 --- a/core/decoder.sv +++ b/core/decoder.sv @@ -1391,8 +1391,10 @@ module decoder import ariane_pkg::*; #( // ----------------- // we decode an interrupt the same as an exception, hence it will be taken if the instruction did not // throw any previous exception. - if (ariane_pkg::RVSCLIC && clic_mode_i && clic_irq_req_i) begin - interrupt_cause = clic_irq_cause_i; + if (ariane_pkg::RVSCLIC && clic_mode_i) begin + if (clic_irq_req_i) begin + interrupt_cause = clic_irq_cause_i; + end end else begin // we have three interrupt sources: external interrupts, software interrupts, timer interrupts (order of precedence) // for two privilege levels: Supervisor and Machine Mode