summaryrefslogtreecommitdiff
path: root/hw/pci_internals.h
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2011-09-06 20:58:22 +0300
committerMichael S. Tsirkin <mst@redhat.com>2011-09-20 17:46:12 +0300
commit336411cafd385be1fc3de4472595d409ac7fe2b2 (patch)
treeb172ae038530170de241835739bed1fff52b096e /hw/pci_internals.h
parent7df32ca08ad0afdac623e43a99984c26177468f0 (diff)
downloadqemu-336411cafd385be1fc3de4472595d409ac7fe2b2.tar.gz
pci_bridge: simplify memory regions some more
replace alloc/free with struct members. todo: smash with initial implementation after testing. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/pci_internals.h')
-rw-r--r--hw/pci_internals.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/hw/pci_internals.h b/hw/pci_internals.h
index 71c8b51fd0..96690b72d3 100644
--- a/hw/pci_internals.h
+++ b/hw/pci_internals.h
@@ -41,6 +41,21 @@ struct PCIBridge {
/* private member */
PCIBus sec_bus;
+ /*
+ * Memory regions for the bridge's address spaces. These regions are not
+ * directly added to system_memory/system_io or its descendants.
+ * Bridge's secondary bus points to these, so that devices
+ * under the bridge see these regions as its address spaces.
+ * The regions are as large as the entire address space -
+ * they don't take into account any windows.
+ */
+ MemoryRegion address_space_mem;
+ MemoryRegion address_space_io;
+ /*
+ * Aliases for each of the address space windows that the bridge
+ * can forward. Mapped into the bridge's parent's address space,
+ * as subregions.
+ */
MemoryRegion alias_pref_mem;
MemoryRegion alias_mem;
MemoryRegion alias_io;