diff options
author | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2023-06-21 09:53:40 +0100 |
---|---|---|
committer | Laurent Vivier <laurent@vivier.eu> | 2023-06-22 09:23:56 +0200 |
commit | f18a2886328d92c617a08692157d2b3f68477548 (patch) | |
tree | 25d9aa164a1fb1cd451706ecae33f7acfe088dd9 /include/hw/m68k | |
parent | 7527c52fd0472dbe06cc1f2f3b7979e202995ea2 (diff) |
q800: reimplement mac-io region aliasing using IO memory region
The current use of aliased memory regions causes us 2 problems: firstly the
output of "info qom-tree" is absolutely huge and difficult to read, and
secondly we have already reached the internal limit for memory regions as
adding any new memory region into the mac-io region causes QEMU to assert
with "phys_section_add: Assertion `map->sections_nb < TARGET_PAGE_SIZE'
failed".
Implement the mac-io region aliasing using a single IO memory region that
applies IO_SLICE_MASK representing the maximum size of the aliased region and
then forwarding the access to the existing mac-io memory region using the
address space API.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230621085353.113233-12-mark.cave-ayland@ilande.co.uk>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Diffstat (limited to 'include/hw/m68k')
-rw-r--r-- | include/hw/m68k/q800.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/hw/m68k/q800.h b/include/hw/m68k/q800.h index 17067dfad7..1ed38bf0b1 100644 --- a/include/hw/m68k/q800.h +++ b/include/hw/m68k/q800.h @@ -40,6 +40,7 @@ struct Q800MachineState { MemoryRegion rom; GLUEState glue; MemoryRegion macio; + MemoryRegion macio_alias; }; #define TYPE_Q800_MACHINE MACHINE_TYPE_NAME("q800") |