]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
mtd: nand: omap_gpmc: minor cleanup of omap_correct_data_bch
authorpekon gupta <pekon@ti.com>
Fri, 11 Apr 2014 07:25:34 +0000 (12:55 +0530)
committerTom Rini <trini@ti.com>
Fri, 6 Jun 2014 21:45:57 +0000 (17:45 -0400)
This patch tries to avoid some local pointer dereferences, by using common
local variables in omap_correct_data_bch()

Signed-off-by: Pekon Gupta <pekon@ti.com>
Reviewed-by: Stefan Roese <sr@denx.de>
drivers/mtd/nand/omap_gpmc.c

index 391a26858cd8302d3a7d80f14f548c1f04cf1131..2d893e1c6c93dbbeefa0134bf69fa6bfe2ea0477 100644 (file)
@@ -331,7 +331,7 @@ static int omap_correct_data_bch(struct mtd_info *mtd, uint8_t *dat,
 {
        struct nand_chip *chip = mtd->priv;
        struct omap_nand_info *info = chip->priv;
-       uint32_t eccbytes = chip->ecc.bytes;
+       struct nand_ecc_ctrl *ecc = &chip->ecc;
        uint32_t error_count = 0, error_max;
        uint32_t error_loc[8];
        enum bch_level bch_type;
@@ -340,7 +340,7 @@ static int omap_correct_data_bch(struct mtd_info *mtd, uint8_t *dat,
        uint32_t byte_pos, bit_pos;
 
        /* check calculated ecc */
-       for (i = 0; i < chip->ecc.bytes && !ecc_flag; i++) {
+       for (i = 0; i < ecc->bytes && !ecc_flag; i++) {
                if (calc_ecc[i] != 0x00)
                        ecc_flag = 1;
        }
@@ -349,7 +349,7 @@ static int omap_correct_data_bch(struct mtd_info *mtd, uint8_t *dat,
 
        /* check for whether its a erased-page */
        ecc_flag = 0;
-       for (i = 0; i < chip->ecc.bytes && !ecc_flag; i++) {
+       for (i = 0; i < ecc->bytes && !ecc_flag; i++) {
                if (read_ecc[i] != 0xff)
                        ecc_flag = 1;
        }
@@ -363,7 +363,7 @@ static int omap_correct_data_bch(struct mtd_info *mtd, uint8_t *dat,
        switch (info->ecc_scheme) {
        case OMAP_ECC_BCH8_CODE_HW:
                bch_type = BCH_8_BIT;
-               omap_reverse_list(calc_ecc, eccbytes - 1);
+               omap_reverse_list(calc_ecc, ecc->bytes - 1);
                break;
        default:
                return -EINVAL;
@@ -379,7 +379,7 @@ static int omap_correct_data_bch(struct mtd_info *mtd, uint8_t *dat,
                switch (info->ecc_scheme) {
                case OMAP_ECC_BCH8_CODE_HW:
                        /* 14th byte in ECC is reserved to match ROM layout */
-                       error_max = SECTOR_BYTES + (eccbytes - 1);
+                       error_max = SECTOR_BYTES + (ecc->bytes - 1);
                        break;
                default:
                        return -EINVAL;