[MTD] OneNAND: fix onenand_wait bug in read ecc error

Even though there is ECC error. OneNAND driver updates the buffram as valid

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>

authored by Kyungmin Park and committed by Artem Bityutskiy 2fd32d4a 61a7e198

+3 -2
+3 -2
drivers/mtd/onenand/onenand_base.c
··· 298 298 unsigned long timeout; 299 299 unsigned int flags = ONENAND_INT_MASTER; 300 300 unsigned int interrupt = 0; 301 - unsigned int ctrl, ecc; 301 + unsigned int ctrl; 302 302 303 303 /* The 20 msec is enough */ 304 304 timeout = jiffies + msecs_to_jiffies(20); ··· 324 324 } 325 325 326 326 if (interrupt & ONENAND_INT_READ) { 327 - ecc = this->read_word(this->base + ONENAND_REG_ECC_STATUS); 327 + int ecc = this->read_word(this->base + ONENAND_REG_ECC_STATUS); 328 328 if (ecc) { 329 329 DEBUG(MTD_DEBUG_LEVEL0, "onenand_wait: ECC error = 0x%04x\n", ecc); 330 330 if (ecc & ONENAND_ECC_2BIT_ALL) ··· 332 332 else if (ecc & ONENAND_ECC_1BIT_ALL) 333 333 mtd->ecc_stats.corrected++; 334 334 } 335 + return ecc; 335 336 } 336 337 337 338 return 0;