6

A few months ago I installed Ubuntu 21.10 on a Lenovo Yoga 6. Within the last couple weeks the laptop no longer wakes from sleep and I have to hold the power button to shut it down and reboot.

How can I troubleshoot this issue?

Are there specific configs to look at that may have changed with recent OS updates? Could recent Windows updates have made hardware tweaks that are causing this? (I've seen issues where Windows can set hardware level settings that cause havoc with Ubuntu on reboot.)

Related threads focused on older versions of Ubuntu suggest that downgrading the kernel might help. I'd like to avoid this if possible.

Thanks for any pointers.

4 Answers4

2

Doing more searching, I came across a thread on the Gentoo forum from a user with the same problem as me. They downgraded to an older kernel and were able to resolve their issue that way.

I tried doing the same, downgrading from 5.13.0-28-generic to 5.13.0-27-generic. The older kernel once again allowed my laptop to wake from sleep.

I'll keep using this older kernel until a future kernel release fixes whatever is causing Ubuntu to lose sleep support when paired with this particular laptop. I still don't have an answer as to what the problem is or a good troubleshooting option other than keep searching various forums in the hopes of finding someone with the same issue.

1

I was facing the same issue and tried with all the versions of the driver that Kubuntu was offering: 390, 470 and 510. None of them fixed the issue. After digging a bit, I found a solution in a post on an Nvidia forum.

It seems that the 470 driver started using Systemd to handle sleep, but it is buggy. The fix that worked for me was:

Disable Nvidia Systemd services

sudo systemctl stop nvidia-suspend.service
sudo systemctl stop nvidia-hibernate.service
sudo systemctl stop nvidia-resume.service

sudo systemctl disable nvidia-suspend.service sudo systemctl disable nvidia-hibernate.service sudo systemctl disable nvidia-resume.service

Remove Nvidia Systemd script

sudo rm /lib/systemd/system-sleep/nvidia

Finally, reboot.

Note: This fix worked for me with the 470 driver and I didn't bother upgrading to the 510 driver, so I don't know if these changes will work with that version.

Igor Rodriguez
  • 236
  • 2
  • 5
1

I had the same issue, so I edited /etc/default/grub and changed GRUB_CMDLINE_LINUX="" to

GRUB_CMDLINE_LINUX="acpi_enforce_resources=lax i915.enable_dc=0 intel_idle.max_cstate=1"

This worked for me.

sotirov
  • 4,379
0

I had the same problem on:

  • Lenovo Yoga 6 13ALC6 – has AMD processor and graphics chip (Ryzen 5 5500u with Radeon)
  • Ubuntu 20.04 LTS
  • Kernel version 5.13.0-52-generic

I followed the instructions in this Reddit comment, copied below as block quotes, to access advanced settings in the UEFI menu. The original post was about the Yoga 9i but since it works for the Yoga 6 I suspect it will work for several similar Yoga models. Text in square brackets is mine.

  1. Make sure one-key battery is off. [This is accessible from the normal UEFI menu which you can enter by holding F2 or Fn+F2 as soon as you power on. For good measure, I also disabled Secure Boot and disabled HotKey mode. The latter, when enabled, means you have to hold the Fn key to use the function keys, which may not work for the following steps.]

  2. Boot to uefi [i.e. hold F2 as above and then], press the power button to turn it off

  3. (Press these keys while the laptop is off; you can slide your finger through it to be faster)

    F1 1 Q A Z F2 2 W S X F3 3 E D C F4 4 R F V F5 5 T G B F6 6 Y H N
    
  4. Press the power button and spam F2 to boot to uefi [Apparently it is important to quickly and repeatedly press F2 at this point, not just press and hold like before.]

  5. It should show debug bios with all the options (ALL OPTIONS)

Once I got to the advanced menu, I navigated across to the "AMD PBS" tab and then down to the "S3/Modern Standby Support" setting. I changed it from "Modern Standby Enable" to "S3 Enable". Apparently "modern standby" is a special hardware mode that modern Windows uses to sleep, but the regular Linux firmware/kernel/drivers/whatever only support the standard "S3" mode instead.

Then my system was able to wake up from a suspended state by opening the lid or pressing the power button. Hope this helps.

shardulc
  • 121