|
@@ -1424,6 +1424,10 @@ static int gpmi_pre_bbt_scan(struct gpmi_nand_data *this)
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|
|
|
+ /* Adjust the ECC strength according to the chip. */
|
|
|
+ this->nand.ecc.strength = this->bch_geometry.ecc_strength;
|
|
|
+ this->mtd.ecc_strength = this->bch_geometry.ecc_strength;
|
|
|
+
|
|
|
/* NAND boot init, depends on the gpmi_set_geometry(). */
|
|
|
return nand_boot_init(this);
|
|
|
}
|
|
@@ -1482,6 +1486,7 @@ static int __devinit gpmi_nfc_init(struct gpmi_nand_data *this)
|
|
|
chip->options |= NAND_NO_SUBPAGE_WRITE;
|
|
|
chip->ecc.mode = NAND_ECC_HW;
|
|
|
chip->ecc.size = 1;
|
|
|
+ chip->ecc.strength = 8;
|
|
|
chip->ecc.layout = &gpmi_hw_ecclayout;
|
|
|
|
|
|
/* Allocate a temporary DMA buffer for reading ID in the nand_scan() */
|