Workstation displays no graphics until Fedora starts

Hello, I’ve got a curly problem so would love some out of the box thinking!

My Workstation does not display anything on the Screen until Fedora starts. The BIOS splash screen and Grub are never displayed (I dual boot with Windows, but Fedora is the default). This is a problem as I can’t start Windows or enter the BIOS without first waiting for Fedora to boot and doing a reboot.

If I reboot the screen remains active the entire time, showing all shutdown messages, the BIOS splash screen, Grub and whichever OS I choose. Only the first boot is affected.

Confusing background
When I first the PC early last year it used to work as expected but some months later this problem started. On occasion the PC used to boot and never turn on the display - the monitor would go to sleep. In fact on some occasions rebooting Fedora would cause the display to go to sleep while the OS was on, forcing me to reset it to power it off. :frowning:

I had been using an ancient NVIDIA graphics card and assumed it was all related. I’ve just installed a more recent AMD GPU but the problem on initial boot still happens (fortunately it’s now ONLY initial boot!).

My CPU has no basic graphics so there is no way I can test this without the GPU.

Facts:

  • OS: Fedora 37 (fully updated) dual boot with Windows 10 (fedora default target)
  • CPU: AMD Ryzen 5 5600X
  • Motherboard: ASUS B550M based
  • AMD Radeon RX 6700 XT
  • Monitor: HP Z27n (connected via display port)

Any ideas where I should start looking please?
Thank you in advance!

It might be a problem with the BIOS config on your motherboard rather than Fedora.
I also used a B550 chipset mobo (Gigabyte) for one of the home server machines I have and it gave me the exact same problem. Even though my R7 didn’t have an iGPU I couldn’t really see anything until the machine started (it was happening during initial boots because the mobo was apparently insiting on using its own HDMI out).

Disabling the on board HDMI in the BIOS helped in my case. Maybe you could try that too.

Have you tried to boot while connected to another monitor/TV?
Or to the same monitor but with HDMI (if present?)
Or to connect your monitor with displayport to another pc?

I’m trying to figure out if it is a bug in bios of your motherboard or the firmware of the monitor

This could also be the GPU itself. Firmware and driver for the card are both loaded during startup. If the displayport is not activated until the card is configured this symptom seems likely. Most cards have HDMI support by default but I am unfamiliar with how the AMD functions. As suggested, Please test the hdmi connection for startup if possible.

you can try [1], sudo grub2-editenv - unset menu_auto_hide

You could also try removing “rhgb quiet” from the kernel parameters.

  1. Changes/HiddenGrubMenu - Fedora Project Wiki

Thanks for the suggestion!

I have looked through the BIOS but couldn’t find anything at all related to graphics which isn’t correct.

There is no HDMI or any kind of display output on the motherboard, so nothing to disable.

Thanks, but it seems unlikely given that it’s happened with both an NVIDIA and AMD card.

Still I’ll try HDMI and some other monitors as @undigi suggested!

I have previously used a HDMI-connected TV with the old NVIDIA graphics card and remember if anything the problem was worse! (I don’t remember exactly), but thanks for the suggestion there are other things I can try and I have other monitors, although it seems most likely they are not the problem.

Great idea!
I’ll try both of those grub-related settings one at a time and power down in between to fully test it.

Thank you, but sadly the grub related changes didn’t help at all.

The menu isn’t hidden when two OSes are installed and as I installed Windows first, Fedora later, the documentation you sent me to explains that my system is already set up to not hide the Grub menu.

@computersavvy @undigi thank you both for your suggestions.
While I have not been able to solve the problem, I am convinced it’s not caused by GRUB2 or Fedora.

I just spent an hour trying various BIOS options from this post: Can't get into the BIOS/UEFI or see boot output on DisplayPort, but can on HDMI (ASUS Maximus IX Hero) - Super User but sadly so far nothing has worked. The good news for me is that searching on that kind of topic returns many results, so as I suspected this problem isn’t unique to me.

I’d prefer not to run my display from HDMI, which will likely resolve this problem, as generally speaking DisplayPort has a higher bandwidth and I do occasionally game in Windows.

I’ll post back here if I ever find a solution.

I ended up opening a case with the vendor (ASUS) who have so far been totally unhelpful and treated this like it’s a standard problem with the output from a graphics card not working at all!

For anyone following along, I complained a few times that the support person was ignoring what I’d reported and instead trying to get me to return the graphics card as if it wasn’t working at all. Fortunately ASUS assigned another person to the case who appears to be taking my report seriously. We’ll see.

The second ASUS support person suggested that I disable “Fastboot” in the BIOS. This is actually suggested in the article I linked previously.

I must have missed this when troubleshooting previously as it now acts as a work-around. I can sometimes get to the BIOS on boot and always see the GRUB menu.

The problem is that this is a hack not a solution - it significantly slows booting the computer!

I’m no expert, but I believe the root cause of this problem is due to the way the graphics cards initializes outputs. For some reason HDMI is started first and Displayport outputs later (even though this is a Gaming graphics card!).
By disabling fastboot the PC boots so slow that there’s enough time for the graphics card to initialise the Displayport output.

I’m not content to leave this just yet, so will see what ASUS support say.

I thought of another hack which I can do because my monitor supports both HDMI and Displayport (Displayport is slightly better). I could connect both to the same graphics card but have my operating systems only output to the Displayport screen. In theory this should mean I’d have the boot sequence and GRUB displayed via the HDMI output and then when the OS initalizes the monitor would lose HDMI and gain a Displayport signal and switch to that.

If you want to get into bios and fastboot is enabled I think it may be impossible unless you are able to get into bios from the OS.

IME with fastboot enabled one cannot even get into the grub boot menu. I had to drain the cmos on my motherboard to disable fastboot once in the past. It seems windows is able to boot into the bios even with fastboot enabled, but linux is not.

Hey @computersavvy that’s surprising - what’s the difference between Windows and Linux in this case? (EDIT: In the link I sent above people using only windows report the same problem.)

For what it’s worth I’m dual booting with GRUB2, I’ve never tried only installing Windows (I use Linux much more often).

As far as I can tell the boot process with fastboot directly launches the boot loader for both, but does not allow a pause at the grub boot menu and instead immediately starts loading the OS.
The system where I had the problem was a desktop with both windows and fedora. When I inadvertently turned fastboot on I could only boot the last OS started (fedora) and could not boot into bios nor see the grub menu, so was unable to boot windows (it bypassed all keyboard input before the OS was booted).

Since the default in bios for that mobo was fastboot disabled I was able to drain the cmos so settings were restored to default (with fastboot off) which then allowed me back to the normal booting.

In my research for the solution I found that windows allows turning fastboot on or off from within the settings control panel, though fedora has no such option.

Ok I didn’t know that.

If you booted your last OS, then rebooted without powering down, was the BIOS splash screen and GRUB displayed? If not your problem has different symptoms to mine.

As far as I can see disabling fastboot simply slows the boot process so much that the graphics card initalizes all outputs before the BIOS splash screen times out. This means GRUB is consistently visible.

Although I suppose that doesn’t explain why if fastboot is enabled and I press the “delete” key it goes to the BIOS and “stalls” but nothing is ever displayed on the screen, even if I wait minutes. Hmm.

ASUS have given me the option of raising a feature through a document they have sent me. It will probably be ignored and it may never make it to my own Graphics card’s firmware but what the heck, I’ll submit it.