diff options
Diffstat (limited to 'common/cmd_nand.c')
| -rw-r--r-- | common/cmd_nand.c | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/common/cmd_nand.c b/common/cmd_nand.c index 3e2edb8aa..fa96a5201 100644 --- a/common/cmd_nand.c +++ b/common/cmd_nand.c @@ -48,7 +48,7 @@ static int nand_dump(nand_info_t *nand, ulong off, int only_oob, int repeat)  	last = off; -	datbuf = malloc(nand->writesize + nand->oobsize); +	datbuf = malloc(nand->writesize);  	oobbuf = malloc(nand->oobsize);  	if (!datbuf || !oobbuf) {  		puts("No memory for page buffer\n"); @@ -59,7 +59,7 @@ static int nand_dump(nand_info_t *nand, ulong off, int only_oob, int repeat)  	struct mtd_oob_ops ops;  	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 = nand->writesize;  	ops.ooblen = nand->oobsize;  	ops.mode = MTD_OOB_RAW; @@ -85,6 +85,7 @@ static int nand_dump(nand_info_t *nand, ulong off, int only_oob, int repeat)  	}  	puts("OOB:\n");  	i = nand->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]); |