All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mtd: Expand the ecc placement locations to 1260
@ 2015-03-19  8:50 ` Punnaiah Choudary Kalluri
  0 siblings, 0 replies; 8+ messages in thread
From: Punnaiah Choudary Kalluri @ 2015-03-19  8:50 UTC (permalink / raw)
  To: dwmw2, computersforpeace
  Cc: linux-mtd, linux-kernel, michals, shaktib,
	kalluripunnaiahchoudary, Punnaiah Choudary Kalluri

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 <punnaia@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


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH] mtd: Expand the ecc placement locations to 1260
@ 2015-03-19  8:50 ` Punnaiah Choudary Kalluri
  0 siblings, 0 replies; 8+ messages in thread
From: Punnaiah Choudary Kalluri @ 2015-03-19  8:50 UTC (permalink / raw)
  To: dwmw2, computersforpeace
  Cc: linux-kernel, shaktib, michals, linux-mtd,
	kalluripunnaiahchoudary, Punnaiah Choudary Kalluri

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 <punnaia@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

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* RE: [PATCH] mtd: Expand the ecc placement locations to 1260
  2015-03-19  8:50 ` Punnaiah Choudary Kalluri
@ 2015-03-19 23:21   ` Jeff Lauruhn (jlauruhn)
  -1 siblings, 0 replies; 8+ messages in thread
From: Jeff Lauruhn (jlauruhn) @ 2015-03-19 23:21 UTC (permalink / raw)
  To: Punnaiah Choudary Kalluri, dwmw2, computersforpeace
  Cc: linux-kernel, shaktib, michals, linux-mtd,
	kalluripunnaiahchoudary, Punnaiah Choudary Kalluri

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.



Jeff Lauruhn
NAND Application Engineer


-----Original Message-----
From: linux-mtd [mailto:linux-mtd-bounces@lists.infradead.org] On Behalf Of Punnaiah Choudary Kalluri
Sent: Thursday, March 19, 2015 1:50 AM
To: dwmw2@infradead.org; computersforpeace@gmail.com
Cc: linux-kernel@vger.kernel.org; shaktib@xilinx.com; michals@xilinx.com; linux-mtd@lists.infradead.org; kalluripunnaiahchoudary@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 <punnaia@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/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [PATCH] mtd: Expand the ecc placement locations to 1260
@ 2015-03-19 23:21   ` Jeff Lauruhn (jlauruhn)
  0 siblings, 0 replies; 8+ messages in thread
From: Jeff Lauruhn (jlauruhn) @ 2015-03-19 23:21 UTC (permalink / raw)
  To: Punnaiah Choudary Kalluri, dwmw2, computersforpeace
  Cc: michals, linux-kernel, shaktib, linux-mtd,
	kalluripunnaiahchoudary, Punnaiah Choudary Kalluri

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.



Jeff Lauruhn
NAND Application Engineer


-----Original Message-----
From: linux-mtd [mailto:linux-mtd-bounces@lists.infradead.org] On Behalf Of Punnaiah Choudary Kalluri
Sent: Thursday, March 19, 2015 1:50 AM
To: dwmw2@infradead.org; computersforpeace@gmail.com
Cc: linux-kernel@vger.kernel.org; shaktib@xilinx.com; michals@xilinx.com; linux-mtd@lists.infradead.org; kalluripunnaiahchoudary@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 <punnaia@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/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] mtd: Expand the ecc placement locations to 1260
  2015-03-19 23:21   ` Jeff Lauruhn (jlauruhn)
@ 2015-03-24  2:34     ` punnaiah choudary kalluri
  -1 siblings, 0 replies; 8+ messages in thread
From: punnaiah choudary kalluri @ 2015-03-24  2:34 UTC (permalink / raw)
  To: Jeff Lauruhn (jlauruhn)
  Cc: Punnaiah Choudary Kalluri, dwmw2, computersforpeace,
	linux-kernel, shaktib, michals, linux-mtd

On Fri, Mar 20, 2015 at 4:51 AM, Jeff Lauruhn (jlauruhn)
<jlauruhn@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-bounces@lists.infradead.org] On Behalf Of Punnaiah Choudary Kalluri
> Sent: Thursday, March 19, 2015 1:50 AM
> To: dwmw2@infradead.org; computersforpeace@gmail.com
> Cc: linux-kernel@vger.kernel.org; shaktib@xilinx.com; michals@xilinx.com; linux-mtd@lists.infradead.org; kalluripunnaiahchoudary@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 <punnaia@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/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] mtd: Expand the ecc placement locations to 1260
@ 2015-03-24  2:34     ` punnaiah choudary kalluri
  0 siblings, 0 replies; 8+ messages in thread
From: punnaiah choudary kalluri @ 2015-03-24  2:34 UTC (permalink / raw)
  To: Jeff Lauruhn (jlauruhn)
  Cc: linux-kernel, shaktib, michals, Punnaiah Choudary Kalluri,
	linux-mtd, computersforpeace, dwmw2

On Fri, Mar 20, 2015 at 4:51 AM, Jeff Lauruhn (jlauruhn)
<jlauruhn@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-bounces@lists.infradead.org] On Behalf Of Punnaiah Choudary Kalluri
> Sent: Thursday, March 19, 2015 1:50 AM
> To: dwmw2@infradead.org; computersforpeace@gmail.com
> Cc: linux-kernel@vger.kernel.org; shaktib@xilinx.com; michals@xilinx.com; linux-mtd@lists.infradead.org; kalluripunnaiahchoudary@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 <punnaia@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/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] mtd: Expand the ecc placement locations to 1260
  2015-03-24  2:34     ` punnaiah choudary kalluri
@ 2015-04-08 10:48       ` punnaiah choudary kalluri
  -1 siblings, 0 replies; 8+ messages in thread
From: punnaiah choudary kalluri @ 2015-04-08 10:48 UTC (permalink / raw)
  To: Jeff Lauruhn (jlauruhn)
  Cc: Punnaiah Choudary Kalluri, dwmw2, computersforpeace,
	linux-kernel, shaktib, michals, linux-mtd

Ping

On Tue, Mar 24, 2015 at 8:04 AM, punnaiah choudary kalluri
<punnaia@xilinx.com> wrote:
> On Fri, Mar 20, 2015 at 4:51 AM, Jeff Lauruhn (jlauruhn)
> <jlauruhn@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-bounces@lists.infradead.org] On Behalf Of Punnaiah Choudary Kalluri
>> Sent: Thursday, March 19, 2015 1:50 AM
>> To: dwmw2@infradead.org; computersforpeace@gmail.com
>> Cc: linux-kernel@vger.kernel.org; shaktib@xilinx.com; michals@xilinx.com; linux-mtd@lists.infradead.org; kalluripunnaiahchoudary@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 <punnaia@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/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] mtd: Expand the ecc placement locations to 1260
@ 2015-04-08 10:48       ` punnaiah choudary kalluri
  0 siblings, 0 replies; 8+ messages in thread
From: punnaiah choudary kalluri @ 2015-04-08 10:48 UTC (permalink / raw)
  To: Jeff Lauruhn (jlauruhn)
  Cc: linux-kernel, shaktib, michals, Punnaiah Choudary Kalluri,
	linux-mtd, computersforpeace, dwmw2

Ping

On Tue, Mar 24, 2015 at 8:04 AM, punnaiah choudary kalluri
<punnaia@xilinx.com> wrote:
> On Fri, Mar 20, 2015 at 4:51 AM, Jeff Lauruhn (jlauruhn)
> <jlauruhn@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-bounces@lists.infradead.org] On Behalf Of Punnaiah Choudary Kalluri
>> Sent: Thursday, March 19, 2015 1:50 AM
>> To: dwmw2@infradead.org; computersforpeace@gmail.com
>> Cc: linux-kernel@vger.kernel.org; shaktib@xilinx.com; michals@xilinx.com; linux-mtd@lists.infradead.org; kalluripunnaiahchoudary@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 <punnaia@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/

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-04-08 10:48 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-19  8:50 [PATCH] mtd: Expand the ecc placement locations to 1260 Punnaiah Choudary Kalluri
2015-03-19  8:50 ` Punnaiah Choudary Kalluri
2015-03-19 23:21 ` Jeff Lauruhn (jlauruhn)
2015-03-19 23:21   ` Jeff Lauruhn (jlauruhn)
2015-03-24  2:34   ` punnaiah choudary kalluri
2015-03-24  2:34     ` punnaiah choudary kalluri
2015-04-08 10:48     ` punnaiah choudary kalluri
2015-04-08 10:48       ` punnaiah choudary kalluri

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.