[PATCH v2 0/3] add support for is25wp256 spi-nor device.

From: Sagar Shrikant Kadam
Date: Sun Apr 28 2019 - 14:09:32 EST


The patch set is tested on HiFive Unleashed board and is based on mainline
kernel v 5.1-rc5. Its intended to add support for 32 MB spi-nor flash
mounted on the board. Memory Device supports 4/32/and 64 KB sectors size.
The device id table is updated accordingly.

Flash parameter table for ISSI device is set to use macronix_quad_enable
procedure to set the QE (quad-enable) bit of Status register.

With issi_lock and unlock schemes support for block protection is added
in patch 2 and 3.
These patches are extended from base work done in a patch at following commit:
https://github.com/riscv/riscv-linux/commit/c94e267766d62bc9a669611c3d0c8ed5ea26569b

Erase/Read/Write operations are verified on HiFive Unleashed board using mtd and flash utils (v1.5.2):
1. mtd_debug :Options available are : erase/read/write.
2. flashcp :Single utility that erases flash, writes a file to flash and verifies the data back.
3. flash_lock :Lock flash memory blocks.
4. flash_unlock: Unlock flash memory blocks.

Unlock scheme clears the bit protection bits of all blocks in the Status register.
Lock schemes in patch 3 is based on stm_lock mechanism. With current implementation entire flash memory
gets protected.

Block protection schemes are tested with flash_lock and unlock utils.

Revision history:
V1<-> V2:
-Incorporated changes suggested by reviewers regarding patch/cover letter versioning, references of patch.
-Updated cover letter with description for flash operations verified with these changes.
-Add support for unlocking is25xxxxxx device
-Add support for locking is25xxxxxx device.

v1:
-Add support for is25wp256 device.

Sagar Shrikant Kadam (3):
mtd: spi-nor: add support for is25wp256
mtd: spi-nor: add support to unlock flash device.
mtd: spi-nor: add locking support for is25xxxxx device

drivers/mtd/spi-nor/spi-nor.c | 116 +++++++++++++++++++++++++++++++++++++++++-
include/linux/mtd/spi-nor.h | 2 +
2 files changed, 117 insertions(+), 1 deletion(-)

--
1.9.1