Update supported read commands for Winbond flash parts per datasheet.
Also update flash sector size to 4KiB as long as flash supports sector
erase (20h) command. Add W25X10, W25X20, W25X80 params per datasheet.

Signed-off-by: Bin Meng <bmeng...@gmail.com>
---

 drivers/mtd/spi/sf_params.c | 39 +++++++++++++++++++++------------------
 1 file changed, 21 insertions(+), 18 deletions(-)

diff --git a/drivers/mtd/spi/sf_params.c b/drivers/mtd/spi/sf_params.c
index 034d092..735dd54 100644
--- a/drivers/mtd/spi/sf_params.c
+++ b/drivers/mtd/spi/sf_params.c
@@ -102,24 +102,27 @@ const struct spi_flash_params spi_flash_params_table[] = {
        {"SST25WF080",     0xbf2505, 0x0,        4 * 1024,   256, RD_NORM,      
    SECT_4K | SST_WR},
 #endif
 #ifdef CONFIG_SPI_FLASH_WINBOND                /* WINBOND */
-       {"W25P80",         0xef2014, 0x0,       64 * 1024,    16, RD_NORM,      
                   0},
-       {"W25P16",         0xef2015, 0x0,       64 * 1024,    32, RD_NORM,      
                   0},
-       {"W25P32",         0xef2016, 0x0,       64 * 1024,    64, RD_NORM,      
                   0},
-       {"W25X40",         0xef3013, 0x0,       64 * 1024,     8, RD_NORM,      
             SECT_4K},
-       {"W25X16",         0xef3015, 0x0,       64 * 1024,    32, RD_NORM,      
             SECT_4K},
-       {"W25X32",         0xef3016, 0x0,       64 * 1024,    64, RD_NORM,      
             SECT_4K},
-       {"W25X64",         0xef3017, 0x0,       64 * 1024,   128, RD_NORM,      
             SECT_4K},
-       {"W25Q80BL",       0xef4014, 0x0,       64 * 1024,    16, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q16CL",       0xef4015, 0x0,       64 * 1024,    32, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q32BV",       0xef4016, 0x0,       64 * 1024,    64, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q64CV",       0xef4017, 0x0,       64 * 1024,   128, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q128BV",      0xef4018, 0x0,       64 * 1024,   256, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q256",        0xef4019, 0x0,       64 * 1024,   512, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q80BW",       0xef5014, 0x0,       64 * 1024,    16, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q16DW",       0xef6015, 0x0,       64 * 1024,    32, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q32DW",       0xef6016, 0x0,       64 * 1024,    64, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q64DW",       0xef6017, 0x0,       64 * 1024,   128, RD_FULL,      
    WR_QPP | SECT_4K},
-       {"W25Q128FW",      0xef6018, 0x0,       64 * 1024,   256, RD_FULL,      
    WR_QPP | SECT_4K},
+       {"W25P80",         0xef2014, 0x0,       64 * 1024,    16, RD_NORM,      
                               0},
+       {"W25P16",         0xef2015, 0x0,       64 * 1024,    32, RD_NORM,      
                               0},
+       {"W25P32",         0xef2016, 0x0,       64 * 1024,    64, RD_NORM,      
                               0},
+       {"W25X10",         0xef3011, 0x0,        4 * 1024,    32, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25X20",         0xef3012, 0x0,        4 * 1024,    64, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25X40",         0xef3013, 0x0,        4 * 1024,   128, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25X80",         0xef3014, 0x0,        4 * 1024,   256, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25X16",         0xef3015, 0x0,        4 * 1024,   512, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25X32",         0xef3016, 0x0,        4 * 1024,  1024, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25X64",         0xef3017, 0x0,        4 * 1024,  2048, RD_NORM | 
DUAL_OUTPUT_FAST,            SECT_4K},
+       {"W25Q80BL",       0xef4014, 0x0,        4 * 1024,   256, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q16CL",       0xef4015, 0x0,        4 * 1024,   512, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q32BV",       0xef4016, 0x0,        4 * 1024,  1024, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q64CV",       0xef4017, 0x0,        4 * 1024,  2048, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q128BV",      0xef4018, 0x0,        4 * 1024,  4096, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q256",        0xef4019, 0x0,        4 * 1024,  8192, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q80BW",       0xef5014, 0x0,        4 * 1024,   256, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q16DW",       0xef6015, 0x0,        4 * 1024,   512, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q32DW",       0xef6016, 0x0,        4 * 1024,  1024, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q64DW",       0xef6017, 0x0,        4 * 1024,  2048, RD_FULL,      
                WR_QPP | SECT_4K},
+       {"W25Q128FW",      0xef6018, 0x0,        4 * 1024,  4096, RD_FULL,      
                WR_QPP | SECT_4K},
 #endif
        {},     /* Empty entry to terminate the list */
        /*
-- 
1.8.2.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to