[Guide] Remove UEFI Image from NVIDIA vBIOS



So, if somebody sometimes will need this info - it can works (vmw shows GPU in a list of devices).
I have somekind of mistake, guess vmw needs to be update, but I haven’t plenty much of time to check it

Thank you for the guide! I’m trying to use a Quadro P400 to enable hardware transcoding in my R210 II to make it into a decent Plex server. I can’t seem to get it to the GPU flashed after modifying it in HxD.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
c:\>nvflash64.exe GP107_MOD.rom
NVIDIA Firmware Update Utility (Version 5.620.0)
Copyright (C) 1993-2019, NVIDIA Corporation. All rights reserved.
 

Checking for matches between display adapter(s) and image(s)...
 
Adapter: Quadro P400 (10DE,1CB3,1028,11BE) H:--:NRM S:00,B:01,D:00,F:0
0
 

EEPROM ID (9D,1253) : ISSI IS25WQ040 1.65-1.95V 4096Kx1S, page
 
Current - Version:86.07.6B.00.04 ID:10DE:1CB3:1028:11BE
GP107 Board - PG2120500 (Normal Board)
Replace with - Version:86.07.6B.00.04 ID:10DE:1CB3:1028:11BE
GP107 Board - PG2120500 (Normal Board)
 
Update display adapter firmware?
Press 'y' to confirm (any other key to abort):
EEPROM ID (9D,1253) : ISSI IS25WQ040 1.65-1.95V 4096Kx1S, page
 
Error preserving Inforom Image.
 
NOTE: Exception caught.
Nothing changed!
 

 
ERROR: PCI Block corrupted 1.OffsetMode is true
 


I've never used a hex editor so I'm sure I'm doing something wrong. I found where the block I should remove begins, but I'm unsure about where it ends. There are smaller and larger FF blocks so I'm not sure if I'm going far enough. Any help would be greatly appreciated!

If you post screenshots of the beginning & end of the block you’re trying to delete (as in my example), or even a couple different options I’ll confirm for you which is correct.

start.PNG is where I believe you start. end1.PNG is the first full row of FF I find when searching, followed by end2-4.PNG. I can post more if you think it’s farther down the file.

I’ve also created a video showing my process .

Here’s a link to the original saved ROM.

Thank you for your help!

start.PNG

end1.PNG

end2.PNG

end3.PNG

end4.PNG

If you guys can’t get it, let me know I will remove GOP for you and set legacy as last image.

I think I did it! Attached is where I started and ended. Total length was 10800 (which is similar to yours). GPU-Z is now showing UEFI disabled! Before it was checked. I’m at work but I’ll throw the Quadro P400 into the R210 ii tonight and see if it boots!

Here is a copy of my the ROM used for flash my Dell NVIDIA Quadro P400

start1.PNG

end5.PNG

gpuz.PNG

It works! Thanks again :smiley:

ACD727CB-5FD8-423C-BF65-E2E9CBE4D259.jpeg

@brothertax - Great to see you got it all working now and did the mod yourself, good job

I’m looking at the vBIOS and mine doesn’t look the same.

It’s a MXM card so perhaps a bit different?

I have a Alienware M17xR3 that gives 8 beeps (GPU failure) with M4000M (maxwell), but works with 780m (kepler).

I installed AMD 8970M (UEFI vBIOS) and got 8 beeps, used RBE7 to make non uefi vBIOS and it works. My theory is, the M4000M will work as well, including all 9XXM and MX000M nVidia cards maybe even P5000M but need to remove UEFI.

188251.zip (142 KB)

Untitled.png

@ssj92 - Send me original unedited correct model dump of the GPU (M4000M ?) that you want GOP removed from, then I can do for you. Is that what is attached above?


Yes the top one attached is a original vBIOS for M4000M.

I just tried modding mine too if you can take a look. Attached to this post.

May I ask if you are using the same method as OP or a different one?

M4000M_M17xR3.zip (67.8 KB)

@ssj92 - I am not doing same as OP, similar, but not same. I will do the edit, then you can compare to your edit
Yes, this is odd one, but I’ve not done many Nvidia either, so could be that making me think it’s odd? What you have shown in your image is not the GOP, but the start area of the legacy ROM. GOP starts at 0x1D400h
Due to nvidia signatures, hashed roms and such, this may always fail? - http://s000.tinyupload.com/index.php?fil…711339364096125

If this does not work, I’m sure @Sylar76 can probably remove the GOP for you properly

I’m sorry, could you try this vBIOS? I had my friend with M4000M do a fresh dump of the vBIOS. The one earlier is from a public dump of M4000M.

He has a programmer too so he can always flash back. Thank you

So these ROMs do have a UEFI portion though? I would assume that is what is causing the issue on our older Alienwares not booting with these newer cards. Someone had mention a BIOS mod but they never came back to post it so my UEFI theory is our only hope.

GM204.zip (139 KB)

@ssj92

According to the zipped file you attached before it seems a normal legacy+uefi nvidia bios with GM2xx uefi gop table (the same used on desktop cards).

I’ve updated it to the latest uefi gop table, dated 2017. If you disable CSM inside bios and boot in full UEFI mode it should work.

GM204_updGOP.zip (137 KB)


Hi @Sylar76 I actually need the UEFI (gop) portion removed from vBIOS completely. The laptop we are trying to use this in, does not have UEFI at all and it seems having UEFI in the vBIOS causes no post.

Thank You

@ssj92 - He could test that one I did earlier, since he has programmer. If it fails, be sure he tests it unedited as well, so you know the unedited one works or not.
Here is the other one, if I removed it correctly should be OK - This new vBIOS you gave is older version, in case you didn’t notice. You can open vBIOS in Maxwell II vBIOS tweaker 1.36 to see date/version/checksum (or GOP updater)

GOPRemove.png


http://s000.tinyupload.com/index.php?fil…247701647496623

@ssj92

Ok, try this please.

GM204_NOUEFI.zip (67 KB)

After Fermi-based cards, nVidia has more images in their roms. I don’t know if the images following after the UEFI-image are depending from the position in the rom, probably no, otherwise described way to remove UEFI-image won’t work. Adding empty code at the end isn’t necessary since nvflash will recognize image-lenght on its own. If you want to use SPI-flasher: Image should have same lenght as the complete dump.

But it is safe to leave the positions in the rom: overwrite the UEFI-part with empty code and set last rom indicator in VBIOS from 0x00 to 0x80 and correct checksum.

@Lost_N_BIOS & @Sylar76 I have sent your vBIOS’ for testing and will update when they have tried them.

@Ludolf So assuming I follow the OP guide, how would I change last rom indicator and correct checksum? If this method works, I would have like 5 more vBIOS to do this to.

@Sylar76 - thanks! I see your edit is exact same as I did, except the very last byte you FF’d.
I eye-balled that during my edit, thinking it was maybe checksum for GOP I at first, but then was not sure if overall checksum byte etc so I left it since GOP UPD tool seemed to indicate the GOP image ended before that based on size given
I was not sure if that should be left in place or not, since GOP UPD put GOP’s size to end a few lines before that byte. Do you think leaving it on mine would render vBIOS bricked, or OK?

@ssj92 - I don’t think NVIDIA has first/last rom indicator, at least I didn’t notice this when looking during your edit. Checksum for legacy rom is not touched, so does not need updated/remains correct.
If it is there, it would be the 18th byte after PCIR, at least this is what it is in AMD