Changed in v2: * Provide the below cover letter * Rebase patches so they apply cleanly on linux-next In order to make device that's effectively read-only except to an authorized user we need: i) Some way of defaulting block-protection to on when device is first powered ii) Some way of controlling the write-protect signal so that the BP (block protect) bits can't be changed Some SPI flashes support the BPNV configuration register bit: block protect non-volatile. When this bit is set, the block protection bits BP0, BP1, and BP2 default to 1, effectively causing the flash memory to becomes read-only at power on. If we can set this bit, we solve problem i) above. Controlling the write-protect input is a matter for something external to the flash itself. Unfortunately, the WP# signal is only honoured if the status register bit SRWD (status register write disable) is set. If we can have this bit always set, then we solve problem ii) above. This short patch series provides the above bits, allowing for the creation of a device that's effectively read-only to any actor who isn't able to control the WP# signal. Jonas Bonn (3): mtd: spi-nor: always respect write-protect input mtd: spi-nor: s25fl512s supports region locking mtd: spi-nor: allow setting the BPNV (default locked) bit drivers/mtd/mtdchar.c | 6 ++ drivers/mtd/mtdcore.c | 8 +++ drivers/mtd/spi-nor/spi-nor.c | 119 ++++++++++++++++++++++------------ include/linux/mtd/mtd.h | 2 + include/linux/mtd/spi-nor.h | 1 + include/uapi/mtd/mtd-abi.h | 1 + 6 files changed, 97 insertions(+), 40 deletions(-) -- 2.19.1 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/