Hi all!
v6:
- preparation part merged to master
- drop HOTPLUG_STATE event for now. I'm not sure we need it, and anyway,
it should be throttled as it may be triggered by guest at any rate.
And if it is throttled:
- we can't track real state changes, so probably reporting only
changed fields is not enough.. Then the format of the event is under
question.
- we should implement throttling separately for different devices
- we should improve throttling to support several events in a short
time, still keeping small rate in larger periods, as guest tends to
change some states sequentially in a short time.
So, that's not easy:) Let's just drop it for now.
- force DEVICE_ON event to be triggered only once per device
- flatten query-hotplug output and add device-on status (corresponding
to DEVICE_ON event)
Vladimir Sementsov-Ogievskiy (4):
qapi/qdev.json: unite DEVICE_* event data into single structure
qapi: add DEVICE_ON and query-hotplug infrastructure
shpc: implement DEVICE_ON event and query-hotplug
pcie: implement DEVICE_ON event and query-hotplug
qapi/qdev.json | 183 +++++++++++++++++++++++++++++---
include/hw/hotplug.h | 12 +++
include/hw/pci/pci_bridge.h | 2 +
include/hw/pci/pcie.h | 2 +
include/hw/pci/shpc.h | 2 +
include/hw/qdev-core.h | 1 +
include/monitor/qdev.h | 6 ++
hw/core/hotplug.c | 13 +++
hw/pci-bridge/pci_bridge_dev.c | 14 +++
hw/pci-bridge/pcie_pci_bridge.c | 1 +
hw/pci/pcie.c | 83 +++++++++++++++
hw/pci/pcie_port.c | 1 +
hw/pci/shpc.c | 86 +++++++++++++++
softmmu/qdev-monitor.c | 58 ++++++++++
14 files changed, 452 insertions(+), 12 deletions(-)
--
2.34.1