[PATCH v2 0/9] PCI capability and device assignment improvements

Alex Williamson
2010-11-12T17:45:57Z

v2:

- Fixed the function name in 1/8 per Michael's suggestion.
- Removed capability specific config read/write registration
- Added more checks to add_capability
- Added capability lookup table to PCIDevice

I've dropped the RFC patch to add more capabilities to device
assignment while I do some more work on it. Please feel free
to comment on the v1 version though. Patches still against
qemu-kvm, but I hope some of this makes it easier to bring
qemu & qemu-kvm closer here. Thanks,

Alex

v1:

This series attempts to clean up capability support between common
code and device assignment. In doing so, we can move existing MSI &
MSI-X capabilities to offsets matching real hardware, and further
enable more capabilities to be exposed.

The last patch is only for RFC, I'd like some input on what we should
pass directly and where we should only provide read-only/emulated
access. Patches 1-7 are submitted for commit. Thanks,

Alex

---

Alex Williamson (9):
pci: Store capability offsets in PCIDevice
pci: Remove capability read/write config handlers
pci: Pass ID for capability read/write handlers
device-assignment: Move PCI capabilities to match physical hardware
pci: Remove cap.length, cap.start, cap.supported
pci: Replace used bitmap with capability byte map
device-assignment: Use PCI capabilities support
pci: Remove pci_enable_capability_support()
pci: pci_default_cap_write_config ignores wmask

hw/device-assignment.c | 157 +++++++++++++++++++++++++-----------------------
hw/msix.c | 15 ++---
hw/pci.c | 132 +++++++++++++++-------------------------
hw/pci.h | 39 ++----------
4 files changed, 145 insertions(+), 198 deletions(-)