summaryrefslogtreecommitdiffstats
path: root/hw/core/hotplug.c
diff options
context:
space:
mode:
authorIgor Mammedov2016-05-12 05:48:15 +0200
committerDavid Gibson2016-06-17 08:33:48 +0200
commit41346263c4039fd2edca61c031c9396577693036 (patch)
treee20fa96388bb62c967490408973ccb7e58e51b21 /hw/core/hotplug.c
parenttarget-ppc: Fix rlwimi, rlwinm, rlwnm (diff)
downloadqemu-41346263c4039fd2edca61c031c9396577693036.tar.gz
qemu-41346263c4039fd2edca61c031c9396577693036.tar.xz
qemu-41346263c4039fd2edca61c031c9396577693036.zip
qdev: hotplug: Introduce HotplugHandler.pre_plug() callback
pre_plug callback is to be called before device.realize() is executed. This would allow to check/set device's properties from HotplugHandler. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'hw/core/hotplug.c')
-rw-r--r--hw/core/hotplug.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/hw/core/hotplug.c b/hw/core/hotplug.c
index 645cfca1b9..17ac986685 100644
--- a/hw/core/hotplug.c
+++ b/hw/core/hotplug.c
@@ -13,6 +13,17 @@
#include "hw/hotplug.h"
#include "qemu/module.h"
+void hotplug_handler_pre_plug(HotplugHandler *plug_handler,
+ DeviceState *plugged_dev,
+ Error **errp)
+{
+ HotplugHandlerClass *hdc = HOTPLUG_HANDLER_GET_CLASS(plug_handler);
+
+ if (hdc->pre_plug) {
+ hdc->pre_plug(plug_handler, plugged_dev, errp);
+ }
+}
+
void hotplug_handler_plug(HotplugHandler *plug_handler,
DeviceState *plugged_dev,
Error **errp)