diff mbox

[U-Boot,v3,8/9] sf: Update Winbond flash params

Message ID 1418215892-17617-9-git-send-email-bmeng.cn@gmail.com
State Not Applicable
Delegated to: Jagannadha Sutradharudu Teki
Headers show

Commit Message

Bin Meng Dec. 10, 2014, 12:51 p.m. UTC
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.cn@gmail.com>
---

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

Patch

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 */
 	/*