Secure boot is a security standard developed by members of the PC industry to help make sure that a device boots using only software that is trusted by the Original Equipment Manufacturer (OEM). When the PC starts the installed software is being checked to see if its signature matches the one in the UEFI database and so is for the hardware: this case is about the BIOS of the Sapphire AMD HD7970 Vapor-X GHz Edition.
Its official BIOS doesn’t have UEFI support as GPU-Z shows:
Looking online I couldn’t find any official information about Sapphire making BIOS updates neither making an update to support UEFI. So I started looking for unofficial solutions…
On TechPowerUp I found a database of all the users’ uploaded GPU BIOS and so I started looking into the Sapphire HD7970 list. Unfortunately, none of them was having UEFI support, but I saw there were versions more recent than mine! Then I started looking into other brand versions and I saw some Gigabyte BIOS having UEFI support and they should be official as they are available in the Gigabyte HD7970 support page. Nice work! Unfortunately, I’m not sure if it’s possible to flash a different brand BIOS even if the card model is the same, so I didn’t try this way.
I kept looking for unofficial solutions and eventually landed on a curious thread on overclock.net where a user says he is able to modify official BIOS to add UEFI support. After reading a lot of posts I found another interesting thread on Win-Raid.com where a user speaks about an automatic tool to add UEFI support to an original BIOS, whoa! No hex editing this time!
Want to read more about the GOP (Graphics Output Protocol) mentioned in that thread? Read it here on wikipedia.
So, next section is about what I did to successfully modify and flash the new BIOS! Do it at your own risk! It would be better if your VGA supports double BIOS so you can always revert your changes! Again, do it only if you know what you are doing and at your own risk, you could brick your card!
I downloaded the latest Sapphire HD7970 Vapor-X GHz Edition available on TechPowerUp which is version 015.037.000.000.000000 and can be found here. I flashed it with ATIFlash to be sure it worked, and here you can see the GPU-Z information.
Then, I used the GOP Update tool to add UEFI support to this BIOS. The procedure worked flawlessly as shown by tool output here
************************* GOPupd 1.9.6.5 ************************************************* Update EFI GOP ***************************************** Drop VBIOS file on this .bat *****************File Not FoundThe system cannot find the file specified.Dumping info from = official_037.romID of ROM file = 1002-6798No EFI ROM found!No EFI ROM found or error on decompression !!!****************************************************************** Extracting with GOPupd... ******************************************************************---------------------------------------------------------------****************************************************************** Processing with GOPupd... ******************************************************************GOP is not present!!!Do you want to update GOP to latest available? Y for yes or N for no: yFixing last-image-bit in PCI Structure of Legacy ROM!Using AMD byte for checksum!Fixing ID for EFI image. No checksum correction is needed.Removing unnecessary end padding.File "official_037_updGOP.rom" with updated GOP 1.67.0.15.50 was written!
Then, the new official_037_updGOP.rom BIOS was flashed with ATIFlash and GPU-Z showed UEFI support! Tada!
I found no issues at all with the modified BIOS and I was also able to disable CSM (Compatibility Support Module, read more here) from my motherboard BIOS which didn’t let me do it before due to the VGA lack of UEFI support!
If you have a different AMD VGA (or NVIDIA one, check the supported ones) you might be able to follow the same steps to modify your official BIOS. If you have the same card I have, I’ve uploaded the firmware on TechPowerUp so you can download it here.