summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLei Wen <leiwen@marvell.com>2010-12-07 09:38:18 +0800
committerScott Wood <scottwood@freescale.com>2010-12-07 16:04:20 -0600
commita430b137eb578cf73be476ff05a43baa2aba1ad8 (patch)
tree03243d6f07d796ee2c81d4b7c53bb710d821cbec
parent59bbb3a8ceea7557338e80302c112ce3b4859537 (diff)
downloadu-boot-imx-a430b137eb578cf73be476ff05a43baa2aba1ad8.zip
u-boot-imx-a430b137eb578cf73be476ff05a43baa2aba1ad8.tar.gz
u-boot-imx-a430b137eb578cf73be476ff05a43baa2aba1ad8.tar.bz2
onenand: fix oob print out issue
Seems original implementation forget to set the pointer to point to the oobbuf, so when we want to see oob buf, we see nothing... Fix it by get pointer as the oobbuf set. Signed-off-by: Lei Wen <leiwen@marvell.com>
-rw-r--r--common/cmd_onenand.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/common/cmd_onenand.c b/common/cmd_onenand.c
index 33108f1..cb2ba70 100644
--- a/common/cmd_onenand.c
+++ b/common/cmd_onenand.c
@@ -293,7 +293,7 @@ static int onenand_dump(struct mtd_info *mtd, ulong off, int only_oob)
addr = (loff_t) off;
memset(&ops, 0, sizeof(ops));
ops.datbuf = datbuf;
- ops.oobbuf = oobbuf; /* must exist, but oob data will be appended to ops.datbuf */
+ ops.oobbuf = oobbuf;
ops.len = mtd->writesize;
ops.ooblen = mtd->oobsize;
ops.retlen = 0;
@@ -319,6 +319,8 @@ static int onenand_dump(struct mtd_info *mtd, ulong off, int only_oob)
}
puts("OOB:\n");
i = mtd->oobsize >> 3;
+ p = oobbuf;
+
while (i--) {
printf("\t%02x %02x %02x %02x %02x %02x %02x %02x\n",
p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7]);