I believe that you have a driver issue here... Sata Most likely (usually resolved by going to compatibility mode)... Suggest you load the factory image and then look at the Sata drivers that are loaded in windows memory and then copy each of those including .DLL ,SYS Etc... to the correct folders in the PE Image.
It sounds like you need to add the Windows XP drivers into the Windows PE image.
The biggest thing to remember is that unlike Windows XP, Windows PE does not process the contents of the txtsetup.oem file completely. Windows PE will look at the Defaults section only. If the device is not properly mapped here, it will fail out. Windows XP will hit the Components section. If the device is not properly mapped, it will move down to the Components section. This is, right now, the number 1 call generated into the OS deployment queue.
So that is the first thing I would look at.
Also, one thing that is over looked in the txtsetup.oem: In the Defaults section, it should read similar to scsi=iaStor_"device name". If it is a RAID controller, make sure that it says iaStor. If it just a SATA controller, make sure that it says iaAHCI.
Hope this helps.
1 of 1 people found this helpful
You need to embed the Intel Matrix Storage drivers into WinPE.
Backup your ldvpe1.img file.
Extract the Intel Matrix Storage drivers to a temp directory. The file you're interested in is iastor.sys
Open ldvpe1.img using WinImage.
Inject iastor.sys into the \i386\system32\drivers folder in ldvpe1.img
Extract \i386\txtsetup.sif from ldvpe1.img
Edit txtsetup.sif with notepad. In the SCSI.LOAD section add:
Iastor = iastor.sys,4
In the HardwareIdsDatabase section add:
PCI\VEN_8086&DEV_2922&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_282A&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_2829&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_2822&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_2821&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_2682&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_2681&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_27C3&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_27C6&CC_0104 = "iaStor"
PCI\VEN_8086&DEV_27C1&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_27C5&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_2653&CC_0106 = "iaStor"
Save txtsetup.sif and inject it back into ldvpe1.img
Now you're done. Your WinPE image now supports the Intel Matrix Storage device and you should be able to see the hard drive on the Dell 690 when it's running in AHCI mode.
If the core server is on SP2 or later, there is a wizard in the console that does all the manual work for you. You do not need to do the steps that you outlined. All you need to do is modify the txtsetup.oem, then use the wizard to complete the injected and finally deploy the PXE rep.
I'm aware of the wizard and have used it to import other drivers successfully.
The key here is your statement, "All you need to do is modify the txtsetup.oem..". Without knowing what those modification entail, a typical user won't be able to successfully import the drivers.
I didn't say "All you need to do is modify txtsetup.oem". I stated the driver needs to be injected into the Windows PE image, and to make sure that the txtsetup.oem is mapped to the proper device.
I just find it odd that you mentioned the manual process, when using the wizard will ensure a higher chance of success without breaking the ldvpe1.img.
Thanks for the info everyone. I will put these to the test and post once I find the result of your suggestion. I remember something similar to this when I used another imaging product. The downloaded driver for a SATA drive had a typo in the txtsetup.oem file that turned out to solve the problem for me. Thanks again.
I have a question though:
Do I need the Intel storage matrix drivers, as this is not an intel controller?
I have attached the txtsetup.oem. DO I still need to do the intel driver as JanC suggested, or do I need to enter the info listed here?
Edited by: edwards
txtsetup.oem 4.1 K
You only need to inject the driver that is being used. If it is not an Intel Matrix adapter, you do not need to inject it, as it takes up precious space in the image.
So, in answer to your question, find out exactly what device your machine is using, open up the txtsetup.oem, find the device in the Components section, copy the ID for it for it (the iaStor or iaAHCI portion of it) and paste that in the Defaults section right after scsi=.
Then, open the LD console, go to OSD and then click on the Manage Driver's button that's there. Just follow the wizard here, it's pretty self explanatory. Once you finish, you'll want to re-deploy your PXE rep.
Ok, so, I made the changes that JanC suggested. However, I noticed the .sys file that it called was symmpi.sys. There was already a file with this name in the image. I deleted this file from the winPE boot image and added the newer file from the driver downloaded from Dell and saved to the image. It was then able to see the drive and image the machine.
Thanks for pointing me in the right direction all.
I had been pulling my hair out all day trying to get an image of my Lenovo T61. I kept getting a message about not being able to find iastor.sys. I had tried editing the txtsetup.oem file several times and adding the driver through LDMS but it just would not work.
I used the method you described above and it worked the first time. My image is now being captured, just have to wait another 1 hour 27 minutes for that to happen.
Anyway, thanks for your solution posted here, it sure saved what little hair I have left.