Armadilloフォーラム

起動時u-bootモードでRAMチェックを行う場合のアドレス範囲を教えてください

applewu

2025年3月26日 10時53分

==========
製品型番:AGX4500-U00Z
Debian/ABOSバージョン:ABOSバージョン 3.20.3
カーネルバージョン:5.10.224
3G/LTE モジュール情報 (Debianのみ):なし
その他:
==========
首題、起動時u-bootモードにて、RAMチェックを行いたいです。チェックするアドレス範囲を教えてください。

コメント

at_dominique.m…

2025年3月26日 11時33分

applewuさn

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

> 首題、起動時u-bootモードにて、RAMチェックを行いたいです。チェックするアドレス範囲を教えてください。

起動時に自動的にチェックは行ってません。
問題を疑ってる場合に t か T キーを押すと実行されます:

DRAM:    Hold key pressed for tests: t (fast) / T (slow)

その再に実行されるテストも表示されます。

t の場合(7 秒程度)

Running fast memory test.
testing region: 40400000-56000000
testing region: 58000000-c0000000

(その領域ないの1MBごとに4KB を試してます: 40400000-40400800, 404ff800-40500800…)

Tの場合(41分かかります)

Running full memory test.
testing 0 pattern: 40400000-56000000
testing 1 pattern: 40400000-56000000
testing 01 pattern: 40400000-56000000
testing 10 pattern: 40400000-56000000
testing one bit moving pattern: 40400000-56000000
testing current address pattern: 40400000-56000000
testing ~current address pattern: 40400000-56000000
testing 0 pattern: 58000000-c0000000
testing 1 pattern: 58000000-c0000000
testing 01 pattern: 58000000-c0000000
testing 10 pattern: 58000000-c0000000
testing one bit moving pattern: 58000000-c0000000
testing current address pattern: 58000000-c0000000
testing ~current address pattern: 58000000-c0000000

(そちらはスキップすることなく全部書き込んでいます)

自動的に実行したい場合は imx-boot ソースの uboot-imx/post/post.c の post_bootmode_init を直接に編集してください。
また、テスト内容を post/drivers/memory.c で確認できます。

よろしくおねがいします。

> applewuさn
>
> お世話になっています、
> マルティネです。
>
> > 首題、起動時u-bootモードにて、RAMチェックを行いたいです。チェックするアドレス範囲を教えてください。
>
> 起動時に自動的にチェックは行ってません。
> 問題を疑ってる場合に t か T キーを押すと実行されます:
>

> DRAM:    Hold key pressed for tests: t (fast) / T (slow)
> 

>
> その再に実行されるテストも表示されます。
>
> t の場合(7 秒程度)
>

> Running fast memory test.
> testing region: 40400000-56000000
> testing region: 58000000-c0000000
> 

> (その領域ないの1MBごとに4KB を試してます: 40400000-40400800, 404ff800-40500800…)
>
> Tの場合(41分かかります)
>

> Running full memory test.
> testing 0 pattern: 40400000-56000000
> testing 1 pattern: 40400000-56000000
> testing 01 pattern: 40400000-56000000
> testing 10 pattern: 40400000-56000000
> testing one bit moving pattern: 40400000-56000000
> testing current address pattern: 40400000-56000000
> testing ~current address pattern: 40400000-56000000
> testing 0 pattern: 58000000-c0000000
> testing 1 pattern: 58000000-c0000000
> testing 01 pattern: 58000000-c0000000
> testing 10 pattern: 58000000-c0000000
> testing one bit moving pattern: 58000000-c0000000
> testing current address pattern: 58000000-c0000000
> testing ~current address pattern: 58000000-c0000000
> 

> (そちらはスキップすることなく全部書き込んでいます)
>
> 自動的に実行したい場合は imx-boot ソースの uboot-imx/post/post.c の post_bootmode_init を直接に編集してください。
> また、テスト内容を post/drivers/memory.c で確認できます。
>
> よろしくおねがいします。
ご返信どうもありがとうございました。
試しに、TeraTermのマクロで起動時以下を設定しました。
-----------------------------------------------------
wait "DRAM: Hold key pressed for tests: t (fast) / T (slow)"
if result=0 then
messagebox "タイムアウトが発生しました" "起動時ツール"
else
messagebox "RAMチェックを開始します" "起動時ツール"
sendln "t"
endif
end
-----------------------------------------------------
でも、RAMチェックが実施されていませんでした。どこが問題でしょうか?

at_dominique.m…

2025年3月27日 14時49分

マルティネです

DRAM:    Hold key pressed for tests: t (fast) / T (slow)

> でも、RAMチェックが実施されていませんでした。どこが問題でしょうか?

この文字列が表示される直後に uart のバッファーを確認してますので、teraterm でメッセージに反応すると遅いですね。
teraterm は使ったことがないですが、ちょっと前のメッセージから連続に文字を送るといいかもしれません( sendln "tttttttttttt"など)

よろしくおねがいします

> この文字列が表示される直後に uart のバッファーを確認してますので、teraterm でメッセージに反応すると遅いですね。
> teraterm は使ったことがないですが、ちょっと前のメッセージから連続に文字を送るといいかもしれません( sendln "tttttttttttt"など)
>
> よろしくおねがいします
なるほど。承知しました。RAMチェックでエラーとなった場合、Errorとか、表示されますか?
RAMチェックでOKとNGの判断をしたいですので。
よろしくお願いします。

at_dominique.m…

2025年3月27日 16時45分

マルティネです。

> なるほど。承知しました。RAMチェックでエラーとなった場合、Errorとか、表示されますか?
> RAMチェックでOKとNGの判断をしたいですので。

成功の場合に表示される「POST memory PASSED」が「POST memory FAILED」として表示されるはずです。
その前に実際にどこで何が失敗したのかも表示されるはずですが、そこでテストするのは難しいので最終結果で確認した方がいいですね。

よろしくおねがいします

> 成功の場合に表示される「POST memory PASSED」が「POST memory FAILED」として表示されるはずです。
> その前に実際にどこで何が失敗したのかも表示されるはずですが、そこでテストするのは難しいので最終結果で確認した方がいいですね。
>
> よろしくおねがいします
「POST memory PASSED」が表示されました。
どうもありがとうございました。