You are not logged in.

#101 2018-07-15 19:04:47

javanna
Member
Registered: 2018-07-15
Posts: 1

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

#102 2018-07-16 12:09:34

baudrillard
Member
Registered: 2018-07-16
Posts: 4

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

#103 2018-07-30 14:56:40

chimpanzee
Member
Registered: 2018-07-30
Posts: 4

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

#104 2018-09-07 23:11:46

h54
Member
Registered: 2011-11-22
Posts: 96

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

#105 2018-09-07 23:20:28

mrfaber
Member
Registered: 2016-08-09
Posts: 25

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

h54 wrote:

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

#106 2018-09-08 02:02:59

h54
Member
Registered: 2011-11-22
Posts: 96

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

I can also confirmed it is working nicely after selecting Linux in BIOS.

Offline

#107 2018-09-08 16:34:18

h54
Member
Registered: 2011-11-22
Posts: 96

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

#108 2018-09-19 11:03:33

cass00
Member
Registered: 2015-10-10
Posts: 4

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

Anyone tried this on the X1 tablet (gen3)?

Offline

#109 2018-11-03 09:51:06

FrodeN
Member
Registered: 2018-11-03
Posts: 2

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

#110 2018-11-05 20:50:56

Ranguvar
Member
Registered: 2008-08-12
Posts: 2,549

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

I'd recommend against using this, and instead using a recent BIOS and turning sleep in BIOS to "Linux".

Offline

#111 2018-11-06 14:41:33

cass00
Member
Registered: 2015-10-10
Posts: 4

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

FrodeN wrote:

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

#112 2018-11-18 07:35:17

FrodeN
Member
Registered: 2018-11-03
Posts: 2

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

cass00 wrote:

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

#113 2021-05-05 05:07:13

4internetanonymity
Member
Registered: 2009-07-09
Posts: 56

Re: [SOLVED] Lenovo X1C6 / X1Y3 (2018): No deep sleep (S3)?

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

Board footer

Powered by FluxBB