AMD and Nvidia GOP update (No requests, DIY)

H!, @lordkag

I catch on https://www.station-drivers.com the latest bios version of the MSI 2080TI with the UEFI v0x50009. (original)
(For the MSI 2070 still no new Bios version.)

I compared the extracted UEFI version:
nv_gop_TU1xx.efirom (GOPUpd_v1.9.6.5) ≠ Nvidia GOP TU1xx 0x50009_compr.efirom (MSI_GTX2080Ti)

hex.png



In different comparisons, these two places always change.

Who would not be better I would use the UEFI 0x50009 from MSI?
Or has no impact on the finished .rom?

I have attached my bios files in original version (MSI_GTX2070.rar) as well as in modified version (MSI_GTX2070_MOD.rar).
And the new original Bios version of Msi 2080Ti with the new UEFI v0x50009. (MSI_GTX2080Ti.rar)

Maybe it will help…

MSI_GTX2070.rar (329 KB)

MSI_GTX2080Ti.rar (330 KB)

MSI_GTX2070_MOD.rar (329 KB)

I have ASUS STRIX GTX 1080 8GB.
Sorry, my english is very bad.

1. Used command line “nvflash64.exe --save myvgabios.rom” and received VGA BIOS image my videocard = “myvgabios.rom”:
Version: 86.04.17.00.E3
Build Date: 05/09/16
Modification Date: 06/30/16
UEFI Version: 0x30007
UEFI Variant ID: 0x0000000000000007 ( GP1xx )
UEFI Signer(s): Microsoft Corporation UEFI CA 2011
InfoROM Version: G001.0000.01.03

2. Open with browser www.techpowerup.com > DATABASES > VGA BIOS COLLECTION.
Search ASUS STRIX GTX 1080 8GB. Found two VGA BIOS images:
a) Asus.GTX1080.8192.160630.rom = 256512 bytes (86.04.17.00.E3) - Old, same as mine.
b) Asus.GTX1080.8192.171016.rom = 268800 bytes (86.04.60.00.BF) - Latest!

3. Used command line “GOPupd.bat Asus.GTX1080.8192.171016.rom” and received VGA BIOS image for update my videocard = “Asus.GTX1080.8192.171016_updGOP.rom” and rename to “latestvgabios.rom”:
Version: 86.04.60.00.BF
Build Date: 01/05/17
Modification Date: 10/16/17
UEFI Version: 0x3000E
UEFI Variant ID: 0x0000000000000007 ( GP1xx )
UEFI Signer(s): Microsoft Corporation UEFI CA 2011
InfoROM Version: G001.0000.01.04

4. Flash VGA BIOS image “latestvgabios.rom” to my videocard:
Used command line "nvflash --protectoff"
Used command line "nvflash64.exe latestvgabios.rom"
Already flashed, reboot…

5. All OK. Thanks for this thread!


Your issue is Windows 7, it can’t do a pure UEFI Boot. During boot it makes calls that fails if there is no classic VBIOS, which is what happens with CSM disabled. Basically, you can’t install or boot W7 without CSM for that reason, even if your Video Card Firmware does support UEFI GOP. If you want to disable CSM for pure UEFI, then you need W8+.




1.) Wouldn’t it be enough, to simply remove the efi bootmgr, vgapnp.sys and vga.sys drivers from the Win7 installation image and then integrate manufacturer graphics drivers (Nvidia, AMD, Intel) instead? According to a source on reboot.pro, they are the only trouble-makers:

Install Windows 7 at UEFI Graphics Output Protocol (GOP) hardware

2.) Does such a "GOP driver" for the operating system exist or does only the GPU have to have one? In other words: do later Windows versions (8 and later) have or need an OS-side GOP driver and/or functions, or is it simply the absence of VGA functions (like described in 1.) ), that makes them work in pure UEFI environments?

If simply 1.) is the case, it would be VERY easy to get W7 to work without CSM…

AZ

Hi,

I dumped the BIOS of a HP OEM Radeon Pro WX 3100 with ATIFlash 2.84.

GOPUpd v1.9.6.5 reports that the GOP file in this BIOS is not present in the database.

Also, when I tried to update the GOP module, it says "Data after ROM and not part of EFI! Please report it!"

BIOS image is attached here. Would you please look into it? Thanks!

wx3100.zip (115 KB)

Hi @lordkag

I just want to second @JanCerny 's request for an option to strip out GOP. I have an alienware aurora R3 system that is no longer receiving BIOS updates. It hangs in POST (blank screen, no boot) with some hybrid BIOS GPUs. Others have reported (also here) the same issue.

I just bought an RX480 and cannot use it in that system due to this issue. It works fine in systems with no EFI at all, or in more recent machines. It’s just that some older machines with partial EFI support have been abandoned by their manufacturers. My system boots into Windows 10 via EFI mode, but it only works if the GPU uses a legacy BIOS with no EFI module. There are no options in the BIOS to force legacy mode.

Thanks for your awesome work on GOPUpd.

all the best,

drbob

PS EDIT: Looking at the BIOS for a card that does boot on my r3 system (an R9 270X) all that may be required is to mark the legacy vbios image at the last image (0x80). The R9270X has an EFI image on it but it is hidden from the motherboard in the aforementioned manner. The RX 480 however correctly marks the legacy images as “not last” and the EFI image as last with 0x80


Replying to my own post… doing the above fixed my issue. I manually edited the BIOS ROM of my RX 480 to set the last image indicator byte to 0x80 in the PCIR header of the first (legacy) vbios image in the ROM. I found this table helpful in identifying the correct byte to set (byte offset 0x15 from the start of the PCIR header), as I found the image @lordkag posted at the top of this thread a bit confusing.

The biggest hassle was finding out how to fix the BIOS checksum. I modified a 0xFF byte in the padding at the end of the legacy image to 0x7F (0xFF-0x80=7F), thereby compensating for the 0x80 I had added to the total, to make the checksum for the entire legacy image match that of the original. There is probably a better way to do this, but I couldn’t work out how the value at 0x21 related to the image checksum. On my RX480 the legacy image occupied offset 0x00 to 0xE5FF

After loading the modified image, my RX480 card no longer hangs at boot in my Alienware Aurora R3 and I can use it normally. Similar mods may well help others with poorly implemented EFI BIOS that can’t cope with the GOP image on a stock radeon card.

I was expecting the modification to trigger the AMD driver vbios signature checks and necessitate use of the AMD/ATI Pixel Clock Patcher driver patch, but with Radeon 18.12.3 at least, this was not necessary.

This is a bit of a tangent from the purpose of this thread I’ve created a new thread for any questions about what I did.

EDIT: Correct hex range example for legacy bios in my ROM, add link to new thread

@drbob : Did you try Polaris BIOS editor (just do small mod like +1 MHz on core)? This utility will damge AMD EFI signature and card will no longer boot up in UEFI mode. You will also need AMD/ATI Pixel Clock Patcher for patching drivers..


I answer this question in the thread I created about the mod to disable UEFI mode.

I have succesfully updated GOP in my Envy x360 notebook that mounts a Ryzen Mobile 2500U equipped with a 15DD Vega 8 Mobile. HP is not very good at updating their firmware, since they put out finally the F.19 update with a nice and less buggy GOP 2.2.0.0 but after that they came back with F.20 bios at the earlier 2.0.2.0 GOP, that is extremely buggy and works only with some driver versions, as the provided ancient 22.19.655.1, which has bugs at playing videos with Netflix and accelerated web browsing. That old GOP is the pain of this good computer.

I extracted the VBIOS using the UBU tool also found in this forum from the F.19 BIOS. A screen also shows the VBIOS version from UBU. From some reason, probably related to the LZMA compressed image, I wasn’t able to obtain a properly ROM containing both VBIOS and GOP togheter, however UBU and UEFITool_NE were able to properly extract VBIOS and GOP images separated.

I had to force lordkag’s python file to detect Vega, since by default if GOP is not provided it wouldn’t look in AMD Vega 2.4.0.0 listings. After that, it has succesfully flashed the last GOP (sorry the screenshot is not complete). After flash, I rebooted my laptop, that required a bit longer than usual (I was sh* in my pants) but after that I have the newer VBIOS along with the newest GOP.
Really thank you for this powerful tool.
Screenshots/VBIOSes:
https://drive.google.com/open?id=1mDcrec…YL3okqulE89p3AP

Hi, im new here. welcome everybody. very interesting. im working about one projekt - modification. and i thinking if could be anyone help me to find latest available UEFI ( GOP ) version for NVIDIA GTX 980M MXM from CLEVO? it is exactly GPU with G-SYNC and SLi Model. Thank you for all help.

Download latest BIOS for whatever model has that GPU @dzeusking then extract vBIOS - if you are unsure, link me to that BIOS and I can get it for you.

Seems odd that the Radeon VII BIOS doesn’t have a compressed EFI ROM w/ GOP image. I wonder what’s up with that? Or is it that I’m just too stupid to be able to find it?

There is now a BIOS released by Asrock, it has the exact same legacy image as the reference BIOS, and also has an UEFI/GOP image.

AMD GOP 2.5.0.0.0.efirom_newGOP.zip (84.1 KB)

@MrGenius - I agree, looks like only legacy, update/add GOP if you want.

How does one use the new GOP files rom AMD to add them into a BIOS using the GOP Updater tool?
Any guidance appreciated.

@lordkag

Released Version 1.9.6.5

Hi, I tried again. Update to v0x50009 (MSI 2070 Z)
And it worked very well! :smiley:

I updated my mainboard bios to the latest version.
And use the last available driver Nvidia …

Thanks for the great program!




My graphics card is an RTX 2070 GAMING Z 8G from MSI.
I tried to update UEFI v0x50006 to v0x50009.



After the update/restart:
The monitor sporadically went on and off after the update (no signal).
Partially come green artifacts.
The system became very unstable due to the update.

Have the old UEFI on it again.

Nevertheless, thank you for your great work!
I’m looking forward to the next version. :wink:


LordKag, can you please update this with the new GOP from AMD, v2.5?


Maybe a bit of a problem for the non-UEFI BIOS version. It is still locked down, and there would be at least one byte to change in the legacy part of the BIOS.

Also, AMD released the same (exact same) BIOS with GOP/UEFI support. if you just flash that one, you are more than safe.
https://www.amd.com/en/support/radeonvii-vbios-eula

I don’t have a Radeon VII to flash that to. I have a Vega56 and wanted to integrate the newest v2.5 GOP into the vbios. The card original came with a vbios that included GOP v2.2, but using this tool I was able to upgrade it to v2.4.

sorry, how could i forget about Vega 10…