History | View | Annotate | Download (2.1 kB)
qdev: Convert busses to QEMU Object Model
This is far less interesting than it sounds. We simply add an Object to eachBusState and then register the types appropriately. Most of the interestingrefactoring will follow in the next patches.
Since we're changing fundamental type names (BusInfo -> BusClass), it all needs...
pci_bridge: simplify memory regions some more
replace alloc/free with struct members.todo: smash with initial implementation aftertesting.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
pci: implement bridge filtering
Support bridge filtering on top of the memoryAPI as suggested by Avi Kivity:
Create a memory region for the bridge's address space. This region isnot directly added to system_memory or its descendants. Devices underthe bridge see this region as its pci_address_space(). The region is...
pci: Remove unused mem_base from PCIBus
Obsoleted by f64e02b6cc.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
pci: allow I/O BARs to be registered with pci_register_bar_region()
Reviewed-by: Richard Henderson <rth@twiddle.net>Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Avi Kivity <avi@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pci: pass address space to pci bus when created
This is now done sloppily, via get_system_memory(). Eventually callerswill be converted to stop using that.
Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Avi Kivity <avi@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pci: replace the magic, 256, for the maximum of devfn
Introduce symbol PCI_SLOT_MAX for the # of slots,and replace the magic, 256.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
pci: use uint8_t for devfn_min
use uint8_t for devfn_min instead of int.
pci_bridge: introduce pci bridge library.
introduce pci bridge library.convert apb bridge and dec p2p bridge to use new pci bridge library.save/restore is supported as a side effect.This is also preparation for pci express root/upstream/downstream port....
pci_bridge: rename PCIBridge::bus -> PCIBridge::sec_bus.
To avoid confusion of primary bus with secondary bus,rename PCIBridge::bus to PCIBridge::sec_bus.
pci: move out pci internal structures, PCIBus, PCIBridge, and pci_bus_info.
move out pci internal structures, PCIBus, PCIBridge and pci_bus_info intoprivate header file, pci_internals.h.This is a preparation. Later pci bridge implementation will besplit out form pci.c into pci_bridge.c....