mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 00:33:55 -06:00
nubus: move nubus to its own 32-bit address space
According to "Designing Cards and Drivers for the Macintosh Family" the Nubus has its own 32-bit address space based upon physical slot addressing. Move Nubus to its own 32-bit address space and then use memory region aliases to map available slot and super slot ranges into the q800 system address space via the Macintosh Nubus bridge. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20210924073808.1041-13-mark.cave-ayland@ilande.co.uk> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
3616f424c9
commit
62437f90cf
5 changed files with 44 additions and 7 deletions
|
@ -17,6 +17,9 @@
|
|||
#define NUBUS_SUPER_SLOT_SIZE 0x10000000U
|
||||
#define NUBUS_SUPER_SLOT_NB 0xe
|
||||
|
||||
#define NUBUS_SLOT_BASE (NUBUS_SUPER_SLOT_SIZE * \
|
||||
(NUBUS_SUPER_SLOT_NB + 1))
|
||||
|
||||
#define NUBUS_SLOT_SIZE 0x01000000
|
||||
#define NUBUS_FIRST_SLOT 0x0
|
||||
#define NUBUS_LAST_SLOT 0xf
|
||||
|
@ -33,6 +36,9 @@ OBJECT_DECLARE_SIMPLE_TYPE(NubusBus, NUBUS_BUS)
|
|||
struct NubusBus {
|
||||
BusState qbus;
|
||||
|
||||
AddressSpace nubus_as;
|
||||
MemoryRegion nubus_mr;
|
||||
|
||||
MemoryRegion super_slot_io;
|
||||
MemoryRegion slot_io;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue