OneNAND oobfree

Kyungmin Park kyungmin.park at samsung.com
Wed Jan 17 18:50:26 EST 2007


Hi Adrian,

Yes, I know it's confusing. "Managed by internal ECC logic for Logical Sector Number data"
But actually it means 3 bytes in spare area is managed by internal ECC logic and it generates space ecc.
So we can use it as free.

Now I try to optimize spare handling.
The onenand_do_read_oob reads 3 bytes. but onenand has 16-bit bus
But I think there's some performance problem. so I examine the it.
Basically I want to operation with oob based on 32 byte for optimized memcpy if possible

Thank you,
Kyungmin Park

------- Original Message -------
Sender : Adrian Hunter<ext-adrian.hunter at nokia.com> 
Date   : Jan 17, 2007 20:17
Title  : OneNAND oobfree

Hi Kyungmin

The nand_ecclayout structure for OneNAND has 3 bytes
at position 2 marked as free (see below).  However,
the documentation describes these 3 bytes as
"Managed by internal ECC logic for Logical Sector
Number data".

Are these bytes, in fact, free, and should they be listed
in oobfree as they are now?

Regards
Adrian



From onenand_base.c:
static struct nand_ecclayout onenand_oob_64 = {
	.eccbytes	= 20,
	.eccpos		= {
		8, 9, 10, 11, 12,
		24, 25, 26, 27, 28,
		40, 41, 42, 43, 44,
		56, 57, 58, 59, 60,
		},
	.oobfree	= {
		{2, 3}, {14, 2}, {18, 3}, {30, 2},
		{34, 3}, {46, 2}, {50, 3}, {62, 2}
	}
};






More information about the linux-mtd mailing list