summary refs log tree commit diff stats
path: root/hw
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2013-07-25 16:37:37 +0200
committerChristian Borntraeger <borntraeger@de.ibm.com>2013-08-30 12:49:30 +0200
commit4e872a3fb024f0d742ef6b48be3afaab2c4453fc (patch)
tree03f0057e5ceda9c4aa0f8b21b8e220adacfc0c04 /hw
parent268846ba93de2529630d623b6ded72cee1221106 (diff)
downloadfocaccia-qemu-4e872a3fb024f0d742ef6b48be3afaab2c4453fc.tar.gz
focaccia-qemu-4e872a3fb024f0d742ef6b48be3afaab2c4453fc.zip
s390: provide I/O subsystem reset
Provide a function that resets the I/O subsystem.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw')
-rw-r--r--hw/s390x/s390-virtio-ccw.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index aebbbf1755..8fd46a92c9 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -17,6 +17,21 @@
 #include "css.h"
 #include "virtio-ccw.h"
 
+void io_subsystem_reset(void)
+{
+    DeviceState *css, *sclp;
+
+    css = DEVICE(object_resolve_path_type("", "virtual-css-bridge", NULL));
+    if (css) {
+        qdev_reset_all(css);
+    }
+    sclp = DEVICE(object_resolve_path_type("",
+                  "s390-sclp-event-facility", NULL));
+    if (sclp) {
+        qdev_reset_all(sclp);
+    }
+}
+
 static int virtio_ccw_hcall_notify(const uint64_t *args)
 {
     uint64_t subch_id = args[0];