Linux sleep issues on my hardware

Hi all, this is my first time posting on the forum, and I am here after having built my first PC.

I’ve not had the chance to install any operating system yet as I have been using LiveISO environments to run Linux benchmarking tools on the CPU/GPU and messing with BIOS settings to feel things out and see if everything is working as it should, and for the most part, it does just work, except for sleep mode apparently which has me stumped.

The only thing I can think of is updating my BIOS, I have not updated it at all but I feel like updating it would be taking a shot in the dark, I don’t know if doing so will actually fix my issue, and the stock BIOS is otherwise working fine, making me reluctant to actually update the thing.

I am using a motherboard from MSI, which had their source code and keys stolen not long ago, and from what I understand, it may one day be possible to install an unofficial BIOS, I’d rather try and keep that option open, it is my hardware after all, I should be able to install whatever I choose as long as I understand the risks and I trust the source, right? I mostly bring this up because I don’t know if it is possible for an official BIOS update to restrict me from doing this.

TL;DR - My sleep mode doesn’t seem to work in Linux, BIOS updates are the only thing I can think of that could maybe fix it, but don’t want to update unless absolutely necessary.


INFO

MB: MSI PRO B650-P WIFI
CPU Ryzen 5 7600
MEM: 32GB DDR5-6000

BIOS Ver: E7D78AMS.110
BIOS Date: 10/08/2022

BIOS updates link: PRO B650-P WIFI

DESCRIPTION

I have a USB stick with Ventoy for booting LiveISO images, I have Debian 12 KDE, the latest archiso as of July, the latest system-rescue image, and a partition for storing files while booted into a live environment.

I boot into the Debian 12 KDE live image, and upon arriving at the desktop, I open the start menu and press sleep, I no longer get a display, neither from my 6800 XT nor the onboard graphics, yet all the fans keep spinning and RGB lights are still on. I cannot get a working display after this, pressing buttons on my keyboard or the power button doesn’t give me a display, I cannot recover from this unless I hard power off.

TROUBLESHOOTING

  • This link seems to describe my problem, GPP0 is enabled for me, but the listed solution does not resolve my issue.
  • This link seemed relevant, but I only discovered that s2idle is my only supported mode.
  • Various web searches suggested updating BIOS, some suggested changing settings in BIOS, but using my BIOS’s built in search returns nothing for “sleep” nor “idle”.

LOGGING

These dmesg errors show up on screen before booting most live ISOs:

And I tried seeing what log info I get from dmesg during “sleep” by running a while loop with:

sudo dmesg -c

To run forever and append it to a file, I cleared the existing dmesg messages beforehand, I pressed buttons on my wireless keyboard and pressed the power button to try and wake it which still didn’t give a display, but I did get this:

OTHER

On the archiso, I run systemctl suspend and the display is gone, but fans/lights are still on like before, If I then press buttons on the keyboard to “wake” it, and then push power, the PC does power off, but if I don’t press anything on the keyboard, I have to press power twice to power it off, first time “wakes” it, second time powers it off. This suggests to me that sleep/wake does “work”, but waking gives no display at all for some reason, making me believe it could be a graphical/display related issue rather than a BIOS related issue.


I hope this is somewhat legible and organized, I am mainly hoping to better understand what is going on or why, so any help is much appreciated!

While using a live image, how are you running or installing the GPU software? It is my understanding that this is required for sleep mode, no idea why.

Try making a small 10GB partition, install a Linux system, and only install the video card software. I would try the open-source AMDGPU.

Alternatively, try entering

lspci -nnk

in a live environnent. Since amd gpu software is built into the kernel, it may already be working. I also have issues with sleep mode, lots of corrupted text on kde login screen after waking from sleep, and some other odd issues sometimes that ultimately require a reboot.

I believe GPU software doesn’t usually need to be explicitly installed, especially with Linux and AMD graphics, as you said the amdgpu driver is already in the kernel and it is the driver in use according to the lspci command, this is true for both the 6800 XT and the CPU’s integrated graphics.

I don’t see why installing a system would make a difference, unless a newer kernel resolves the issue, and Arch Linux does already have a newer kernel available compared to the one on the latest live iso.

I did think of something else though, I booted into the archiso and added the “nomodeset” kernel parameter, followed by running systemctl suspend and it appeared to go to sleep, but the display did not actually turn off, neither did any of the fans or RGB lighting. I was then able to successfully wake the computer via keystroke, but again, the display never turned off.

One more thing I noticed is that disconnecting the display port cable from the graphics card and reconnecting does not give me a display either, with and without the “nomodeset” parameter.

Hey again, just a quick follow up on my situation, I looked around for videos of MSI support for Linux, sadly I didn’t find anything promising, but I did find a video of someone setting up Wake-On-Lan with an MSI motherboard and Linux and I couldn’t help but notice his BIOS screen:

Notice that it says “Resume From S3/S4/S5” for PS/2 mouse and keyboard? My BIOS doesn’t have any options like that!

Could it be because my motherboard doesn’t have any PS/2 connectors? Or could it really be because of lack of a BIOS update?

Just a reminder that my BIOS build date is 10/08/2022, and the Ryzen 5 7600 was released a few months after that, on 1/14/2023 according to AMD’s website.

How likely is it that my problem is caused by the BIOS being older than the CPU I am running? Or how likely is it that by updating the BIOS I will then see some similar resume options for my CPU?

I actually managed to resolve this! Though it’s not a great solution.

I had enabled the EXPO profile on my memory a while ago and reduced the SoC voltage since I’d heard of the exploding X3D chips, memtest86+ gave no errors after a full pass, I saw the advertised 6000 MT/s in inxi and I thought nothing more of it.

Now I figured I’d disable EXPO to see if that was the culprit, and that was exactly it, I disabled it in my motherboard and set SoC voltage back to auto and I was down to just 4800 MT/s, but I now see [deep] is available in /sys/power/mem_sleep!

I ran systemctl suspend at this point, the display turned off and all the RGB lighting and fans were turned off as well, I pressed power and everything came back on as expected.

I did go ahead and install Arch to my system before turning off EXPO, just to see if the latest zen kernel would help, which it didn’t, kind of sucks that I can’t have both working deep sleep and EXPO enabled like I was expecting, but I’m just glad most of everything else actually works so I can overlook it for now.

1 Like

I have one final concern regarding BIOS updates.

https://us.msi.com/Motherboard/PRO-B650-P-WIFI/support#bios

I see that there have been more BIOS updates for my board since I made this post, the current latest non-beta version is 7D78v17 and it says “Mitigate security issue” under the update info.

Could that have anything to do with the previously mentioned MSI hack?

How likely is it that by updating to this newer BIOS version that I will be locked out of reverting to an older BIOS version, or even an “alternative” BIOS if there were such a thing?

I want to go with the newer AGESA version, the supposedly better DDR5 memory compatibility, and hopefully working EXPO + sleep but want to fully understand the implications of BIOS updates before I do so.

Final update: I went ahead and updated the BIOS and EXPO with sleep seems to work now! It did get stuck the very first time but after that sleep seems fine. I also went ahead and lowered SoC voltage to 1.25V manually, and someone on the MSI forums said they downgraded from the version I just updated to so I will take their word for it.

This topic was automatically closed 273 days after the last reply. New replies are no longer allowed.