Buildroot sysfs cpufreq и термальная папка

Привет, я пытаюсь получить доступ к статистике частоты и температуры для платы Orange Pi Zero под управлением Buildroot с помощью интерфейса sysfs. Я включил масштабирование частоты и драйвер Thermal sysfs в linux-menuconfig, но я вообще не вижу, чтобы папка cpufreq создавалась, а тепловая папка пуста.

Их пути должны быть

/sys/devices/system/cpu/cpu0/cpufreq
/sys/class/thermal/

Я не уверен, нужно ли что-то делать в сценарии инициализации для создания этих файлов. Я также посмотрел в armbian (используя версию на Orange Pi Zero в качестве эталона), и я вижу, что папки и файлы создаются правильно. Я думаю, что armbian загружает cpufrequtils в фоновом режиме, чтобы получить статистику частоты.

Я думаю, что PowerTop из Busy Box - это вариант, но я все еще хочу использовать интерфейс sysfs, а PowerTop не будет давать мне тепловую статистику. Любая помощь будет глубоко оценена

Редактировать: только что попробовал powertop с привилегиями root, который не работает с ошибкой

 no stats available; run as root or enable the timer_stats module
 C-state information is not available

Ниже приведены параметры, включенные из linux-menuconfig ThermalConfig CputFrqConfig


person DBB    schedule 24.09.2018    source источник


Ответы (2)


Этот вопрос не имеет ничего общего с Buildroot. Buildroot монтирует файловую систему sysfs во время загрузки в /sys. Содержимое файловой системы sysfs зависит только от ядра Linux и его конфигурации. Если у вас нет thermal и cpufreq в sysfs, это потому, что конфигурация вашего ядра и/или платформа не поддерживают эти функции.

person Thomas Petazzoni    schedule 25.09.2018
comment
Привет, Томас, спасибо за ответ. На самом деле платформа поддерживает обе эти функции, поскольку при запуске armbian на той же плате эти папки находятся в sysfs. Я также просмотрел конфигурацию ядра и включил соответствующие параметры. Если ничего больше не нужно делать с точки зрения сценария инициализации, мне интересно, правильно ли мой buildroot env принимает изменения конфигурации ядра. Другое странное поведение - это powertop, который также терпит неудачу. - person DBB; 25.09.2018
comment
Как правило, Armbian использует довольно сильно пропатченное ядро. Вполне возможно, что их патчи добавляют поддержку термальных и процессорных частот. - person Thomas Petazzoni; 25.09.2018
comment
Но если платформа не поддерживает это, я думаю, что я не смогу включить его через linux-menuconfig, особенно когда я использую Orangepi_zero_defconfig или я неправильно понимаю. Также в этом случае есть ли другой способ получить эту информацию на моей доске? - person DBB; 26.09.2018

После просмотра исходного кода я вижу, что дерево устройств для платы Orange Pi Zero не обновлено в Buildroot. В дереве устройств Armbian добавлены Thermal_Zones и частотное масштабирование. Думаю, я попробую обновить дерево устройств и проверить, работает ли это.

Итак, как только вы обновите дерево устройств, даже драйвер устарел. Странно, поскольку версия ядра для Buildroot — 4.15, а для Armbian — 4.14. После обновления драйвера вроде все работает.

person DBB    schedule 09.10.2018