Re: [RFC] mtd: nand: Fix bad block identification issue
On Fri, 2011-04-29 at 11:03 -0700, Brian Norris wrote: > As promised (but too late?): > > Acked-by: Brian Norris No, not late, I rebase my l2 tree with no shame :-) But once the patch hits the real mtd tree, then we never change it. So, I've added you tag, thanks. -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC] mtd: nand: Fix bad block identification issue
On 4/29/2011 10:44 AM, Artem Bityutskiy wrote: On Fri, 2011-04-29 at 19:52 +0530, Saxena, Parth wrote: -Original Message- From: Artem Bityutskiy [mailto:dedeki...@gmail.com] Sent: Thursday, April 28, 2011 11:01 PM To: Saxena, Parth; Brian Norris Cc: linux-...@lists.infradead.org; Basheer, Mansoor Ahamed; linux- o...@vger.kernel.org Subject: Re: [RFC] mtd: nand: Fix bad block identification issue On Wed, 2011-04-27 at 17:39 +0530, Saxena, Parth wrote: This patch solves the above issue for omap by initialising badblockbits. We are working further on this to find a generic fix to the problem in nand_base.c. But it looks like the generic solution is to return the line which was accidentally removed, how about this patch From: Artem Bityutskiy Date: Thu, 28 Apr 2011 20:26:59 +0300 Subject: [PATCH] mtd: return badblockbits back In commit c7b28e25cb9beb943aead770ff14551b55fa8c79 the initialization of the backblockbits was accidentally removed. This patch returns it back, because otherwise some NAND drivers are broken. This problem was reported by "Saxena, Parth" here: http://lists.infradead.org/pipermail/linux-mtd/2011-April/035221.html Reported-by: Saxena, Parth Signed-off-by: Artem Bityutskiy Cc: sta...@kernel.org [2.6.36+] --- drivers/mtd/nand/nand_base.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index 15510f2..5a7f817 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c @@ -3106,6 +3106,8 @@ ident_done: chip->chip_shift += 32 - 1; } + chip->badblockbits = 8; + /* Set the bad block position */ if (mtd->writesize> 512 || (busw& NAND_BUSWIDTH_16)) chip->badblockpos = NAND_LARGE_BADBLOCK_POS; [Saxena, Parth] Tested-By: Saxena, Parth Acked By: Saxena, Parth Thanks, pushing to the l2-mtd-2.6.git. As promised (but too late?): Acked-by: Brian Norris -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [RFC] mtd: nand: Fix bad block identification issue
On Fri, 2011-04-29 at 19:52 +0530, Saxena, Parth wrote: > > > -Original Message- > > From: Artem Bityutskiy [mailto:dedeki...@gmail.com] > > Sent: Thursday, April 28, 2011 11:01 PM > > To: Saxena, Parth; Brian Norris > > Cc: linux-...@lists.infradead.org; Basheer, Mansoor Ahamed; linux- > > o...@vger.kernel.org > > Subject: Re: [RFC] mtd: nand: Fix bad block identification issue > > > > On Wed, 2011-04-27 at 17:39 +0530, Saxena, Parth wrote: > > > This patch solves the above issue for omap by initialising > > > badblockbits. We are working further on this to find a generic fix > > > to the problem in nand_base.c. > > > > But it looks like the generic solution is to return the line which was > > accidentally removed, how about this patch > > > > From: Artem Bityutskiy > > Date: Thu, 28 Apr 2011 20:26:59 +0300 > > Subject: [PATCH] mtd: return badblockbits back > > > > In commit c7b28e25cb9beb943aead770ff14551b55fa8c79 the initialization of > > the backblockbits was accidentally removed. This patch returns it back, > > because otherwise some NAND drivers are broken. > > > > This problem was reported by "Saxena, Parth " here: > > http://lists.infradead.org/pipermail/linux-mtd/2011-April/035221.html > > > > Reported-by: Saxena, Parth > > Signed-off-by: Artem Bityutskiy > > Cc: sta...@kernel.org [2.6.36+] > > --- > > drivers/mtd/nand/nand_base.c |2 ++ > > 1 files changed, 2 insertions(+), 0 deletions(-) > > > > diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c > > index 15510f2..5a7f817 100644 > > --- a/drivers/mtd/nand/nand_base.c > > +++ b/drivers/mtd/nand/nand_base.c > > @@ -3106,6 +3106,8 @@ ident_done: > > chip->chip_shift += 32 - 1; > > } > > > > + chip->badblockbits = 8; > > + > > /* Set the bad block position */ > > if (mtd->writesize > 512 || (busw & NAND_BUSWIDTH_16)) > > chip->badblockpos = NAND_LARGE_BADBLOCK_POS; > [Saxena, Parth] > > Tested-By: Saxena, Parth > Acked By: Saxena, Parth Thanks, pushing to the l2-mtd-2.6.git. -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [RFC] mtd: nand: Fix bad block identification issue
> -Original Message- > From: Artem Bityutskiy [mailto:dedeki...@gmail.com] > Sent: Thursday, April 28, 2011 11:01 PM > To: Saxena, Parth; Brian Norris > Cc: linux-...@lists.infradead.org; Basheer, Mansoor Ahamed; linux- > o...@vger.kernel.org > Subject: Re: [RFC] mtd: nand: Fix bad block identification issue > > On Wed, 2011-04-27 at 17:39 +0530, Saxena, Parth wrote: > > This patch solves the above issue for omap by initialising > > badblockbits. We are working further on this to find a generic fix > > to the problem in nand_base.c. > > But it looks like the generic solution is to return the line which was > accidentally removed, how about this patch > > From: Artem Bityutskiy > Date: Thu, 28 Apr 2011 20:26:59 +0300 > Subject: [PATCH] mtd: return badblockbits back > > In commit c7b28e25cb9beb943aead770ff14551b55fa8c79 the initialization of > the backblockbits was accidentally removed. This patch returns it back, > because otherwise some NAND drivers are broken. > > This problem was reported by "Saxena, Parth " here: > http://lists.infradead.org/pipermail/linux-mtd/2011-April/035221.html > > Reported-by: Saxena, Parth > Signed-off-by: Artem Bityutskiy > Cc: sta...@kernel.org [2.6.36+] > --- > drivers/mtd/nand/nand_base.c |2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c > index 15510f2..5a7f817 100644 > --- a/drivers/mtd/nand/nand_base.c > +++ b/drivers/mtd/nand/nand_base.c > @@ -3106,6 +3106,8 @@ ident_done: > chip->chip_shift += 32 - 1; > } > > + chip->badblockbits = 8; > + > /* Set the bad block position */ > if (mtd->writesize > 512 || (busw & NAND_BUSWIDTH_16)) > chip->badblockpos = NAND_LARGE_BADBLOCK_POS; [Saxena, Parth] Tested-By: Saxena, Parth Acked By: Saxena, Parth > -- > 1.7.2.3 > > -- > Best Regards, > Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC] mtd: nand: Fix bad block identification issue
On Thu, 2011-04-28 at 20:30 +0300, Artem Bityutskiy wrote: > On Wed, 2011-04-27 at 17:39 +0530, Saxena, Parth wrote: > > This patch solves the above issue for omap by initialising > > badblockbits. We are working further on this to find a generic fix > > to the problem in nand_base.c. > > But it looks like the generic solution is to return the line which was > accidentally removed, how about this patch > > From: Artem Bityutskiy > Date: Thu, 28 Apr 2011 20:26:59 +0300 > Subject: [PATCH] mtd: return badblockbits back > > In commit c7b28e25cb9beb943aead770ff14551b55fa8c79 the initialization of > the backblockbits was accidentally removed. This patch returns it back, > because otherwise some NAND drivers are broken. > > This problem was reported by "Saxena, Parth " here: > http://lists.infradead.org/pipermail/linux-mtd/2011-April/035221.html > > Reported-by: Saxena, Parth > Signed-off-by: Artem Bityutskiy > Cc: sta...@kernel.org [2.6.36+] > --- > drivers/mtd/nand/nand_base.c |2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) Any ack/nack/tested-by? -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC] mtd: nand: Fix bad block identification issue
On Wed, 2011-04-27 at 17:39 +0530, Saxena, Parth wrote: > This patch solves the above issue for omap by initialising > badblockbits. We are working further on this to find a generic fix > to the problem in nand_base.c. But it looks like the generic solution is to return the line which was accidentally removed, how about this patch From: Artem Bityutskiy Date: Thu, 28 Apr 2011 20:26:59 +0300 Subject: [PATCH] mtd: return badblockbits back In commit c7b28e25cb9beb943aead770ff14551b55fa8c79 the initialization of the backblockbits was accidentally removed. This patch returns it back, because otherwise some NAND drivers are broken. This problem was reported by "Saxena, Parth " here: http://lists.infradead.org/pipermail/linux-mtd/2011-April/035221.html Reported-by: Saxena, Parth Signed-off-by: Artem Bityutskiy Cc: sta...@kernel.org [2.6.36+] --- drivers/mtd/nand/nand_base.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index 15510f2..5a7f817 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c @@ -3106,6 +3106,8 @@ ident_done: chip->chip_shift += 32 - 1; } + chip->badblockbits = 8; + /* Set the bad block position */ if (mtd->writesize > 512 || (busw & NAND_BUSWIDTH_16)) chip->badblockpos = NAND_LARGE_BADBLOCK_POS; -- 1.7.2.3 -- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC] mtd: nand: Fix bad block identification issue
Hi, On 4/27/2011 8:45 AM, Grazvydas Ignotas wrote: > Brian, > > did you really intend to remove badblockbits? Maybe it should go back > to nand_base.c? No, I had no intention of the sorts! It surely should not have been removed in the first place. I will "ack" a patch to revert it, or next time I'm at my work machine I'll write one myself. As a defense for myself...I think I was relatively new to git + kernel hacking at the time I sent this patch. Sorry for the messup. > On Wed, Apr 27, 2011 at 3:09 PM, Saxena, Parth wrote: >> Commit e0b58d0 ("mtd: nand: add ->badblockbits for minimum number >> of set bits in bad block byte") by Maxim Levitsky added >> badblockbits to nand_chip to specify minimum number of set bits >> in bad block byte. The patch initialized badblockbits to 8 in >> nand_base.c, but later the initialization line got removed by commit >> c7b28e2("mtd: nand: refactor BB marker detection"). After this all >> NAND drivers with NAND_SKIP_BBTSCAN are forced to initialize it to 8. >> Otherwise bad block identification will fail. Brian -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC] mtd: nand: Fix bad block identification issue
Brian, did you really intend to remove badblockbits? Maybe it should go back to nand_base.c? On Wed, Apr 27, 2011 at 3:09 PM, Saxena, Parth wrote: > Commit e0b58d0 ("mtd: nand: add ->badblockbits for minimum number > of set bits in bad block byte") by Maxim Levitsky added > badblockbits to nand_chip to specify minimum number of set bits > in bad block byte. The patch initialized badblockbits to 8 in > nand_base.c, but later the initialization line got removed by commit > c7b28e2("mtd: nand: refactor BB marker detection"). After this all > NAND drivers with NAND_SKIP_BBTSCAN are forced to initialize it to 8. > Otherwise bad block identification will fail. > > As a result, mounting of empty jffs2 file system on omap3evm > (having bad blocks) failed giving the following error message - > > "mount: mounting /dev/mtdblock4 on /tmp failed: Input/output error" > > This patch solves the above issue for omap by initialising > badblockbits. We are working further on this to find a generic fix > to the problem in nand_base.c. > > Signed-off-by: Saxena, Parth > Signed-off-by: Basheer, Mansoor Ahamed > --- > drivers/mtd/nand/omap2.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c > index 454f90c..350c77f 100644 > --- a/drivers/mtd/nand/omap2.c > +++ b/drivers/mtd/nand/omap2.c > @@ -1005,6 +1005,8 @@ static int __devinit omap_nand_probe(struct > platform_device *pdev) > info->nand.options = pdata->devsize; > info->nand.options |= NAND_SKIP_BBTSCAN; > > + info->nand.badblockbits = 8; > + > /* NAND write protect off */ > gpmc_cs_configure(info->gpmc_cs, GPMC_CONFIG_WP, 0); > > -- > 1.6.2.4 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-omap" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[RFC] mtd: nand: Fix bad block identification issue
Commit e0b58d0 ("mtd: nand: add ->badblockbits for minimum number of set bits in bad block byte") by Maxim Levitsky added badblockbits to nand_chip to specify minimum number of set bits in bad block byte. The patch initialized badblockbits to 8 in nand_base.c, but later the initialization line got removed by commit c7b28e2("mtd: nand: refactor BB marker detection"). After this all NAND drivers with NAND_SKIP_BBTSCAN are forced to initialize it to 8. Otherwise bad block identification will fail. As a result, mounting of empty jffs2 file system on omap3evm (having bad blocks) failed giving the following error message - "mount: mounting /dev/mtdblock4 on /tmp failed: Input/output error" This patch solves the above issue for omap by initialising badblockbits. We are working further on this to find a generic fix to the problem in nand_base.c. Signed-off-by: Saxena, Parth Signed-off-by: Basheer, Mansoor Ahamed --- drivers/mtd/nand/omap2.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c index 454f90c..350c77f 100644 --- a/drivers/mtd/nand/omap2.c +++ b/drivers/mtd/nand/omap2.c @@ -1005,6 +1005,8 @@ static int __devinit omap_nand_probe(struct platform_device *pdev) info->nand.options = pdata->devsize; info->nand.options |= NAND_SKIP_BBTSCAN; + info->nand.badblockbits = 8; + /* NAND write protect off */ gpmc_cs_configure(info->gpmc_cs, GPMC_CONFIG_WP, 0); -- 1.6.2.4 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html