diff options
author | Kuan-Yi Li <kyli@abysm.org> | 2020-11-20 20:11:23 +0800 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2020-12-01 21:59:30 +0100 |
commit | f1525e785e9359bfc34b1362ccf37aca48968028 (patch) | |
tree | 658d12aaac7c421827294917f9cfce0be55fd922 /target/linux/ipq40xx | |
parent | c72b7a4f0d8d476df5fb0f9d6a2ad8fadb223025 (diff) | |
download | upstream-f1525e785e9359bfc34b1362ccf37aca48968028.tar.gz upstream-f1525e785e9359bfc34b1362ccf37aca48968028.tar.bz2 upstream-f1525e785e9359bfc34b1362ccf37aca48968028.zip |
kernel: backport GD25Q256 support from 4.15
Backport below changes for GigaDevice GD25Q256 support from v4.15:
e27072851bf7 mtd: spi-nor: add a quad_enable callback in struct flash_info
65153846b18c mtd: spi-nor: add support for GD25Q256
This chip is used on newer Quad-E4G boards.
Before:
[ 2.366493] m25p80 spi0.0: unrecognized JEDEC id bytes: c8, 40, 19
[ 2.372853] m25p80: probe of spi0.0 failed with error -2
After:
[ 2.371722] m25p80 spi0.0: gd25q256 (32768 Kbytes)
[ 2.376694] 5 fixed-partitions partitions found on MTD device spi0.0
[ 2.383043] Creating 5 MTD partitions on "spi0.0":
[ 2.387824] 0x000000000000-0x000000030000 : "u-boot"
[ 2.394138] 0x000000030000-0x000000031000 : "u-boot-env"
[ 2.400608] 0x000000031000-0x000000040000 : "config"
[ 2.406830] 0x000000040000-0x000000050000 : "factory"
[ 2.413169] 0x000000050000-0x000002000000 : "firmware"
Signed-off-by: Kuan-Yi Li <kyli@abysm.org>
Diffstat (limited to 'target/linux/ipq40xx')
-rw-r--r-- | target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch b/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch index f5c0dca019..a9c6dcb97c 100644 --- a/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch +++ b/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1037,6 +1037,7 @@ static const struct flash_info spi_nor_i +@@ -1047,6 +1047,7 @@ static const struct flash_info spi_nor_i { "mx25l12805d", INFO(0xc22018, 0, 64 * 1024, 256, 0) }, { "mx25l12855e", INFO(0xc22618, 0, 64 * 1024, 256, 0) }, { "mx25l25635e", INFO(0xc22019, 0, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, @@ -8,7 +8,7 @@ { "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) }, { "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) }, { "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, -@@ -1206,11 +1207,12 @@ static const struct flash_info spi_nor_i +@@ -1216,11 +1217,12 @@ static const struct flash_info spi_nor_i { }, }; @@ -23,7 +23,7 @@ tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN); if (tmp < 0) { -@@ -1221,10 +1223,16 @@ static const struct flash_info *spi_nor_ +@@ -1231,10 +1233,16 @@ static const struct flash_info *spi_nor_ for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) { info = &spi_nor_ids[tmp]; if (info->id_len) { @@ -42,7 +42,7 @@ dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n", id[0], id[1], id[2]); return ERR_PTR(-ENODEV); -@@ -2684,7 +2692,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -2703,7 +2711,7 @@ int spi_nor_scan(struct spi_nor *nor, co info = spi_nor_match_id(name); /* Try to auto-detect if chip name wasn't specified or not found */ if (!info) @@ -51,7 +51,7 @@ if (IS_ERR_OR_NULL(info)) return -ENOENT; -@@ -2695,7 +2703,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -2714,7 +2722,7 @@ int spi_nor_scan(struct spi_nor *nor, co if (name && info->id_len) { const struct flash_info *jinfo; |