Instantly share code, notes, and snippets.

Embed
What would you like to do?
Switching between AHCI and RAID on the Dell XPS 15 (9560)

Switching between AHCI and RAID on the Dell XPS 15 (9560)

This guide likely applies to other models and, potentially, even laptops from other OEMs that have NVME drives. However, I've only tested this on my Dell XPS 15 (9560) with the OEM Windows installation from the Signature Edition model.

Switching from RAID to AHCI

Switching from RAID to AHCI is significantly simpler than switching from AHCI to RAID. All that's needed is a successful boot to Safe Mode.

  1. To set the default boot mode to Safe Mode, use msconfig.exe or open an admin cmd/PowerShell window and run:

    bcdedit /set '{current}' safeboot minimal
  2. Reboot and hit F2 to enter the BIOS.

  3. Change the SATA mode to AHCI.

  4. Save and reboot.

  5. After Windows successfully boots into Safe Mode, disable Safe Mode with msconfig.exe or open an admin cmd/PowerShell window and run:

    bcdedit /deletevalue '{current}' safeboot
  6. Reboot one last time. If you open the Device Manager, there should now be a Standard NVM Express Controller device under Storage Controllers.

Switching from AHCI to RAID

Switching from AHCI to RAID is complicated and involves fiddling with the registry so that the RAID controller exists in the PnP database. Make sure you have a backup of your installation before proceeding.

NOTE: I've tested this under the OEM Windows 10 installation only.

  1. Before starting, ensure that the Intel RST drivers from the Dell support page are installed.

  2. Download DevManView and extract the ZIP file. This will be used to find the registry keys for the RAID controller because Device Manager is not available in the Recovery/WinPE environment.

  3. Hold down shift and click the Reboot button in the start menu. This will bring up the Advanced Startup menu on the next boot.

  4. Hit F2 to enter the BIOS when the system reboots.

  5. Change the SATA mode to RAID.

  6. Save and reboot.

  7. When the Advanced Startup menu appears, select the Command Prompt. It may ask for a login.

  8. The Recovery/WinPE environment contains its own copy of the Intel RST drivers so it is possible to access the Windows installation in RAID mode. Run DevManView from the Command Prompt to get a list of all the devices. For example:

    C:\Users\chenxiaolong\Downloads\devmanview-x64\DevManView.exe
  9. Hit Ctrl + F and search for RAID. There should be a device named Intel Chipset SATA RAID Controller.

  10. Right click the device and click Open in RegEdit. It should open regedit.exe and nagivate to a path similar to the following:

    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\PCI\VEN_8086&DEV_282A&SUBSYS_07BE1028&REV_31\3&11583659&0&B8
    
  11. Open notepad.exe in the Command Prompt and copy/paste the value of ClassGUID from the registry. It will be needed later. In my case, the GUID was:

    {4d36e97b-e325-11ce-bfc1-08002be10318}
    
  12. Right click the key in the treeview and export it to a file named intel_raid_pnp.reg.

  13. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\@ClassGUID@\0000 where @ClassGUID@ is the ClassGUID value obtained in step 11.

  14. Right click the key in the treeview and export it to a file named intel_raid_class.reg.

  15. At this point, we have all the registry keys, taken from the Recovery environment, almost ready to be applied to the Windows installation. There are just a few changes that need to be made because the .inf file referenced may not match what's in the Windows installation.

  16. Load the SYSTEM registry hive from the Windows installation. In the treeview, click on HKEY_LOCAL_MACHINE and select File -> Load Hive....

  17. Select C:\Windows\system32\config\system and name the key INTEL_RAID_FIX.

  18. Nagivate to HKEY_LOCAL_MACHINE\SYSTEM\DriverDatabase\DriverPackages, find the key that begins with iastorac.inf_, and make a note of the (Default) value. This is the .inf file for the Intel RST driver in the Recovery environment. In my case, this was oem21.inf.

  19. Nagivate to HKEY_LOCAL_MACHINE\INTEL_RAID_FIX\DriverDatabase\DriverPackages, find the key that begins with iastorac.inf_, and make a note of the (Default) value. This is the .inf file for the Intel RST driver on the Windows installation. In my case, this was oem44.inf.

  20. Open both of the exported .reg files (intel_raid_pnp.reg and intel_raid_class.reg) and find and replace every instance of the following strings in both files:

  • \SYSTEM\ -> \INTEL_RAID_FIX\
  • Value from step 18 -> Value from step 19 (eg. oem21.inf -> oem44.inf in my case)
  1. Save and close the .reg files.

  2. The registry changes are now ready to be merged. In the File -> Open dialog of Notepad, right click each of the .reg files and click Merge.

  3. Navigate to the paths in steps 10 and 13, but change the location in the address bar from \SYSTEM\ to \INTEL_RAID_FIX\. Verify that the correct .inf file is being referenced in the values. If the values are incorrect, please follow the instructions carefully, starting from step 10 again.

  4. Navigate to HKEY_LOCAL_MACHINE\INTEL_RAID_FIX and select File -> Unload Hive....

  5. Set the default boot mode to Safe Mode by running the following command:

    bcdedit /set '{default}' safeboot minimal
  6. Close all of the windows and reboot. With any luck, Windows will successfully boot into Safe Mode.

  7. After Windows successfully boots into Safe Mode, disable Safe Mode with msconfig.exe or open an admin cmd/PowerShell window and run:

    bcdedit /deletevalue '{current}' safeboot
  8. Reboot one last time. If you open the Device Manager, there should now be an Intel Chipset SATA RAID Controller device under Storage Controllers.

  9. It may be worth reinstalling/updating Intel RST from the Dell support page to ensure that everything is in a consistent state.

@TestSmirk

This comment has been minimized.

TestSmirk commented Jan 3, 2018

hi have you test this script on your Xps?

@Firefishy

This comment has been minimized.

Firefishy commented May 17, 2018

Thank you. 👍

@edmondklai

This comment has been minimized.

edmondklai commented May 24, 2018

Tested on Dell Precision 7720, to switch from RAID to AHCI and it works. Thanks!

@tranlethaison

This comment has been minimized.

tranlethaison commented Jul 8, 2018

Thank you very much!
Tested on Dell Inspiron 15 7577 with NVMe TOSHIBA SSD, to switch from RAID to AHCI and it works.

@itsminht

This comment has been minimized.

itsminht commented Aug 1, 2018

Is there an easier way to switch from AHCI back to RAID?

@davibusanello

This comment has been minimized.

davibusanello commented Aug 18, 2018

For Switching from RAID to AHCI works on Dell Inspiron 15 5570 (Model 2018) with NVMe Kingston A1000 👍

@gregd

This comment has been minimized.

gregd commented Aug 23, 2018

Thanks! Minor correction, on cmd I had to enter bcdedit /set {current} safeboot minimal without apostrophes. I guess apostrophes are needed for PowerShell.

@php4umagento

This comment has been minimized.

php4umagento commented Aug 31, 2018

Tested on 9560 XPS and it works charm

@biocyberman

This comment has been minimized.

biocyberman commented Sep 20, 2018

Switching form RAID to ACHI worked for me. I fixed that so I can boot both Windows 10 and Ubuntu 18.04.

@workdowg

This comment has been minimized.

workdowg commented Oct 4, 2018

Thank you!!! Confirmed: Inspiron 15 Gaming 7567

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment