Hi,
According Board Diagnostic Overview,I can build out board_diag_mem and I can run this mem_test.
Use make BOARD=j721e_evm CORE=mpu1_0 board_diag_mem command and get board_diag_mem_mpu1_0_release.appimage test binary. I run this test binary through SD card and get below log output:
********************************************* * DDR Memory Test MPU * ********************************************* Testing writing and reading memory board_external_memory_test: Start address (0x900000000), end address (0x9ffffffff) First test started Writing to test area... Write up to 0x900000000 done Write up to 0x910000000 done Write up to 0x920000000 done Write up to 0x930000000 done Write up to 0x940000000 done Write up to 0x950000000 done Write up to 0x960000000 done Write up to 0x970000000 done Write up to 0x980000000 done Write up to 0x990000000 done Write up to 0x9a0000000 done Write up to 0x9b0000000 done Write up to 0x9c0000000 done Write up to 0x9d0000000 done Write up to 0x9e0000000 done Write up to 0x9f0000000 done Write finished! Checking values... Read up to 0x900000000 done Read up to 0x910000000 done Read up to 0x920000000 done Read up to 0x930000000 done Read up to 0x940000000 done Read up to 0x950000000 done Read up to 0x960000000 done Read up to 0x970000000 done Read up to 0x980000000 done Read up to 0x990000000 done Read up to 0x9a0000000 done Read up to 0x9b0000000 done Read up to 0x9c0000000 done Read up to 0x9d0000000 done Read up to 0x9e0000000 done Read up to 0x9f0000000 done Second test started Writing complementary values to test area... Write up to 0x900000000 done Write up to 0x910000000 done Write up to 0x920000000 done Write up to 0x930000000 done Write up to 0x940000000 done Write up to 0x950000000 done Write up to 0x960000000 done Write up to 0x970000000 done Write up to 0x980000000 done Write up to 0x990000000 done Write up to 0x9a0000000 done Write up to 0x9b0000000 done Write up to 0x9c0000000 done Write up to 0x9d0000000 done Write up to 0x9e0000000 done Write up to 0x9f0000000 done Write finished! Checking values... Read up to 0x900000000 done Read up to 0x910000000 done Read up to 0x920000000 done Read up to 0x930000000 done Read up to 0x940000000 done Read up to 0x950000000 done Read up to 0x960000000 done Read up to 0x970000000 done Read up to 0x980000000 done Read up to 0x990000000 done Read up to 0x9a0000000 done Read up to 0x9b0000000 done Read up to 0x9c0000000 done Read up to 0x9d0000000 done Read up to 0x9e0000000 done Read up to 0x9f0000000 done Board memory test passed! Memory test passed! All tests have passed
Use make BOARD=j721e_evm CORE=mcu1_0 board_diag_mem command and get board_diag_mem_mcu1_0_release.appimage test binary. I run this test binary through SD card and get below log output:
SBL Revision: 01.00.10.01 (Dec 22 2021 - 11:23:17)
TIFS ver: 21.5.0--v2021.05 (Terrific Llam
*********************************************
* DDR Memory Test *
*********************************************
Testing writing and reading memory
board_external_memory_test: Start address (0x80000000), end address (0xffffffff)
First test started
Writing to test area...
Write up to 0x80000000 done
Write up to 0x90000000 done
Write up to 0xa0000000 done
Write up to 0xb0000000 done
Write up to 0xc0000000 done
Write up to 0xd0000000 done
Write up to 0xe0000000 done
Write up to 0xf0000000 done
Write finished!
Checking values...
Read up to 0x80000000 okay
Read up to 0x90000000 okay
Read up to 0xa0000000 okay
Read up to 0xb0000000 okay
Read up to 0xc0000000 okay
Read up to 0xd0000000 okay
Read up to 0xe0000000 okay
Read up to 0xf0000000 okay
Q1: Why mcu1_0 and mpu1_0 mem_test Start address and End address are differ?
Q2: Can I change Start address and End address to other value? example: change mpu1_0 from 0x900000000~0x9ffffffff to 0x80000000~0xffffffff?
Q3: When use SBL to run mem_test, does it means mem_test run into internal RAM?
BR.