summaryrefslogtreecommitdiff
path: root/drivers/mtd
diff options
context:
space:
mode:
authorMiquel Raynal <miquel.raynal@bootlin.com>2020-05-29 13:13:01 +0200
committerMiquel Raynal <miquel.raynal@bootlin.com>2020-06-26 08:35:05 +0200
commit6ef10df37e7dd99a5a16228fabcc3a5141585b66 (patch)
treed50cfe564711e75272da77fd11cb2a2b11f761bb /drivers/mtd
parenta63674c7cfe62221e05ba73107d9e15d73ff8bbd (diff)
mtd: rawnand: Compare the actual timing values
Avoid relying just on the default timing mode to discriminate if the data interface must be restored. This field should only be used at initialization time by legacy chips statically defined. Do a memcmp() instead. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Link: https://lore.kernel.org/linux-mtd/20200529111322.7184-8-miquel.raynal@bootlin.com
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/nand/raw/nand_base.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c
index 534ee75d0f2b..3526c2a50bbe 100644
--- a/drivers/mtd/nand/raw/nand_base.c
+++ b/drivers/mtd/nand/raw/nand_base.c
@@ -2512,7 +2512,8 @@ int nand_reset(struct nand_chip *chip, int chipnr)
* nand_setup_data_interface() uses ->set/get_features() which would
* fail anyway as the parameter page is not available yet.
*/
- if (!chip->onfi_timing_mode_default)
+ if (!memcmp(&chip->data_interface, &saved_data_intf,
+ sizeof(saved_data_intf)))
return 0;
chip->data_interface = saved_data_intf;