Revert "mtd: spi-nor: Disable the flash quad mode in spi_nor_restore()"
authorYicong Yang <yangyicong@hisilicon.com>
Fri, 4 Sep 2020 07:47:19 +0000 (15:47 +0800)
committerVignesh Raghavendra <vigneshr@ti.com>
Mon, 14 Sep 2020 15:28:26 +0000 (20:58 +0530)
commit7d90a9b2693a753abfc7034eacea5bbcbb566560
treee7d07d1683d413fa365a7fb0fd5795bcf9872953
parent856deb866d16e29bd65952e0289066f6078af773
Revert "mtd: spi-nor: Disable the flash quad mode in spi_nor_restore()"

Previous patch intends to restore the flash's QE bit when removed/shutdown,
but may have some problems and break the flash:

- for those originally in Quad mode, this patch will clear the QE bit
  when unloaded the flash, which is incorrect.
- even with above problem solved, it may still break the flash as some
  flash's QE bit is non-volatile and lots of set/reset will wear out
  the bit.
- the restore method cannot be proved to be valid as if a hard
  reset or accident crash happened, the spi_nor_restore() won't be
  performed the the QE bit will not be restored as we expected to.

So let's revert it to fix this. The discussion can be found at [1].

This reverts commit cc59e6bb6cd69d3347c06ccce088c5c6052e041e.

[1] https://lore.kernel.org/linux-mtd/CAO8h3eFLVLRmw7u+rurKsg7=Nh2q-HVq-HgVXig8gf5Dffk8MA@mail.gmail.com/

Reported-by: Matthias Weisser <m.weisser.m@gmail.com>
Suggested-by: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Yicong Yang <yangyicong@hisilicon.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Link: https://lore.kernel.org/r/1599205640-26690-1-git-send-email-yangyicong@hisilicon.com
drivers/mtd/spi-nor/core.c