ASUS ROG STRIX X470-F, assuming corrupted EFI variable store, looking for option to purge

Hi, I am currently fighting with my ASUS board’s BIOS. After updating to the most recent version (5204) it began to malfunction. A bunch of EFI variables suddenly have duplicates, like visible on this screenshot from Process Hacker:

ProcessHacker_NPfo3gaVY7.png



The EFI shell shows the same table via dmpstore command. The duplicates are a big problem because they prevent Linux from working properly. Upon encountering a duplicate it decides the firmware is buggy and quits enumerating EFI vars. This in return breaks secure-boot related utils, automatic GRUB entry updating etc.

I tried to do the obvious – go through the standard clear CMOS procedure – but found that the variables are not stored in RTC memory. There seems to be no option whatsoever to clear them. Attempting to delete them via EFI shell results in a “Write Protected” error.

I have mostly been a reading member here on this forum, but hope that you can help figure this one out. I’m mostly out of ideas here and am considering to switch to a different vendor with a more Linux-friendly BIOS.

Often there is duplicated stuff in BIOS due to hidden settings and a debug folder of lots of hidden settings. Do you see the same with your old BIOS version, or did you not check or notice then?
Sorry, I don’t know anything about Linux, so your comments can’t be absorbed This may be something you need to point out to Asus directly, if it only happens in this BIOS version

ASUS just released a fix for the bug! :slight_smile: Thank you for looking into this regardless.

“Fixes an issue with certain Linux distros” at https://www.asus.com/Motherboards/ROG-ST…pDesk_Download/

EDIT: Eeek, so much for that. Unfortunately the error with duplicated variables was not fixed. The thing that ASUS resolved must have been something else. I will try to get into contact with someone at ASUS who does not ask me to send my board in. To answer your question: BIOS versions prior to 5007 did not seem to have the issue, but later ones do. Unfortunately there is no downgrade path.

Good they fixed! Did you report it? If not, maybe they saw this thread by chance? Ohh, wrong thing they fixed!!

You can downgrade BIOS with a flash programmer (Cost is less than $7 shipped), if it was Intel then it would be much easier as you could use FPT software.
All you need is CH341A Flash programmer ($2.60) + If BIOS is in a socket you need U Type Flat IC Extractor ($1) OR if BIOS is soldered to the board you need SOIC8 test clip with cable ($3.50)

You May be able to use this method, flash current stock BIOS using the AFUWin in this guide, then without reboot flash in the older version you want to use
https://linustechtips.com/main/topic/592…r-motherboards/

If that fails to allow the version change, then maybe you can still use this, to flash in a current version mod BIOS with downgrade enabled, then reboot and do again with the older version
Or, within the GUI app, there may be box to check too that allows this, so after stock flash, check that box, then try older (not sure, I’m not too familiar with AFU’s options)
I looked through hidden settings and debug settings in the BIOS, and don’t see anything stopping this, so it’s probably controlled via EZ Flash.

Speaking of EZ Flash, can’t you downgrade BIOS version with USB Flashback? I thought that was always possible?

There is some info on an on-board PIN for flashing the BIOS in ASUS’ ROG forum for easy access to the BIOS chip:

https://rog.asus.com/forum/showthread.ph…p-PCIe-x16-slot

Thank you very much for info on compatible flash programmers, I’ll try to order one to get a copy of the BIOS before tinkering with it using software/hardware programmers.

The board I have unfortunately does not have a USB Flashback option :frowning: Rather stupid if you ask me, that was/is a nice feature of other ASUS boards.