浏览代码

[MTD] OneNAND: Return an error if a read timeout occurs

If OneNAND is operating within specification, all operations should easily be
completed within the 20 millisecond timeout.
This patch faithlessly adds a check for the timeout and returns an error in
that case.

Signed-off-by: Adrian Hunter <ext-adrian.hunter@nokia.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Adrian Hunter 18 年之前
父节点
当前提交
9d03280129
共有 1 个文件被更改,包括 3 次插入0 次删除
  1. 3 0
      drivers/mtd/onenand/onenand_base.c

+ 3 - 0
drivers/mtd/onenand/onenand_base.c

@@ -333,6 +333,9 @@ static int onenand_wait(struct mtd_info *mtd, int state)
 			} else if (ecc & ONENAND_ECC_1BIT_ALL)
 				mtd->ecc_stats.corrected++;
 		}
+	} else if (state == FL_READING) {
+		printk(KERN_ERR "onenand_wait: read timeout! ctrl=0x%04x intr=0x%04x\n", ctrl, interrupt);
+		return -EIO;
 	}
 
 	return 0;