kernel: Set SNOR_F_HAS_LOCK also for Winbond NOR flashes
authorHauke Mehrtens <hauke@hauke-m.de>
Sun, 23 Feb 2020 14:41:01 +0000 (15:41 +0100)
committerKoen Vandeputte <koen.vandeputte@ncentric.com>
Tue, 25 Feb 2020 19:20:58 +0000 (20:20 +0100)
This part was removed when moving to kernel 5.4.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(please integrate into original patch)

target/linux/generic/pending-5.4/466-Revert-mtd-spi-nor-fix-Spansion-regressions-aliased-.patch
target/linux/generic/pending-5.4/470-mtd-spi-nor-support-limiting-4K-sectors-support-base.patch

index 7cdfa6b1b7cc11ed756253fb552363c2a49f6b4d..c5db43b5e632ca9d9b5c4d0550935f8ab2a57a1a 100644 (file)
@@ -17,7 +17,15 @@ Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
 
 --- a/drivers/mtd/spi-nor/spi-nor.c
 +++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -4886,6 +4886,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -4397,6 +4397,7 @@ static void st_micron_set_default_init(s
+ static void winbond_set_default_init(struct spi_nor *nor)
+ {
++      nor->flags |= SNOR_F_HAS_LOCK;
+       nor->params.set_4byte = winbond_set_4byte;
+ }
+@@ -4886,6 +4887,7 @@ int spi_nor_scan(struct spi_nor *nor, co
            JEDEC_MFR(nor->info) == SNOR_MFR_INTEL ||
            JEDEC_MFR(nor->info) == SNOR_MFR_MACRONIX ||
            JEDEC_MFR(nor->info) == SNOR_MFR_SST ||
index 7773a8ec05a3dee22ec582e9bc158c15fa955c76..d3e587ff97dd5e29ead16eb7c37f5e701c7a2400 100644 (file)
@@ -39,7 +39,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        depends on OF && (ARM || ARM64 || COMPILE_TEST)
 --- a/drivers/mtd/spi-nor/spi-nor.c
 +++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -4463,6 +4463,7 @@ static void spi_nor_info_init_params(str
+@@ -4464,6 +4464,7 @@ static void spi_nor_info_init_params(str
        struct spi_nor_erase_map *map = &params->erase_map;
        const struct flash_info *info = nor->info;
        struct device_node *np = spi_nor_get_flash_node(nor);
@@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        u8 i, erase_mask;
  
        /* Initialize legacy flash parameters and settings. */
-@@ -4526,6 +4527,21 @@ static void spi_nor_info_init_params(str
+@@ -4527,6 +4528,21 @@ static void spi_nor_info_init_params(str
         */
        erase_mask = 0;
        i = 0;
@@ -69,7 +69,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (info->flags & SECT_4K_PMC) {
                erase_mask |= BIT(i);
                spi_nor_set_erase_type(&map->erase_type[i], 4096u,
-@@ -4537,6 +4553,7 @@ static void spi_nor_info_init_params(str
+@@ -4538,6 +4554,7 @@ static void spi_nor_info_init_params(str
                                       SPINOR_OP_BE_4K);
                i++;
        }