From: Huang Shijie <shijie8@gmail.com>
To: Huang Shijie <b32955@freescale.com>
Cc: dedekind1@gmail.com, vikram186@gmail.com,
linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org,
computersforpeace@gmail.com, dwmw2@infradead.org
Subject: Re: [PATCH v6 00/10] mtd: add datasheet's ECC information to nand_chip{}
Date: Fri, 05 Jul 2013 00:00:04 -0400 [thread overview]
Message-ID: <51D644C4.7090202@gmail.com> (raw)
In-Reply-To: <1368760654-28754-1-git-send-email-b32955@freescale.com>
于 2013年05月16日 23:17, Huang Shijie 写道:
> 1.) Why add the ECC information to the nand_chip{} ?
> Each nand chip has its requirement for the ECC correctability, such as
> "4bit ECC for each 512Byte" or "40bit ECC for each 1024Byte".
> This ECC info is very important to the nand controller, such as gpmi.
>
> Take the Micron MT29F64G08CBABA for example, its geometry is
> 8k page size, 744 bytes oob size and it requires 40bit ECC per 1K bytes.
> If we do not provide the ECC info to the gpmi nand driver, it has to
> calculate the ECC correctability itself. The gpmi driver will gets the 56bit
> ECC for per 1K bytes which is beyond its BCH's 40bit ecc capibility.
> The gpmi will quits in this case. But in actually, the gpmi can supports
> this nand chip if it can get the right ECC info.
>
> 2.) About the patch set:
> 2.1) patch 1:
> The keynote patch.
>
> 2.2) patch 2 ~ patch 6:
> These patches are for ONFI nand.
> Parse out the ecc info from the parameter page if we can, else
> parse out the ecc info from the extended parameter page.
>
> 2.2) patch 7 ~ patch 9:
> Add the ECC info for full-id nand, and parse it out.
>
> 2.3) patch 10
> The gpmi uses the ecc info to set the BCH module. and with this
> patch set, the gpmi can supports the MT29F64G08CBABA now.
>
> v5 --> v6:
> [0] rename the ecc_strength/ecc_step to ecc_strength_ds/ecc_step_ds.
> [1] fix a case when "the codeword is 0".
> [2] fix typo.
> [3] add the 'O' to the diagram in the gpmi patch.
>
> v4 --> v5:
> [0] rebase the new l2-mtd(dropped the 3 merged patches).
> [1] rename ecc_size to ecc_step.
> [2] change the comment for the new fields.
>
> v3 --> v4:
> [0] remove the printk for "out of memory".
> [1] remove the hardcode nand_command_lp(). Update the chip->cmd_func
> before we call the nand_flash_detect_ext_param_page().
> [2] split the ecc_info to two fields for full id nand.
> [3] update the comments for ecc_strength/ecc_size (from Brian).
>
> v2 --> v3:
> [0] add a new patch to define the semantics of the two fields.
> [1] Use the Change Read Column command to remove the "last" argument.
> [2] simplify the onfi_feature().
> [3] Use kmalloc() to replace kcalloc().
> [4] others.
>
> v1 --> v2:
> [0] Since the first 3 patches are accepted, I do not send them in the
> version 2.
> [1] add NAND_ prefix for macros used by the full-id nands.
> [2] add onfi_ prefix for the extend parameter page data structures.
> [3] rename the onfi_get_feature() to onfi_feature().
> [4] I re-test this patch set again.
>
> Huang Shijie (10):
> mtd: add datasheet's ECC information to nand_chip{}
> mtd: get the ECC info from the parameter page for ONFI nand
> mtd: add data structures for Extended Parameter Page
> mtd: add a helper to get the supported features for ONFI nand
> mtd: get the ECC info from the Extended Parameter Page
> mtd: replace the hardcode with the onfi_feature()
> mtd: add ECC info for nand_flash_dev{}
> mtd: parse out the ECC info for the full-id nand chips
> mtd: add the ecc info for some full-id nand chips
> mtd: gpmi: set the BCH's geometry with the ecc info
>
> drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 132 +++++++++++++++++++++++++++++++-
> drivers/mtd/nand/nand_base.c | 93 ++++++++++++++++++++++-
> drivers/mtd/nand/nand_ids.c | 8 +-
> include/linux/mtd/nand.h | 72 +++++++++++++++++-
> 4 files changed, 296 insertions(+), 9 deletions(-)
>
Hi Artem:
Could you merge this patch set?
thanks
Huang Shijie
prev parent reply other threads:[~2013-07-04 16:02 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-17 3:17 [PATCH v6 00/10] mtd: add datasheet's ECC information to nand_chip{} Huang Shijie
2013-05-17 3:17 ` [PATCH v6 01/10] " Huang Shijie
2013-05-17 3:17 ` [PATCH v6 02/10] mtd: get the ECC info from the parameter page for ONFI nand Huang Shijie
2013-05-17 3:17 ` [PATCH v6 03/10] mtd: add data structures for Extended Parameter Page Huang Shijie
2013-05-17 3:17 ` [PATCH v6 04/10] mtd: add a helper to get the supported features for ONFI nand Huang Shijie
2013-05-17 3:17 ` [PATCH v6 05/10] mtd: get the ECC info from the Extended Parameter Page Huang Shijie
2013-05-17 17:36 ` Vikram Narayanan
2013-05-20 2:08 ` [PATCH v6 05/10 fix] " Huang Shijie
2013-05-20 6:05 ` Brian Norris
[not found] ` <5199C159.6020401@freescale.com>
[not found] ` <CAHwEkO2Wn_jLCS-4-1p6Mks-0q3Dy_kzR-j-xtX_oOAOive2VQ@mail.gmail.com>
2013-05-22 2:15 ` Huang Shijie
2013-05-22 2:28 ` [PATCH v6 05/10 fix2] " Huang Shijie
2013-05-17 3:17 ` [PATCH v6 06/10] mtd: replace the hardcode with the onfi_feature() Huang Shijie
2013-05-17 3:17 ` [PATCH v6 07/10] mtd: add ECC info for nand_flash_dev{} Huang Shijie
2013-05-17 3:17 ` [PATCH v6 08/10] mtd: parse out the ECC info for the full-id nand chips Huang Shijie
2013-05-17 3:17 ` [PATCH v6 09/10] mtd: add the ecc info for some " Huang Shijie
2013-05-17 3:17 ` [PATCH v6 10/10] mtd: gpmi: set the BCH's geometry with the ecc info Huang Shijie
2013-06-25 20:12 ` [PATCH v6 00/10] mtd: add datasheet's ECC information to nand_chip{} Brian Norris
2013-08-08 8:33 ` Huang Shijie
2013-08-08 23:06 ` Brian Norris
2013-08-09 3:58 ` Artem Bityutskiy
2013-08-09 6:00 ` Brian Norris
2013-08-09 7:23 ` Artem Bityutskiy
2013-08-09 7:28 ` Brian Norris
2013-07-05 4:00 ` Huang Shijie [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51D644C4.7090202@gmail.com \
--to=shijie8@gmail.com \
--cc=b32955@freescale.com \
--cc=computersforpeace@gmail.com \
--cc=dedekind1@gmail.com \
--cc=dwmw2@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=vikram186@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).