summaryrefslogtreecommitdiff
path: root/common/cmd_mem.c
diff options
context:
space:
mode:
authorDavid Feng <fenghua@phytium.com.cn>2014-02-12 16:10:08 +0800
committerTom Rini <trini@ti.com>2014-02-21 11:06:13 -0500
commit102c051fccaf43bca4245d38519c9520ee0b4ff4 (patch)
tree21b651af82e9b14bcd46052602b1eee8fa179552 /common/cmd_mem.c
parente38661634b3d60af80d85ce9eb570a45db4729ca (diff)
downloadu-boot-imx-102c051fccaf43bca4245d38519c9520ee0b4ff4.zip
u-boot-imx-102c051fccaf43bca4245d38519c9520ee0b4ff4.tar.gz
u-boot-imx-102c051fccaf43bca4245d38519c9520ee0b4ff4.tar.bz2
fix address of error message in mtest command
This patch deal with error message of mtest command. When test failed, the mtest command will output error information that include memory address and value. But the address field is not correct or misleading. Signed-off-by: David Feng <fenghua@phytium.com.cn>
Diffstat (limited to 'common/cmd_mem.c')
-rw-r--r--common/cmd_mem.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/common/cmd_mem.c b/common/cmd_mem.c
index c3aab3d..8d2cfc8 100644
--- a/common/cmd_mem.c
+++ b/common/cmd_mem.c
@@ -746,7 +746,8 @@ static ulong mem_test_alt(vu_long *buf, ulong start_addr, ulong end_addr,
if (temp != pattern) {
printf("\nFAILURE: Address bit stuck high @ 0x%.8lx:"
" expected 0x%.8lx, actual 0x%.8lx\n",
- start_addr + offset, pattern, temp);
+ start_addr + offset*sizeof(vu_long),
+ pattern, temp);
errs++;
if (ctrlc())
return -1;
@@ -767,7 +768,8 @@ static ulong mem_test_alt(vu_long *buf, ulong start_addr, ulong end_addr,
printf("\nFAILURE: Address bit stuck low or"
" shorted @ 0x%.8lx: expected 0x%.8lx,"
" actual 0x%.8lx\n",
- start_addr + offset, pattern, temp);
+ start_addr + offset*sizeof(vu_long),
+ pattern, temp);
errs++;
if (ctrlc())
return -1;
@@ -807,7 +809,8 @@ static ulong mem_test_alt(vu_long *buf, ulong start_addr, ulong end_addr,
if (temp != pattern) {
printf("\nFAILURE (read/write) @ 0x%.8lx:"
" expected 0x%.8lx, actual 0x%.8lx)\n",
- start_addr + offset, pattern, temp);
+ start_addr + offset*sizeof(vu_long),
+ pattern, temp);
errs++;
if (ctrlc())
return -1;
@@ -827,7 +830,8 @@ static ulong mem_test_alt(vu_long *buf, ulong start_addr, ulong end_addr,
if (temp != anti_pattern) {
printf("\nFAILURE (read/write): @ 0x%.8lx:"
" expected 0x%.8lx, actual 0x%.8lx)\n",
- start_addr + offset, anti_pattern, temp);
+ start_addr + offset*sizeof(vu_long),
+ anti_pattern, temp);
errs++;
if (ctrlc())
return -1;
@@ -885,7 +889,7 @@ static ulong mem_test_quick(vu_long *buf, ulong start_addr, ulong end_addr,
printf("\nMem error @ 0x%08X: "
"found %08lX, expected %08lX\n",
- (uint)(uintptr_t)(start_addr + offset),
+ (uint)(uintptr_t)(start_addr + offset*sizeof(vu_long)),
readback, val);
errs++;
if (ctrlc())