Hi Jeroen, > >The omap_gpmc allows switching ecc at runtime. Since >the NAND_SUBPAGE_READ flag is only set, it is kept when >switching to hw ecc, which is not correct. This leads to >calling chip->ecc.read_subpage which is not a valid >pointer. Therefore also clear the flag so reading in >hw mode works again. > >Cc: Scott Wood <scottw...@freescale.com> >Cc: Pekon Gupta <pe...@ti.com> >Cc: Nikita Kiryanov <nik...@compulab.co.il> >Signed-off-by: Jeroen Hofstee <jer...@myspectrum.nl> >--- > drivers/mtd/nand/nand_base.c | 2 ++ > 1 file changed, 2 insertions(+) > >diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c >index 1ce55fd..0762a19 100644 >--- a/drivers/mtd/nand/nand_base.c >+++ b/drivers/mtd/nand/nand_base.c >@@ -3354,6 +3354,8 @@ int nand_scan_tail(struct mtd_info *mtd) > /* Large page NAND with SOFT_ECC should support subpage reads */ > if ((chip->ecc.mode == NAND_ECC_SOFT) && (chip->page_shift > 9)) > chip->options |= NAND_SUBPAGE_READ; >+ else >+ chip->options &= ~NAND_SUBPAGE_READ; > I don't think it's good to add OMAP specific changes to nand_base.c. It's better if you can add this as part of omap_select_ecc_scheme() in omap_gpmc.c
with regards, pekon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot