qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 2/5] hw/intc: sifive_clint: Use RISC-V CPU GPIO lines


From: Richard Henderson
Subject: Re: [PATCH v1 2/5] hw/intc: sifive_clint: Use RISC-V CPU GPIO lines
Date: Fri, 9 Jul 2021 08:36:26 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

On 7/8/21 8:30 PM, Alistair Francis wrote:
+typedef struct sifive_clint_callback {
+    SiFiveCLINTState *s;
+    int num;
+} sifive_clint_callback;

Perhaps better to put "num", perhaps with a more descriptive name (hartid?), into SiFiveCLINTState itself?

It would avoid some amount of double-indirection, and some awkward memory allocation in sifive_clint_create.


          } else if ((addr & 0x3) == 0) {
-            riscv_cpu_update_mip(RISCV_CPU(cpu), MIP_MSIP, 
BOOL_TO_MASK(value));
+            if (value) {
+                qemu_irq_raise(clint->soft_irqs[hartid]);
+            } else {
+                qemu_irq_lower(clint->soft_irqs[hartid]);
+            }

You should use qemu_irq_set here.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]