Author: cgutman
Date: Fri Mar  2 17:19:04 2012
New Revision: 55958

URL: http://svn.reactos.org/svn/reactos?rev=55958&view=rev
Log:
[STORAGE]
- Experimental change to try to increase real hardware compatibility
- Load both atapi and uniata and allow atapi to have priority and uniata will 
pick up devices that atapi doesn't like
- Fix a bug in uniata enumeration

Modified:
    trunk/reactos/boot/bootdata/hivesys_i386.inf
    trunk/reactos/boot/bootdata/txtsetup.sif
    trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp
    trunk/reactos/media/inf/hdc.inf

Modified: trunk/reactos/boot/bootdata/hivesys_i386.inf
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/hivesys_i386.inf?rev=55958&r1=55957&r2=55958&view=diff
==============================================================================
--- trunk/reactos/boot/bootdata/hivesys_i386.inf [iso-8859-1] (original)
+++ trunk/reactos/boot/bootdata/hivesys_i386.inf [iso-8859-1] Fri Mar  2 
17:19:04 2012
@@ -1240,13 +1240,21 @@
 HKLM,"SYSTEM\CurrentControlSet\Services\Afd","Start",0x00010001,0x00000001
 HKLM,"SYSTEM\CurrentControlSet\Services\Afd","Type",0x00010001,0x00000001
 
-; UniATA/Atapi miniport driver
+; ATAPI miniport driver
+HKLM,"SYSTEM\CurrentControlSet\Services\atapi","ErrorControl",0x00010001,0x00000000
+HKLM,"SYSTEM\CurrentControlSet\Services\atapi","Group",0x00000000,"SCSI 
Miniport"
+HKLM,"SYSTEM\CurrentControlSet\Services\atapi","ImagePath",0x00020000,"system32\drivers\atapi.sys"
+HKLM,"SYSTEM\CurrentControlSet\Services\atapi","Start",0x00010001,0x00000000
+HKLM,"SYSTEM\CurrentControlSet\Services\atapi","Type",0x00010001,0x00000001
+HKLM,"SYSTEM\CurrentControlSet\Services\atapi","Tag",0x00010001,0x00000010
+
+; UNIATA miniport driver
 
HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","ErrorControl",0x00010001,0x00000000
-HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","Group",0x00000000,"System Bus 
Extender"
+HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","Group",0x00000000,"SCSI 
Miniport"
 
HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","ImagePath",0x00020000,"system32\drivers\uniata.sys"
 HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","Start",0x00010001,0x00000000
 HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","Type",0x00010001,0x00000001
-HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","Tag",0x00010001,0x00000010
+HKLM,"SYSTEM\CurrentControlSet\Services\UniATA","Tag",0x00010001,0x00000020
 
 ; Audio Service
 
HKLM,"SYSTEM\CurrentControlSet\Services\RosAudioSrv","DisplayName",0x00000000,"Audio
 Service"

Modified: trunk/reactos/boot/bootdata/txtsetup.sif
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/txtsetup.sif?rev=55958&r1=55957&r2=55958&view=diff
==============================================================================
--- trunk/reactos/boot/bootdata/txtsetup.sif [iso-8859-1] (original)
+++ trunk/reactos/boot/bootdata/txtsetup.sif [iso-8859-1] Fri Mar  2 17:19:04 
2012
@@ -17,8 +17,9 @@
 
 [SourceDisksFiles]
 acpi.sys=,,,,,,,,,,,,4
+atapi.sys=,,,,,,x,,,,,,4
+uniata.sys=,,,,,,x,,,,,,4
 nmidebug.sys=,,,,,,x,,,,,,4
-uniata.sys=,,,,,,x,,,,,,4
 buslogic.sys=,,,,,,x,,,,,,4
 blue.sys=,,,,,,x,,,,,,4
 bootvid.dll=,,,,,,,,,,,,2
@@ -70,7 +71,7 @@
 PCI\CC_0104 = uniata
 PCI\CC_0105 = uniata
 PCI\CC_0106 = uniata
-*PNP0600 = uniata
+*PNP0600 = atapi
 ;USB\CLASS_09 = usbhub
 USB\ROOT_HUB = usbhub
 USB\ROOT_HUB20 = usbhub

Modified: trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp?rev=55958&r1=55957&r2=55958&view=diff
==============================================================================
--- trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp [iso-8859-1] (original)
+++ trunk/reactos/drivers/storage/ide/uniata/id_ata.cpp [iso-8859-1] Fri Mar  2 
17:19:04 2012
@@ -8858,17 +8858,21 @@
             }
             continue;
         }
-        BMList[i].AltInitMasterDev = (UCHAR)0xff;
-
         if(GlobalConfig->AtDiskPrimaryAddressClaimed)
             PrimaryClaimed = TRUE;
         if(GlobalConfig->AtDiskSecondaryAddressClaimed)
             SecondaryClaimed = TRUE;
+        
+        if(PrimaryClaimed && SecondaryClaimed) {
+            KdPrint2((PRINT_PREFIX "Both legacy channels claimed\n"));
+            break;
+        }
+
+        BMList[i].AltInitMasterDev = (UCHAR)0xff;
 
         if(g_opt_Verbose) {
             _PrintNtConsole("Init standard Dual-channel PCI ATA controller:");
         }
-
 
         for(alt = 0; alt < (ULONG)(WinVer_WDM_Model ? 1 : 2) ; alt++) {
 

Modified: trunk/reactos/media/inf/hdc.inf
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/media/inf/hdc.inf?rev=55958&r1=55957&r2=55958&view=diff
==============================================================================
Binary files - no diff available.


Reply via email to