39

I had my drive controller configured for IDE when I installed Windows 7. This didn't change when I upgraded to Windows 8.

I now need to enable AHCI, but doing so causes Windows to fail to start. It doesn't know how to automatically fix the problem.

I was able to use Regedit from the recovery area, in order to try using this fix that worked for Vista. That key is missing in Windows 8, however.

I read that the relevant key is now in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci. But my settings already match the changes they suggest making.

How can I get Windows to boot after enabling AHCI in the BIOS?

3
  • 2
    On that site a comment reads: "I had that value default 0 so that’s not enought. There is StartOverride tree in Storahci. That value need to change to 0. After restart it works! (remember to change ACHI in bios tho)." Have you tried that? Sep 7, 2012 at 4:13
  • @NathanAdams Yes, thanks. I just noticed that a few minutes ago, and I'm typing from a successful boot right now. Sep 7, 2012 at 4:15
  • Same story for win10 Apr 17, 2020 at 1:41

3 Answers 3

46

Using regedit, set the key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci
"Error Control": DWORD = 0

and also in the StartOverride tree in storahci. That value needs to be changed to 0:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\StartOverride
"0": DWORD = 0

After restarting it should work. You can also delete the whole StartOverride block.

Note: If you don't switch to AHCI on the very next boot, the system will create a new StartOverride value (of 3) and you'll have to repeat the process.

7
  • Interestingly my WEI disk score went up 0.4 points after enabling AHCI. Sep 7, 2012 at 4:21
  • StartOverride seems to be new in Win8. It actually flip flops itself with IASTORV once windows is loaded with AHCI - meaning I don't have startoverride within storahci anymore after changing it, now it is in iastorv and I suppose i could change it back to RAID that way.
    – Dennis G
    Jan 9, 2013 at 14:56
  • 3
    Worked for me, on Win8.1
    – luison
    Oct 4, 2014 at 11:30
  • @Louis That's because AHCI is much faster than IDE.
    – AStopher
    May 30, 2015 at 13:22
  • @cybermonkey Not exactly. AHCI doesn't really have a speed, but it has features that only worked on the SATA bus. IDE was a bus too and had speeds, but I think the difference with running in AHCI mode verse UDMA or whatever it emulated was that AHCI had better features, queuing comes to mind. May 30, 2015 at 13:38
32

I found the solution without having to do a manual registry hack!

  1. Click the Restart button with Shift key and follow the prompts for "Advanced Options" through several screens. Eventually, you end up at a screen that tells you upon reboot you will be able to so many things including starting in Safe Mode. The only button will be a "Restart" button on this screen.
  2. Reboot. BEFORE Windows starts, enter BIOS setup.
  3. Change the SATA mode in BIOS to whatever you would like: IDE, AHCI or RAID(XHD).
  4. Boot into Windows. Step 1 configured Windows to ask you what type of boot options you would like to use. #4 is Safe Mode. This will get the proper drivers for the BIOD setting loaded on the system, into memory, and the registry configured correctly for you. No other configuration is required.
  5. Reboot Windows in normal mode. Windows will use the configuration that it automatically self-fixed in step 4.
4
  • Result. Registry hacking did nothing for me - this worked first time. Thanks! Dec 8, 2012 at 20:23
  • Conversely, this did nothing for me but the registry hacking worked!
    – Alex Angas
    Mar 11, 2014 at 5:04
  • Appears to have worked for me. However, I did it from the log on screen on Windows 10 and it was...hidden. Power > Shift-Restart > New "Choose an option screen" > select Troubleshoot > Advanced options > Startup Settings > Restart. Then, after going into the BIOS, on the actual restart, select 4 or F4 for Safe Mode. Taken from Microsoft Support Mar 29, 2017 at 4:38
  • Win 8.1, Shift+Restart just restarted the system. Jun 20, 2020 at 15:23
18

Run msconfig (right click far left bottom corner of desktop then left click run, type msconfig).

Click boot tab, mark safe boot, restart, change to AHCI in BIOS, boot, Windows boots in safe mode.

Run msconfig again, boot tab unmark safe boot, restart PC.

PC works fine. Don't mess with regedit you only need to boot in safe mode to fix this, very simple.

6
  • 3
    This worked, clearly the simplest method !
    – Manu
    Aug 18, 2013 at 14:16
  • 2
    This is exactly the same solution as keepon's one, you're just getting into safe mode in a different way. I think this should be a comment.
    – gronostaj
    Oct 24, 2013 at 18:13
  • 1
    Either way this is what i did and it worked for me :) Sep 6, 2014 at 18:13
  • I tried this, without success. Upon rebooting, after configuring safe mode boot, I got a flash of large sad smiley (Windows 8.1). Had to set the BIOS back to IDE mode.
    – thomthom
    Sep 20, 2014 at 18:10
  • I can confirm this solution to works for Windows 10 64bit version 1024. It is always better to let windows handle managing drivers. Simple and clean solution ;) Thanks. Mar 11, 2018 at 10:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .