デフォルトでS3サスペンドがサポートされていない

Ubuntu 18.04を使用していると、Thinkpad X1 Carbonでサスペンドに問題が発生します。蓋を閉じても正しくサスペンドされず、電力消費が続き、ノートPCが熱くなります。

原因は、第6世代X1 CarbonがS0i3(Windows Modern Standbyとしても知られる)をサポートしている一方で、S3スリープ状態をサポートしていないことです。

S0i3スリープのサポート

調査の結果、以下の手順で回避策が見つかりました:

  1. カーネルパラメータに以下を追加してS0i3スリープを有効化 これにより、蓋の開閉によるウェイクアップ/レジュームが無効化されます。

    1
    
    acpi.ec_no_wakeup=1
    
  2. BIOS設定でThunderbolt BIOS Assist Modeを有効化 Config -> Thunderbolt BIOS Assist Mode - "Enabled" に設定します。

  3. SDカードリーダーを無効化

この問題の詳細は以下を参照してください:

X1 Carbon Gen 6 cannot enter deep sleep (S3 state aka Suspend-to-RAM) on Linux Suspend issues X1 Carbon 6th gen S0i3 sleep broken

この回避策は後日テストし、結果を更新します。

もう一つの回避策がhttps://delta-xi.net/#056にありますが、こちらは未検証です。

テスト結果

8時間以上スリープさせたところ、バッテリーは99%から91%までしか減らず、温度も低いままでした。この回避策は有効だと思います。