[РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Взгляд изнутри

Модератор: Модераторы разделов

IMB
Сообщения: 2565
ОС: Debian

[РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение IMB »

Доброго дня!
Для платы с процессором iMX6 собрал linux-4.1.15 со следующей конфигурацией:

Код: Выделить всё

CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

Необходимо периодически переводит процессор из режима максимальной производительности в спящий режим, для этого думаю использовать /sys/devices/system/cpu/cpu0/cpufreq интерфейс.
К сожалению в системе директория /sys/devices/system/cpu/cpu0/cpufreq отсутствует:

Код: Выделить всё

~ # ls -F /sys/devices/system/cpu/cpu0
cpuidle/   of_node@   online     power/     subsystem@ topology/  uevent

Судя по drivers/cpufreq/KConfig ничего особого не отключено.
От какой опции зависит наличие cpufreq ?
Спасибо.
Спасибо сказали:
Аватара пользователя
Vascom
Сообщения: 1699
ОС: Fedora 32

Re: [РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение Vascom »

Это должно зависеть от процессора. Возможно для ARM этого нет или надо использовать другой механизм.
Спасибо сказали:
Аватара пользователя
Stauffenberg
Сообщения: 2041
Статус: ☮ PEACE ☮
ОС: открытая и свободная

Re: [РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение Stauffenberg »

IMB писал(а):
17.11.2016 17:55
От какой опции зависит наличие cpufreq ?

Не каждый процессор это поддерживают. В официальной документации так же есть список CPU, с которыми это должно работать.
Попробуйте поставить cpufreq-info. Интересно, что она скажет.
Labor omnia vincit

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (Brian Kernighan)
Спасибо сказали:
IMB
Сообщения: 2565
ОС: Debian

Re: [РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение IMB »

А что она может сказать если libcpufreq.so берёт всю информацию из /sys?

Код: Выделить всё

~ # cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
  no or unknown cpufreq driver is active on this CPU
analyzing CPU 1:
  no or unknown cpufreq driver is active on this CPU
analyzing CPU 2:
  no or unknown cpufreq driver is active on this CPU
analyzing CPU 3:
  no or unknown cpufreq driver is active on this CPU

Производитель модуля утверждает, что в его официальном образе этот функционал присутсвует.
Я просмотрел код drivers/cpufreq/cpufreq.c который создаёт /sys/devices/system/cpu/cpu0/cpufreq и не увидел никаких дополнительных условий.

Спасибо сказали:
Аватара пользователя
Stauffenberg
Сообщения: 2041
Статус: ☮ PEACE ☮
ОС: открытая и свободная

Re: [РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение Stauffenberg »

Вот этот проект смотрели?
Тяжело конечно сказать что-то конкретное, не имея под рукой железа.
Labor omnia vincit

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (Brian Kernighan)
Спасибо сказали:
IMB
Сообщения: 2565
ОС: Debian

Re: [РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение IMB »

Код: Выделить всё

$ grep CPU_FREQ .config
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y

Код: Выделить всё

~ # ls -F /sys/devices/system/cpu/cpu0/
cpuidle/   of_node@   online     power/     subsystem@ topology/  uevent

Не понятно, не выходит каменный цветок :(
Спасибо сказали:
IMB
Сообщения: 2565
ОС: Debian

Re: [РЕШЕНО] /sys/devices/system/cpu/cpu0/cpufreq not present

Сообщение IMB »

Решено после добавления ряда датчиков.
Спасибо сказали: