[PATCH 6/6] mtd: nand: macronix: Unflag the support of changing timings for MX30LF2G18AC
Miquel Raynal
miquel.raynal at bootlin.com
Sat Feb 3 01:55:44 PST 2018
From: Miquel Raynal <miquel.raynal at free-electrons.com>
The MX30LF2G18AC chip declares in its parameter page supporting
SET/GET_FEATURES but when it comes to timings, experience shows that it
is not the case.
Unflag this feature for this particular chip in the nand_parameters
structure to avoid unnecessary errors and downturns.
Signed-off-by: Miquel Raynal <miquel.raynal at free-electrons.com>
---
drivers/mtd/nand/nand_macronix.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/mtd/nand/nand_macronix.c b/drivers/mtd/nand/nand_macronix.c
index d290ff2a6d2f..c58567834595 100644
--- a/drivers/mtd/nand/nand_macronix.c
+++ b/drivers/mtd/nand/nand_macronix.c
@@ -19,9 +19,21 @@
static int macronix_nand_init(struct nand_chip *chip)
{
+ const char model[20] = "MX30LF2G18AC";
+
if (nand_is_slc(chip))
chip->bbt_options |= NAND_BBT_SCAN2NDPAGE;
+ /*
+ * MX30LF2G18AC chip does not support using SET/GET_FEATURES to change
+ * the timings unlike what is declared in the parameter page. Unflag
+ * this feature to avoid unnecessary downturns.
+ */
+ if (chip->parameters.support_setting_features &&
+ !strncmp(model, chip->parameters.model, ARRAY_SIZE(model)))
+ bitmap_clear(chip->parameters.feature_list,
+ ONFI_FEATURE_ADDR_TIMING_MODE, 1);
+
return 0;
}
--
2.14.1
More information about the linux-mtd
mailing list