Dell Latitude 7390タッチスクリーンのPopOS / Ubuntu 22.04でウェイクアップデバイスを無効にすることはできません。

Dell Latitude 7390タッチスクリーンのPopOS / Ubuntu 22.04でウェイクアップデバイスを無効にすることはできません。

私はDell Latitude 7390 2-in-1タッチスクリーンノートパソコンを使用しています。ここにPopOS 22.04をインストールしました(Ubuntu 22.04ベースですが、より高いカーネル:5.19.0)。これで、ノートブックを一時停止状態にするたびに(カバーを閉じるなど)、ランダムに一時停止状態が終了し、電力が消費され続けます。

この問題を解決するために、次のコマンドを使用してすべてのウェイクアップデバイス(電源ボタンを除く)を無効にしてみました。

for x in $(grep enabled /proc/acpi/wakeup | cut -f1 | grep -v PBTN)
do
  echo $x | sudo tee /proc/acpi/wakeup
done

しかし、効果はありません。ノートブックはキーボードを使用するか、カバーを開いてスリープ/サスペンド状態を解除できます。電源ボタンだけを使って強制的に省電力モードを終了したいです。

更新:すべてのウェイクアップデバイスが無効になっても目が覚めます!

ノートブックのすべてのウェイクアップデバイスを無効にしても、/proc/acpi/wakeupキーボードキーを押すとラップトップが起動し続けます(蓋を開いたり電源ボタンを押しても目が覚めなくても)。

アップデート:加速度計を無効にする方法は?

ノートパソコンを振るとノートパソコンも目覚めることがわかりました!バックパックに入れるとこんなことがたくさん発生します。これは加速度計のウェイクアップによるものです。したがって、加速度計自体を無効にすると、この問題は消えます。

だから私は代替質問を投げます。加速度計を無効にする方法は?

関連センサーをオフロードするカーネルモジュールが利用可能でなければなりませんが、modprobe -r module_nameCatch-22の状況に閉じ込められています。それらはすべて互いに依存しているように見え、一部にはリストされていない依存関係があります。以下は重要なセンサーのリストです。

$ lsmod | grep sensor

Module                  Size  Used by
hid_sensor_accel_3d    20480  1
hid_sensor_gyro_3d     20480  0
hid_sensor_magn_3d     20480  1
hid_sensor_custom_intel_hinge    16384  0
hid_sensor_rotation    20480  0
hid_sensor_incl_3d     20480  0
hid_sensor_trigger     20480  12 hid_sensor_gyro_3d,hid_sensor_custom_intel_hinge,hid_sensor_incl_3d,hid_sensor_accel_3d,hid_sensor_magn_3d,hid_sensor_rotation
industrialio_triggered_buffer    16384  1 hid_sensor_trigger
hid_sensor_iio_common    24576  7 hid_sensor_gyro_3d,hid_sensor_trigger,hid_sensor_custom_intel_hinge,hid_sensor_incl_3d,hid_sensor_accel_3d,hid_sensor_magn_3d,hid_sensor_rotation
industrialio          102400  11 industrialio_triggered_buffer,hid_sensor_gyro_3d,hid_sensor_trigger,hid_sensor_custom_intel_hinge,hid_sensor_incl_3d,kfifo_buf,hid_sensor_accel_3d,hid_sensor_magn_3d,hid_sensor_rotation
hid_sensor_custom      28672  0
hid_sensor_hub         28672  9 hid_sensor_gyro_3d,hid_sensor_trigger,hid_sensor_iio_common,hid_sensor_custom_intel_hinge,hid_sensor_incl_3d,hid_sensor_accel_3d,hid_sensor_magn_3d,hid_sensor_rotation,hid_sensor_custom
hid                   155648  7 i2c_hid,wacom,usbhid,hid_multitouch,hid_sensor_hub,intel_ishtp_hid,hid_generic

一部のセンサーは「使用先」列に数字で表示されます(ただし、そのセンサーを使用するモジュールは指定しません)。したがって、削除は失敗します。hid_sensor_accel_3dそのセンサーを取り除きたいです。しかし、それは不可能です!

ベストアンサー1

これで質問は「カーネルモジュールを無効にする方法」であり、これに答えます。

  • あなたはファイルに書きます -/etc/modprobe.d/blacklist.conf

最初のオプション:

  • 別の行に入力してください。blacklist hid_sensor_accel_3d

2番目のオプション:

再起動後もブラックリストモジュールが残っている場合は、モジュールを「偽」インストールする必要があります。で確認できますlsmod

  • 別の行に入力してください。install hid_sensor_accel_3d /bin/true

次に、両方のオプションを実行します。

  • initramfsの再生成 -update-initramfs -u
  • 再起動

おすすめ記事