On Fri, Mar 20, 2015 at 4:51 AM, Jeff Lauruhn (jlauruhn)
<jlaur...@micron.com> wrote:
> This device has a Page size x8: 17,600 bytes (16,384 + 1216 bytes) and 
> minimum required ECC 24-bit ECC per 1100 bytes of data.  Spare area needed 
> for ECC would be ECC * M, where M is (codeword <= 2^m-1).  In this case M=14, 
> because (1100*8)<=2^14-1, therefore minimum spare area needed is 14*24 = 336b 
> or 42B per codeword.  So for this device a minimum of 672bytes of the 1216 
> need to be used for ECC, the rest can be used for other purposes.
>

Ok. Does it mean increasing the size to 672 bytes will be enough ?
I see that 672 bytes is the minimum required size for 24 bit ecc. There
may be controllers that may detect errors beyond 24 bit and would require
more number of  ecc bytes per codeword. So, i configured the ecc position
value to max oobsize and i believe this change is needed.

Regards,
Punnaiah
>
>
> Jeff Lauruhn
> NAND Application Engineer
>
>
> -----Original Message-----
> From: linux-mtd [mailto:linux-mtd-boun...@lists.infradead.org] On Behalf Of 
> Punnaiah Choudary Kalluri
> Sent: Thursday, March 19, 2015 1:50 AM
> To: dw...@infradead.org; computersforpe...@gmail.com
> Cc: linux-kernel@vger.kernel.org; shak...@xilinx.com; mich...@xilinx.com; 
> linux-...@lists.infradead.org; kalluripunnaiahchoud...@gmail.com; Punnaiah 
> Choudary Kalluri
> Subject: [PATCH] mtd: Expand the ecc placement locations to 1260
>
> Device like MT29F32G08ABCDBJ4 have a writesize/oobsize of 16K/1260 Bytes.
> So, increasing the maximum ecc placement locations to 1260
>
> Signed-off-by: Punnaiah Choudary Kalluri <punn...@xilinx.com>
> ---
>  include/linux/mtd/mtd.h |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index 
> f17fa75..e73d85b 100644
> --- a/include/linux/mtd/mtd.h
> +++ b/include/linux/mtd/mtd.h
> @@ -95,7 +95,7 @@ struct mtd_oob_ops {
>  };
>
>  #define MTD_MAX_OOBFREE_ENTRIES_LARGE  32
> -#define MTD_MAX_ECCPOS_ENTRIES_LARGE   640
> +#define MTD_MAX_ECCPOS_ENTRIES_LARGE   1260
>  /*
>   * Internal ECC layout control structure. For historical reasons, there is a
>   * similar, smaller struct nand_ecclayout_user (in mtd-abi.h) that is 
> retained
> --
> 1.7.4
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to