diff options
| author | Pekon Gupta <pekon@ti.com> | 2014-02-17 13:11:25 +0530 | 
|---|---|---|
| committer | Evan Wilson <evan@oliodevices.com> | 2014-11-29 14:51:43 -0800 | 
| commit | 8ba6af10b82e78000b17e7d5963bb3103c000dc3 (patch) | |
| tree | f039ed107e3e003d587c160456212d758103db9b | |
| parent | 4df3be9685dfaa1e78d89376199d04a8cee36cf9 (diff) | |
| download | olio-linux-3.10-8ba6af10b82e78000b17e7d5963bb3103c000dc3.tar.xz olio-linux-3.10-8ba6af10b82e78000b17e7d5963bb3103c000dc3.zip | |
mtd: nand: omap: fix ecclayout->oobfree->length
This patch excludes reserved-marker byte-position from oobfree->length
calculation. Thus all bytes from oobfree->offset till end of OOB are free.
CC: <stable@vger.kernel.org> # 3.13.x+
Signed-off-by: Pekon Gupta <pekon@ti.com>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
| -rw-r--r-- | drivers/mtd/nand/omap2.c | 5 | 
1 files changed, 2 insertions, 3 deletions
| diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c index 58685ab6d86..bf642ceef68 100644 --- a/drivers/mtd/nand/omap2.c +++ b/drivers/mtd/nand/omap2.c @@ -1994,9 +1994,8 @@ static int omap_nand_probe(struct platform_device *pdev)  		goto return_error;  	} -	/* populate remaining ECC layout data */ -	ecclayout->oobfree->length = mtd->oobsize - (BADBLOCK_MARKER_LENGTH + -							ecclayout->eccbytes); +	/* all OOB bytes from oobfree->offset till end off OOB are free */ +	ecclayout->oobfree->length = mtd->oobsize - ecclayout->oobfree->offset;  	/* check if NAND device's OOB is enough to store ECC signatures */  	if (mtd->oobsize < (ecclayout->eccbytes + BADBLOCK_MARKER_LENGTH)) {  		pr_err("not enough OOB bytes required = %d, available=%d\n", |