A lot of users have been messing around with AHCI after installing Windows 8. Some users have reported that they can’t get Windows 8 to install without disabling AHCI. Here at iTD, we haven’t faced any such issue though we have a quick fix for such a situation. It’s very easy to enable AHCI after installing Windows, although it isn’t visible to users as a simple switch on/off option.
What is AHCI and why should you care?
AHCI ( Advanced Host Controller Interface ) offers native command queuing and hot-plugging through SATA host controllers (Serial-ATA) for hard drives. In simpler terms, there’s no reason you shouldn’t use it.
Updated method
A lot of feedback has been given with our visitors sharing different levels of success in the below method. The method had worked for me and some users but an easier version for Windows 8 is below which seems to work for everyone. (Thanks Marcel!)
- In search, write cmd, right click it and run it in administrator mode.
- Type the following command to enable SafeMode boot:
bcdedit /set {current} safeboot minimal - Restart the computer and boot to the system BIOS. This is normally done by pressing the delete key during system boot.
- Update the ATA Drive setting in the BIOS from ATA Mode to AHCI Mode. Save the setting and restart your computer to boot into Windows.
- Windows will boot in SafeMode as per step 2.
- Open the command prompt again by following step 1 and run the following command to remove the SafeMode boot option:
bcdedit /deletevalue {current} safeboot - Restart the computer and boot normally.
While the below instructions don’t work for everyone, I’ll leave them here for those who found it useful.
So, how do you enable it? Do you have to reinstall Windows 8 again?
No. You can enable it without losing any data.
Enabling AHCI in Windows 8 requires going through the registry ( yes, it’s still there! ) but it’s slightly different than how it was done in Windows Vista and Windows 7. You still have to modify a registry key but the key is different now. Follow the guide below to enable AHCI in but make sure that you’ve backed up your data as well as registry, just in case.
- Exit all applications
- Go to the start screen and type in Regedit.
- If you see the UAC (User Account Control) dialogue box, just click continue.
- Locate the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\
- Locate the Error Control entry which should have a value of 3. Right-click on the entry name, select Modify, change the value from 3 to 0 and click OK.
- Open the StartOverride folder and locate an entry named 0 with a value of 3. Change the value to 0 by following the procedure in step 5.
- Restart and enable AHCI in your system BIOS
Quick Alternate Method
If you don’t feel safe playing with your registry like I don’t with a neighbor’s dog ( except that I can handle a messed up registry but not a messed up dog ), I suggest you download the registry file I’ve uploaded here. Just extract the .reg extension file from the compressed folder and run it and restart your computer. Do the obligatory AHCI switch on from your system BIOS and you’re good to go.
Disclaimer
As usual, the author and owner of this website aren’t liable for any loss caused by the above guide. If your neighbor’s dog bites you, your computer blows up or hard drive refuses to work, I hereby take no liability. Of course, if you say please, I’ll be more than happy to help. :)
Update: updated with some input from Lyrad Kcirhor, thanks!
Update for Windows 10 users: As commented below by gapooter, this method also works if you want to enable AHCI in Windows 10. Just follow the 2nd method of editing the registry and ensure you make a backup before proceeding.
PS : OP, I’m certain it would be greatly appreciated by many if you updated the reg file with the correct ImagePath value and removing the DriverPackageId value (not required).
Cheers.
Excellent solution. Worked perfectly for me and stoped those boot error or hal.dll problems. My performance score for my new SSD jumped from 7.4 to 8.0 with AHCI.
Many thanks !
Great instruction, just upgraded my E4300 with an SSD, reinstalled W8Pro and obviously failed to set AHCI. Had to search quite a bit until I found this, the instructions for the three register setttings worked like a charm. Start regedit, Set registry, reboot, set AHCI, done!
Thank you so much!
Thanks for this write-up! All this time I’ve been running a newer SATA III Intel SSDSC2MH120A2 drive on and holder EVGA X58 SLI motherboard in SATA II / IDE mode. I only found out I should update my AHCI settings in the BIOS after reading about the setting in another blog, but their write-up wasn’t intended for folks making the update after Windows is installed (modifying the BIOS without the registry updates above only results in pre-load crashing). A few hours later I stumbled across your post about making registry entries and voilà! My Windows 8 Performance Index score was “6.9” before, now it’s “7.6”.
Can someone help me here. I have Windows 8 pro 32-bit. My Bios only has – SATA Emulation IDE or Raid to choose from – I’m in IDE Mode.. No mention of ATA anywhere in the BIOS. In Regedit I don’t have “StartOverride sub-key set” <should this be added by hand? but I do have the storahci key with the "ErrorControl" REG_DWord set at 3 and a "start" REG_DWord set at 0.
Tried to update BIOS but to no avail.
Thanks for any info
James
worked fine, thank you
Just to potentially help out any others:
Previously had Blu-Ray + HDD on Win 8.1 in IDE mode. Anytime I went to AHCI, I had issues. Recently got an 840 SSD and wanted to activate AHCI. If I did, then I had massive slowdowns, Samsung Magician was saying I wasn’t on AHCI, etc. I took a look at my Motherboard+Manual, and saw that there was a second set of SATA ports across the board. I have 6 SATA III connectors, and another 2 SATA III connectors in a different area controlled by a different controller. I moved my Blu Ray to the other controller section, set in the bios to have AHCI on main, and IDE on secondary. Blazing fast now, additionally by following tweaks in this guide + comments. Turns out my Blu Ray was SATA I speeds and were really causing some issues XD
Hello, does this work for 8.1? It was recommended to solve freezing problems with mouse still moveable etc (a common problem I guess with 8.1 that at first everyone was saying could only be fixed if updated all drivers- but I dont know how to do that and I got this computer yesterday so Id think it was all updated…)I dont know how to do any of this stuff- no idea what it means ; ) anyway if anyone knows let me know…thanks!
Worked fine ;) Thanks a lot :)
I recently installed a Samsung SSD on a Windows 8.1 PC but I need to enable AHCI mode. I have followed the threads above but with all the registry edits recommended and the ‘it didn’t work….try this’ what is the final correct registry edits that I need? Can someone provide a more or less complete working solution?
Thanks for the article!
One question: what does the name “0” of the StartOverride sub-key means?
I see on my setup that I have few keys “2, 3, 4 and 5” each equal to 3 in storahci.
Thanks,
Wojtek
Just kind of an FYI that might help. I am using windows 8.1 that was an upgrade from WIndows Vista. When I tried to do the quick method above the bcdedit worked and windows was booting in safe mode, however bcdedit did not work in safe mode, possibly due to being an upgrade version of windows? regardless if this happens to you just go to start > Run > MSCONFIG. Click the boot tab up top and take the check out of safe boot. Restart and problem solved.
You could probably do the same to put windows 8 into safeboot minimal skipping the bcdedit all together as it is an option. however I got everything working and am now in AHCI. Thanks for the great post!
the first solution didn’t work (the minimal boot solution). However, the second solution (the registry tweak) worked like a charm. Perfect. thanks.
To my amazement, the safe mode method worked without a hitch. MSI 760gma p34(fx) mobo with an older seagate 250gb hdd (lol I know it’s tiny haha). Somebody should give this Marcel a medal.
First method worked for me. Thank you
I just did this for Windows 10! Used the 2nd method of editing the registry. Had to search for the StartOverride folder under storahci to edit that one.
I was able to do this in Windows 10 using the safeboot method. Worked without issue!
Windows 8 64 bit:
– step 6 fails however I managed to change the safeboot option in msconfig while Win was in safemode.
Safeboot method worked for me, used msconfig.exe to change to the safe boot option minimal, same again in safe mode, msconfig.exe uncheck it…Used in both Win10 and Win8.1
I am new to this site but can’t decided if this applies to MacBook pros? There is no BIOS menu that I know of.
This is not needed on a Mac