Message ID | 1326111866-13120-1-git-send-email-prabhakar@freescale.com |
---|---|
State | New, archived |
Headers | show |
On 01/09/2012 06:24 AM, Prabhakar Kushwaha wrote: > 1) OOB area should be updated irrespective of NAND page size. Earlier it was > updated only for 512byte NAND page. > > 2) During OOB update fbcr should be equal to OOB size. > > Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> > Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com> > --- > git://git.kernel.org/pub/scm/linux/kernel/git/galak/powerpc.git (branch next) > > This patch is created on top of IFC driver patch (already floated in mailing > list). Please find their link: > http://patchwork.ozlabs.org/patch/133315/ > http://patchwork.ozlabs.org/patch/133316/ Looks good. -Scott
On Jan 9, 2012, at 7:10 PM, Scott Wood wrote: > On 01/09/2012 06:24 AM, Prabhakar Kushwaha wrote: >> 1) OOB area should be updated irrespective of NAND page size. Earlier it was >> updated only for 512byte NAND page. >> >> 2) During OOB update fbcr should be equal to OOB size. >> >> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> >> Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com> >> --- >> git://git.kernel.org/pub/scm/linux/kernel/git/galak/powerpc.git (branch next) >> >> This patch is created on top of IFC driver patch (already floated in mailing >> list). Please find their link: >> http://patchwork.ozlabs.org/patch/133315/ >> http://patchwork.ozlabs.org/patch/133316/ > > Looks good. > > -Scott Can we not merge all these into one updated IFC NAND patch? - k
On 01/17/2012 12:57 PM, Kumar Gala wrote: > > On Jan 9, 2012, at 7:10 PM, Scott Wood wrote: > >> On 01/09/2012 06:24 AM, Prabhakar Kushwaha wrote: >>> 1) OOB area should be updated irrespective of NAND page size. Earlier it was >>> updated only for 512byte NAND page. >>> >>> 2) During OOB update fbcr should be equal to OOB size. >>> >>> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> >>> Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com> >>> --- >>> git://git.kernel.org/pub/scm/linux/kernel/git/galak/powerpc.git (branch next) >>> >>> This patch is created on top of IFC driver patch (already floated in mailing >>> list). Please find their link: >>> http://patchwork.ozlabs.org/patch/133315/ >>> http://patchwork.ozlabs.org/patch/133316/ >> >> Looks good. >> >> -Scott > > Can we not merge all these into one updated IFC NAND patch? Sure, once we've agreed on what the right fix is for the is_blank issue (and I think we're pretty close). It's been useful to see these fixes as separate patches during the review/iteration phase, though. -Scott
diff --git a/drivers/mtd/nand/fsl_ifc_nand.c b/drivers/mtd/nand/fsl_ifc_nand.c index c0529ea..52bd706d 100644 --- a/drivers/mtd/nand/fsl_ifc_nand.c +++ b/drivers/mtd/nand/fsl_ifc_nand.c @@ -440,22 +440,19 @@ static void fsl_ifc_cmdfunc(struct mtd_info *mtd, unsigned int command, out_be32(&ifc->ifc_nand.nand_fir1, (IFC_FIR_OP_CW1 << IFC_NAND_FIR1_OP5_SHIFT)); - if (column >= mtd->writesize) { - /* OOB area --> READOOB */ - column -= mtd->writesize; - nand_fcr0 |= NAND_CMD_READOOB << - IFC_NAND_FCR0_CMD0_SHIFT; - ifc_nand_ctrl->oob = 1; - } else if (column < 256) - /* First 256 bytes --> READ0 */ + if (column >= mtd->writesize) nand_fcr0 |= - NAND_CMD_READ0 << IFC_NAND_FCR0_CMD0_SHIFT; + NAND_CMD_READOOB << IFC_NAND_FCR0_CMD0_SHIFT; else - /* Second 256 bytes --> READ1 */ nand_fcr0 |= - NAND_CMD_READ1 << IFC_NAND_FCR0_CMD0_SHIFT; + NAND_CMD_READ0 << IFC_NAND_FCR0_CMD0_SHIFT; } + if (column >= mtd->writesize) { + /* OOB area --> READOOB */ + column -= mtd->writesize; + ifc_nand_ctrl->oob = 1; + } out_be32(&ifc->ifc_nand.nand_fcr0, nand_fcr0); set_addr(mtd, column, page_addr, ifc_nand_ctrl->oob); return; @@ -466,7 +463,7 @@ static void fsl_ifc_cmdfunc(struct mtd_info *mtd, unsigned int command, int full_page; if (ifc_nand_ctrl->oob) { out_be32(&ifc->ifc_nand.nand_fbcr, - ifc_nand_ctrl->index); + ifc_nand_ctrl->index - ifc_nand_ctrl->column); full_page = 0; } else { out_be32(&ifc->ifc_nand.nand_fbcr, 0);