Fedora 30@ThinkPad T490s: Suspend Error

Nach der Installation von Fedora 30 und TLP auf dem Lenovo ThinkPad T490s funktioniert der Wechsel in den Standby (Suspend to RAM; STR) beim Schließen des Notebookdeckels oder Nutzung des Suspend-Buttons nicht. Stattdessen gibt es nur eine Fehlermeldung im Journal:

pci_pm_suspend(): hcd_pci_suspend+0x0/0x30 returns -16
dpm_run_callback(): pci_pm_suspend+0x0/0x170 returns -16
PM: Device 0000:00:14.0 failed to suspend async: error -16
PM: Some devices failed to suspend, or early wake event detected

Um diesen Fehler im xhci Controller zu beheben, muss nur eine Datei, etwa mit dem Namen „xhci.sh“, im Verzeichnis „/usr/lib/systemd/system-sleep/“ mit dem folgenden Inhalt angelegt werden:

#!/bin/sh

if [ "${1}" == "pre" ]; then
  # Do the thing you want before suspend here, e.g.:
  echo "Disable broken xhci module before suspending at $(date)..." > /tmp/systemd_suspend_test
  grep XHC.*enable /proc/acpi/wakeup && echo XHC > /proc/acpi/wakeup
elif [ "${1}" == "post" ]; then
  # Do the thing you want after resume here, e.g.:
  echo "Enable broken xhci module at wakeup from $(date)" >> /tmp/systemd_suspend_test
  grep XHC.*disable /proc/acpi/wakeup && echo XHC > /proc/acpi/wakeup
fi

Anschließend die Datei noch ausführbar machen:

sudo chmod +x /usr/lib/systemd/system-sleep/xhci.sh

Im Anschluss sollte sich das ThinkPad T490s normal in den Standby versetzen lassen. Der Batterieverbrauch liegt dann etwa bei 15% innerhalb von 24 Stunden, was zu einer Standbyzeit von etwa 6,7 Tagen führt.

Quellen:

Ein Gedanke zu „Fedora 30@ThinkPad T490s: Suspend Error“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert