IDE to AHCI transition question

ineedh3lp

Distinguished
Jun 19, 2011
18
0
18,510
Before getting a SSD and installing Windows on it, I had Windows installed on a HDD and the SATA ports were set to IDE.
Previously to installing Windows on the SSD, I unplugged all other hard disks and set the SATA ports to AHCI, then installed Windows then plugged the other HDDs back.

Now, if I leave the SATA ports to AHCI and try to boot from the old Windows installation, I get a blue screen instantly.

My question is: do I always have to toggle the SATA ports in BIOS between IDE and AHCI depending on what drive I want to boot from (new SSD or old HDD) or is there a way to leave it to AHCI and have both installations work?

Would modifying the registry on the old Windows installation while in IDE mode work so I can boot without issues in AHCI mode after a restart?
 
Solution
For Windows 7 or Vista you can use a Registry tweak with your HDD-based Windows system so that it will work with the chipset in SATA mode:

1) Run the Registry Editor (regedit.exe)
2) Navigate to Registry Key: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci
3) Set the "Start" value to 0 (zero)
4) Navigate to Registry Key: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Pciide
5) Set the "Start" value to 0 (zero)
6) Shut down
7) Start up again, but before Windows boots go into the BIOS configuration screens and change the disk mode to "AHCI". Save the new BIOS configuration and restart so that Windows boots.

When Windows starts, it will detect the change, load new disk drivers, and do one more reboot to start up with them.
The answer is that it depends on which version of Windows you have on the HDD. It's easy to take a Win7 install from IDE and make it run on AHCI. If it's XP, someone posted some links recently which will help.

So what version of Windows do you have running currently?
 
For Windows 7 or Vista you can use a Registry tweak with your HDD-based Windows system so that it will work with the chipset in SATA mode:

1) Run the Registry Editor (regedit.exe)
2) Navigate to Registry Key: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Msahci
3) Set the "Start" value to 0 (zero)
4) Navigate to Registry Key: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Pciide
5) Set the "Start" value to 0 (zero)
6) Shut down
7) Start up again, but before Windows boots go into the BIOS configuration screens and change the disk mode to "AHCI". Save the new BIOS configuration and restart so that Windows boots.

When Windows starts, it will detect the change, load new disk drivers, and do one more reboot to start up with them.
 
Solution

theworminator

Distinguished
Aug 24, 2006
424
0
18,780


Also, you might want to do a quick check on which hard drive you have, and if it likes AHCI mode. I did the same thing recently, but found out that my Seagate Barracuda 7200.12 doesn't play well with AHCI mode (BSOD and restart on Windows loading). Since I have two controllers on my board (a Marvell SATA 3 and a Intel SATA 2), I simply have my drives on separate controllers, so the SSD can be on AHCI mode and the Seagate can be on IDE.

Edit: Didn't know about sminlal's fix, I should try that on my rig.
 

ineedh3lp

Distinguished
Jun 19, 2011
18
0
18,510
Hello!

Thank you all for your responses. I didn't post back because I didn't restart my computer since I created this thread. Now I'm about to try what sminlal suggested, but before that, there's just a couple more things I want to know and be sure about.

1. Regardless of having a SSD drive or not, what are the advantages of using AHCI mode over IDE when operating with mechanical hard disks?

2. Is there any risk of data corruption when transitioning from IDE to AHCI and back?


(and sorry I didn't mention in the first post, the Windows I'm currently on is Windows 7 installed on a Seagate Barracuda 7200 HDD and I'm still in IDE mode, will tun to AHCI as soon as I get a reply on this.)

Thank you!
 

tecmo34

Administrator
Moderator
1) Here is some more information on AHCI: http://en.wikipedia.org/wiki/Advanced_Host_Controller_Interface
■Basically, AHCI enables Hot Swap features of your hard drive (meaning you can plug in and unplug the drive through a SATA cable and it will be recognized without a reboot) and NCQ. NCQ is beneficial to the performance of a SSD, which is why it is it is recommended.
■There is a long standing believe that AHCI is required for TRIM but when it comes down to it, neither TRIM ( http://en.wikipedia.org/wiki/TRIM ) or AHCI reference each other as a requirement. TRIM is a ATA command from the OS so it will work in IDE or AHCI with Windows 7.... Confirmation from OCZ ( http://www.ocztechnologyforum.com/forum/showthread.php?63521-TRIM-in-W7-AHCI )

2) You should be at no risk of data corruption by switching to IDE to AHCI. The worse case is that it won't boot from AHCI and you'll need to switch back to IDE to get the PC to boot properly. I haven't seen or ran into any issues with what sminlal has suggested.
 

ineedh3lp

Distinguished
Jun 19, 2011
18
0
18,510
Thank you, tecmo34, for providing comprehensive details. I have to say a few words:

I'm already hot-swapping hard disk drives in IDE mode and a hardware rescan is all what's needed for the system to recognize the newly connected HDD.

Yes, I got a blue screen instantly after trying to load the older Windows version with the SATA ports set to AHCI mode (that is after I installed windows on the SSD and didn't change the registry in the old Windows installation). I'll proceed to making the changes now and report back after.

Thank you!
 

Now you tell me! I've been telling people that they need AHCI, quoting the following: "During the installation process, you want to ensure your BIOS are set to AHCI for the SATA controller to enable AHCI. AHCI is needed for native TRIM support utilized by a SSD" which I got from, err, [:wyomingknott] , your guide! Did I misinterpret, or have you found new information since then?

Dang, I've picked up so much new information in the last two months!
 

tecmo34

Administrator
Moderator
@WyomingKnott... This is new information on my part. It has always bothered me in my research / review of TRIM on the true requirement for AHCI. My first draft the information was left out but later on it was added in through editing. It really comes down to TRIM being an ATA command through Windows 7 & not a function of AHCI. As I stated above, I have confirmed this through an OCZ's Engineer.

I'm going to talk with Chris about an edit to remove required and word it such that it is more efficient with AHCI enabled.
 
That's right. I always include the both the PCIIDE and MSAHCI keys because that way the same set of instructions can be used to switch both ways: from AHCI -> IDE and vice versa.
 

Cire0809

Reputable
Aug 19, 2015
1
0
4,510
sminlal has the right answer had to update firmware on my ssd and it would not cooperate with my hdd thanks a million I never could have figured that out on my own.