]> xenbits.xensource.com Git - qemu-upstream-4.6-testing.git/commitdiff
put ready it after write command (aka FreeBSD HD access fix) - access 16 mult sector...
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 29 May 2004 11:04:25 +0000 (11:04 +0000)
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 29 May 2004 11:04:25 +0000 (11:04 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@868 c046a42c-6fe2-441c-8c8c-71466251a162

hw/ide.c

index 45974aeb38d5635a9c7315583a58de1f119a8680..8b5f63e6df3c29abe028aa358d326c0a4359ed24 100644 (file)
--- a/hw/ide.c
+++ b/hw/ide.c
 #define DISABLE_SEAGATE                        0xFB
 
 /* set to 1 set disable mult support */
-#define MAX_MULT_SECTORS 8
+#define MAX_MULT_SECTORS 16
 
 /* ATAPI defines */
 
@@ -1142,7 +1142,7 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val)
         case WIN_WRITE:
         case WIN_WRITE_ONCE:
             s->error = 0;
-            s->status = SEEK_STAT;
+            s->status = SEEK_STAT | READY_STAT;
             s->req_nb_sectors = 1;
             ide_transfer_start(s, s->io_buffer, 512, ide_sector_write);
             break;
@@ -1156,7 +1156,7 @@ static void ide_ioport_write(void *opaque, uint32_t addr, uint32_t val)
             if (!s->mult_sectors)
                 goto abort_cmd;
             s->error = 0;
-            s->status = SEEK_STAT;
+            s->status = SEEK_STAT | READY_STAT;
             s->req_nb_sectors = s->mult_sectors;
             n = s->nsector;
             if (n > s->req_nb_sectors)