]> git.proxmox.com Git - mirror_qemu.git/commitdiff
qdev: provide qdev_reset_all_fn()
authorDavid Hildenbrand <dahi@linux.vnet.ibm.com>
Tue, 21 Jul 2015 06:32:07 +0000 (08:32 +0200)
committerCornelia Huck <cornelia.huck@de.ibm.com>
Wed, 11 Nov 2015 16:21:39 +0000 (17:21 +0100)
For TYPE_DEVICE, the dc->reset() function is not called on system resets
yet. Until that is changed, we have to manually register a reset handler.
Let's provide qdev_reset_all_fn(), that can directly be used - just like
the reset handler that is already available for qbus.

Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
hw/core/qdev.c
include/hw/qdev-core.h

index 4ab04aa31e788ccc7b38597fec14c95aed1f8879..b3ad46775409443e46c994b06e6ec15098d51d5d 100644 (file)
@@ -325,6 +325,11 @@ void qdev_reset_all(DeviceState *dev)
     qdev_walk_children(dev, NULL, NULL, qdev_reset_one, qbus_reset_one, NULL);
 }
 
+void qdev_reset_all_fn(void *opaque)
+{
+    qdev_reset_all(DEVICE(opaque));
+}
+
 void qbus_reset_all(BusState *bus)
 {
     qbus_walk_children(bus, NULL, NULL, qdev_reset_one, qbus_reset_one, NULL);
index 8057aedaa6c0be51c2629fa01cab6c75d87573e5..e6dbde42c465ff3047f2fff4f2f1129d4aef5209 100644 (file)
@@ -337,6 +337,7 @@ int qdev_walk_children(DeviceState *dev,
                        void *opaque);
 
 void qdev_reset_all(DeviceState *dev);
+void qdev_reset_all_fn(void *opaque);
 
 /**
  * @qbus_reset_all: