Recommended AHCI/RAID and NVMe Drivers

[email protected]_07.31.rar (410.4 KB)

Supplements IaNvme (5.3.0.1005). It does not replace it because the new driver does not include five HWIDs that the older one does (DEV_0B60, DEV_2525, DEV_4140, DEV_F1A8, DEV_FAF0).

And if anyone needs:
[email protected]_07.31.rar (411.9 KB)

@MeatWar
Thanks for the link. These new Intel NVMe drivers v5.3.0.1010 WHQL dated 10/19/2022 are already available within the start post.

1 Like

I think I’ll end up using the generic Phison driver with the WD SN850. The performance increase seems worth it. Thank you @Black6spdZ and @Fernando for posting them!

One caveat is that with this driver, the NVMe drive shows as removable. Since it’s always going to be in use, it can’t be actually be removed anyway, so if accidentally clicked, nothing will happen. It’s just a cosmetic issue. Still, would be nice to have a fix for it. So here it is:

Make NVMe Non-Removable Again

Step 1. Add the registry value to make the container non-removable:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceOverrides\SCSI#DiskNVMe____\LocationPaths\*]
"Removable"=dword:00000000

This only has to be done once. After a reboot, the NVMe drive will no longer show as separate from the computer in Device Manager (Win-X, M) → ViewDevices by container.

Unfortunately, this isn’t enough: the drive will still show as removable in the tray menu, only as part of the computer.

Step 2. Adjust NVMe device capability flags:

@echo off
setlocal
set devcap=96
set devname=NVMe
set reg_prefix=
set reg_sys=HKLM\%reg_prefix%SYSTEM
for /f %%i in ('reg query "%reg_sys%\CurrentControlSet\Enum\SCSI" /f "Capabilities" /s /v ^| find "%devname%" ') ^
do reg add "%%i" /v "Capabilities" /t REG_DWORD /d %devcap% /f

This sets DEVICE_CAPABILITIES to CM_DEVCAP_RAWDEVICEOK (0x40) | CM_DEVCAP_SILENTINSTALL (0x20) = 0x60 = 96, removing CM_DEVCAP_REMOVABLE (0x04) in the process. A more general way would be to read the value first and remove CM_DEVCAP_REMOVABLE from it.

The change takes effect immediately but unfortunately doesn’t persist across reboots.

Step 3. Make the fix persist across reboots:

Copy the above batch file to %SystemRoot%\System32 as NVMeNonRemovableFix.cmd. Then run the following as an Administrator (Win-X, A):

schtasks /create /sc ONSTART /tn "Clear NVMe CM_DEVCAP_REMOVABLE" /tr "NVMeNonRemovableFix.cmd" /ru System /f

This task will run on every startup to clear the flag. This way the tray icon won’t even appear unless another removable device is connected.

The above is based on the assumption that all NVMe drives in your system are non-removable. If that’s not the case, SCSI#DiskNVMe____ in the Registry snippet and the devname=NVMe value in the batch script can be customized to only match a particular device.

Download the three files listed above:
NVMeNonRemovableFix.zip (1.1 KB)

1 Like

[email protected]_09.08

@westlake
Thanks for the link. After having extracted the related driverpack I realized, that it contains new AMD RAID drivers.

@all
Although I had announced to stop the support of this thread, I have tried to update the start post today, because until now there is obviously nobody willing to overtake the task.
Unfortunately the structure of the start post became even worse by the update. Maybe I will try to repair it.

A post was merged into an existing topic: [Guide] Integration of AMD’s AHCI/RAID drivers into a WinXP/W2k3 CD

Just want to be a random guy on the internet to say thank you for this post even if its outdated it was very helpful.
I had an issue trying to upgrade to the sam 980pro from old HP 920ex - the custom drivers for the hp 920ex to fix there speed/temp problem locked itself as default for all new drivers in windows
since Samsung doesn’t allow you to download a nvme driver directly and magician wont work unless there is already a magical driver that sees its nvme in windows. I was SOL if you want to clone windows to them because windows wasn’t updating the drivers because of the hacky driver written for the old hp nvme (generic nvme drivers would crash the system if installed before)
After finding this post I was able to use the Samsung drivers you had and injected them into my cloned drive saving me probably 2 weeks of reinstall software and calling different software companies for new license keys

1 Like

@beefsquatch
Welcome to the Win-RAID Forum and thanks for your feedback!
Enjoy the Forum!
Dieter (alias Fernando)

Faced with the fact that PCIe 3.0 ASM1166 (x2) and ASM1064 (x1) controllers on the Win7 either drive the system into suspended animation with standard Microsoft drivers, or there is no TRIM if these are native ASM drivers, although they write that controllers should work even with XP.
If on Win10 and with 3.3.5.0 drivers and with standard Windows TRIM works, then on Win7
with driver 3.3.3.0 - TRIM does not work. We need an older version of the drivers.
There is only the 3.3.5.0 driver on the network, but it is only for Win8 +, an attempt to install it leads to BSOD.
Is this everything, finish, or are there thoughts on correcting the situation?

I have try to port the win8+ 3.3.5.0 driver work on win7, but it still BSOD even I remove the OS check on the *.sys file.

1 Like

I understood correctly that in the ASMedia 3.3.3.0 driver version, do you also not have TRIM working? And version 3.3.5.0 also does not work with Windows 7.
I do not understand such negligence in the work of ASMedia.

@Propretor
Welcome to the Win-RAID Forum!

Which driver version do you want to try while runninng Win7? I am able to offer older ASMedia v3 platform AHCI/RAID drivers v3.3.2.0, v3.2.1.0 and v3.1.9.0, but I seriously doubt, that they do support TRIM. At that time nobody among the chipset manufacturers took care about TRIM support.
You probably have to decide: Win10 with TRIM support or Win7 without it.
Off topic: Please edit your previous post, if you want to add a missing information. Nobody gets a medal here for the biggest number of posts.
Happy New Year!
Dieter (alias Fernando)

1 Like

Thank you for the answer and thank you for the work of the enthusiast that you are doing! I appreciate it very highly. Version 3.3.3.0 is dated 2020. It is strange enough that at this time both ASM1064 and ASM1166 did not think about SSD and TRIM for new chips. The manufacturer’s drivers for Windows 7 have as many as 3 versions located in the scsi, stahci and stor directories. Why not explain such a variety for the same system?
I tried to figure it out.
STOR - for Windows XP and Windows 7
STAHCI - for Windows 10.
But then what are the other driver versions for?

Without installing Windows drivers with the ASM1064 or ASM1166 controller installed, 30 minutes load!!! Everyone’s like that? Or is it a conflict with other drivers on my system?

What you certainly mean are the sub-folders within the “ASMedia 106x SATA3 AHCI&RAID Drivers & Installer Sets”. Nevertheless the OS will take and install just 1 driver (.sys file), depending on the OS and the HardwareIDs of the on-board ASMedia SATA Controller.
Please keep in mind, that the SATA Controllers can run in different modes (IDE/AHCI/RAID). All of them are managed by 1 driver (.sys file), but with different install configurations (determined by the related .inf file).
It seems, that the ASMedia SATA3 drivers v3.3.5.0 do only support Win8-10 in “AHCI” mode (subfolder “stahci”), whereas the older drivers additionally do support the “RAID” mode (subfolder “stor”). The “scsi” subfolder of the much older drivers have been designed for Server mainboards running W2k3 (that is why they contain a TXTSETUP.OEM file). If you want to know more details, please contact the ASMedia Support.
Don’t be afraid about an interaction of different storage drivers. The Disk Management of all Windows Operating Systems prevents, that a certain Storage Controller uses different storage drivers simultaneously resp. that different storage drivers interfere each other.

1 Like

Hi, I’m SJ,
I’m in about the same position, Win 7 x64 already installed for a decade, I’ve just upgraded CPU, RAM, Motherboard and one hard drive and am now installing WD Black sn770. I also want to try using the generic Phison driver but was wondering if I also have to install the 2 Microsoft fixes KB2990941-v3 and KB3087873-v2? And if so is there a thread here that explains step by step how to install them into my already installed Win 7 x64? Thanks to anyone for suggestions! SJ.

@WDBlackonWin7
Welcome to the Win-Raid Forum!
The NVMe Controller of your WD Black SSD needs just 1 driver and not 2 of them from different manufacturers.
After having connected the NVMe SSD to your mainboard and restarted the PC the Win7 Device Manager will show you a missing driver for a new “Storage Controller”. Then you can do a right-click onto the marked device, choose the option “Update driver” and navigate to the folder, which contains the extracted Phison NVMe driver files.
If the OS Device Management accepts the Phison NVMe driver, there is neither a need for the MS NVMe Hotfix nor makes it sense.
The only problem for you will be to use the NVMe SSD as bootable system drive, because this will require a change of the boot sector. This is not the topic of this thread.
Good luck and Happy New Year!
Dieter (alias Fernando)

@Fernando Thanks for the information!!! I’m wishing myself good luck with this and you a Happy New!!!

SJ

@Fernando Question, after attaching my WD Black my PC installed the device driver by itself, I didn’t get a chance to see what driver in which category was installed! Would it have been the Sata/AHCI/Raid Controller in IDE/ATA/ATAPI or the NVM Express Controller in Storage Controllers? I already had the MS NVMe Hotfix’s installed, do you think I should try uninstalling them and trying just using the Phison NVMe driver? I promise not to hold you responsible for any advice given… LOL!!!

Thanks again for your help! SJ

@WDBlackonWin7
You can easily verify yourself which driver has been installed by the OS.
Run the Device Manager, expand the “Storage Controllers” section, right-click onto the listed NVMe Controller and choose the options “Properties” > “Driver” > “Driver Details”.
If you want to replace the currently in-use driver, don’t try to delete or remove it (it will be needed in case of a failure of the future driver), just install the desired other NVMe driver.

@Fernando Thanks again for your replies!

I have Win 7 booting from my WD Black SN770 using just the MS NVMe Hotfix’s! I’m going to try installing the Phison NVMe driver but then I found this, it looks promising because my WD Dashboard doesn’t show the Temp or Health or SMART info of the WD Black!

Have you read or investigated posts 9, 10, 12 and 13 here…

I’m waiting for my account there to be verified so that I can download that driver, just wondering if you have it and have tried it?

Happy New Year… soon!

CDM_NVME_20221231134646