No hay ningún archivo sys scaling_max_freq

No hay ningún archivo sys scaling_max_freq

Revisé mi archivo del sistema Linux, no tengo:

/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

La configuración de mi kernel no tiene CONFIG_X86_INTEL_PSTATE y todavía no usaba el controlador acpi-cpufreq.

¿El archivo sys aquí solo se creó cuando intel_pstate está habilitado?

Estoy usando el entorno yocto, no CentOS o Ubuntu.

Respuesta1

Respuesta corta La razón por la que la ruta no se muestra en su sistema es que el controlador cpufreq no está cargado. Este controlador es el que crea /sys/devices/system/cpu/cpuY/cpufreq en sysfs y lo completa con valores. Al intentar compilar el kernel sin CONFIG_X86_INTEL_PSTATE, los requisitos previos de compilación del controlador pcc_freq y acpi_freq lo obligan a habilitarlo, por lo que supongo que debe configurarlo para poder compilar el controlador.

Más detalles Al observar el código del kernel en drivers/cpufreq/, podemos ver que la entrada scaling_max_freq en sysfs está definida y mantenida por cpufreq.c. Hay dos controladores que implementan la funcionalidad cpufreq:pcc_cpufreqyacpi_cpufreq. Para que se inicialice la ruta, se debe cargar uno de los controladores cpufreq.

Campos relevantes en la configuración del kernel:

#
# CPU frequency scaling drivers
#
CONFIG_X86_INTEL_PSTATE=y
CONFIG_X86_PCC_CPUFREQ=m
CONFIG_X86_ACPI_CPUFREQ=m

Verifique su sistema parapcc_cpufreqconductor. Si está disponible deberías usar la ruta cpufreq sin cargaracpi_cpufreq, pero como dijiste que CONFIG_X86_INTEL_PSTATE no está configurado en el archivo de configuración de tu kernel, es posible que te falten todos los controladores cpufreq.

Espero que esto ayude.

información relacionada