Jump to content
LaptopVideo2Go Forums

How to mod and sign NVIDIA drivers with TPU NVCleanstall


Recommended Posts

How to use NVCleanstall 1.9.1 or later for driver modding and signing

Unpack driver with 7zip

Open NVCleanstall

  • select "use driver files from disk"
  • select components to install
  • select "add hardware support" under installation tweaks
  • select name, then ID (the hex number from the right)
  • select a GPU as template which is most similar to the target GPU

stefan123-20210331-192420.gif


confirm success in device manager

stefan124-20210331-192850.gif


Mobile Kepler users please review Support Plan for Kepler-series GeForce GPUs for notebooks .

"Binary compatibility within one GPU generation can be guaranteed under certain conditions because they share the basic instruction set. This is the case between two GPU versions that do not show functional differences at all (for instance when one version is a scaled down version of the other)"
Source: CUDA Compiler Driver NVCC Reference Guide

Technically this means: mobile support has been arbitrarily removed from R430+ installer files (INF), so a modded INF is mandatory to use R430+ drivers with mobile Kepler GPUs


Modded INF is also mandatory if you replaced your notebook GPU with an aftermarket model, or if you flashed the wrong system BIOS, or if after flashing the device ID magically changed from primary to secondary.
Each messes up the SUBSYS_ID

"Both PNP ID and ACPI ID consist of two parts: a Vendor ID, followed by a product identifier. Each manufacturer of these devices must be assigned an industry-unique Vendor ID... The Device Manufacturer is responsible for assigning this identifier to each individual product MODEL. Once an identifier is assigned to a product model, it must not be assigned to any other product model manufactured by the same company (that is, that uses the same Vendor ID)." 
Source: PNP ID and ACPI ID Registry


Fermi GeForce users please review Support Plan for Fermi series GeForce GPUs

Read the passage above about binary compability.
Unfortunately Fermi support (SM 2.0) has been physically removed in R396+ drivers, as documented in CUDA 9.2 release notes
No dice modding them.

However you can install 391.35 Game Ready first, then latest Fermi Quadro driver on top of it.
Do not tick "clean installation", do not use DDU or similar.
This way you should keep Game Ready features like legacy PhysX, GFE and 3D vision.

Link to post
Share on other sites
  • StefanG3D changed the title to How to mod and sign NVIDIA drivers with TPU NVCleanstall
  • StefanG3D pinned and locked this topic

Alternate method: NVCleanstall accepts externally modded INFs

This comes in handy if you have more than one GPU not supported by the driver

Example:

Download 461.92 Quadro

Unpack with 7zip

Open nv_dispwi.inf in your favourite editor.
Wipe the list of GPUs and inject your GPUs (in this example a GeForce and a Tesla prototype) at following locations

[NVIDIA_Devices.NTamd64.10.0...17098]
%NVIDIA_DEV.17C2% = Section036, PCI\VEN_10DE&DEV_17C2
%NVIDIA_DEV.1B39% = Section049, PCI\VEN_10DE&DEV_1B39


[Strings]
DiskID1 = "NVIDIA Windows 10 (64 bit) Driver Library Installation Disk 1"
FLG_ADDREG_KEYONLY = 0x00000010
NVIDIA = "NVIDIA"
NVIDIA_A = "NVIDIA"
NVIDIA_DEV.17C2 = "NVIDIA GeForce GTX TITAN X"
NVIDIA_DEV.1B39 = "NVIDIA Tesla P10"
REG_BINARY = 0x00000001
REG_DWORD = 0x00010001
REG_EXPAND_SZ = 0x00020000
REG_MULTI_SZ = 0x00010000
REG_SZ = 0x00000000
REG_SZ_APPEND = 0x00010008

Save nv_dispwi.inf

 



Open NVCleanstall
select "use driver files from disk"
select components to install
ignore "add hardware support" (!)

 

Link to post
Share on other sites
  • StefanG3D unlocked this topic
  • 3 weeks later...
silverbullettt
On 4/1/2021 at 10:20 PM, StefanG3D said:

Alternate method: NVCleanstall accepts externally modded INFs

This comes in handy if you have more than one GPU not supported by the driver

Example:

Download 461.92 Quadro

Unpack with 7zip

Open nv_dispwi.inf in your favourite editor.
Wipe the list of GPUs and inject your GPUs (in this example a GeForce and a Tesla prototype) at following locations

[NVIDIA_Devices.NTamd64.10.0...17098]
%NVIDIA_DEV.17C2% = Section036, PCI\VEN_10DE&DEV_17C2
%NVIDIA_DEV.1B39% = Section049, PCI\VEN_10DE&DEV_1B39


[Strings]
DiskID1 = "NVIDIA Windows 10 (64 bit) Driver Library Installation Disk 1"
FLG_ADDREG_KEYONLY = 0x00000010
NVIDIA = "NVIDIA"
NVIDIA_A = "NVIDIA"
NVIDIA_DEV.17C2 = "NVIDIA GeForce GTX TITAN X"
NVIDIA_DEV.1B39 = "NVIDIA Tesla P10"
REG_BINARY = 0x00000001
REG_DWORD = 0x00010001
REG_EXPAND_SZ = 0x00020000
REG_MULTI_SZ = 0x00010000
REG_SZ = 0x00000000
REG_SZ_APPEND = 0x00010008

Save nv_dispwi.inf

 



Open NVCleanstall
select "use driver files from disk"
select components to install
ignore "add hardware support" (!)

 

Hello,

 

- I downloaded and unpacked : 466.11-quadro-rtx-desktop-notebook-win10-64bit-international-dch-whql

I Wiped the list of GPUs and inject my GPU at following locations

[NVIDIA_Devices.NTamd64.10.0...17098]
%NVIDIA_DEV.11E3% = win10amobile,       PCI\VEN_10DE&DEV_11E3


[Strings]
DiskID1 = "NVIDIA Windows 10 (64 bit) Driver Library Installation Disk 1"
FLG_ADDREG_KEYONLY = 0x00000010
NVIDIA = "NVIDIA"
NVIDIA_A = "NVIDIA"
NVIDIA_DEV.11E3 = "NVIDIA GeForce GTX 760M"
REG_BINARY = 0x00000001
REG_DWORD = 0x00010001
REG_DWORD_NO_CLOBBER = 0x00010003
REG_EXPAND_SZ = 0x00020000
REG_MULTI_SZ = 0x00010000
REG_SZ = 0x00000000
REG_SZ_APPEND = 0x00010008

 

 

I did it a clean install after DDU + disable Driver Signature Enforcement.

fails at the end.

Link to post
Share on other sites
16 hours ago, silverbullettt said:

[NVIDIA_Devices.NTamd64.10.0...17098]
%NVIDIA_DEV.11E3% = win10amobile,       PCI\VEN_10DE&DEV_11E3

You took a wrong section from another INF , correct is for nv_dispi.inf:

%NVIDIA_DEV.11E3% = Section002,       PCI\VEN_10DE&DEV_11E3

Otherwise do it like that:

stefan146-20210426-171147.gif

Link to post
Share on other sites
silverbullettt

It worked!

 

what I did:

- I downloaded and unpacked GTX 980M version 466.11.

-  open and edit the nv_dispi.inf by adding NVIDIA_DEV.11E3 = "NVIDIA GeForce GTX 760M" at the end of [Strings].

And adding your line %NVIDIA_DEV.11E3% = Section002,       PCI\VEN_10DE&DEV_11E3 at the end of [NVIDIA_Devices.NTamd64.10.0...17098].

- I went to safe mod and run the revo to uninstall the old version, then used DDU to clean up.

- Restart the laptop and disable Driver Signature Enforcement.

- Run the drivers setup.exe normal, and installed.

- Right click to open the control panel, and Accept and agree, and the panel opened.

 

Thanks for your help.

Now time to test some games hehe

 

 

EDIT:

** Should I install the driver throw NVCleanstall? will it be better?

Edited by silverbullettt
Link to post
Share on other sites
22 hours ago, silverbullettt said:

** Should I install the driver throw NVCleanstall? will it be better?

The biggest advantage is the driver signature.
Judging from past posts some people have trouble to disable that.

However there are some problems with "Easy anti cheat":
https://www.techpowerup.com/forums/threads/issue-with-fortnite-and-nv-clean-install-1-9-0.280775/

 

Also you can select which features you need and unselect which not.

Link to post
Share on other sites

What do you do if NVCleanStall doesn't have my GPU listed under "Add Hardware Support"?  I'm trying to install recent NVidia drivers for a Laptop Quadro K3000M GPU.  However, it is not in the list of templates.

 

Recommendations?

Link to post
Share on other sites
5 minutes ago, Beanz said:

However, it is not in the list of templates.

The templates are the list of GPUs that exist in the original INF !

Assuming you selected a Quadro driver use NVIDIA_DEV.13FA = "NVIDIA Quadro M3000M" with vendor ID 103C=HP

Briefly you could say a Maxwell is an energy saving Kepler

stefan148-20210429-195902.gif

Link to post
Share on other sites
9 minutes ago, StefanG3D said:

The templates are the list of GPUs that exist in the original INF !

Assuming you selected a Quadro driver use NVIDIA_DEV.13FA = "NVIDIA Quadro M3000M" with vendor ID 103C=HP

Briefly you could say a Maxwell is an energy saving Kepler

stefan148-20210429-195902.gif

Thank you so much!  I was able to get 466.11 installed thanks to your help!

Link to post
Share on other sites

what im done wrong?

[NVIDIA_Devices.NTamd64.10.0...17098]
%NVIDIA_DEV.1198% = Section002,       PCI\VEN_10DE&DEV_1198

[Strings]
DiskID1 = "NVIDIA Windows 10 (64 bit) Driver Library Installation Disk 1"
FLG_ADDREG_KEYONLY = 0x00000010
NVIDIA = "NVIDIA"
NVIDIA_A = "NVIDIA"
NVIDIA_DEV.1198 = "NVIDIA Geforce GTX 880M"
REG_BINARY = 0x00000001
REG_DWORD = 0x00010001
REG_DWORD_NO_CLOBBER = 0x00010003
REG_EXPAND_SZ = 0x00020000
REG_MULTI_SZ = 0x00010000
REG_SZ = 0x00000000
REG_SZ_APPEND = 0x00010008

Edited by Rosli
Link to post
Share on other sites
StefanG3D
2 hours ago, Rosli said:

what im done wrong?

That would be correct for manual modding.

In NVCleanstall use 980M as template with vendor ID 1043 = ASUS

stefan149-20210502-070714.gif

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...