[U-Boot] [PATCH v2] mtd: nand: Fix address cycle problem with NAND_CMD_RNDOUT

Gupta, Pekon pekon at ti.com
Wed May 28 11:37:21 CEST 2014


Hi Stefan, Marek,

>>From: Stefan Roese [mailto:sr at denx.de]
>>
>>From: Marek Belisko <marek.belisko at gmail.com>
>>
>>On some NAND devices (e.g. Hynix H27U2G8F2CTR-BI on Siemens DXR2 /
>>Draco boards) the NAND subsystem (SPL & U-Boot drivers) issues the following
>>bit-flip error messages:
>>
>>nand: bit-flip corrected @oob=0
>>...
>>
>>NAND_CMD_RNDOUT (05h-E0h) needs only two cycles of column address to access data
>>from different column within the same page. So expected sequence on NAND data-bus is
>>     <05h> <column-addr-byte1> <column-address-byte2> <E0h>
>>

[...]

>>
>>diff --git a/drivers/mtd/nand/am335x_spl_bch.c b/drivers/mtd/nand/am335x_spl_bch.c
>>index c84851b..9b547ce 100644
>>--- a/drivers/mtd/nand/am335x_spl_bch.c
>>+++ b/drivers/mtd/nand/am335x_spl_bch.c
>>@@ -63,15 +63,19 @@ static int nand_command(int block, int page, uint32_t offs,
>> 	hwctrl(&mtd, offs & 0xff,
>> 		       NAND_CTRL_ALE | NAND_CTRL_CHANGE); /* A[7:0] */
>> 	hwctrl(&mtd, (offs >> 8) & 0xff, NAND_CTRL_ALE); /* A[11:9] */
>>+
>> 	/* Row address */
>>-	hwctrl(&mtd, (page_addr & 0xff), NAND_CTRL_ALE); /* A[19:12] */
>>-	hwctrl(&mtd, ((page_addr >> 8) & 0xff),

I see the conflict here with following commit. Is this patch on latest u-boot tree?

commit 6dd3b566893a99629771e076dca1ce8db7b77dc1
mtd: Add a CONFIG_SPL_MTD_SUPPORT for a more full NAND subsystem in SPL

May be you need to resend rebased on latest tree..


with regards, pekon


More information about the U-Boot mailing list