![scaling_max_freq sysファイルがありません](https://rvso.com/image/170269/scaling_max_freq%20sys%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93.png)
Linux sys ファイルを確認しましたが、次のものはありません:
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
私のカーネル設定には CONFIG_X86_INTEL_PSTATE がなく、acpi-cpufreq ドライバーがまだ使用されていません。
ここでの sys ファイルは intel_pstate が有効な場合にのみ作成されますか?
CentOS や Ubuntu ではなく、yocto 環境を使用しています。
答え1
短い答え システムにパスが表示されない理由は、cpufreq ドライバーがロードされていないためです。このドライバーは、sysfs に /sys/devices/system/cpu/cpuY/cpufreq を作成し、値を設定します。CONFIG_X86_INTEL_PSTATE なしでカーネルをコンパイルしようとすると、pcc_freq および acpi_freq ドライバーのコンパイル前提条件によって強制的に有効にされるため、ドライバーをコンパイルするにはこれを設定する必要があると思います。
詳細情報 drivers/cpufreq/ のカーネル コードを見ると、sysfs の scaling_max_freq エントリが cpufreq.c によって定義され、管理されていることがわかります。cpufreq 機能を実装するドライバーは 2 つあります。pcc_cpufreqそしてacpi_cpufreqパスを初期化するには、cpufreq ドライバーの 1 つをロードする必要があります。
カーネル設定の関連フィールド:
#
# CPU frequency scaling drivers
#
CONFIG_X86_INTEL_PSTATE=y
CONFIG_X86_PCC_CPUFREQ=m
CONFIG_X86_ACPI_CPUFREQ=m
システムを確認してくださいpcc_cpufreqドライバが利用可能な場合は、ロードせずにcpufreqパスを使用する必要がありますacpi_cpufreqただし、カーネル構成ファイルで CONFIG_X86_INTEL_PSTATE が設定されていないとおっしゃっているので、すべての cpufreq ドライバーが欠落している可能性があります。
お役に立てれば。