On 24/7/26 20:36, Brian Cain wrote:
The virt and DSP machine models build the same core subsystem,
let's abstract out that part.
The CPUs are now grouped in a TYPE_CPU_CLUSTER.
Too many changes in the same patch...
Signed-off-by: Brian Cain <[email protected]>
---
include/hw/hexagon/hex-subsys.h | 24 ++++++++
include/hw/hexagon/hexagon.h | 4 ++
include/hw/hexagon/virt.h | 1 -
hw/hexagon/hex-subsys.c | 105 ++++++++++++++++++++++++++++++++
hw/hexagon/hexagon_dsp.c | 40 ++----------
hw/hexagon/virt.c | 52 +++-------------
hw/hexagon/Kconfig | 1 +
hw/hexagon/meson.build | 1 +
8 files changed, 147 insertions(+), 81 deletions(-)
create mode 100644 include/hw/hexagon/hex-subsys.h
create mode 100644 hw/hexagon/hex-subsys.c
diff --git a/include/hw/hexagon/hexagon.h b/include/hw/hexagon/hexagon.h
index 1034b09c2ac..31669a829f8 100644
--- a/include/hw/hexagon/hexagon.h
+++ b/include/hw/hexagon/hexagon.h
@@ -156,6 +156,10 @@ struct HexagonCommonMachineState {
MemoryRegion ram;
MemoryRegion cfgtable_rom;
+ MemoryRegion vtcm;
+ DeviceState *cluster;
+ DeviceState *glob_regs;
+ DeviceState *tlb;
Each field looks like a natural separation.
};