mtd: spi-nor: add support for s25fl128s

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Mon Dec 15 19:59:10 PST 2014


Gitweb:     http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=6d7604e517bc00a36ebf7ffb4973fb72823be18c
Commit:     6d7604e517bc00a36ebf7ffb4973fb72823be18c
Parent:     d928a259385dc6fca3956b7775c588f21c0b50fc
Author:     Huang Shijie <shijie.huang at intel.com>
AuthorDate: Tue Aug 12 08:54:56 2014 +0800
Committer:  Brian Norris <computersforpeace at gmail.com>
CommitDate: Mon Dec 1 00:15:18 2014 -0800

    mtd: spi-nor: add support for s25fl128s
    
    We need to store the six bytes ID for s25fl128s, since it shares the same
    five bytes with s25fl129p1.
    
    This patch adds a macro INFO6 which is used for the six bytes ID flash, and adds
    a new item for the s25fl128s.
    
    Signed-off-by: Huang Shijie <shijie.huang at intel.com>
    Signed-off-by: Brian Norris <computersforpeace at gmail.com>
---
 drivers/mtd/spi-nor/spi-nor.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
index 6d03622..1e08976 100644
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
@@ -467,6 +467,23 @@ err:
 		.flags = (_flags),					\
 	})
 
+#define INFO6(_jedec_id, _ext_id, _sector_size, _n_sectors, _flags)	\
+	((kernel_ulong_t)&(struct flash_info) {				\
+		.id = {							\
+			((_jedec_id) >> 16) & 0xff,			\
+			((_jedec_id) >> 8) & 0xff,			\
+			(_jedec_id) & 0xff,				\
+			((_ext_id) >> 16) & 0xff,			\
+			((_ext_id) >> 8) & 0xff,			\
+			(_ext_id) & 0xff,				\
+			},						\
+		.id_len = 6,						\
+		.sector_size = (_sector_size),				\
+		.n_sectors = (_n_sectors),				\
+		.page_size = 256,					\
+		.flags = (_flags),					\
+	})
+
 #define CAT25_INFO(_sector_size, _n_sectors, _page_size, _addr_width, _flags)	\
 	((kernel_ulong_t)&(struct flash_info) {				\
 		.sector_size = (_sector_size),				\
@@ -565,6 +582,7 @@ static const struct spi_device_id spi_nor_ids[] = {
 	{ "s70fl01gs",  INFO(0x010221, 0x4d00, 256 * 1024, 256, 0) },
 	{ "s25sl12800", INFO(0x012018, 0x0300, 256 * 1024,  64, 0) },
 	{ "s25sl12801", INFO(0x012018, 0x0301,  64 * 1024, 256, 0) },
+	{ "s25fl128s",	INFO6(0x012018, 0x4d0180, 64 * 1024, 256, SPI_NOR_QUAD_READ) },
 	{ "s25fl129p0", INFO(0x012018, 0x4d00, 256 * 1024,  64, 0) },
 	{ "s25fl129p1", INFO(0x012018, 0x4d01,  64 * 1024, 256, 0) },
 	{ "s25sl004a",  INFO(0x010212,      0,  64 * 1024,   8, 0) },



More information about the linux-mtd-cvs mailing list