[U-Boot] post_memory_tests

Hello,
I need to run memory RAM test on an ARM based platform. I saw that there is the POST tests framework in u-boot and I had some questions about it.
What is the purpose of the _POST_WORD_ADDR variable in include/post.h? How should I define the value of that variable?
Also, I try to run the post_memory_test in normal mode, before relocation ( the test verifies only small 4Kb regions of RAM around each 1Mb boundary). That seems to work. But when I tried to change the value of the region from 4K to 8K, it does not work anymore. Does anyone have a clue on that?
Thanks for your help
chirong

Dear chi l,
In message BAY180-W137A35527F40147A2E3FD587760@phx.gbl you wrote:
What is the purpose of the _POST_WORD_ADDR variable in include/post.h? How should I define the value of that variable?
See post_word_load() and post_word_store() [both in include/post.h] how _POST_WORD_ADDR gets used. You need a persistent (across resets of the CPU) non-RAM memory cell.
Also, I try to run the post_memory_test in normal mode, before relocation ( the test verifies only small 4Kb regions of RAM around each 1Mb boundary). That seems to work. But when I tried to change the value of the regionfrom 4K to 8K, it does not work anymore. Does anyone have a clue on that ?
You are aware that you must not (under no circumstances) be executing this code from system RAM? It can only be run rom a memory device that is not currently being tested (parallel NOR flash, SRAM, OCM or such).
Best regards,
Wolfgang Denk

Hello,
Thank you for your answer. Yes. the test runs from the NOR flash (post_run function calls the test in arch/arm/lib/board.c before the relocation of U-Boot in the RAM). That is why I'm kind of confuse about why the tests works for 4K regions and not for 8K regions. Maybe, even if the test runs in ROM, are there some regions in the RAM that I should prevent from testing?
Regards
To: chi-rong@outlook.com CC: u-boot@lists.denx.de From: wd@denx.de Subject: Re: [U-Boot] post_memory_tests Date: Thu, 13 Mar 2014 09:25:35 +0100
Dear chi l,
In message BAY180-W137A35527F40147A2E3FD587760@phx.gbl you wrote:
What is the purpose of the _POST_WORD_ADDR variable in include/post.h? How should I define the value of that variable?
See post_word_load() and post_word_store() [both in include/post.h] how _POST_WORD_ADDR gets used. You need a persistent (across resets of the CPU) non-RAM memory cell.
Also, I try to run the post_memory_test in normal mode, before relocation ( the test verifies only small 4Kb regions of RAM around each 1Mb boundary). That seems to work. But when I tried to change the value of the regionfrom 4K to 8K, it does not work anymore. Does anyone have a clue on that ?
You are aware that you must not (under no circumstances) be executing this code from system RAM? It can only be run rom a memory device that is not currently being tested (parallel NOR flash, SRAM, OCM or such).
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de 365 Days of drinking Lo-Cal beer. = 1 Lite-year

Dear chi l,
In message BAY180-W4040AAED90C5EDC765F77F87710@phx.gbl you wrote:
Thank you for your answer. Yes. the test runs from the NOR flash (post_run function calls the test in arch/arm/lib/board.c before the relocation of U- Boot in the RAM). That is why I'm kind of confuse about why the tests works for 4K regions and not for 8K regions. Maybe, even if the test runs in R OM, are there some regions in the RAM that I should prevent from testing?
Normally not. You should be able to test the whole RAM. Which board / SoC / architecture are you working with?
Best regards,
Wolfgang Denk
participants (2)
-
chi l
-
Wolfgang Denk