mtd: nand/docg4: reserve bb marker area in ecclayout

Modify the nand_ecclayout to place the two bb marker bytes in the oob region
off-limits to the user.

Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
This commit is contained in:
Mike Dunn 2012-12-07 12:07:22 -08:00 committed by Artem Bityutskiy
parent 5a90d41b69
commit 440b1d73b1
1 changed files with 6 additions and 4 deletions

View File

@ -214,15 +214,17 @@ struct docg4_priv {
#define DOCG4_FACTORY_BBT_PAGE 16 /* page where read-only factory bbt lives */ #define DOCG4_FACTORY_BBT_PAGE 16 /* page where read-only factory bbt lives */
/* /*
* Oob bytes 0 - 6 are available to the user. * Bytes 0, 1 are used as badblock marker.
* Byte 7 is hamming ecc for first 7 bytes. Bytes 8 - 14 are hw-generated ecc. * Bytes 2 - 6 are available to the user.
* Byte 7 is hamming ecc for first 7 oob bytes only.
* Bytes 8 - 14 are hw-generated ecc covering entire page + oob bytes 0 - 14.
* Byte 15 (the last) is used by the driver as a "page written" flag. * Byte 15 (the last) is used by the driver as a "page written" flag.
*/ */
static struct nand_ecclayout docg4_oobinfo = { static struct nand_ecclayout docg4_oobinfo = {
.eccbytes = 9, .eccbytes = 9,
.eccpos = {7, 8, 9, 10, 11, 12, 13, 14, 15}, .eccpos = {7, 8, 9, 10, 11, 12, 13, 14, 15},
.oobavail = 7, .oobavail = 5,
.oobfree = { {0, 7} } .oobfree = { {.offset = 2, .length = 5} }
}; };
/* /*