AMD and Nvidia GOP update (No requests, DIY)

Hi,

Just wanted to share I have another system based on an Asus p8z68 deluxe motherboard and two 780 GTXs (a B1 and A1 variant) and it has the same uefi no post bug when set to ‘EFI Rom Priority’ mode. So I ran GOP update on the roms after first flashing the latest EVGA roms I found on techpowerup database. The gop versions were 0x1001F and 0x10026 so I assumed it was the same issue as my Z87X system and flashed to 0x1002D on both cards using gopupdate but this bios uefi bug still persists. System still works but its interesting that updating gop wont solve every problem. I even tried disabling every on board device including JMB and Marvell devices. Unfortunately the ‘Deluxe’ version of this motherboard doesn’t have an external DVI connection to test the onboard gpu functionality.

Makes me wonder how Asus could release a half-arse bios in the first place. Anyhow just wanted to also tell @Lordkag that his version of NVflash is an old one and doesnt disable the gpus prior to flashing in device manager unlike the newer Joe Dirt version that automatically disables the gpu prior to flashing. Its also interesting to note that typing ‘NVFlash --lspci’ gives you a run down of your components installed in your system. Aside from that we should all ask the devs behind GPU-Z to add GOP version info display into their utility…

Thanks.

As you can see in this thread, the situation is not new and the latest GOP won’t fix it. Basically, the bug is in Asus yard and they will provide a fix if you ask them. Just give them a nice story with many details, write that you received a GOP update from GPU manufacturer (if you mention a custom VBIOS they might reject your request), make them a “request they can not refuse”. They are very aware of the issue, but will play innocent if you don’t prove the bug is in their code.

Are you sure about flashing from techpowerup? I already wrote a warning that the file from database might be older than the one from your card or manufacturer site, not to mention the risk of flashing a wrong VBIOS. I hope you saved a dump from your cards before flashing, it is always recommended to have a working backup.

Since you mentioned nvflash, I will also update the first post with this warning: DO NOT use the attached files for flashing! It was not my intention to add the files for flashing, they are present only for dumping info from ROM files, not to mention that the AMD flasher is stripped down from several dlls and the Nvidia one is 32 bit only. I will consider renaming the #Flash-Info folder to avoid such confusing. A link to the AMD/Nvidia flashers it is in the second post and was added only as a courtesy. If a user is not accustomed with flashing his GPU, he should not proceed with this GOP update.

Both AMD and Nvidia #Flash-Info folders are up to date. Nvflash is at 5.218 and it was offered by me in this post long before it appeared on overclock.net. The only reason I use the modified JoeDirt in my package is that I have only found the 64 bit of original nvflash 5.218 and I need the 32 bit version to be compatible with both OS architectures. But I will consider reversing his reversing of nvflash, to offer a vanilla nvflash, to not scare the users and to prevent a flashing from within GOPupd folder. Like I said, I only offer the updated ROM file, the rest is in user’s hand.

I asked ‘Raja’ from Asus on Hardforum about this a couple months ago and this was his answer:

and

As far as making a request they cant refuse I don’t know what to do short of sending them a horse head in the mail but thats not fair to horses. Never mind the motherboard says ‘UEFI’ all over the motherboard. About the techpowerup database yes I’m sure as far as my two EVGA 780GTX ACX cards are concerned their vbioses were newer (80.80.21.00.80 vs 80.80.31.00.82 and 80.10.37.00.80 vs 80.10.3A.00.80). I checked using a hex editor and was surpised to find out that my two 780s weren’t even identical as I bought them almost together. Ones a newer revision with a different device id: 3842-2784 vs 3842-0784 but I used the latest patched nvflash64 to flash without having to disable gpus in device manager and I did save a copy of the rom before flashing. Using your utility to update the gops was uneventful. Thanks for the advice.

It is OK, you used the techpowerup database in the right way, because you are an advanced user. But I can’t include all the details about using the database, because it will fall outside this thread, and I can’t recommended for all users to download the VBIOS from there, because someone might download the wrong file. This way, by adding a warning about it and telling users to use the VBIOS from card/manufacturer, I can address both novices and advanced users.

Maybe the technician you talked was unaware of the issue. But in the thread I linked above you will find all the details. I had already offered him an updated GOP and the bug was still there. Later I discovered that Asus had a fix all along. After a request, that was ported to his mainboard. So it is Asus task to fix it, yours is to ask it the right way. But anyway, there is already a thread to discuss about this bug, so please write in there if you have anything more to add.


@lordkag

My Palit GeForce GTX 750 Ti KalmX has exactly the same VBIOS like the one from TechPowerUp. With your GOPupd_v3 I get exact the same results like you (see attachment).

I will try to flash the safe VBIOS version from GOPupd_v3.
Unfortunately the NVFlash_Certs_Bypassed_v5-218-0-1_x64.zip is not downloadable at the moment.

Many thanks for your help and support again.

GM107.zip (127 KB)

@lordkag

Flashing the safe VBIOS version from GOPupd_v3 worked without any problems.

By the way what is your source for the UEFI version 0x10030 from Sep 18 2014 in nv_gop_GM1xx_10030_fix.rar

I have uploaded v4.
- I have finally found a GF119 GOP. Ironically, it is newer than all other, except GM2xx.
- added a few more checks so that the original GOP is compatible with the new one. Apart from the 6 Nvidia GOPs, there are also MXM and multi-display variants of these. I have GK1xx_MXM and GM1xx_MXM, but no sample of multi-display GOP, to see how different is the code.
- now the files in the temp folder are renamed for easy storage.
- also added some checks of the original EFI ROM for compatibility: machine code, class-code, EFI code, EFI last image.
- there is now a list of GOPs in the second post. AMD will follow, but I have to decide on whether to include all signed/unsigned images and those that have legacy tables.

Something that I noticed before, but can now be seen in the list of GOPs, is that Nvidia is pushing changes across all 5 initial GOP types, with GM2xx being a little more favoured. If a version 0x100xx is released, it is most likely that the same version with the same date/changelist is released for all 5 GOPs, just that the base code is different. Having found 0x10030 for GF119 and GM1xx, there is hope the find it for others.

Can I get a tester for 0x10030 GM1xx? It comes from a VBIOS with class-code 030200 (soldered GPU) and I’m 95% certain that it is compatible with all GM1xx GPUs, the rest 5% being “better safe than sorry”. All you need is a mainboard with an option to disable CSM, the rest is simple: it either works and you have an image during UEFI Boot, or it doesn’t. For a quick recovery it is best to have a second GPU or an internal GPU, so you can enable CSM and revert to previous GOP version.

@RoughBoy

Did you flashed with a patched nvflash or an original one? I’m curious if the whole image is included in the signature or just the Legacy ROM. About 0x10030 version you can read above. It should work and it is latest, but in case of a failure you should have a second GPU or reset CMOS or blindly flash with 0x1002D. Apart from the normal GOP, there are two more siblings (MXM and Multi Display) that are identified by a digit in the variant ID. The GM1xx 0x10030 I have is not a custom one, but a normal GOP.

@lordkag

I think you asked for the original x86 version of NVFlash v5.218. I have attached it below, the archive includes both original (for OEMs, not modded) x64 and x86 versions.

Now, I have found some older GOPs that are missing from the repository you posted at the second post. Since there are is no AMD list yet I have included everything I have found on that end. The Nvidia ones were hand-picked based on your list. Are you planning to add any "GOP not at the repository" check? It would speed things up and eliminate the possibility of human sight error when doing mass file drops. Also, maybe those .temp folders can be deleted when exiting the batch in a normal way like UBU. Anyway:

0x1001E , GK1xx
0x10025 , GK1xx
0x10017 , Variant Missing
0x1002C , GM1xx

1.34.0.15.22
1.40.0.15.24
1.53.0.0.0
1.54.0.0.0
1.55.0.0.0

The GOP archive includes the gops I think are new and all the files I tested to be certain in case I missed something.

GOPs.rar (1.43 MB)

NVFlash v5.218 x86-x64.rar (1.19 MB)


@lordkag

I flashed with the NVIDIA Firmware Update Utility (Version 5.218.0.1) Modified Version by Joe Dirt in the x64 Version. It worked without any problems unter Windows 7 x64.

For my Palit GeForce GTX 750 Ti KalmX (GM107) I tried both GOP’s 0x1002D - Apr 23 2014 and 0x10030 - Sep 18 2014 (modded with GOPupd_v3).

But booting from an UEFI-bootable USB-Stick (neither Windows 10 x64 nor Linux Mint 17.1 x64) with in BIOS (UEFI) enabled EFI compatible ROM (under PCI ROM Priority) failed with both GOP’s.
Maybe my already older Mainboard Asus P8P67 Rev3.1 with P67 chipset which is not full UEFI compatible (no settings for CSM available) is the reason or its BIOS (UEFI) has a bug

Maybe you have an idea for the reason

You mention GF10x in several places, by the GOP list only mentions GF108. Does this work with GF106?

@ jruser:

Welcome at Win-RAID Forum!

Regards
Dieter (alias Fernando)

@plutomaniac

Thank you for the original nvflash! You have saved me from the trouble of reversing the patched one. At first I thought that a repository is a wasted time, since it will be just the two of us to use it, but even so, it still had a use to save us the time of checking for missing GOPs. Then it occurred to me that the database will be useful to identify the GOPs that are missing the variant ID, so it was added. Only Nvidia so far, because with AMD I have to consider if I should include a search for signed/unsigned (not that difficult or important), but also one for GOPs with legacy parts, which are unique by their nature. I also added multiple files check and deletion of temp folder, which is needed in this case.

@RoughBoy

But did it worked with the original GOP? I’m afraid the situation is not new for Asus users. You will have to ask Asus support for an updated UEFI firmware for you mainboard (NOT GPU, mainboard!)

@jruser

It was my mistake, it should be GF10x. It is now corrected. But did you tried the script with your VBIOS, is there any reason for update? The GF10x GOP I have is really old, the oldest one from all GOPs. There should be a much newer 0x10030 version out there, but it takes a manual search to find it.

Anyway, a new version uploaded:
- updated GK1xx GOP to 0x1002F
- replace nvflash with original one, thanks to Plutomaniac.
- added a database file and also a check for missing GOPs.
- now you can use files outside GOPupd folder, but for a normal update it is still recommended to have the VBIOS file in GOPupd folder.
- you can also drop many files at once, if you want to check for a new GOP.
- GOP type can be determined even with missing variant ID, by using the database file. This is of course limited to the GOPs I have found, so any new GOP is appreciated.

My gf106 card didn’t have a GOP, so I used your script to add a GOP. Haven’t had the chance to test the card on a UEFI system yet.

Also used it to add a GOP to a 6970. Will be testing that one later today.

As I have written in the first post, my offer to do an extra manual check is still standing, if you post a screenshot of the running script and a link to original VBIOS. This is especially safe if your cards didn’t had a GOP before and are of an older generation. But as it is also written in first post, you have to prove that you actually run the script by providing a screenshot and a CRC32 of the resulting file. This is not something against you, I was forced to do so since some of the feedback was requests to do all the work on my own.


@lordkag

It didn’t work with the original GOP neither.

That’s why I asked the Asus support for an updated UEFI firmware for my mainboard with the hope they have one.

@lordkag

Already today I got an answer from the Asus support.

They told me with simply words:
Fast Boot is impossible with my mainboard because the last UEFI from 2012 has not all needed features and there will be no new one released from Asus.

I also had an interesting conversation with Asus support the other day while speaking with one of the senior technical managers. He asked me what kind of performance improvements am i hoping for? I thought he was making a bad joke. I answered back if I didnt want performance I wouldnt have purchased from Asus and that I expect them to stand behind their products as the bios was definitely broken. I guess it will be up to us to fix their bios but my assembly needs work.

Hi. Here is my GM2xx updated efi image (February 24th 2015). :slight_smile:

GM200_NEW.zip (146 KB)


@davidm71

Yes, it seems so. Unfortunately I don’t have enough skills to do that for the UEFI of my mainboard.

I tried disassembling some of the different modules in 9903 from the p8z68-v and comparing it against my 3603 on the p8z68 deluxe and find very minor changes on just a few lines of code but unfortunately my understanding what that all means is very limited. It’s going to take months and risking motherboard bricking to fix. Asus better step up!