- Joined
- Nov 20, 2006
- Messages
- 14,939
Problem:
If you forgot to activate AHCI-mode in BIOS before you installed Windows XP SP2 on one of your SATA drives you will encounter a serious problem if you attempt to switch to AHCI-mode after the installation is already completed: Windows XP SP2 will not start properly anymore.
Why AHCI?
AHCI stands for Advanced Host Controller Interface. One of the main reasons for switching to AHCI-mode is to take advantage of the NCQ-Feature of your SATA harddrive. NCQ (Native Command Queuing) allows ATA drives to accept more than one command at a time and dynamically reorder the commands for maximum efficiency. NCQ, when used in conjunction with a hard drive that supports NCQ, can increase storage performance on random workloads.
Solutions:
There are basically two possible solution that do not involve a re-installation of the whole operating system.
1.] Solution #1 is the simpler one as it only involves a few mouse clicks in Device Manager. Apache Thunder has posted a detailed guide with screenhots which can be found >>here<<.
2.] In case Solution #1 fails, there is another way to do this (Solution #2), which is somewhat more complicated as it involves a registry patch that has to be customized for the specific Intel Chipset used on the mainboard at hand. The guide that I am going to reproduce here was originally posted on a German Gigabyte forum by JZ.
[ http://62.109.81.232/cgi-bin/sbb/sbb.cgi?&a=show&forum=1&show=450&start=0 ]
I figured it would probably not a bad idea to put up a thread about here as well.
I have successfully tested the whole thing on the following mainboards:
-P965 Platinum (ICH8R)
-P35 Platinum/Neo2-Series (ICH9R
-975X Platinum PowerUp Edition (ICH7DH)
First Step:
Open Windows Notepad and create a REG-file and name it as you like (example: AHCI.reg)
Copy and paste the following lines into that reg-file and save it (use the right content for your controller (ICH8R, ICH9R and ICH7DH)
ICH8R
ICH9R [THX @monographix ]
ICH10R
Now double-click on your reg-file to make the above changes to the Windows registry.
Do not restart your computer at this point.
Second Step:
Copy the iaStor.sys-File into the \Windows\System32\Drivers\-Folder if it isn't in there already.
The file is part of the of the Intel Matrix Storage Manager-Packet (IATA621_CD.EXE) and can be retrieved manually:
\START\Run --> IATA621_CD.EXE -a -a
After entering this command the file should be in the following folder:
...\Program Files\Intel\Intel Matrix Storage Manager\Driver
...and ready to be copied.
Third Step:
Restart your computer, enter BIOS and switch to AHCI-mode.
Save, exit and load Windows XP which should now start properly, discover the SATA AHCI Controller and ask for a driver.
Abort the whole Windows-Driver-Installation procedure and run IATA621_CD.EXE instead to take care of the installation.
Restart your system.
-----------
Done.
Sugestions and corrections are very welcome.
If you forgot to activate AHCI-mode in BIOS before you installed Windows XP SP2 on one of your SATA drives you will encounter a serious problem if you attempt to switch to AHCI-mode after the installation is already completed: Windows XP SP2 will not start properly anymore.
Why AHCI?
AHCI stands for Advanced Host Controller Interface. One of the main reasons for switching to AHCI-mode is to take advantage of the NCQ-Feature of your SATA harddrive. NCQ (Native Command Queuing) allows ATA drives to accept more than one command at a time and dynamically reorder the commands for maximum efficiency. NCQ, when used in conjunction with a hard drive that supports NCQ, can increase storage performance on random workloads.
Solutions:
There are basically two possible solution that do not involve a re-installation of the whole operating system.
1.] Solution #1 is the simpler one as it only involves a few mouse clicks in Device Manager. Apache Thunder has posted a detailed guide with screenhots which can be found >>here<<.
2.] In case Solution #1 fails, there is another way to do this (Solution #2), which is somewhat more complicated as it involves a registry patch that has to be customized for the specific Intel Chipset used on the mainboard at hand. The guide that I am going to reproduce here was originally posted on a German Gigabyte forum by JZ.
[ http://62.109.81.232/cgi-bin/sbb/sbb.cgi?&a=show&forum=1&show=450&start=0 ]
I figured it would probably not a bad idea to put up a thread about here as well.
I have successfully tested the whole thing on the following mainboards:
-P965 Platinum (ICH8R)
-P35 Platinum/Neo2-Series (ICH9R
-975X Platinum PowerUp Edition (ICH7DH)
First Step:
Open Windows Notepad and create a REG-file and name it as you like (example: AHCI.reg)
Copy and paste the following lines into that reg-file and save it (use the right content for your controller (ICH8R, ICH9R and ICH7DH)
ICH8R
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_8086&dev_2821&cc_0106]
"Service"="iaStor"
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor]
"Type"=dword:00000001
"Start"=dword:00000000
"Group"="SCSI miniport"
"ErrorControl"=dword:00000001
"ImagePath"="system32\\drivers\\iaStor.sys"
"tag"=dword:00000019
"DisplayName"="Intel AHCI Controller"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Parameters]
"queuePriorityEnable"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Enum]
"0"="PCI\\VEN_8086&DEV_2821&SUBSYS_B0051458&REV_02\\3&13c0b0c5&0&FA"
"Count"=dword:00000001
"NextInstance"=dword:00000001
ICH9R [THX @monographix ]
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_8086&dev_2922&cc_0106]
"Service"="iaStor"
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor]
"Type"=dword:00000001
"Start"=dword:00000000
"Group"="SCSI miniport"
"ErrorControl"=dword:00000001
"ImagePath"="system32\\drivers\\iaStor.sys"
"tag"=dword:00000019
"DisplayName"="Intel AHCI Controller"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Parameters]
"queuePriorityEnable"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Enum]
"0"="PCI\\VEN_8086&DEV_2922&SUBSYS_B0051458&REV_02\\3&13c0b0c5&0&FA"
"Count"=dword:00000001
"NextInstance"=dword:00000001
ICH10R
Windows Registry Editor Version 5.00
;
; Important: The File iastor.sys has to be present in the System32\Drivers folder.
;
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_8086&dev_3A22&cc_0106]
"Service"="iaStor"
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor]
"Type"=dword:00000001
"Start"=dword:00000000
"Group"="SCSI miniport"
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
52,00,49,00,56,00,45,00,52,00,53,00,5c,00,69,00,61,00,53,00,74,00,6f,00,72,\
00,2e,00,73,00,79,00,73,00,00,00
"Tag"=dword:00000019
"DisplayName"="Intel AHCI Controller"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Parameters]
"queuePriorityEnable"=dword:00000000
"BusType"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iaStor\Enum]
"0"="PCI\\VEN_8086&DEV_3A22&SUBSYS_B0051458&REV_01\\3&13c0b0c5&0&FA"
"Count"=dword:00000001
"NextInstance"=dword:00000001
Now double-click on your reg-file to make the above changes to the Windows registry.
Do not restart your computer at this point.
Second Step:
Copy the iaStor.sys-File into the \Windows\System32\Drivers\-Folder if it isn't in there already.
The file is part of the of the Intel Matrix Storage Manager-Packet (IATA621_CD.EXE) and can be retrieved manually:
\START\Run --> IATA621_CD.EXE -a -a
After entering this command the file should be in the following folder:
...\Program Files\Intel\Intel Matrix Storage Manager\Driver
...and ready to be copied.
Third Step:
Restart your computer, enter BIOS and switch to AHCI-mode.
Save, exit and load Windows XP which should now start properly, discover the SATA AHCI Controller and ask for a driver.
Abort the whole Windows-Driver-Installation procedure and run IATA621_CD.EXE instead to take care of the installation.
Restart your system.
-----------
Done.
Sugestions and corrections are very welcome.