From 7d13ab84fe449dd808996dd42bd5a70d5b7f430c Mon Sep 17 00:00:00 2001 From: Kevin Keryk Date: Thu, 31 May 2012 17:24:30 -0700 Subject: [PATCH] Xilinx: ARM: Added support for Spansion S25FL256S QSPI device This patch allows the Spansion S25FL256S QSPI device on ZedBoard to be accessed. Read, write, and erase commands verified on ZedBoard Rev. B hardware. Signed-off-by: Kevin Keryk --- drivers/mtd/spi/spansion.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/drivers/mtd/spi/spansion.c b/drivers/mtd/spi/spansion.c index 42b9fc21f12..36e22ee4104 100644 --- a/drivers/mtd/spi/spansion.c +++ b/drivers/mtd/spi/spansion.c @@ -51,10 +51,15 @@ #define SPSN_ID_S25FL064A 0x0216 #define SPSN_ID_S25FL128P 0x2018 #define SPSN_ID_S25FL129P 0x2018 +#define SPSN_ID_S25FL256S 0x0219 #define SPSN_EXT_ID_S25FL128P_256KB 0x0300 #define SPSN_EXT_ID_S25FL128P_64KB 0x0301 #define SPSN_EXT_ID_S25FL129P_256KB 0x4d00 +#define SPSN_EXT_ID_S25FL256S_256KB 0x4d00 #define SPSN_EXT_ID_S25FL129P_64KB 0x4d01 +#define SPSN_EXT_ID_S25FL256S_4KB_64KB 0x4d01 /* Actually JEDEC CFI for this part, + 4-kB parameter sectors with uniform + 64-kB sectors. */ #define SPANSION_SR_WIP (1 << 0) /* Write-in-Progress */ @@ -149,6 +154,22 @@ static const struct spansion_spi_flash_params spansion_spi_flash_table[] = { .nr_sectors = 64, .name = "S25FL129P_256K", }, + { + .idcode1 = SPSN_ID_S25FL256S, + .idcode2 = SPSN_EXT_ID_S25FL256S_256KB, + .page_size = 512, + .pages_per_sector = 512, + .nr_sectors = 128, + .name = "S25FL256S_256KB", + }, + { + .idcode1 = SPSN_ID_S25FL256S, + .idcode2 = SPSN_EXT_ID_S25FL256S_4KB_64KB, + .page_size = 256, + .pages_per_sector = 16, + .nr_sectors = 32, + .name = "S25FL256S_4KB_64KB", + }, }; static inline void span_addr2cmd(struct spansion_spi_flash *spsn, -- 2.47.3