You are not logged in.
I have a Yoga X1 3rd gen, I got sleep to finally work thanks to the instructions found in this discussion. The initial patch did not work, despite applying all the changes manually I got a segmentation fault when compiling it. The latest shorter patch worked besides Hunk 2 which I applied manually (the two One lines). I wrote a summary [here](https://gist.github.com/javanna/38d019a … 597bc7ec73) with all the steps that worked for me in one place. I am running Fedora 28.
Thanks for the hard work, I was really frustrated as I have just bought the Yoga and it was annoying to discover that sleep does not work at all on Linux. Hopefully Lenovo fix this at some point.
Offline
Hi there, I have a X1C6 and am super grateful for the wiki entry on this for the X1G6. This is my first time with installing arch and I'm using bootctl instead of grub, however, and would greatly appreciate if anyone could verify where/how I reflect the changes in steps 9 and 10 of esonn's tutorial but for a bootctl based system?
I would assume they look like this, inside of my `/boot/loader/entries/arch.conf/`:
title Arch Linux
linux /vmlinuz-linux
initrd /acpi_override
initrd /intel-ucode.img
initrd /initramfs-linux.img
options cryptdevice=UUID=93c0a958-43f5-4e3a-94ed-007881c2a098:cryptlvm root=/dev/mapper/main_group-root mem_sleep_default=deep quiet rw
where step 9 translates to
initrd /acpi_override
in line 3, and step 10 translates to adding
mem_sleep_default=deep
right before the end of the last line.
Last edited by baudrillard (2018-07-16 12:15:52)
Offline
For grub (didn't see it in the responses), rather than directly hacking grub.cfg which will be overwritten with updates if you use grub-mkconfig, in:
/etc/default/grub
GRUB_EARLY_INITRD_LINUX_CUSTOM=acpi_override
GRUB_CMDLINE_LINUX_DEFAULT="quiet mem_sleep_default=deep"
which after grub-mkconfig gives you lines in:
/boot/grub/grub.cfg
initrd /boot/intel-ucode.img /boot/acpi_override /boot/initramfs-linux.img
It would probably be a great idea to combine the patch with a sed script that removes the ONE lines, since those are the lines causing patch to puke. Now, I don't know how the DSDT tables are constructed -- does the bios recreate that table everytime a bios value gets changed, or is it a standard machine language bit that can be overwritten, but checks the BIOS values stored `somewhere'?
The practical question is, is this process required on every change to BIOS, or whenever the BIOS gets reflashed?
By the way, this also solves the problem of hybrid-suspend --- without this, hybrid-suspend goes straight to hibernate, maybe there would be a way to improve the systemd stub to work without it, not sure.
Last edited by chimpanzee (2018-07-30 14:59:17)
Offline
Looks like Lenovo put a couple of updates. 1.28 last night or the night before and 1.30 today. Anyone try it yet? I'm flashing 1.30 now.
Offline
Looks like Lenovo put a couple of updates. 1.28 last night or the night before and 1.30 today. Anyone try it yet? I'm flashing 1.30 now.
Yes, I'm on 1.30 right now. They have included an option so toggle S3 instead of Si03 for Linux users. How very nice of them.
I can confirm it works, /sys/power/mem_sleep shows "s2idle [deep]" with the acpi DSDT patch not applied.
Here is the official changelog for 1.28 and 1.30:
1.30
UEFI: 1.30 / ECP: 1.08
- (New) Support Optimized Sleep State for Linux in ThinkPad Setup - Config - Power.
(Note) "Linux" option is optimized for Linux OS, Windows user must select
"Windows 10" option.
1.28
UEFI: 1.28 / ECP: 1.08
- (Fix) Improve power control.
Offline
I can also confirmed it is working nicely after selecting Linux in BIOS.
Offline
From a full charge, in deep sleep, my X1 lost 4% after about 10 hours or so. This BIOS update squashes my last major beef with the X1!
Offline
Anyone tried this on the X1 tablet (gen3)?
Offline
Any tips when I've successfully followed the 11-step guide at Delta Xi and yet my 3rd Gen X1 Yoga is using 10% battery in sleep mode per hour?
output of:
dmesg | grep ACPI | grep supports
cat /sys/power/mem_sleep
[ 0.155457] ACPI: (supports S0 S3 S4 S5)
[s2idle] deep
I've also turned off secure boot in the BIOS as well as Wake on LAN and this USB charge-when-sleep-thing.
Offline
I'd recommend against using this, and instead using a recent BIOS and turning sleep in BIOS to "Linux".
Offline
Any tips when I've successfully followed the 11-step guide at Delta Xi and yet my 3rd Gen X1 Yoga is using 10% battery in sleep mode per hour?
output of:
dmesg | grep ACPI | grep supports cat /sys/power/mem_sleep [ 0.155457] ACPI: (supports S0 S3 S4 S5) [s2idle] deep
I've also turned off secure boot in the BIOS as well as Wake on LAN and this USB charge-when-sleep-thing.
Looks like you're not using S3 when suspending. Should look like this:
$ cat /sys/power/mem_sleep
s2idle [deep]
Probably you forgot to add this (step 10) to your grub.cfg:
GRUB_CMDLINE_LINUX_DEFAULT="quiet mem_sleep_default=deep"
Also S3 sleep works on the X1 tablet gen3. Used the patch provided by mr-sour (https://gist.github.com/mr-sour/e6e4f46 … edd5181c09), however, added the changes manually.
Last edited by cass00 (2018-11-06 14:42:23)
Offline
Should look like this:
$ cat /sys/power/mem_sleep
s2idle [deep]
Probably you forgot to add this (step 10) to your grub.cfg:
GRUB_CMDLINE_LINUX_DEFAULT="quiet mem_sleep_default=deep"
Oh god the brackets, didn't notice them. Yeah step 10 was it, thanks!! I also had to run "sudo update-grub" and then redo step 9 because step 10 overwrote /boot/grub/grub.cfg so maybe the guide could be improved a bit there. Anyway I'm a happy camper now finally!
Offline
Will try again based on your blog, but it seems many can't get it to work for some reason: https://gitlab.freedesktop.org/drm/amd/-/issues/1230
Offline