Set a lower maximum number of iterations in AtapiSoftReset.
authorColin Finck <colin@reactos.org>
Sat, 12 Dec 2009 17:14:26 +0000 (17:14 +0000)
committerColin Finck <colin@reactos.org>
Sat, 12 Dec 2009 17:14:26 +0000 (17:14 +0000)
This reduces the UniATA bootup time in VMware (which doesn't seem to clear the IDE_STATUS_BUSY flag) from 70 seconds to around 8.

Tested successfully under QEMU, VBox, VMware and an Athlon XP-based system.

svn path=/trunk/; revision=44552

reactos/drivers/storage/ide/uniata/id_ata.cpp

index e623985..e1950a4 100644 (file)
@@ -679,7 +679,7 @@ AtapiSoftReset(
     )
 {
     //ULONG c = chan->lChannel;
     )
 {
     //ULONG c = chan->lChannel;
-    ULONG i = 1000 * 1000;
+    ULONG i = 30 * 1000;
     UCHAR dma_status = 0;
     KdPrint2((PRINT_PREFIX "AtapiSoftReset:\n"));
     UCHAR statusByte2;
     UCHAR dma_status = 0;
     KdPrint2((PRINT_PREFIX "AtapiSoftReset:\n"));
     UCHAR statusByte2;