summaryrefslogtreecommitdiff
path: root/hw/lsi53c895a.c
diff options
context:
space:
mode:
authorJan Kiszka <jan.kiszka@siemens.com>2010-05-04 14:21:01 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2010-05-10 11:36:03 -0500
commitd43ba0af97646e36b6309292d30ee13b0948b1f8 (patch)
tree1ec6ae9bb512aa4bc1317dc142f7979e3de83d67 /hw/lsi53c895a.c
parent3e94cb020444ed201cfe6210f0de9953143dc74b (diff)
downloadqemu-d43ba0af97646e36b6309292d30ee13b0948b1f8.tar.gz
qemu-d43ba0af97646e36b6309292d30ee13b0948b1f8.tar.bz2
qemu-d43ba0af97646e36b6309292d30ee13b0948b1f8.zip
lsi: Purge message queue on reset
Declare the input message queue empty and initialize the related state machine properly on controller reset. This fixes unrecoverable errors when the controller was reset during ongoing requests. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'hw/lsi53c895a.c')
-rw-r--r--hw/lsi53c895a.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/lsi53c895a.c b/hw/lsi53c895a.c
index 85eea150c8..61de23ea7e 100644
--- a/hw/lsi53c895a.c
+++ b/hw/lsi53c895a.c
@@ -288,6 +288,8 @@ static void lsi_soft_reset(LSIState *s)
DPRINTF("Reset\n");
s->carry = 0;
+ s->msg_action = 0;
+ s->msg_len = 0;
s->waiting = 0;
s->dsa = 0;
s->dnad = 0;