Armadilloフォーラム

haltコマンド実行後のArmadillo再起動について

k-nakai

2024年7月23日 21時45分

Armadillo-420ベーシックモデル開発セットスタートアップガイドの4.3. 終了方法に、
haltコマンド実行について以下の注意書きがございます。

 "「System halted.」と表示されてから約128秒後、Armadilloは自動的に再起動します。"

haltコマンド実行後の自動的に再起動を無効化することは可能でしょうか?
可能である場合はその方法もご教示いただけますと幸いです。

コメント

at_dominique.m…

2024年7月24日 8時35分

k-nakaiさん

お世話になっています
マルティネです。

> Armadillo-420ベーシックモデル開発セットスタートアップガイドの4.3. 終了方法に、
> haltコマンド実行について以下の注意書きがございます。
>
>  "「System halted.」と表示されてから約128秒後、Armadilloは自動的に再起動します。"
>
> haltコマンド実行後の自動的に再起動を無効化することは可能でしょうか?

確認してませんので違う問題かもしれませんが、一般的にでは「halt」は linux を停止して電源を切らない仕様で、「poweroff」で電源まで切ります。
なので、halt では watchdog がまだ生きている状態になります。そのため watchdog タイマーが切れた 128秒後に再起動します。

poweroff を試してみてください。
poweroff でもダメでしたらもう少し確認します。

よろしくお願いします。

k-nakai

2024年7月24日 9時33分

マルティネ様

お世話になっております。k-nakaiこと、中居と申します。

> 確認してませんので違う問題かもしれませんが、一般的にでは「halt」は linux を停止して電源を切らない仕様で、「poweroff」で電源まで切ります。
> なので、halt では watchdog がまだ生きている状態になります。そのため watchdog タイマーが切れた 128秒後に再起動します。
>
> poweroff を試してみてください。
> poweroff でもダメでしたらもう少し確認します。

ご回答ありがとうございます。
ご提案頂いた通り、poweroffコマンドを実行してみましたが、
haltコマンド同様、約128秒後に自動的に再起動しました。

参考になるかわかりませんが、その時のログ(一部加工)を添付いたします。

以上です。よろしくお願いいたします。

ファイル ファイルの説明
poweroffコマンド実行ログ.log

at_dominique.m…

2024年7月24日 11時29分

中居さん

マルティネです。

> ご提案頂いた通り、poweroffコマンドを実行してみましたが、
> haltコマンド同様、約128秒後に自動的に再起動しました。

確認ありがとうございます。
こちらで確認しなくてすみませんでした。
新しい製品ではパワー管理のチップ(pmic)などで poweroff の際に電源を切断して、消費電力も抑えて watchdog の問題が解決されていますが、確認してみたら Armadillo 420 ではこういう対応がなく、これが正常の動きらしいです。

マニュアルにも何か所かに記載されています:
https://manual.atmark-techno.com/armadillo-4x0/armadillo-420_startup_gu…
> 「System halted.」と表示されてから約128秒後、Armadilloは自動的に再起動します。

https://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_sof…
> i.MX257 の WDOG は、一度有効化すると無効化することができません。そのため、haltコマンドなどを実行してLinux カーネルを停止した場合は、ウォッチドッグタイマーのキックができなくなるためシステムリセットが発生します。
>
> WDOGドライバーの終了処理では、タイムアウト時間をWDOGの最大値である128秒に設定します。

後者のリンクに説明されている watchdog ドライバを無効化してカーネルをビルドしてみたら、 watchdog 無しで起動できれば poweroff後もそのまま再起動しないようになると思いますが、いかがでしょうか。
(申し訳ないですがこちらもただいま確認してないので、もしかしたら hermit ですでに wdt を有効にして linux でドライバを入れないと起動中にリセットするかもしれません。その場合は hermit にも無効化する必要があります)

物にこだわってなければもう少し新しい製品に切り替えた場合にもこの問題がなくなりますが、今の物に必要ですね。。。遠隔操作可能なコンセントなどでタイマーを設定して poweroff するのもちょっと無理ありますね。

大変お手数ですが、よろしくお願いします。