[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 2/7] qdev: add to BusState "hotplug-device" link
From: |
Igor Mammedov |
Subject: |
[Qemu-devel] [PATCH 2/7] qdev: add to BusState "hotplug-device" link |
Date: |
Fri, 6 Dec 2013 18:03:10 +0100 |
It will allow to reuse field in different BUSes, reducing code duplication.
Field is intended fot replacing 'hotplug_qdev' field in PCIBus and also
will allow not to add equivalent field to DimmBus with possiblitity
to refactor other BUSes to use it instead of custom field.
Signed-off-by: Igor Mammedov <address@hidden>
---
hw/core/qdev.c | 4 ++++
include/hw/qdev-core.h | 4 ++++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/hw/core/qdev.c b/hw/core/qdev.c
index e374a93..43cf160 100644
--- a/hw/core/qdev.c
+++ b/hw/core/qdev.c
@@ -32,6 +32,7 @@
#include "qapi/visitor.h"
#include "qapi/qmp/qjson.h"
#include "monitor/monitor.h"
+#include "hw/hotplug.h"
int qdev_hotplug = 0;
static bool qdev_hot_added = false;
@@ -868,6 +869,9 @@ static void qbus_initfn(Object *obj)
BusState *bus = BUS(obj);
QTAILQ_INIT(&bus->children);
+ object_property_add_link(obj, QDEV_HOTPLUG_DEVICE_PROPERTY,
+ TYPE_HOTPLUG_DEVICE,
+ (Object **)&bus->hotplug_device, NULL);
}
static char *default_bus_get_fw_dev_path(DeviceState *dev)
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h
index f2043a6..9dc0fd1 100644
--- a/include/hw/qdev-core.h
+++ b/include/hw/qdev-core.h
@@ -169,14 +169,18 @@ typedef struct BusChild {
QTAILQ_ENTRY(BusChild) sibling;
} BusChild;
+#define QDEV_HOTPLUG_DEVICE_PROPERTY "hotplug-device"
+
/**
* BusState:
+ * @hotplug_device: link to a hotplug device associated with bus.
*/
struct BusState {
Object obj;
DeviceState *parent;
const char *name;
int allow_hotplug;
+ DeviceState *hotplug_device;
int max_index;
QTAILQ_HEAD(ChildrenHead, BusChild) children;
QLIST_ENTRY(BusState) sibling;
--
1.7.1
- Re: [Qemu-devel] [PATCH 7/7] hw/pci: convert PCI bus to use "hotplug-device" interface., (continued)
Re: [Qemu-devel] [PATCH 7/7] hw/pci: convert PCI bus to use "hotplug-device" interface., Marcel Apfelbaum, 2013/12/09
[Qemu-devel] [PATCH 6/7] pci/pcie: convert PCIE hotplug to use hotplug-device interface, Igor Mammedov, 2013/12/06
Re: [Qemu-devel] [PATCH 0/7] Refactor PCI/SHPC/PCIE hotplug to use a more generic hotplug API, Paolo Bonzini, 2013/12/06
[Qemu-devel] [PATCH 2/7] qdev: add to BusState "hotplug-device" link,
Igor Mammedov <=
[Qemu-devel] [PATCH 1/7] define hotplug interface, Igor Mammedov, 2013/12/06
Re: [Qemu-devel] [PATCH 1/7] define hotplug interface, Li Guang, 2013/12/09
Re: [Qemu-devel] [PATCH 1/7] define hotplug interface, Marcel Apfelbaum, 2013/12/09