linux/drivers/mtd/spi-nor
Michael Walle e6204d4620 mtd: spi-nor: atmel: remove global protection flag
This is considered bad for the following reasons:
 (1) We only support the block protection with BPn bits for write
     protection. Not all Atmel parts support this.
 (2) Newly added flash chip will automatically inherit the "has
     locking" support and thus needs to explicitly tested. Better
     be opt-in instead of opt-out.
 (3) There are already supported flashes which doesn't support
     the locking scheme. So I assume this wasn't properly tested
     before adding that chip; which enforces my previous argument
     that locking support should be an opt-in.

Remove the global flag and add individual flags to all flashes which
supports BP locking. In particular the following flashes don't support
the BP scheme:
 - AT26F004
 - AT25SL321
 - AT45DB081D

Please note, that some flashes which are marked as SPI_NOR_HAS_LOCK just
support Global Protection, i.e. not our supported block protection
locking scheme. This is to keep backwards compatibility with the
current "unlock all at boot" mechanism. In particular the following
flashes doesn't have BP bits:
 - AT25DF041A
 - AT25DF321
 - AT25DF321A
 - AT25DF641
 - AT26DF081A
 - AT26DF161A
 - AT26DF321

Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Tudor Ambarus <tudor.ambarus@microchip.com>
Link: https://lore.kernel.org/r/20201203162959.29589-4-michael@walle.cc
2020-12-07 22:57:29 +05:30
..
controllers mtd: spi-nor: intel-spi: Add support for Intel Alder Lake-S SPI serial flash 2020-09-29 18:46:20 +05:30
atmel.c mtd: spi-nor: atmel: remove global protection flag 2020-12-07 22:57:29 +05:30
catalyst.c mtd: spi-nor: Move Catalyst bits out of core.c 2020-03-17 09:28:05 +02:00
core.c mtd: spi-nor: ignore errors in spi_nor_unlock_all() 2020-12-07 22:57:29 +05:30
core.h mtd: spi-nor: core: Allow flashes to specify MTD writesize 2020-12-07 22:57:29 +05:30
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 SECT_4K to mx25l12805d 2020-09-29 18:44:27 +05:30
Makefile mtd: spi-nor: Compile files in controllers/ directory 2020-04-09 22:00:13 +02:00
micron-st.c mtd: spi-nor: micron-st: allow using MT35XU512ABA in Octal DTR mode 2020-11-09 19:00:14 +05:30
sfdp.c mtd: spi-nor: Fix multiple typos 2020-12-07 22:57:28 +05:30
sfdp.h mtd: spi-nor: sfdp: detect Soft Reset sequence support from BFPT 2020-11-09 11:56:17 +05:30
spansion.c mtd: spi-nor: spansion: Set ECC block size 2020-12-07 22:57:29 +05:30
sst.c mtd: spi-nor: sst: fix BPn bits for the SST25VF064C 2020-12-07 22:57:29 +05:30
winbond.c mtd: spi-nor: winbond: Add support for w25q64jwm 2020-09-29 18:47:11 +05:30
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