How to enable AHCI on Intel ICH9 under XP

After some research by MSFN staff, we have a working solution to enable ACHI on the ICH9 with appropriate SATA/NCQ drive(s).

For more information about AHCI, we refer to Wikipedia.or
offer features not offered by Parallel ATA (PATA) controllers besides higher speeds, such as hot-plugging and native command queuing. The specification details a system memory structure for computer hardware vendors in order to transfer data between system memory and the device.

List of needed files and driver packs:
MagicISO (Only needed when you don’t want or can not use a floppy disk.)
32-bit Floppy Configuration Utility for Intel® Matrix Storage Manager
http://downloadcenter.intel.com/T8Clearance.aspx?url=/17060/eng/f6flpy6486.zip&agr=Y&ProductID=2842&DwnldID=17060&lang=eng

Index:
1. Unpacking drivers
1.1 Extracting .IMA file with Magic ISO
2. Preparing the drivers
3. Creating Windows registry file
4. BIOS Settings
5. Installing the drivers in Windows
6. Final installation check
7. Editors thoughts


1. Unpacking drivers

Step 1 and 1.1 can be skipped if you want to use a floppy disk. You can edit and copy the files directly from the floppy disk.

Unpack the 32-bit Floppy Configuration Utility for Intel® Matrix Storage Manager and extract the file (.EXE) with WinRAR or similar program. You now get an .EXE file that need to be extracted again to the F32.IMA file.


1.1 Extracting .IMA file with Magic ISO

Install MagicISO or other program that can recognize the .IMA file extension. Open the F32.IMA file with the appropriate program and extract the files to the same folder as the F32.IMA file. If you use MagicISO the select the whole list on the right upper window, en click on it with the right mouse button (for right-handed people) and extract them in the folder where you stored the F32.IMA file.


2. Preparing the drivers

Copy the file IASTOR.SYS to the Windows SYSTEM32/DRIVERS directory. Open the IAAHCI.INF with Notepad from the directory where you unpacked the drivers. Use CRTL-R and you should get a “replace” window. In the first input window you type “2821” and the second “2923”, so you will replace all “2821” text to “2923”, and click “Replace All”. Save IAAHCI.INF over the original file.

Replace the line:
Code: PCI\VEN_8086&DEV_2923&CC_0106.DeviceDesc = "Intel(R) 82801HR/HH/HO SATA AHCI Controller"

To:
Code : PCI\VEN_8086&DEV_2923&CC_0106.DeviceDesc = "Intel(R) ICH9 SATA AHCI Controller"

Save the file under the same name, e.g. IAAHCI.INF and exit Notepad.


3. Creating Windows registry file

Now we create a registry file with Notepad and the following contence:
code:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\pci#ven_8086&dev_2923&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_2923&SUBSYS_B0051458&REV_02\\3&13c0b0c5&0&FA"
"Count"=dword:00000001
"NextInstance"=dword:00000001
Save it as AHCI_ICH9.REG and run it after closing Notepad.


4. BIOS Settings

Restart the computer and enter the BIOS (Mostly entered by pressing DEL). Make the settings:
code:
SATA RAID/AHCI Mode [AHCI]
SATA Port0-3 Native Mode [Enabled]
Restart again to boot into Windows XP.

For ASUS P5K motherboards (IF present in BIOS, please report if not present.):
Restart the computer and enter the BIOS (Mostly entered by pressing DEL). Make the settings:

code:
SATA Configuration [Enhanced]
Configure SATA as [AHCI]

Restart again to boot into Windows XP.


5. Installing the drivers in Windows

If you did steps one to four right, you will not get that “known” BSOD again before you hit the desktop! Windows will show new devices found like all your optical drives and hard disks until you hit to “PCI-Device”. Select “Install manual” and point to the folder where you saved the IAAHCI.INF file and select the IAAHCI.INF file as this is the driver that needs to be installed. Follow the instruction on the screen and restart your computer again.


6. Final installation check

When Windows has started, go to the control panel to check your system properties. In the hardware configuration list there should be now:
IDE ATA/ATAPI controllers -> Intel® ICH9 SATA AHCI Controller.

Beware: You can’t install the Intel Matrix Storage Manager, as the ICH9 doesn’t have RAID. On the net people talk about a modified version that should install, but it’s useless when you don’t have RAID.


We hope you enjoy your new ACHI enabled ICR9 Bridge in XP!

7. Editors thoughts

It must be a marketing question from Intel and Microsoft. There is nothing else I can think of why neither Intel nor Microsoft made new drivers for XP. The only thing I can think of is that Intel wants to sell more ICR9R bridges and Microsoft wants to push its Windows Vista. Like always both companies won’t make any comments!...

Regards,
MrGlorious

Ps. if there is any good info I should add, please post it

Changes:

* 23 DEC 2007, Edited point 4; ASUS BIOS settings.
* 04 JAN 2008, Edited point 6; Fact, unable to install the Intel Matrix Storage Manager.
* 07 FEB 2008, Edited point 1 and 2; Clearer explication about the IAAHCI.INF file, and option when a floppy drive is used.
* 19 MAY 2008, Edited point 3; ControlSet001 changed on second line of registry file to CurrentControlSet, thanks to skipg for correcting me.
* 10 AUG 2008, Post contents added to sticky FAQ, this post is now un-stickied and retired

It must be a marketing question from Intel and Microsoft. There is nothing else I can think of why neither Intel nor Microsoft made new drivers for XP. The only thing I can think of is that Intel wants to sell more ICR9R bridges and Microsoft wants to push its Windows Vista. Like always both companies won’t make any comments!.

The reason is that windows ships with very limited selection of SATA/SAS/SCSI/RAID drivers. No windows OS has until vista/server 2008 has supported these well.

Thats mainly because SATA wasnt invented when XP came out.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.