Hello all.
When i boot into OpenSUSE on my laptop with an AMD Ryzen 2300U, only sometimes will it detect the right resolution and properly boot in. It will show some quick “[OK] x finished starting”, and then load into an “HP Secure Boot” menu, with the correct resolution. All of the other times, which is most of the time, the laptop will boot in, show some quick “[OK] x finished starting”, and then it will be a completely blank screen. It is good to note a few things;
1 - This happens on every linux distro i have used; I have used Arch, Porteus (slackware distro), OpenSUSE, and Debian on this machine. They all show the same symptoms of…
“nomodeset” works all of the time, with the lower display resolution as intended
“AMDGPU” works 20% of the time, with the other 80% not showing a display
Xorg and Wayland having nothing to do with the issue; while Xorg and Wayland are affected, they are not a cause of the issue, as this happens in runlevel 3 (terminal mode)
lsmod shows no differences between when AMDGPU works and when AMDGPU doesnt work, except for the amount of things “used by” amdgpu, which usually rises when AMDGPU works.
Xorg logs and dmesg usually dont help other people solve the issue, however i can provide them if needed.
All other distros (Arch, Porteus, Debian, etc) that I’ve tried have been booted from a Live USB. openSUSE from the Live USB also suffered the same issues, but its good to note that i have openSUSE directly installed on the computer, and I am not booting from LiveUSB anymore.
If you need any more information about the system, let me know!
Grub (selection menu) has no issues displaying; the resolution is a bit jank, but its visible.
Once i boot in, when things seem to be starting up, the issue starts there. Nothing i do afterwards will cause the display to go back to normal except for a reboot.
I am changing nomodeset by pressing E in the grub selection menu. Removing nomodeset makes the amdgpu driver work, and that amdgpu driver works 20% of the time as intended.
Keeping nomodeset makes everything work all of the time, with the butchered display resolution (as intended).
Great, it’s not something to do with not having early KMS as your initramfs includes the amdpgu module.
A little more info:
# boot without nomodeset and reproduce issue, let the problematic boot finish by waiting a few minutes before rebooting
# boot with nomodeset as normal
sudo journalctl -b -1 -g amdgpu
Mar 11 07:39:27 localhost kernel: amdgpu 0000:04:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0xffff
Mar 11 07:39:27 localhost kernel: amdgpu 0000:04:00.0: [drm] Unsupported Connector type:21!
(repeated 4 times)...
I did some quick web searches and it turned up everything from kernel bugs to BIOS issues.
The easiest one was to disable legacy mode in BIOS.
Perhaps you could try that and if that doesn’t work, reset the BIOS to its defaults?
@eggbladder can you also show cat /proc/cmdline the grub boot options fbdev=1 or simplefb=1 the other option is to try disabling the Display Core via the grub option amdgpu.dc=0 and see if that makes a difference.
Alright, that was there because that was the only way i could figure out to get amdgpu to load at all. Removing those 4, adding fbdev=1 and simplefb=1, and then setting amdgpu.dc to 0, without modesetting does this:
boot into grub
set applicable optons for boot (did not add nomodesetting)
“welcome to openSUSE tumbleweed”
does the [ OK ] stuff
freezes
It is good to note that, despite seeing a frozen screen, i am still able to press ctrl+alt+f3 and login as my user, and i am able to play that obnoxious beep by spamming backspace.
While logging in, my screen was still frozen. I could not see what i was doing, but i was able to do it.
Booting without anything regarding AMD or Radeon, without fbdev=1 and without simplefb=1, and with amdgpu.dc=0, and no “nomodesetting”, the system shows the same symptoms as this right here.