diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-11-07 17:09:21 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-11-08 11:05:43 +0100 |
commit | 4a0a5df35607273f7155ce24bf4c2c2210885b64 (patch) | |
tree | 9b889088fc940e79e8080c632b2bbdf3f9690743 /drivers/mtd/nand/nand_omap_gpmc.c | |
parent | 6b8503baabb5a55dc6e21c80d02ac8729149525e (diff) | |
download | barebox-4a0a5df35607273f7155ce24bf4c2c2210885b64.tar.gz barebox-4a0a5df35607273f7155ce24bf4c2c2210885b64.tar.xz |
mtd nand omap: use blocknum calculation to where it's used
Just some refactoring to make the next patches better readable.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/mtd/nand/nand_omap_gpmc.c')
-rw-r--r-- | drivers/mtd/nand/nand_omap_gpmc.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/mtd/nand/nand_omap_gpmc.c b/drivers/mtd/nand/nand_omap_gpmc.c index a012c03dec..f1074bb484 100644 --- a/drivers/mtd/nand/nand_omap_gpmc.c +++ b/drivers/mtd/nand/nand_omap_gpmc.c @@ -362,19 +362,13 @@ static int omap_correct_data(struct mtd_info *mtd, uint8_t *dat, int ecc_type = OMAP_ECC_BCH8_CODE_HW; int i, j, eccsize, eccflag, count; unsigned int err_loc[8]; - int blockCnt = 0; + int blocks = 0; int select_4_8; debug("mtd=%x dat=%x read_ecc=%x calc_ecc=%x", (unsigned int)mtd, (unsigned int)dat, (unsigned int)read_ecc, (unsigned int)calc_ecc); - if ((nand->ecc.mode == NAND_ECC_HW) && - (nand->ecc.size == 2048)) - blockCnt = 4; - else - blockCnt = 1; - switch (oinfo->ecc_mode) { case OMAP_ECC_HAMMING_CODE_HW_ROMCODE: if (read_ecc[0] == 0xff && read_ecc[1] == 0xff && @@ -415,6 +409,12 @@ static int omap_correct_data(struct mtd_info *mtd, uint8_t *dat, select_4_8 = 1; /* fall through */ case OMAP_ECC_BCH4_CODE_HW: + + if (nand->ecc.size == 2048) + blocks = 4; + else + blocks = 1; + if (ecc_type == OMAP_ECC_BCH4_CODE_HW) { eccsize = 7; select_4_8 = 0; |