Hello Michael, On 15.11.23 11:38, Michael Nazzareno Trimarchi wrote: > Hi > > On Wed, Nov 15, 2023 at 11:37 AM Leto, Enrico <enrico.l...@siemens.com> wrote: >> >> Patch is working by me. >> >>> -----Original Message----- >>> From: Heiko Schocher <h...@denx.de> >>> Sent: Wednesday, November 15, 2023 6:41 AM >>> To: U-Boot Mailing List <u-boot@lists.denx.de>; Leto, Enrico (SI BP R&D ZG >>> FW >>> CCP) <enrico.l...@siemens.com> >>> Cc: Schocher, Heiko (EXT) (DENX Software Engineering GmbH) <h...@denx.de>; >>> Dario Binacchi <dario.binac...@amarulasolutions.com>; Michael Trimarchi >>> <mich...@amarulasolutions.com> >>> Subject: [PATCH] mtd: rawnand: omap_gpmc: fix BCH8 HW based correction >>> >>> commit 04fcd2587321 ("mtd: rawnand: omap_gpmc: Fix BCH6/16 HW based >>> correction") >>> >>> broke AM335x based boards booting from NAND with ECC BCH8 code. >>> >>> Use omap_enable_hwecc() instead of omap_enable_hwecc_bch() in SPL >>> restores correct SPL nand_read_page functionality. >>> >>> Tested on draco thuban board. >>> >>> Signed-off-by: Heiko Schocher <h...@denx.de> >>> >>> --- >>> fix NAND boot for BCH8 based TI AM335x boards >>> >>> Fix is based on series from Enrico: >>> > > We need test the boards that Roger add here.
Thanks! Are this AM335x based boards booting from NAND ? bye, Heiko > > Michael > >>> https://lists.d/ >>> enx.de%2Fpipermail%2Fu-boot%2F2023- >>> November%2F536793.html&data=05%7C01%7Cenrico.leto%40siemens.com >>> %7Cbd939f15167c49cc97b708dbe59d6e9e%7C38ae3bcd95794fd4addab4 >>> 2e1495d55a%7C1%7C0%7C638356236545245361%7CUnknown%7CTWFp >>> bGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV >>> CI6Mn0%3D%7C3000%7C%7C%7C&sdata=IUqjryYUtp%2Fdm9GgCALPTl8f% >>> 2BlcrO0ErXjkvoDwz7v4%3D&reserved=0 >>> >>> and fixes NAND boot for the draco thuban board. But this patch apply also >>> without the patches from above patchseries, see azure build: >>> >>> https://dev.a/ >>> zure.com%2Fhs0298%2Fhs%2F_build%2Fresults%3FbuildId%3D111%26vie >>> w%3Dresults&data=05%7C01%7Cenrico.leto%40siemens.com%7Cbd939f15 >>> 167c49cc97b708dbe59d6e9e%7C38ae3bcd95794fd4addab42e1495d55a% >>> 7C1%7C0%7C638356236545245361%7CUnknown%7CTWFpbGZsb3d8eyJ >>> WIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D >>> %7C3000%7C%7C%7C&sdata=S2itRHsR49lD9TlBexYw9J5waXiuFcS%2BhUp >>> %2B7Yi60MA%3D&reserved=0 >>> >>> which is clean. >>> >>> Above commit seems to change only U-Boot code and did not adapt >>> am335x_spl_bch.c, which breaks nand_read_page in SPL code for AM335x >>> based boards. So use in SPL "old" hw setup and reading page from NAND in >>> SPL works again. >>> >>> >>> drivers/mtd/nand/raw/omap_gpmc.c | 4 ++++ >>> 1 file changed, 4 insertions(+) >>> >>> diff --git a/drivers/mtd/nand/raw/omap_gpmc.c >>> b/drivers/mtd/nand/raw/omap_gpmc.c >>> index 1a5ed0de31..c9b66dadbd 100644 >>> --- a/drivers/mtd/nand/raw/omap_gpmc.c >>> +++ b/drivers/mtd/nand/raw/omap_gpmc.c >>> @@ -983,7 +983,11 @@ static int omap_select_ecc_scheme(struct >>> nand_chip *nand, >>> nand->ecc.strength = 8; >>> nand->ecc.size = SECTOR_BYTES; >>> nand->ecc.bytes = 14; >>> +#if defined(CONFIG_SPL_BUILD) >>> + nand->ecc.hwctl = omap_enable_hwecc; >>> +#else >>> nand->ecc.hwctl = omap_enable_hwecc_bch; >>> +#endif >>> nand->ecc.correct = omap_correct_data_bch; >>> nand->ecc.calculate = omap_calculate_ecc_bch; >>> nand->ecc.read_page = omap_read_page_bch; >>> -- >>> 2.37.3 >> > > -- DENX Software Engineering GmbH, Managing Director: Erika Unter HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-52 Fax: +49-8142-66989-80 Email: h...@denx.de