summaryrefslogtreecommitdiff
path: root/hw/s390x/ipl.h
diff options
context:
space:
mode:
authorDavid Hildenbrand <dahi@linux.vnet.ibm.com>2015-07-21 13:47:32 +0200
committerCornelia Huck <cornelia.huck@de.ibm.com>2015-10-21 12:21:30 +0200
commitdb3b2566e0fb45e2901b6f9b842d91db6963915d (patch)
tree758906db40e0a59d2131e8cd432fdb6c2ba0d619 /hw/s390x/ipl.h
parentfeacc6c2c8fff037f67a89402b29923251833425 (diff)
downloadqemu-db3b2566e0fb45e2901b6f9b842d91db6963915d.tar.gz
s390x: machine reset function with new ipl cpu handling
Current implementation depends on the order of resets getting triggered. If a cpu reset is triggered after the ipl device reset, the CPU is stopped and the VM will not run. In fact, that hinders us from converting the ipl device into a TYPE_DEVICE. Let's change that by manually configuring the ipl cpu during a system reset, so we have full control and can demangle that code. Also remove the superflous cpu parameter from s390_update_iplstate on the way. Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> 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>
Diffstat (limited to 'hw/s390x/ipl.h')
-rw-r--r--hw/s390x/ipl.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/s390x/ipl.h b/hw/s390x/ipl.h
index 6424e08db8..7f2b4033d4 100644
--- a/hw/s390x/ipl.h
+++ b/hw/s390x/ipl.h
@@ -12,6 +12,8 @@
#ifndef HW_S390_IPL_H
#define HW_S390_IPL_H
+#include "cpu.h"
+
typedef struct IplParameterBlock {
uint8_t reserved1[110];
uint16_t devno;
@@ -19,6 +21,7 @@ typedef struct IplParameterBlock {
} IplParameterBlock;
void s390_ipl_update_diag308(IplParameterBlock *iplb);
+void s390_ipl_prepare_cpu(S390CPU *cpu);
IplParameterBlock *s390_ipl_get_iplb(void);
void s390_reipl_request(void);