Deployment Solution

Adding Intel Matrix Drivers to Your XP Image for AHCI SATA Support 

02-12-2009 11:30 AM

It seems like people have had trouble getting some of the newer models of machines working in native SATA AHCI mode. I'm referring to the infamous STOP 0x0000007B INACCESSABLE_BOOT_DEVICE BSOD. My goal with this article is to consolidate all the fixes, information, and tips I have come across on this topic, and to provide a process that can be followed to support AHCI mode in your XP image. The workaround most people tend to use is to turn off SATA support in the BIOS and run in IDE mode. The IDE drivers are natively supported in XP and don't require you to make a new image for support. This works for some people while others would rather be using the AHCI SATA support to receive the full performance benefits. This article is for the latter.

NOTE: This information is not to fix your PXE problems. You must have your MSD and NIC drivers working in the pre-boot environment before you worry about getting your XP image to work. There are many articles on Juice and in the AKB about driver support for PXE with DOS, WinPE, and Linux. This article assumes you already have PXE working with your hardware.

Before you start, it is also worth noting the new feature of DS 6.9 SP1 called DeployAnywhere. This should allow you to get around having to create a new image to support your MSD. If you aren't using DS 6.9 SP1 yet, or if you just want to fix your image like me, then you can follow the process in this article.

Typically the IDE mode performance degradation isn't visible to the end user. Recently we received a new HP laptop model where this wasn't the case. Since I needed to re-build our image for XP Service Pack 3 anyways, there was no better time to integrate the Intel Matrix Storage drivers into the image. Due to the fact the vast majority (if not all) PC manufacturers are using the Intel Matrix Storage drivers, this article includes how to add support for all versions Intel offers to date. This same process will work to support new controllers beyond ICH10 as they are developed.

Extracting the Drivers

The first step to supporting the Intel Matrix drivers is to download, and extract the necessary files. The XP Professional drivers can be downloaded from Intel at the following link:*+XP+Professional&lang=eng&strOSs=44&submit=Go%21

Intel Matrix Storage Manager Version 8 (7/17/2009)

Download iata89enu.exe and run the following command to extract the files:

iata89enu.exe -A -P C:\extract\IMver8

The files you will need are in C:\extract\imver8\winall\Driver\*.*

Copy these files to C:\drivers\MSD\IMver8

NOTE: The Intel Matrix version 8 drivers alone will be enough for most cases and you may choose to skip the next two driver packages if you want. I would recommend adding the Intel Matrix drivers version 5 and 7 as well for legacy controller support. If you choose not to use the version 5 or 7 drivers, be sure to remove them from the list in your sysprep.inf.

Intel Matrix Storage Manager Version 7 (2/5/2008)

Download iata78_enu.exe and run the following command to extract the files:

iata78_enu.exe -A -Pc:\extract\IMver7

The files you will need are in C:\extract\imver7\Driver\*.*

Copy these files to C:\drivers\MSD\IMver7

Intel Matrix Storage Manager Version 5 (2/29/2008)

Download iata55_enu.exe and run the following command to extract the files:

iata55_enu.exe -a -a -p c:\extract\IMver5

The files you will need are in C:\extract\imver5\Driver\*.*

Copy these files to C:\drivers\MSD\IMver5

Adding the Drivers to the Image

You can choose to copy the drivers to your image wherever you would like. For my example I use C:\drivers\MSD. Once all the necessary drivers have been extracted, copy them to the reference machine for the gold image. In the end you should have the following directory structure on your gold image:


Modifying your Sysprep.inf File

Now that the drivers have been added to the image you can update your sysprep.inf file to support them. I created the entries below starting with the latest version of the Intel Matrix drivers so that a device would use the newest drivers available. This is why versions 7 and 5 only have a few entries in the list below. Append the following information to the [SysprepMassStorage] section in sysprep.inf

PCI\VEN_8086&DEV_24DF&CC_0104=%systemdrive%\drivers\MSD\IMver5\iastor.inf ; Intel(R) 82801ER SATA RAID Controller 
PCI\VEN_8086&DEV_25B0&CC_0104=%systemdrive%\drivers\MSD\IMver5\iastor.inf ; Intel(R) 6300ESB SATA RAID Controller 
PCI\VEN_8086&DEV_2652&CC_0104=%systemdrive%\drivers\MSD\IMver7\iastor.inf ; Intel(R) 82801FR SATA RAID Controller 
PCI\VEN_8086&DEV_2652&CC_0106=%systemdrive%\drivers\MSD\IMver7\iaahci.inf ; Intel(R) 82801FR SATA AHCI Controller 
PCI\VEN_8086&DEV_2653&CC_0106=%systemdrive%\drivers\MSD\IMver7\iaahci.inf ; Intel(R) 82801FBM SATA AHCI Controller 
PCI\VEN_8086&DEV_2682&CC_0104=%systemdrive%\drivers\MSD\IMver8\iastor.inf ; Intel(R) 631xESB/632xESB SATA RAID Controller 
PCI\VEN_8086&DEV_27C3&CC_0104=%systemdrive%\drivers\MSD\IMver8\iastor.inf ; Intel(R) 82801GR/GH SATA RAID Controller 
PCI\VEN_8086&DEV_27C6&CC_0104=%systemdrive%\drivers\MSD\IMver8\iastor.inf ; Intel(R) 82801GHM SATA RAID Controller 
PCI\VEN_8086&DEV_2822&CC_0104=%systemdrive%\drivers\MSD\IMver8\iastor.inf ; Intel(R) ICH8R/ICH9R SATA RAID Controller 
PCI\VEN_8086&DEV_282A&CC_0104=%systemdrive%\drivers\MSD\IMver8\iastor.inf ; Intel(R) 82801HEM SATA RAID Controller 
PCI\VEN_8086&DEV_2681&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) 631xESB/632xESB SATA AHCI Controller 
PCI\VEN_8086&DEV_27C1&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) 82801GR/GH SATA AHCI Controller 
PCI\VEN_8086&DEV_27C5&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) 82801GBM SATA AHCI Controller 
PCI\VEN_8086&DEV_2821&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) 82801HR/HH/HO SATA AHCI Controller 
PCI\VEN_8086&DEV_2829&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) 82801HEM/HBM SATA AHCI Controller 
PCI\VEN_8086&DEV_2922&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) ICH9 SATA AHCI Controller 
PCI\VEN_8086&DEV_2929&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) ICH9M-E/M SATA AHCI Controller 
PCI\VEN_8086&DEV_3A02&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) ICH10D/DO SATA AHCI Controller 
PCI\VEN_8086&DEV_3A22&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) ICH10R SATA AHCI Controller
PCI\VEN_8086&DEV_3B29&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) PCHM SATA AHCI Controller 4 Port
PCI\VEN_8086&DEV_3B2F&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) PCHM SATA AHCI Controller 6 Port
PCI\VEN_8086&DEV_3B22&CC_0106=%systemdrive%\drivers\MSD\IMver8\iaahci.inf ; Intel(R) PCH SATA AHCI Controller

As necessary, run sysprep.exe -bmsd. Once complete you can run sysprep.exe -mini -reseal -quiet to seal the image. If you receive any errors at the end of sysprep.exe running, it is due to the path in sysprep.inf not matching the location where you put the drivers.

When sysprep is sealing your image it adds entries for your MSD's to the CriticalDeviceDatabase section of the registry (HKLM\SYSTEM\CurrentControlSet\Control). This is necessary for the device to be recognized before the OS is laid down. This is also the reason you cannot easily inject newer SATA controller drivers as they come out in the future. It is recommended to create and sysprep a new gold image when you need to support new MSD drivers.

NOTE: There have been articles posted on Juice which detail how to inject MSD's to your existing image. While this method will work, I tend to like to streamline this process and have better overall driver support. For those interested in supporting a specific type of controller you can read about this process at the following links:

Hopefully with this information you can stop those annoying Blue Screens and have better overall support in your environment for your native SATA drivers if you choose to use them.

0 Favorited
1 Files
jpg file
12271.jpg   6K   1 version
Uploaded - 02-25-2020

Tags and Keywords


07-30-2012 06:47 PM

A co-worker figured out the AMD piece. Thanks goes to him.

 PCI\VEN_1002&DEV_4392=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
PCI\VEN_1002&DEV_4391=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
PCI\VEN_1002&DEV_4393=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
PCI\VEN_1002&DEV_4381&SUBSYS_43811002=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
PCI\VEN_1002&DEV_4380&SUBSYS_43821002=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
PCI\VEN_1002&DEV_4380&SUBSYS_43811002=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
SCSI\ProcessorAMD_____=%systemdrive%\drivers\MSD\AMD1\ahcix86.inf ; AMD AHCI RAID v3.1.1548.155
PCI\VEN_1002&DEV_4392&CC_0104=%systemdrive%\drivers\MSD\AMD2\ahcix86.inf ; AMD SATA AHCI v3.2.1548.37
PCI\VEN_1002&DEV_4391&CC_0106=%systemdrive%\drivers\MSD\AMD2\ahcix86.inf ; AMD SATA AHCI v3.2.1548.37
PCI\VEN_1002&DEV_4393&CC_0104=%systemdrive%\drivers\MSD\AMD2\ahcix86.inf ; AMD SATA AHCI v3.2.1548.37 

02-28-2011 03:57 AM

Great info.

You are a lifesaver!!

12-21-2010 07:05 PM

hi Brandon,

it seems that there is a hope for me as well,

I would like to port windows XP (SP3) installation to a notebook that has landed on my desk.
the thing is, that the image-source PC is an IDE based machine and the notebook is a SATA AMD based stuff. the notebook is HP Pavilion dv5 model 1240ec (with AMD Turion X2)

Off course, plain unrolling of the ghost image to the notebook's HDD ended up with the blue screen.
I found AMD SATA driver that should be used for the SATA device (pls see attached).
I also found that ..86 version of the driver should be used (not the 64bit one).
it is in sp39719.exe and can be downloaded from:

there are some scripts on this site that can inject SATA driver to an existing XP installation (or the ghost image), however, those deal just with Intel drivers.
could you please help to do it for AMD SATA too?
many thanks

11-10-2010 06:16 PM

I must say we already face the 0x0..07B problem on image deploy, after deploying an old XP image, and a latests AHCI laptop...

All the same using the DeployAnywhere option, all the same sp4 updated, all the same uploading the Mass strorage driver into the driversDB !

We reproduce this using the same HP latop on 2 differents customer sites.

No way, Blue Screen !!

Is it possible an ICH10 machine will not be able to support older ICH5 or ICH7 XP image, all the same the storage drivers into the "DriverDB" of  DeployAnywhere ??

09-19-2010 04:26 AM

Thanks Brandon.

I'm spending my sat night at work preparing next week laptop deployments. Your instructions provided excellent information for anyone doing XP deployments.

This was great help for me too.

09-09-2010 12:59 AM

    PCI\VEN_8086&DEV_2682&CC_0104=%systemdrive%\windows\system32\drivers\IMver9\iastor.inf ; Intel(R) ESB2 SATA RAID Controller
    PCI\VEN_8086&DEV_27C3&CC_0104=%systemdrive%\windows\system32\drivers\IMver9\iastor.inf ; Intel(R) ICH7R/DH SATA RAID Controller
    PCI\VEN_8086&DEV_27C6&CC_0104=%systemdrive%\windows\system32\drivers\IMver9\iastor.inf ; Intel(R) ICH7MDH SATA RAID Controller
    PCI\VEN_8086&DEV_2822&CC_0104=%systemdrive%\windows\system32\drivers\IMver9\iastor.inf ; Intel(R) ICH8R/ICH9R/ICH10R/DO/5 Series/3400 Series SATA RAID Controller
    PCI\VEN_8086&DEV_282A&CC_0104=%systemdrive%\windows\system32\drivers\IMver9\iastor.inf ; Intel(R) ICH8M-E/ICH9M-E/5 Series SATA RAID Controller
    PCI\VEN_8086&DEV_2681&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ESB2 SATA AHCI Controller
    PCI\VEN_8086&DEV_27C1&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH7R/DH SATA AHCI Controller
    PCI\VEN_8086&DEV_27C5&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH7M/MDH SATA AHCI Controller
    PCI\VEN_8086&DEV_2821&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH8R/DH/DO SATA AHCI Controller
    PCI\VEN_8086&DEV_2829&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH8M-E/M SATA AHCI Controller
    PCI\VEN_8086&DEV_2922&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH9R/DO/DH SATA AHCI Controller
    PCI\VEN_8086&DEV_2929&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH9M-E/M SATA AHCI Controller
    PCI\VEN_8086&DEV_3A02&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH10D/DO SATA AHCI Controller
    PCI\VEN_8086&DEV_3A22&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) ICH10R SATA AHCI Controller
    PCI\VEN_8086&DEV_3B29&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) 5 Series 4 Port SATA AHCI Controller
    PCI\VEN_8086&DEV_3B2F&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) 5 Series 6 Port SATA AHCI Controller
    PCI\VEN_8086&DEV_3B22&CC_0106=%systemdrive%\windows\system32\drivers\IMver9\iaahci.inf ; Intel(R) 5 Series/3400 Series SATA AHCI Controller

It's OK for me.

03-04-2010 03:17 PM

Thank you for updating this with the latest information.

EDIT: I have made the updated changes to the article itself now.

03-03-2010 03:33 PM

Had to add a few more lines with the new HP 6540 and 6440b notebooks. The AHCI on the Intel website has gone to version

The 3 new devices are:

PCI\VEN_8086&DEV_3B29&CC_0106=%systemdrive%\drivers\SATA\IMver9\iaahci.inf ; Intel(R) PCHM SATA AHCI Controller 4 Port
PCI\VEN_8086&DEV_3B2F&CC_0106=%systemdrive%\drivers\SATA\IMver9\iaahci.inf ; Intel(R) PCHM SATA AHCI Controller 6 Port
PCI\VEN_8086&DEV_3B22&CC_0106=%systemdrive%\drivers\SATA\IMver9\iaahci.inf ; Intel(R) PCH SATA AHCI Controller

While we are at this, if you experience issues duing the Sysprep reseal part after adding the Mass Storage lines, make sure the OP's post lines for IMver5 drivers is taken out, because most of you prob wont be using those older drivers by now. If the drivers do not exist you will get a "unable to write to registry" error while executing the Sysprep process.

12-17-2009 01:03 PM

I'm a little confused about what you're talking about specifically.

If it's in regards to switching over from ATA to AHCI then my reasons center around the fact that all our 760s come preconfigured that way from Dell (this might change if I have my way). To make matter more complicated, we already have several hundred deployed in the neterprise with this configuration too.

If you're talking about going from AHCI to ATA then I can only tell you that I'm trying to be as thorough as possible and test everything scenario. Some of our admins in other regions do slightly pointless things at times (like swtich from AHCI to ATA) and I would like to try to be as proactive as possible in finding a solution before it happens.

Plus I'm a geek and find it slightly entertaining and rewarding trying figuring out this stuff. :P

12-17-2009 12:54 PM

ah-HA! The Imaging demons are trying to stop my process yet again, but I think I've got the issue licked. Now that the machine is running in AHCI mode the GCS (Ghost Console Server) is coming up with the following error when pushing through WinPE:

Drivers could not be found in the PreOS for the following devices:
Manufacturer: "Intel", Description: "Intel(R) ICH10D/DO SATA AHCI Controller"...

No problemo right? Just switch over to DOS mode for pushing the machine and it should work! Nope. That actually could work but not in the case with a Optiplex 760 (and GCS v2.5). See, the PCDOS driver set doesnt include the appropriate NIC drivers so using WinPE is essential.

What you now need to do it inject the same drivers from above into the WinPE environment using the Ghost Boot Wizard (dont forget to click on the storage tab)! :)

12-17-2009 12:42 PM

What I don't get is why would you do this? If you can utilize the AHCI drivers why would you change it?

If you build the drivers into the image you should be able to change from AHCI to IDE once Windows is fully installed. I believe I confirmed this during my testing. Doing the reverse (IDE > AHCI) may not work. I would assume AHCI <-> ATA may not work either.

Note: I captured my image on a legacy IDE machine

12-16-2009 01:32 PM

I think it sounds like a decent process, but it seems like (in my opinon only) that this requires quite a bit of interaction on your part. Most of the processes\requests I see are for people who want as little as interaction as possible. I would also be a bit concerned that you might have system instability, but that is just a guess (and based only on gut feeling).

Keep us updated, you could even post that as an article for others to see!

12-16-2009 01:07 PM

Ok I think I've got this thing figured out.

You can image the machine configured for either mode (AHCI or ATA), its what you have it set to when the machine is done being pushed. You know how the machine needs to reboot after it's done pushing? This is when you need to set it to either mode and the mini-setup process will configure it either way.

Also, I would like to add that if the 760 is configured for ATA and you want to switch it over to AHCI you can do so by downloading the Intel Matrix drivers and update them via the device manager. Here are the notes for future refference:

Driver download (like in the OP):*+XP+Professional
This should include the following files:
06/15/2009  07:22 AM             8,654
06/04/2009  06:33 PM             8,773 iaAHCI.inf
06/15/2009  07:52 AM             7,962
06/04/2009  06:33 PM             7,629 iaStor.inf
06/04/2009  06:43 PM           330,264 IaStor.sys
06/04/2009  06:33 PM             5,526 TXTSETUP.OEM 

Installing the Drivers:

  • Locate “Intel® ICH10 Family 4 port serial ATA storage controller 1” in device manager’s IDE ATA/ATAPI controller section.
  • Right click on the controller and click Update Driver from the context menu. When the Hardware Update Wizard appears, click “No, not this time” and click Next
  • Click “Install from a list or specific location” then click Next.
  • Click “Don’t search, I will choose driver to install” and click Next.
  • Click “Have disk” and browse to \d\o\ich10ahci, the location of the ICH10 SATA AHCI Controller drivers.
  • Click iaStor.inf, then click OK
  • From the list of drivers, click ICH10D/DO SATA AHCI controller and click Next.
  • Click Next on the warning message.
  • Click Finish, then click Yes when asked to restart.
  • When the machine is booting, go into setup and change SATA Operation from ATA to AHCI.

12-16-2009 12:34 PM

if it was captured on an AHCI or ATA set system, you can't use the image on a system set the other way. At least, that's what I've seen.

12-16-2009 11:27 AM

Hi Bradon,

I tried to send you a PM but it appears these boards dont support that fuction unfortunately. I have a few questions (for anyone really) and hope to find a solution to my issue.

I updated my image with your instructions and sealed our image. I was under the impressing that one would be able to simpley switch back and forth between the two modes (AHCI/ATA) in the BIOS and windows would detect the correct drivers--but I think this is wrong? In my experience this is the case.

Switching over to AHCI can be done two ways:
- In the BIOS after a push and before the mini-setup process?
- In Windows after an ATA push via a driver update?

Once you switch over to AHCI you cannot go back--correct?

Sorry that this is a jumbled mass of a post. Thanks!


06-26-2009 03:16 PM

  • Same device ID and classification
The drivers themselves have a newer date (February, as opposed to October I think), but I don't see ANY new devices at all.

06-26-2009 02:39 PM

Thanks Jim. I believe I looked through the .inf's and I didn't see any additional devices. The 88 version can pretty much be substitued for the 87 version. I will update the article if I get some time once I have confirmed this.

06-24-2009 10:29 AM

however there is an new IATA88enu.exe available from Intel. Intel Download Center

Thans again Brandon!

03-04-2009 07:17 AM

Thanks Brandon, I'll give that article a go...  We are more than likely to move away from injecting these types of drivers in time, but looking for a quick-ish fix in the mean time...  thanks again.

03-03-2009 02:00 PM

Hey mistascott,

So you aren't making a new image? These steps are for making a new gold image. The reason for this is discussed at the end referring to the CriticalDeviceDatabase. If you want to inject drivers you will have to check out the link in the Note. I do not prefer that method myself. You will need a new image for the steps in this article.

03-03-2009 12:26 PM

Hi Brandon,


Really good detail in this article.  Thanks!  I'm still having difficulty with this process.  Using an XP SP1 image and 'injecting' these files post image deployment before the machine starts intothe Sysprep answer files.  Have modified the sysprep as suggested, specifying the exact location the files are being copied to, but not loading up and getting the BSOD.  My understanding is I don't need ot 'seal' anything as the image has not been modified.  any thoughts???  Thanks!

02-20-2009 10:48 AM

Great article.
I found the following to be more straight forward then some of the other SATA posts I have seen on Juice.
I was able to use the second method listed under Windows PE 2005 to update a Bart's PE disk. Will follow the same to update the Win PE for DS as well.

Related Entries and Links

No Related Resource entered.