[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Small issue in the IDE emulation
From: |
Vincent Sanders |
Subject: |
[Qemu-devel] Small issue in the IDE emulation |
Date: |
Sat, 4 Oct 2008 12:10:02 +0100 |
User-agent: |
Mutt/1.5.17+20080114 (2008-01-14) |
While doing some other work I have come across a small issue with the
DIAGNOSE command in the qemu IDE implementation. The status register
value is dependant on the drive being a packet device or not. The
simple patch (attached) fixes this.
=== modified file 'hw/ide.c'
--- hw/ide.c 2008-10-01 01:43:16 +0000
+++ hw/ide.c 2008-10-04 10:56:58 +0000
@@ -2308,8 +2308,15 @@
break;
case WIN_DIAGNOSE:
ide_set_signature(s);
- s->status = READY_STAT | SEEK_STAT;
- s->error = 0x01;
+ if (s->is_cdrom)
+ s->status = 0; /* ATAPI spec (v6) section 9.10 defines packet
+ * devices to return a clear status register
+ * with READY_STAT *not* set. */
+ else
+ s->status = READY_STAT | SEEK_STAT;
+ s->error = 0x01; /* Device 0 passed, Device 1 passed or not
+ * present.
+ */
ide_set_irq(s);
break;
case WIN_SRST:
--
Regards Vincent
http://www.kyllikki.org/
signature.asc
Description: Digital signature
- [Qemu-devel] Small issue in the IDE emulation,
Vincent Sanders <=