mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-06 01:03:55 -06:00
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>
This commit is contained in:
parent
7527c52fd0
commit
f18a288632
2 changed files with 82 additions and 19 deletions
|
@ -40,6 +40,7 @@ struct Q800MachineState {
|
|||
MemoryRegion rom;
|
||||
GLUEState glue;
|
||||
MemoryRegion macio;
|
||||
MemoryRegion macio_alias;
|
||||
};
|
||||
|
||||
#define TYPE_Q800_MACHINE MACHINE_TYPE_NAME("q800")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue