linux/drivers/mtd/spi-nor
Yicong Yang 7d90a9b269 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 cc59e6bb6c.

[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
2020-09-14 20:58:26 +05:30
..
controllers mtd: revert "spi-nor: intel: provide a range for poll_timout" 2020-07-28 11:35:27 +03:00
atmel.c mtd: spi-nor: Move Atmel bits out of core.c 2020-03-17 09:28:02 +02:00
catalyst.c mtd: spi-nor: Move Catalyst bits out of core.c 2020-03-17 09:28:05 +02:00
core.c Revert "mtd: spi-nor: Disable the flash quad mode in spi_nor_restore()" 2020-09-14 20:58:26 +05:30
core.h mtd: spi-nor: Add capability to disable flash quad mode 2020-07-13 12:09:43 +03:00
eon.c mtd: spi-nor: Move Eon bits out of core.c 2020-03-17 09:28:02 +02:00
esmt.c mtd: spi-nor: Move ESMT bits out of core.c 2020-03-17 09:28:02 +02:00
everspin.c mtd: spi-nor: Move Everspin bits out of core.c 2020-03-17 09:28:03 +02:00
fujitsu.c mtd: spi-nor: Move Fujitsu bits out of core.c 2020-03-17 09:28:03 +02:00
gigadevice.c mtd: spi-nor: Trim what is exposed in spi-nor.h 2020-03-17 09:28:07 +02:00
intel.c mtd: spi-nor: Move Intel bits out of core.c 2020-03-17 09:28:03 +02:00
issi.c mtd: spi-nor: Trim what is exposed in spi-nor.h 2020-03-17 09:28:07 +02:00
Kconfig mtd: spi-nor: Fix SPI NOR acronym 2020-05-28 10:46:23 +03:00
macronix.c mtd: spi-nor: macronix: Add support for mx66u2g45g 2020-07-27 08:36:37 +03:00
Makefile mtd: spi-nor: Compile files in controllers/ directory 2020-04-09 22:00:13 +02:00
micron-st.c mtd: spi-nor: micron: Add SPI_NOR_DUAL_READ flag on mt25qu02g 2020-07-27 08:37:06 +03:00
sfdp.c mtd: spi-nor: sfdp: do not make invalid quad enable fatal 2020-07-13 10:43:19 +03:00
sfdp.h mtd: spi-nor: winbond: Fix 4-byte opcode support for w25q256 2020-05-31 08:34:16 +03:00
spansion.c mtd: spi-nor: update read capabilities for w25q64 and s25fl064k 2020-07-27 09:03:32 +03:00
sst.c mtd: spi-nor: Move SST bits out of core.c 2020-03-17 09:28:05 +02:00
winbond.c mtd: spi-nor: update read capabilities for w25q64 and s25fl064k 2020-07-27 09:03:32 +03:00
xilinx.c mtd: spi-nor: Trim what is exposed in spi-nor.h 2020-03-17 09:28:07 +02:00
xmc.c mtd: spi-nor: Move XMC bits out of core.c 2020-03-17 09:28:06 +02:00