[U-Boot] [PATCH 08/13] mtd mxc nand: Use _mxc_nand_enable_hwecc()

Benoît Thébaudeau
2012-08-14T10:04:20Z

Hi Stefano,

> On 13/08/2012 22:50, Beno?t Th?baudeau wrote:
> > Use _mxc_nand_enable_hwecc() instead of duplicating its code.
> >
> > Signed-off-by: Beno?t Th?baudeau <benoit.thebaudeau@advansee.com>
> > Cc: Scott Wood <scottwood@freescale.com>
> > Cc: Stefano Babic <sbabic@denx.de>
> > ---
>
> Hi Beno?t,
>
> >
> > +#ifdef CONFIG_MXC_NAND_HWECC
> > +static void mxc_nand_enable_hwecc(struct mtd_info *mtd, int mode)
> > +{
> > + /*
> > + * If HW ECC is enabled, we turn it on during init. There is
> > + * no need to enable again here.
> > + */
> > +}
>
> mxc_nand_enable_hwecc is still empty after your changes...

Yes, and it's normal. The change is a move of the _mxc_nand_enable_hwecc()
function, not a filling of the mxc_nand_enable_hwecc() function (note the
differing underscore). For some reason, the patch looks weird because it moves
mxc_nand_enable_hwecc(), but the result is the same.

> > +
> > +#ifdef MXC_NFC_V1_1
> > static int mxc_nand_read_oob_syndrome(struct mtd_info *mtd,
> > struct nand_chip *chip,
> > int page, int sndcmd)
> > @@ -1235,15 +1235,11 @@ int board_nand_init(struct nand_chip *this)
> > host->pagesize_2k = 0;
> >
> > this->ecc.size = 512;
> > - tmp = readw(&host->regs->config1);
> > - tmp |= NFC_ECC_EN;
> > - writew(tmp, &host->regs->config1);
> > + _mxc_nand_enable_hwecc(mtd, 1);
>
> ...but you are calling it after removing the code in the init
> function,
> and I do not understand how ECC is enabled.

It's not the same function.

Best regards,
Beno?t