Several things implemented in v2:
- Addressing review comments
- Simplify `target/riscv/xmips.decode`
- Rebase on top of latest master
- Fix code format
Djordje Todorovic (9):
hw/intc: Allow gaps in hartids for aclint and aplic
target/riscv: Add cpu_set_exception_base
target/riscv: Add MIPS P8700 CPU
target/riscv: Add MIPS P8700 CSRs
target/riscv: Add mips.ccmov instruction
target/riscv: Add mips.pref instruction
target/riscv: Add Xmipslsp instructions
configs/devices: Add MIPS Boston-aia board model to RISC-V
hw/riscv: Add a network device e1000e to the boston-aia
configs/devices/riscv64-softmmu/default.mak | 1 +
hw/intc/riscv_aclint.c | 33 +-
hw/intc/riscv_aplic.c | 10 +-
hw/misc/Kconfig | 5 +
hw/misc/meson.build | 1 +
hw/misc/riscv_cmgcr.c | 204 ++++++++
hw/misc/riscv_cpc.c | 225 +++++++++
hw/pci/pci.c | 15 +-
hw/riscv/Kconfig | 6 +
hw/riscv/boston-aia.c | 489 ++++++++++++++++++++
hw/riscv/cps.c | 187 ++++++++
hw/riscv/meson.build | 1 +
include/hw/misc/riscv_cmgcr.h | 77 +++
include/hw/misc/riscv_cpc.h | 69 +++
include/hw/riscv/cps.h | 75 +++
target/riscv/cpu-qom.h | 1 +
target/riscv/cpu.c | 28 ++
target/riscv/cpu.h | 9 +
target/riscv/cpu_cfg.h | 5 +
target/riscv/cpu_cfg_fields.h.inc | 3 +
target/riscv/insn_trans/trans_xmips.c.inc | 137 ++++++
target/riscv/meson.build | 2 +
target/riscv/mips_csr.c | 219 +++++++++
target/riscv/translate.c | 11 +
target/riscv/xmips.decode | 35 ++
25 files changed, 1837 insertions(+), 11 deletions(-)
create mode 100644 hw/misc/riscv_cmgcr.c
create mode 100644 hw/misc/riscv_cpc.c
create mode 100644 hw/riscv/boston-aia.c
create mode 100644 hw/riscv/cps.c
create mode 100644 include/hw/misc/riscv_cmgcr.h
create mode 100644 include/hw/misc/riscv_cpc.h
create mode 100644 include/hw/riscv/cps.h
create mode 100644 target/riscv/insn_trans/trans_xmips.c.inc
create mode 100644 target/riscv/mips_csr.c
create mode 100644 target/riscv/xmips.decode
--
2.34.1