私の組み込みデバイスでセキュアブートを正常に有効にしました。問題は、このモードで起動すると、次の行以降にプロセスが中断されるようです。
Starting kernel ...
U-bootがカーネルをメモリにコピーし、bootm
コマンドを実行すると。
デバッガでは、PCがyield
コマンドに停止し、割り当てにかかることをキャッチできました。pc = pc-4
つまり、本質的にループです。
私は以前はそれほど低レベルのLinuxにさらされたことがなかったので、どこから見るべきかわかりません。ただし、セーフモードでない場合でもカーネルイメージを正常に起動できることがわかりました。
1) 通常、スイッチングステップを実行するU-bootの診断情報はどこにありますか?
2)実行はいつカーネルに完全に渡されますか?つまり、U-bootはいつ期限切れになりますか?
ベストアンサー1
おそらく、次の手順を使用してLinux初期印刷のメモリをダンプできます。その理由は、カーネルが起動中ですが、コンソールが初期化される前に停止するためです。また、ubootのカーネルエントリポイントにコンテンツを印刷し、制御がカーネルに送信されたことを確認します。
ファイルを見つけますSystem.map
。log_buf
アドレスを識別するには、次のコマンドを使用します。
grep __log_buf System.map
これは次のように出力されます
c0352d88 B __log_buf
ボードをウォームブートします(RAMの内容は削除しないでください)。
Ubootのメモリダンプ(c0352d88)__log_buf
。カーネルコンソールの印刷をダンプします。これにより、停止が発生した場所を正確に確認できます。