0

私のmx53_locoボードには問題があります。ボード固有のヘッダーにコマンド ライン ヘルプ定義 ( CONFIG_SYS_LONGHELP) を追加すると、ビルドは正常に完了しますが、ボードを起動すると、環境が破損していることがわかります (すべてのコマンドが認識されません)。

定義のサイズを大きくしても、この問題がありCONFIG_EXTRA_ENV_SETTINGSます。

u-bootなのでどこかでオーバーフローするのはコードのサイズに関係する問題のようです。( memory map re-definition?)

u-boot内部レイアウトのサイズを正しく変更できるようになります。

何が起こるか説明したり、役立つリンクを提案したりできますか?

4

1 に答える 1

0

u-bootは、常に保存された環境変数を最初に読み取ります。これらの環境変数は通常、不揮発性メモリ(NORまたはNANDフラッシュなど)にあります。保存された環境変数のCRCが正しい場合、保存された環境変数が使用されます。CONFIG_EXTRA_ENV_SETTINGSを変更した場合、それは使用されません!

CONFIG_EXTRA_ENV_SETTINGSの値は、env変数をデフォルトにリセットして保存する場合にのみ使用されます。

$ env default -f
$ saveenv

マッピングとサイズにも注意する必要があります。新しい環境変数を追加するときは、CONFIG_ENV_SIZEとCONFIG_ENV_OFFSETが正しいことを確認してください。

u-bootソースの最上位ディレクトリにあるREADMEファイルをお読みください。そして、メーリングリストを閲覧します:http ://news.gmane.org/gmane.comp.boot-loaders.u-boot

編集:

また、CONFIG_SYS_FLASH_BASEとCONFIG_SYS_MONITOR_LENが正しいことを確認する必要があります。u-bootでカバーされるフラッシュ領域と環境変数を書き込むフラッシュ領域が重ならないように注意してください。

于 2012-09-06T22:47:13.103 に答える