Garuda - M1LRYANGAME401

Fix Suspend Breaking Immediately

Testing "Fix"

I was using a gigabyte b550i aorus motherboard that caused this, if you have this mobo or a variant you have to disable GPP0 wakeup which is a GPP bridge to the NVMe drive in M.2 slot.

Check your wakeup table using cat /proc/acpi/wakeup and look at GPP0. It should say *enabled. Using sudo /bin/sh -c '/bin/echo GPP0 > /proc/acpi/wakeup' you can set it to *disabled. PC should suspend normally then.

If it does then you can use a systemd (if you use it) service to run that command at boot.

I use this and it works.

[Unit]
Description=Fix for the suspend issue
[Service]
Type=oneshot
ExecStart=/bin/sh -c "echo GPP0 > /proc/acpi/wakeup"
[Install]
WantedBy=multi-user.target

Creating Service to Start on Boot

Your .service file should look like this:

[Unit]
Description=Fix for the suspend issue
[Service]
Type=oneshot
ExecStart=/bin/sh -c "echo GPP0 > /proc/acpi/wakeup"
[Install]
WantedBy=multi-user.target

Now, take a few more steps to enable and use the .service file:

  1. Place it in /etc/systemd/system folder with a name like disableGPP0startup.service

  2. Start it:

    sudo systemctl start disableGPP0startup.service
  3. Enable it to run at boot:

    sudo systemctl enable disableGPP0startup.service