ignore_ppc が動作を停止しました

ignore_ppc が動作を停止しました

多くの Dell ラップトップは、バッテリーまたは充電器が正常に動作していないと BIOS が判断すると、最大 CPU 周波数を最低レベルに設定するという過度に厳格な BIOS ポリシーに悩まされています。

私は使っていた

echo 1 > /sys/module/processor/parameters/ignore_ppc
echo -n 2900000 >  /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo -n 2900000 >  /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
echo -n 2900000 >  /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq
echo -n 2900000 >  /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq

サスペンド/休止状態後に CPU 周波数が最小値で固定される状態から抜け出します。

しかし、Debian 10 から Debian bullseyse/sid にアップデートした後、これは動作しなくなりました。

# echo -n 2900000 >  /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
# cat  /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
800000

これまでに見つけた解決策は、acpi_cpufreq モジュールをリロードすることです。

# rmmod acpi_cpufreq
# modprobe acpi_cpufreq

実行後

# echo -n 2900000 >  /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

モジュールをリロードすると、scaling_max_freq に以前設定された値が含まれるようになります。

関連情報