diff options
author | Kyungmin Park <kyungmin.park@samsung.com> | 2007-01-05 13:16:04 +0300 |
---|---|---|
committer | Artem Bityutskiy <dedekind@infradead.org> | 2007-01-10 16:04:28 +0300 |
commit | b3c9f8bfe7ab366a5d2495ebe5d2dc6fd7368122 (patch) | |
tree | f7bf81deb2acef1ec68458fbbac6ff0c7999e4d0 /drivers/mtd/onenand | |
parent | a8de85d557004d6d4e4cf79ecd6b97339b986fe9 (diff) | |
download | linux-b3c9f8bfe7ab366a5d2495ebe5d2dc6fd7368122.tar.xz |
[MTD] OneNAND: return ecc error code only when 2-bit ecc occurs
we don't need to return ecc error when 1-bit ecc.
We only return error code when 2-bit ecc error
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Diffstat (limited to 'drivers/mtd/onenand')
-rw-r--r-- | drivers/mtd/onenand/onenand_base.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c index abbe160b4309..2ea07f5723d1 100644 --- a/drivers/mtd/onenand/onenand_base.c +++ b/drivers/mtd/onenand/onenand_base.c @@ -327,12 +327,12 @@ static int onenand_wait(struct mtd_info *mtd, int state) int ecc = this->read_word(this->base + ONENAND_REG_ECC_STATUS); if (ecc) { DEBUG(MTD_DEBUG_LEVEL0, "onenand_wait: ECC error = 0x%04x\n", ecc); - if (ecc & ONENAND_ECC_2BIT_ALL) + if (ecc & ONENAND_ECC_2BIT_ALL) { mtd->ecc_stats.failed++; - else if (ecc & ONENAND_ECC_1BIT_ALL) + return ecc; + } else if (ecc & ONENAND_ECC_1BIT_ALL) mtd->ecc_stats.corrected++; } - return ecc; } return 0; |