mtd: davinci: relax a timeout for ECC-initialization

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Sun Oct 24 20:59:05 EDT 2010


Gitweb:     http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=2bdb053a8119355eada46dfab88782449a26b39d
Commit:     2bdb053a8119355eada46dfab88782449a26b39d
Parent:     f2df1ae3fe8d44d51bd7218a9da9134b83c7531e
Author:     Wolfram Sang <w.sang at pengutronix.de>
AuthorDate: Fri Sep 3 12:35:37 2010 +0200
Committer:  David Woodhouse <David.Woodhouse at intel.com>
CommitDate: Sun Oct 24 23:49:41 2010 +0100

    mtd: davinci: relax a timeout for ECC-initialization
    
    Sudhakar found out that 100µs are enough. Sadly, his updated patch was
    overlooked and an older version still using 100ms was merged. Fix this.
    
    Reference: http://patchwork.ozlabs.org/patch/59180/
    
    Signed-off-by: Wolfram Sang <w.sang at pengutronix.de>
    Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy at nokia.com>
    Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
---
 drivers/mtd/nand/davinci_nand.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/mtd/nand/davinci_nand.c b/drivers/mtd/nand/davinci_nand.c
index e712959..ad51f8e 100644
--- a/drivers/mtd/nand/davinci_nand.c
+++ b/drivers/mtd/nand/davinci_nand.c
@@ -313,7 +313,7 @@ static int nand_davinci_correct_4bit(struct mtd_info *mtd,
 	u32 syndrome[4];
 	u32 ecc_state;
 	unsigned num_errors, corrected;
-	unsigned long timeo = jiffies + msecs_to_jiffies(100);
+	unsigned long timeo;
 
 	/* All bytes 0xff?  It's an erased page; ignore its ECC. */
 	for (i = 0; i < 10; i++) {
@@ -373,6 +373,7 @@ compare:
 	 * long as ECC_STATE reads less than 4. After that, ECC HW has entered
 	 * correction state.
 	 */
+	timeo = jiffies + usecs_to_jiffies(100);
 	do {
 		ecc_state = (davinci_nand_readl(info,
 				NANDFSR_OFFSET) >> 8) & 0x0f;



More information about the linux-mtd-cvs mailing list