Le 24/05/2023 à 23:10, Mark Cave-Ayland a écrit :
Move all devices from the IO region to within the container in preparation
for updating the IO aliasing mechanism.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk>
---
hw/m68k/q800.c | 6 ++++++
include/hw/m68k/q800.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/hw/m68k/q800.c b/hw/m68k/q800.c
index c22a98d616..6399631ed0 100644
--- a/hw/m68k/q800.c
+++ b/hw/m68k/q800.c
@@ -410,6 +410,12 @@ static void q800_machine_init(MachineState *machine)
/* RAM */
memory_region_add_subregion(get_system_memory(), 0, machine->ram);
+ /*
+ * Create container for all IO devices
+ */
+ memory_region_init(&m->macio, NULL, "mac-io", IO_SLICE);
+ memory_region_add_subregion(get_system_memory(), IO_BASE, &m->macio);
+
/*
* Memory from IO_BASE to IO_BASE + IO_SLICE is repeated
* from IO_BASE + IO_SLICE to IO_BASE + IO_SIZE
diff --git a/include/hw/m68k/q800.h b/include/hw/m68k/q800.h
index de02af53be..156872a124 100644
--- a/include/hw/m68k/q800.h
+++ b/include/hw/m68k/q800.h
@@ -33,6 +33,7 @@ struct Q800MachineState {
M68kCPU *cpu;
MemoryRegion rom;
DeviceState *glue;
+ MemoryRegion macio;
};
#define TYPE_Q800_MACHINE MACHINE_TYPE_NAME("q800")
Reviewed-by: Laurent Vivier <laur...@vivier.eu>