I have this Gigabyte B450M D3SH motherboard running my now ancient AMD Ryzen 2200G with 16 GB RAM. If my memory serves right, it was working as expected with the original BIOS. Since I always like shiny things (software side when free) I went to update the BIOS sometimes a few months ago. Initially I attributed the random changes of boot order to CMOS battery outage and kept postponing the battery change. Recently I finally managed to change the battery but still the problem persists.

I multiboot between various Linux installations and Windows installs. So I use rEFInd as my boot manager. Whenever I set it as boot manager it works for the next reboots until the computer is shutdown. On reboot it takes the Windows bootloader from my second hard drive and boots into it straight away. I thought it might be something to do with secure boot, but even when I have set Fedora as the default boot, it still goes to Windows.

Now the only way I have of booting any other OS is by getting into BIOS.

Is there any fix for this?

I came across this post while searching for a solution and it does not give me much hope - https://www.reddit.com/r/gigabyte/comments/zagupr/my_boot_priority_order_keeps_resetting_itself/jkqpa2p/

What if I flash an older BIOS on this motherboard?