summary refs log tree commit diff stats
path: root/include/hw/intc
diff options
context:
space:
mode:
authorAtish Patra <atishp@rivosinc.com>2022-08-24 15:13:55 -0700
committerAlistair Francis <alistair.francis@wdc.com>2022-09-07 09:19:10 +0200
commit7cbcc538f4b3040db1e39a6547efa501a8a44907 (patch)
treeec5d8fafc780421b1060979e4ef45221f0b98b91 /include/hw/intc
parentdc9acc9ce4add37bc5b4437ae9117c318b4f09d4 (diff)
downloadfocaccia-qemu-7cbcc538f4b3040db1e39a6547efa501a8a44907.tar.gz
focaccia-qemu-7cbcc538f4b3040db1e39a6547efa501a8a44907.zip
hw/intc: Move mtimer/mtimecmp to aclint
Historically, The mtime/mtimecmp has been part of the CPU because
they are per hart entities. However, they actually belong to aclint
which is a MMIO device.

Move them to the ACLINT device. This also emulates the real hardware
more closely.

Reviewed-by: Anup Patel <anup@brainfault.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Signed-off-by: Atish Patra <atishp@rivosinc.com>
Message-Id: <20220824221357.41070-2-atishp@rivosinc.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Diffstat (limited to 'include/hw/intc')
-rw-r--r--include/hw/intc/riscv_aclint.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/intc/riscv_aclint.h b/include/hw/intc/riscv_aclint.h
index 26d4048687..693415eb6d 100644
--- a/include/hw/intc/riscv_aclint.h
+++ b/include/hw/intc/riscv_aclint.h
@@ -32,6 +32,8 @@ typedef struct RISCVAclintMTimerState {
     /*< private >*/
     SysBusDevice parent_obj;
     uint64_t time_delta;
+    uint64_t *timecmp;
+    QEMUTimer **timers;
 
     /*< public >*/
     MemoryRegion mmio;