mtd: spi-nor: enable locking support for MX25L12805D
authorDavid Bauer <mail@david-bauer.net>
Mon, 10 May 2021 13:33:40 +0000 (15:33 +0200)
committerVignesh Raghavendra <vigneshr@ti.com>
Thu, 27 May 2021 14:34:38 +0000 (20:04 +0530)
Macronix MX25L12805D supports locking with 4 block
protection bits in its status register. Add the corresponding
flag in order to clear these bits when unloking the flash.

Otherwise, the flash might not be writable depending on the state
left by the bootloader.

Tested-on: Ubiquiti UniFi AC Lite (ath79)

Signed-off-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Reviewed-by: Michael Walle <michael@walle.cc>
drivers/mtd/spi-nor/macronix.c

index c8167de55e555fd8adddf92b02a8279d5c242ecd..27498ed0cc0dc204f14fb13da12b2e931a48c083 100644 (file)
@@ -49,7 +49,8 @@ static const struct flash_info macronix_parts[] = {
        { "mx25u4035",   INFO(0xc22533, 0, 64 * 1024,   8, SECT_4K) },
        { "mx25u8035",   INFO(0xc22534, 0, 64 * 1024,  16, SECT_4K) },
        { "mx25u6435f",  INFO(0xc22537, 0, 64 * 1024, 128, SECT_4K) },
-       { "mx25l12805d", INFO(0xc22018, 0, 64 * 1024, 256, SECT_4K) },
+       { "mx25l12805d", INFO(0xc22018, 0, 64 * 1024, 256, SECT_4K |
+                             SPI_NOR_HAS_LOCK | SPI_NOR_4BIT_BP) },
        { "mx25l12855e", INFO(0xc22618, 0, 64 * 1024, 256, 0) },
        { "mx25r1635f",  INFO(0xc22815, 0, 64 * 1024,  32,
                              SECT_4K | SPI_NOR_DUAL_READ |