• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

[SOLVED] CSM/UEFI BIOS ISSUES Sapphire RX 580 Nitro+ Special Edition


New Member
Nov 23, 2019
1 (0.04/day)

Thanks for all the knowledge on this forum, it's the only reason i answered my own question.

Can anyone point me in the right direciton on how to upload the working rom files for my Sapphire RX 580 Nitro+ Special Edition (11265-21)
p1580.rom and p2580.rom

New to the forum here and have been trying to wrap my brain around what's going on with my Sapphire RX 580 Nitro+ Special Edition having issues with CSM and the GPU posting at boot.

Running an ASUS ROG Maximux X Code MOBO with the latest bios Primarily as a Hackintosh, have windows 10 installed on a separate drive

Have had the system working great for about a year now. Back in March I wanted to see if I could gain any improvement by flashing the 580's bios to higher clock speeds while in Mac OSX. Overclocked successfully using amdvbflash, (in the OC position, position 2, furthers from rear of case) and hadn't had any issues with the GPU until recently.

I'm not sure what changed in my system configuration but at some point (maybe after a MOBO bios update?) the GPU would not post during boot. The system would have a blank screen, completely boot up, and eventually the Operating System would load. But black screen during the Clover Verbose Boot/ Windows Boot. I Couldn't even get into the ASUS BIOS after pressing F2. Had to flash the MOBO BIOS to get factory defaults and start troubleshooting.

I ended up concluding that in order for the GPU to not have a blank screen during POST, I had to have CSM enabled. Once CSM was enabled I was able to access the BIOS and see the Clover boot up process.

I then realised that if I put the the GPU Bios switch to the "quiet" factory position, (position 1, closest to the rear of the case) there was not an issue if CSM was enabled or disabled.

Doing further research on this forum I found similar instances where the GPU won't post if CSM is disabled due to the UEFI or lack their of in the GPU. And forums discussing the flashing process and how to retain UEFI in the rom file.

So I decided to restore the original OC bios for the RX 580. And since then have had no luck getting it back to it's original state working while CSM is disabled. After going back and forth so many times, I actually accidentally flashed the silent bios not realising the switch was in the 2nd position, and lost that original .rom file.

So I'm Currently using these .rom files from techpowerup found by @eidairaman1

I first tried to make a Rufus pen drive and run ATI flash following these instructions by @Solaris17 (wanted to stay clear of windows os)
but the atiflash -i command says no adapter found . (I Think from reading these forums the atiflash version for DOS is not compatible with this architecture of Polaris?)

The only way to flash the card was with amdvbflash.exe via the command line or the graphic interface.

The flash reports successful (there is a comment in the command line that says previous bios having no signed driver) but after a reboot, no GPU post when PEG is set as primary, have to go through the whole reset MOBO bios, use the IGPU as primary display, to get back to square one.

I've tried both PCIE slots and the GPU is still recognised by the BIOS under the GPU post tools section. And now it just won't boot at all.

If you can't already tell, pretty new to VBIOS flashing, and would appreciate any guidance on how to restore my BIOS with UEFI capability.

PN 299-BE366-201SA

Here's a screen shot from AMDVBFLASH

I find it odd that the flashed GPU vbios is reading as Polaris 10 when it should be Polaris 20, no?

Just did another flash, this time on the OC (not quiet) position, and we'll see how it goes after restart.

c:\Users\SHARK\Desktop\amdvbflash>amdvbflash -I
adapter bn dn fn dID asic flash romsize test bios p/n
======= == == == ==== =============== ============== ======= ==== ==============
0 01 00 00 67DF Polaris10 M25P20/c 40000 pass 113-3E366DU-S4Y

c:\Users\SHARK\Desktop\amdvbflash>amdvbflash -p 0 rx580.rom
Old SSID: E366
New SSID: E366
older ASIC, vbios is not signed.
Old DeviceID: 67DF
New DeviceID: 67DF
Old Product Name: E366 Polaris20 XTR A1 GDDR5 256Mx32 8GB
New Product Name: E366 Polaris20 XTR A1 GDDR5 256Mx32 8GB
Old BIOS Version:
New BIOS Version:
Flash type: M25P20/c
40000/40000h bytes programmed
40000/40000h bytes verified
Restart System To Complete VBIOS Update.


UPDATE: After flash, and restart, Windows is giving an error 43 in device manager, AMD radeon software is not recognising the card. Even after applying the AMD/ATI pixel clocker patch.
After changing the MOBO Bios to PEG instead of IGFX can't even seen the bios boot menu screen. just blank, no OS load, nothing. Can't even clear CMOS to reset settings, have to flash MOBO BIOS and REMOVE GPU to access BIOS menu.

I don't know what the definition of "brick" really means. I was guessing it was just a soft brick. I can see lights on, fan spinning, AMDVBFLASHWIN recognises the adapter, as does GPU-Z. But something has got to be wrong here with my procedure of flashing because it's not working when set to Primary PEG.


So somehow after reading and re reading these forums I managed to get the VBIOS back up and running.

Luckily i found my original rom files stored away and followed this method:

Start windows with Igfx enabled and no multi monitor support

GPU in 1st slot with no power connected, Bios switch Position 1

Shut down plugged card's power in

Turned on

Ran command prompt as admin and run amdvbflash.exe -f -p p1580.rom


Changed bios setting to multi monitor enabled


The only thing different besides the original rom files was the use of force (-f) command this time around.

The only thing that concerns me is if you look at the readout from the amdvbflash.exe -ai command...
There is no Data in the UEFI ID ROM HEADERS

Is this normal?

Anyway, I'm now running back on the Hackintosh no problems. Even disabled CSM and no issues with the GPU posting at boot

Position 1 PRE FLASH::
p1 pre flash.gif

p1 post flash working.GIF

Position 2 PRE FLASH
p2 pre flash.gif

p2 post flash working.GIF


Last edited: