組み込みボード (Rock960) の LED にトリガーを設定しようとしています。トリガーは(メイン ドライブ)heartbeat
とmmc1
(メイン ドライブ)で動作しますnone
が、トリガーを 1 つも動作させることができませんでしたcpu<i>
。
実際にトリガーを送信しているものがあるかどうかを確認する方法はありますか? フルロード時でも (たとえばmake -j6
、ジョブでは何も点灯しません)。
# Disk activity works as does rfkill1 (wifi)
echo mmc1 >/sys/class/leds/rock960\:green\:user0/trigger
# None of these seem to do anything
echo cpu0 >/sys/class/leds/rock960\:green\:user1/trigger
echo cpu1 >/sys/class/leds/rock960\:green\:user2/trigger
echo cpu2 >/sys/class/leds/rock960\:green\:user3/trigger
私の設定によれば、モジュールは次のようにコンパイルされています:
# LED Triggers
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_ONESHOT=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_BACKLIGHT=y
CONFIG_LEDS_TRIGGER_CPU=y
CONFIG_LEDS_TRIGGER_GPIO=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
利用可能なトリガー:
none rc-feedback kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock mmc0 [mmc1] timer oneshot heartbeat backlight gpio cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 default-on rfkill0 mmc2 rfkill1 rfkill2
答え1
この場合に最も適切なトリガーはactivity
、CPU アクティビティをシステム全体で表示することを目的とした だと思います。その説明は次のとおりです。
これにより、LEDはCPUの使用によって即座に制御されます。フラッシュ周波数とデューティサイクルは、瞬間的なCPU負荷に応じて、かすかなフラッシュから強い明るさまで変化します。
そのためにはカーネルで有効にする必要がありますCONFIG_LEDS_TRIGGER_ACTIVITY=y
が、最近のディストリビューションのほとんどではデフォルトで有効になっています。
からhttps://cateee.net/lkddb/web-lkddb/LEDS_TRIGGER_ACTIVITY.html