From 2f2ea7b44c6affb24426759b93d45d0aa26a74d5 Mon Sep 17 00:00:00 2001 From: Stijn Segers Date: Tue, 1 Nov 2016 12:21:15 +0100 Subject: [PATCH] kernel: update kernel 4.4 to version 4.4.30 This patch bumps the 4.4 kernel from .28 to .30 and refreshes the patches. Compile-tested on ar71xx, x86/64, ramips/mt7621, brcm47xx and kirkwood. Run-tested on ar71xx & ramips/mt7621, brcm47xx and kirkwood (last two confirmed by P. Wassi). Signed-off-by: Stijn Segers --- include/kernel-version.mk | 4 ++-- ...ct-JEDEC-incompatible-w25q128-using-.patch | 2 +- ...vert-to-spi_nor_-get-set-_flash_node.patch | 2 +- ...ds-with-the-ones-from-the-superblock.patch | 2 +- .../477-mtd-add-spi-nor-add-mx25u3235f.patch | 4 ++-- .../patches-4.4/0153-lantiq-VPE-softdog.patch | 1 - ...e-appended-dtb-address-in-a-variable.patch | 2 +- ...-mtd-nand-spi-nor-assign-MTD-of_node.patch | 2 +- ...vert-to-spi_nor_-get-set-_flash_node.patch | 2 +- ...78-mtd-spi-nor-drop-flash_node-field.patch | 2 +- ...ve-unnecessary-leading-space-from-db.patch | 2 +- ...ide-default-erase_sector-implementat.patch | 4 ++-- ...error-message-with-unrecognized-JEDE.patch | 2 +- ...-Check-the-return-value-from-read_sr.patch | 2 +- ...spi-nor-Add-SPI-NOR-layer-PM-support.patch | 6 ++--- ...r-check-return-value-from-read-write.patch | 12 +++++----- ...d-spi-nor-stop-passing-around-retlen.patch | 14 +++++------ ...1095-mtd-spi-nor-simplify-write-loop.patch | 4 ++-- .../1096-mtd-spi-nor-add-read-loop.patch | 2 +- ...r-Disable-Micron-flash-HW-protection.patch | 2 +- ...Support-R-W-for-S25FS-S-family-flash.patch | 6 ++--- ...td-spi-nor-add-DDR-quad-read-support.patch | 12 +++++----- ...-spi-nor-Enable-QSPI-Flash-in-Kernel.patch | 4 ++-- ...l-quad-add-flash-S25FS-extra-support.patch | 6 ++--- ...isable-4kb-sector-erase-for-s25fl128.patch | 2 +- ...-move-mpc85xx.h-to-include-linux-fsl.patch | 2 +- .../7017-fsl_qbman-add-qbman-driver.patch | 2 +- ...t-gpio-driver-to-support-layerscape-.patch | 2 +- ...73-ls1012a-added-clock-configuration.patch | 2 +- ...ackport-v4.7-0day-patches-from-Boris.patch | 24 +++++++++---------- ...idRun-Armada-388-Clearfog-A1-DT-file.patch | 4 ++-- ...54-mtd-add-chunked-read-io-to-m25p80.patch | 6 ++--- 32 files changed, 72 insertions(+), 73 deletions(-) diff --git a/include/kernel-version.mk b/include/kernel-version.mk index f511420bf2..f4067193c7 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -4,11 +4,11 @@ LINUX_RELEASE?=1 LINUX_VERSION-3.18 = .43 LINUX_VERSION-4.1 = .34 -LINUX_VERSION-4.4 = .28 +LINUX_VERSION-4.4 = .30 LINUX_KERNEL_MD5SUM-3.18.43 = b1faeb4a2e1e70ffe061bdbb3452840a LINUX_KERNEL_MD5SUM-4.1.34 = fba99f0f4765ebf01033e69518740a3c -LINUX_KERNEL_MD5SUM-4.4.28 = 841acb9109a893ab2f60b02355e1527e80fa09251e46339317f6984d69b1f4fc +LINUX_KERNEL_MD5SUM-4.4.30 = 9d249133bd12dde04f434bb4a5a4a23dd42ead721803c0ba4b5742efd239995c ifdef KERNEL_PATCHVER LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER))) diff --git a/target/linux/bcm53xx/patches-4.4/405-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch b/target/linux/bcm53xx/patches-4.4/405-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch index df252b2154..a93dfb0d18 100644 --- a/target/linux/bcm53xx/patches-4.4/405-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch +++ b/target/linux/bcm53xx/patches-4.4/405-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch @@ -13,7 +13,7 @@ Signed-off-by: Rafał Miłecki --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -873,6 +873,18 @@ static const struct flash_info *spi_nor_ +@@ -874,6 +874,18 @@ static const struct flash_info *spi_nor_ } dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %2x, %2x\n", id[0], id[1], id[2]); diff --git a/target/linux/brcm63xx/patches-4.4/000-4.5-03-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch b/target/linux/brcm63xx/patches-4.4/000-4.5-03-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch index 3dce6c0361..79af8a6360 100644 --- a/target/linux/brcm63xx/patches-4.4/000-4.5-03-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch +++ b/target/linux/brcm63xx/patches-4.4/000-4.5-03-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch @@ -68,7 +68,7 @@ Reviewed-by: Boris Brezillon spifi->nor.write = nxp_spifi_write; --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1111,7 +1111,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1112,7 +1112,7 @@ int spi_nor_scan(struct spi_nor *nor, co const struct flash_info *info = NULL; struct device *dev = nor->dev; struct mtd_info *mtd = &nor->mtd; diff --git a/target/linux/generic/patches-4.4/051-0002-ovl-override-creds-with-the-ones-from-the-superblock.patch b/target/linux/generic/patches-4.4/051-0002-ovl-override-creds-with-the-ones-from-the-superblock.patch index f985ff3aa6..eed7bb2bcd 100644 --- a/target/linux/generic/patches-4.4/051-0002-ovl-override-creds-with-the-ones-from-the-superblock.patch +++ b/target/linux/generic/patches-4.4/051-0002-ovl-override-creds-with-the-ones-from-the-superblock.patch @@ -105,7 +105,7 @@ Signed-off-by: Miklos Szeredi -out_free_link: if (link) free_page((unsigned long) link); - + --- a/fs/overlayfs/dir.c +++ b/fs/overlayfs/dir.c @@ -408,28 +408,13 @@ static int ovl_create_or_link(struct den diff --git a/target/linux/generic/patches-4.4/477-mtd-add-spi-nor-add-mx25u3235f.patch b/target/linux/generic/patches-4.4/477-mtd-add-spi-nor-add-mx25u3235f.patch index 45533e1a47..eb99b28a55 100644 --- a/target/linux/generic/patches-4.4/477-mtd-add-spi-nor-add-mx25u3235f.patch +++ b/target/linux/generic/patches-4.4/477-mtd-add-spi-nor-add-mx25u3235f.patch @@ -1,5 +1,5 @@ ---- a/drivers/mtd/spi-nor/spi-nor.c 2016-10-09 00:34:19.206155838 +0200 -+++ b/drivers/mtd/spi-nor/spi-nor.c 2016-10-09 00:37:11.048495602 +0200 +--- a/drivers/mtd/spi-nor/spi-nor.c ++++ b/drivers/mtd/spi-nor/spi-nor.c @@ -721,6 +721,7 @@ static const struct flash_info spi_nor_i { "mx25l3205d", INFO(0xc22016, 0, 64 * 1024, 64, SECT_4K) }, { "mx25l3255e", INFO(0xc29e16, 0, 64 * 1024, 64, SECT_4K) }, diff --git a/target/linux/lantiq/patches-4.4/0153-lantiq-VPE-softdog.patch b/target/linux/lantiq/patches-4.4/0153-lantiq-VPE-softdog.patch index 2f5572a9bd..eb76a24158 100644 --- a/target/linux/lantiq/patches-4.4/0153-lantiq-VPE-softdog.patch +++ b/target/linux/lantiq/patches-4.4/0153-lantiq-VPE-softdog.patch @@ -157,7 +157,6 @@ +MODULE_AUTHOR("LXDB"); +MODULE_DESCRIPTION("Software Watchdog For VPE1"); +MODULE_LICENSE("GPL"); - --- a/arch/mips/lantiq/Makefile +++ b/arch/mips/lantiq/Makefile @@ -6,6 +6,8 @@ diff --git a/target/linux/lantiq/patches-4.4/122-MIPS-store-the-appended-dtb-address-in-a-variable.patch b/target/linux/lantiq/patches-4.4/122-MIPS-store-the-appended-dtb-address-in-a-variable.patch index a6641bf723..b707a8db0a 100644 --- a/target/linux/lantiq/patches-4.4/122-MIPS-store-the-appended-dtb-address-in-a-variable.patch +++ b/target/linux/lantiq/patches-4.4/122-MIPS-store-the-appended-dtb-address-in-a-variable.patch @@ -36,7 +36,7 @@ Signed-off-by: Ralf Baechle --- a/arch/mips/lantiq/prom.c +++ b/arch/mips/lantiq/prom.c -@@ -74,8 +74,8 @@ void __init plat_mem_setup(void) +@@ -78,8 +78,8 @@ void __init plat_mem_setup(void) set_io_port_base((unsigned long) KSEG1); diff --git a/target/linux/layerscape/patches-4.4/1074-mtd-nand-spi-nor-assign-MTD-of_node.patch b/target/linux/layerscape/patches-4.4/1074-mtd-nand-spi-nor-assign-MTD-of_node.patch index 4130e84fe9..450d7057c2 100644 --- a/target/linux/layerscape/patches-4.4/1074-mtd-nand-spi-nor-assign-MTD-of_node.patch +++ b/target/linux/layerscape/patches-4.4/1074-mtd-nand-spi-nor-assign-MTD-of_node.patch @@ -21,7 +21,7 @@ Signed-off-by: Yuan Yao --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1217,6 +1217,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1218,6 +1218,7 @@ int spi_nor_scan(struct spi_nor *nor, co mtd->flags |= MTD_NO_ERASE; mtd->dev.parent = dev; diff --git a/target/linux/layerscape/patches-4.4/1075-mtd-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch b/target/linux/layerscape/patches-4.4/1075-mtd-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch index 182efacb7c..1b19d2d4d4 100644 --- a/target/linux/layerscape/patches-4.4/1075-mtd-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch +++ b/target/linux/layerscape/patches-4.4/1075-mtd-spi-nor-convert-to-spi_nor_-get-set-_flash_node.patch @@ -69,7 +69,7 @@ Reviewed-by: Boris Brezillon spifi->nor.write = nxp_spifi_write; --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1111,7 +1111,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1112,7 +1112,7 @@ int spi_nor_scan(struct spi_nor *nor, co const struct flash_info *info = NULL; struct device *dev = nor->dev; struct mtd_info *mtd = &nor->mtd; diff --git a/target/linux/layerscape/patches-4.4/1078-mtd-spi-nor-drop-flash_node-field.patch b/target/linux/layerscape/patches-4.4/1078-mtd-spi-nor-drop-flash_node-field.patch index baaf9e5b08..08fe44253a 100644 --- a/target/linux/layerscape/patches-4.4/1078-mtd-spi-nor-drop-flash_node-field.patch +++ b/target/linux/layerscape/patches-4.4/1078-mtd-spi-nor-drop-flash_node-field.patch @@ -14,7 +14,7 @@ Reviewed-by: Boris Brezillon --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1217,7 +1217,6 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1218,7 +1218,6 @@ int spi_nor_scan(struct spi_nor *nor, co mtd->flags |= MTD_NO_ERASE; mtd->dev.parent = dev; diff --git a/target/linux/layerscape/patches-4.4/1079-mtd-spi-nor-remove-unnecessary-leading-space-from-db.patch b/target/linux/layerscape/patches-4.4/1079-mtd-spi-nor-remove-unnecessary-leading-space-from-db.patch index 159e7fddb0..713c1c9031 100644 --- a/target/linux/layerscape/patches-4.4/1079-mtd-spi-nor-remove-unnecessary-leading-space-from-db.patch +++ b/target/linux/layerscape/patches-4.4/1079-mtd-spi-nor-remove-unnecessary-leading-space-from-db.patch @@ -16,7 +16,7 @@ Cc: Cyrille Pitchen --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -860,7 +860,7 @@ static const struct flash_info *spi_nor_ +@@ -861,7 +861,7 @@ static const struct flash_info *spi_nor_ tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN); if (tmp < 0) { diff --git a/target/linux/layerscape/patches-4.4/1081-mtd-spi-nor-provide-default-erase_sector-implementat.patch b/target/linux/layerscape/patches-4.4/1081-mtd-spi-nor-provide-default-erase_sector-implementat.patch index 8becdd2905..85f6cc6da9 100644 --- a/target/linux/layerscape/patches-4.4/1081-mtd-spi-nor-provide-default-erase_sector-implementat.patch +++ b/target/linux/layerscape/patches-4.4/1081-mtd-spi-nor-provide-default-erase_sector-implementat.patch @@ -69,7 +69,7 @@ Signed-off-by: Brian Norris addr += mtd->erasesize; len -= mtd->erasesize; -@@ -1098,7 +1121,7 @@ static int set_quad_mode(struct spi_nor +@@ -1099,7 +1122,7 @@ static int set_quad_mode(struct spi_nor static int spi_nor_check(struct spi_nor *nor) { if (!nor->dev || !nor->read || !nor->write || @@ -78,7 +78,7 @@ Signed-off-by: Brian Norris pr_err("spi-nor: please fill all the necessary fields!\n"); return -EINVAL; } -@@ -1299,6 +1322,12 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1300,6 +1323,12 @@ int spi_nor_scan(struct spi_nor *nor, co nor->addr_width = 3; } diff --git a/target/linux/layerscape/patches-4.4/1083-mtd-spi-nor-Fix-error-message-with-unrecognized-JEDE.patch b/target/linux/layerscape/patches-4.4/1083-mtd-spi-nor-Fix-error-message-with-unrecognized-JEDE.patch index 5b98ff4a4e..d53942df84 100644 --- a/target/linux/layerscape/patches-4.4/1083-mtd-spi-nor-Fix-error-message-with-unrecognized-JEDE.patch +++ b/target/linux/layerscape/patches-4.4/1083-mtd-spi-nor-Fix-error-message-with-unrecognized-JEDE.patch @@ -20,7 +20,7 @@ Signed-off-by: Brian Norris --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -894,7 +894,7 @@ static const struct flash_info *spi_nor_ +@@ -895,7 +895,7 @@ static const struct flash_info *spi_nor_ return &spi_nor_ids[tmp]; } } diff --git a/target/linux/layerscape/patches-4.4/1085-mtd-spi-nor-Check-the-return-value-from-read_sr.patch b/target/linux/layerscape/patches-4.4/1085-mtd-spi-nor-Check-the-return-value-from-read_sr.patch index 6f39b6bfc7..96d9309e4b 100644 --- a/target/linux/layerscape/patches-4.4/1085-mtd-spi-nor-Check-the-return-value-from-read_sr.patch +++ b/target/linux/layerscape/patches-4.4/1085-mtd-spi-nor-Check-the-return-value-from-read_sr.patch @@ -47,7 +47,7 @@ Integrated-by: Jiang Yutang /* Cannot unlock; would unlock larger region than requested */ if (stm_is_locked_sr(nor, ofs - mtd->erasesize, mtd->erasesize, -@@ -1036,6 +1040,8 @@ static int macronix_quad_enable(struct s +@@ -1037,6 +1041,8 @@ static int macronix_quad_enable(struct s int ret, val; val = read_sr(nor); diff --git a/target/linux/layerscape/patches-4.4/1090-mtd-spi-nor-Add-SPI-NOR-layer-PM-support.patch b/target/linux/layerscape/patches-4.4/1090-mtd-spi-nor-Add-SPI-NOR-layer-PM-support.patch index e959ca50d3..10be8072fc 100644 --- a/target/linux/layerscape/patches-4.4/1090-mtd-spi-nor-Add-SPI-NOR-layer-PM-support.patch +++ b/target/linux/layerscape/patches-4.4/1090-mtd-spi-nor-Add-SPI-NOR-layer-PM-support.patch @@ -24,7 +24,7 @@ Integrated-by: Jiang Yutang --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1139,6 +1139,26 @@ static int spi_nor_check(struct spi_nor +@@ -1140,6 +1140,26 @@ static int spi_nor_check(struct spi_nor return 0; } @@ -51,7 +51,7 @@ Integrated-by: Jiang Yutang int spi_nor_scan(struct spi_nor *nor, const char *name, enum read_mode mode) { const struct flash_info *info = NULL; -@@ -1186,18 +1206,9 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1187,18 +1207,9 @@ int spi_nor_scan(struct spi_nor *nor, co mutex_init(&nor->lock); @@ -73,7 +73,7 @@ Integrated-by: Jiang Yutang if (!mtd->name) mtd->name = dev_name(dev); -@@ -1363,6 +1374,45 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1364,6 +1375,45 @@ int spi_nor_scan(struct spi_nor *nor, co } EXPORT_SYMBOL_GPL(spi_nor_scan); diff --git a/target/linux/layerscape/patches-4.4/1093-mtd-spi-nor-check-return-value-from-read-write.patch b/target/linux/layerscape/patches-4.4/1093-mtd-spi-nor-check-return-value-from-read-write.patch index 0721a067af..79c71b271d 100644 --- a/target/linux/layerscape/patches-4.4/1093-mtd-spi-nor-check-return-value-from-read-write.patch +++ b/target/linux/layerscape/patches-4.4/1093-mtd-spi-nor-check-return-value-from-read-write.patch @@ -14,7 +14,7 @@ Signed-off-by: Hou Zhiqiang --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -922,7 +922,10 @@ static int spi_nor_read(struct mtd_info +@@ -923,7 +923,10 @@ static int spi_nor_read(struct mtd_info ret = nor->read(nor, from, len, retlen, buf); spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_READ); @@ -26,7 +26,7 @@ Signed-off-by: Hou Zhiqiang } static int sst_write(struct mtd_info *mtd, loff_t to, size_t len, -@@ -948,10 +951,14 @@ static int sst_write(struct mtd_info *mt +@@ -949,10 +952,14 @@ static int sst_write(struct mtd_info *mt nor->program_opcode = SPINOR_OP_BP; /* write one byte. */ @@ -43,7 +43,7 @@ Signed-off-by: Hou Zhiqiang } to += actual; -@@ -960,10 +967,14 @@ static int sst_write(struct mtd_info *mt +@@ -961,10 +968,14 @@ static int sst_write(struct mtd_info *mt nor->program_opcode = SPINOR_OP_AAI_WP; /* write two bytes. */ @@ -60,7 +60,7 @@ Signed-off-by: Hou Zhiqiang to += 2; nor->sst_write_second = true; } -@@ -972,21 +983,24 @@ static int sst_write(struct mtd_info *mt +@@ -973,21 +984,24 @@ static int sst_write(struct mtd_info *mt write_disable(nor); ret = spi_nor_wait_till_ready(nor); if (ret) @@ -90,7 +90,7 @@ Signed-off-by: Hou Zhiqiang spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_WRITE); return ret; } -@@ -1015,14 +1029,18 @@ static int spi_nor_write(struct mtd_info +@@ -1016,14 +1030,18 @@ static int spi_nor_write(struct mtd_info /* do all the bytes fit onto one page? */ if (page_offset + len <= nor->page_size) { @@ -112,7 +112,7 @@ Signed-off-by: Hou Zhiqiang page_size = len - i; if (page_size > nor->page_size) page_size = nor->page_size; -@@ -1033,7 +1051,11 @@ static int spi_nor_write(struct mtd_info +@@ -1034,7 +1052,11 @@ static int spi_nor_write(struct mtd_info write_enable(nor); diff --git a/target/linux/layerscape/patches-4.4/1094-mtd-spi-nor-stop-passing-around-retlen.patch b/target/linux/layerscape/patches-4.4/1094-mtd-spi-nor-stop-passing-around-retlen.patch index 6223dfc190..772eb9e706 100644 --- a/target/linux/layerscape/patches-4.4/1094-mtd-spi-nor-stop-passing-around-retlen.patch +++ b/target/linux/layerscape/patches-4.4/1094-mtd-spi-nor-stop-passing-around-retlen.patch @@ -113,7 +113,7 @@ Integrated-by: Jiang Yutang u8 cmd = nor->read_opcode; --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -919,12 +919,13 @@ static int spi_nor_read(struct mtd_info +@@ -920,12 +920,13 @@ static int spi_nor_read(struct mtd_info if (ret) return ret; @@ -128,7 +128,7 @@ Integrated-by: Jiang Yutang return 0; } -@@ -951,7 +952,7 @@ static int sst_write(struct mtd_info *mt +@@ -952,7 +953,7 @@ static int sst_write(struct mtd_info *mt nor->program_opcode = SPINOR_OP_BP; /* write one byte. */ @@ -137,7 +137,7 @@ Integrated-by: Jiang Yutang if (ret < 0) goto sst_write_err; WARN(ret != 1, "While writing 1 byte written %i bytes\n", -@@ -967,7 +968,7 @@ static int sst_write(struct mtd_info *mt +@@ -968,7 +969,7 @@ static int sst_write(struct mtd_info *mt nor->program_opcode = SPINOR_OP_AAI_WP; /* write two bytes. */ @@ -146,7 +146,7 @@ Integrated-by: Jiang Yutang if (ret < 0) goto sst_write_err; WARN(ret != 2, "While writing 2 bytes written %i bytes\n", -@@ -990,7 +991,7 @@ static int sst_write(struct mtd_info *mt +@@ -991,7 +992,7 @@ static int sst_write(struct mtd_info *mt write_enable(nor); nor->program_opcode = SPINOR_OP_BP; @@ -155,7 +155,7 @@ Integrated-by: Jiang Yutang if (ret < 0) goto sst_write_err; WARN(ret != 1, "While writing 1 byte written %i bytes\n", -@@ -999,8 +1000,10 @@ static int sst_write(struct mtd_info *mt +@@ -1000,8 +1001,10 @@ static int sst_write(struct mtd_info *mt if (ret) goto sst_write_err; write_disable(nor); @@ -166,7 +166,7 @@ Integrated-by: Jiang Yutang spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_WRITE); return ret; } -@@ -1029,15 +1032,17 @@ static int spi_nor_write(struct mtd_info +@@ -1030,15 +1033,17 @@ static int spi_nor_write(struct mtd_info /* do all the bytes fit onto one page? */ if (page_offset + len <= nor->page_size) { @@ -186,7 +186,7 @@ Integrated-by: Jiang Yutang /* write everything in nor->page_size chunks */ for (i = ret; i < len; ) { -@@ -1051,10 +1056,10 @@ static int spi_nor_write(struct mtd_info +@@ -1052,10 +1057,10 @@ static int spi_nor_write(struct mtd_info write_enable(nor); diff --git a/target/linux/layerscape/patches-4.4/1095-mtd-spi-nor-simplify-write-loop.patch b/target/linux/layerscape/patches-4.4/1095-mtd-spi-nor-simplify-write-loop.patch index 8eb957db5d..f07694e7cf 100644 --- a/target/linux/layerscape/patches-4.4/1095-mtd-spi-nor-simplify-write-loop.patch +++ b/target/linux/layerscape/patches-4.4/1095-mtd-spi-nor-simplify-write-loop.patch @@ -18,7 +18,7 @@ Signed-off-by: Hou Zhiqiang --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1017,8 +1017,8 @@ static int spi_nor_write(struct mtd_info +@@ -1018,8 +1018,8 @@ static int spi_nor_write(struct mtd_info size_t *retlen, const u_char *buf) { struct spi_nor *nor = mtd_to_spi_nor(mtd); @@ -29,7 +29,7 @@ Signed-off-by: Hou Zhiqiang dev_dbg(nor->dev, "to 0x%08x, len %zd\n", (u32)to, len); -@@ -1026,45 +1026,37 @@ static int spi_nor_write(struct mtd_info +@@ -1027,45 +1027,37 @@ static int spi_nor_write(struct mtd_info if (ret) return ret; diff --git a/target/linux/layerscape/patches-4.4/1096-mtd-spi-nor-add-read-loop.patch b/target/linux/layerscape/patches-4.4/1096-mtd-spi-nor-add-read-loop.patch index db557e9d19..604baa3e05 100644 --- a/target/linux/layerscape/patches-4.4/1096-mtd-spi-nor-add-read-loop.patch +++ b/target/linux/layerscape/patches-4.4/1096-mtd-spi-nor-add-read-loop.patch @@ -15,7 +15,7 @@ Signed-off-by: Hou Zhiqiang --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -919,14 +919,22 @@ static int spi_nor_read(struct mtd_info +@@ -920,14 +920,22 @@ static int spi_nor_read(struct mtd_info if (ret) return ret; diff --git a/target/linux/layerscape/patches-4.4/1100-mtd-spi_nor-Disable-Micron-flash-HW-protection.patch b/target/linux/layerscape/patches-4.4/1100-mtd-spi_nor-Disable-Micron-flash-HW-protection.patch index 733b62c7fc..5e61b2cdae 100644 --- a/target/linux/layerscape/patches-4.4/1100-mtd-spi_nor-Disable-Micron-flash-HW-protection.patch +++ b/target/linux/layerscape/patches-4.4/1100-mtd-spi_nor-Disable-Micron-flash-HW-protection.patch @@ -24,7 +24,7 @@ Signed-off-by: Yunhui Cui struct flash_info { char *name; -@@ -1237,6 +1238,14 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1238,6 +1239,14 @@ int spi_nor_scan(struct spi_nor *nor, co if (ret) return ret; diff --git a/target/linux/layerscape/patches-4.4/1103-mtd-spi-nor-Support-R-W-for-S25FS-S-family-flash.patch b/target/linux/layerscape/patches-4.4/1103-mtd-spi-nor-Support-R-W-for-S25FS-S-family-flash.patch index 92041e908e..9b3f69d4e1 100644 --- a/target/linux/layerscape/patches-4.4/1103-mtd-spi-nor-Support-R-W-for-S25FS-S-family-flash.patch +++ b/target/linux/layerscape/patches-4.4/1103-mtd-spi-nor-Support-R-W-for-S25FS-S-family-flash.patch @@ -33,7 +33,7 @@ Signed-off-by: Yunhui Cui static const struct flash_info *spi_nor_match_id(const char *name); -@@ -784,6 +790,7 @@ static const struct flash_info spi_nor_i +@@ -785,6 +791,7 @@ static const struct flash_info spi_nor_i */ { "s25sl032p", INFO(0x010215, 0x4d00, 64 * 1024, 64, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25sl064p", INFO(0x010216, 0x4d00, 64 * 1024, 128, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, @@ -41,7 +41,7 @@ Signed-off-by: Yunhui Cui { "s25fl256s0", INFO(0x010219, 0x4d00, 256 * 1024, 128, 0) }, { "s25fl256s1", INFO(0x010219, 0x4d01, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fl512s", INFO(0x010220, 0x4d00, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, -@@ -908,6 +915,53 @@ static const struct flash_info *spi_nor_ +@@ -909,6 +916,53 @@ static const struct flash_info *spi_nor_ return ERR_PTR(-ENODEV); } @@ -95,7 +95,7 @@ Signed-off-by: Yunhui Cui static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len, size_t *retlen, u_char *buf) { -@@ -1246,6 +1300,12 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1247,6 +1301,12 @@ int spi_nor_scan(struct spi_nor *nor, co write_sr(nor, ret); } diff --git a/target/linux/layerscape/patches-4.4/1105-mtd-spi-nor-add-DDR-quad-read-support.patch b/target/linux/layerscape/patches-4.4/1105-mtd-spi-nor-add-DDR-quad-read-support.patch index bed44b8783..1afc405f77 100644 --- a/target/linux/layerscape/patches-4.4/1105-mtd-spi-nor-add-DDR-quad-read-support.patch +++ b/target/linux/layerscape/patches-4.4/1105-mtd-spi-nor-add-DDR-quad-read-support.patch @@ -53,7 +53,7 @@ Signed-off-by: Yunhui Cui case SPI_NOR_NORMAL: return 0; } -@@ -797,7 +802,8 @@ static const struct flash_info spi_nor_i +@@ -798,7 +803,8 @@ static const struct flash_info spi_nor_i { "s70fl01gs", INFO(0x010221, 0x4d00, 256 * 1024, 256, 0) }, { "s25sl12800", INFO(0x012018, 0x0300, 256 * 1024, 64, 0) }, { "s25sl12801", INFO(0x012018, 0x0301, 64 * 1024, 256, 0) }, @@ -63,7 +63,7 @@ Signed-off-by: Yunhui Cui { "s25fl129p0", INFO(0x012018, 0x4d00, 256 * 1024, 64, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fl129p1", INFO(0x012018, 0x4d01, 64 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25sl004a", INFO(0x010212, 0, 64 * 1024, 8, 0) }, -@@ -1186,6 +1192,23 @@ static int spansion_quad_enable(struct s +@@ -1187,6 +1193,23 @@ static int spansion_quad_enable(struct s return 0; } @@ -87,7 +87,7 @@ Signed-off-by: Yunhui Cui static int set_quad_mode(struct spi_nor *nor, const struct flash_info *info) { int status; -@@ -1375,8 +1398,15 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1376,8 +1399,15 @@ int spi_nor_scan(struct spi_nor *nor, co if (info->flags & SPI_NOR_NO_FR) nor->flash_read = SPI_NOR_NORMAL; @@ -105,7 +105,7 @@ Signed-off-by: Yunhui Cui ret = set_quad_mode(nor, info); if (ret) { dev_err(dev, "quad mode not supported\n"); -@@ -1389,6 +1419,14 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1390,6 +1420,14 @@ int spi_nor_scan(struct spi_nor *nor, co /* Default commands */ switch (nor->flash_read) { @@ -120,7 +120,7 @@ Signed-off-by: Yunhui Cui case SPI_NOR_QUAD: nor->read_opcode = SPINOR_OP_READ_1_1_4; break; -@@ -1416,6 +1454,9 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1417,6 +1455,9 @@ int spi_nor_scan(struct spi_nor *nor, co if (JEDEC_MFR(info) == SNOR_MFR_SPANSION) { /* Dedicated 4-byte command set */ switch (nor->flash_read) { @@ -130,7 +130,7 @@ Signed-off-by: Yunhui Cui case SPI_NOR_QUAD: nor->read_opcode = SPINOR_OP_READ4_1_1_4; break; -@@ -1445,7 +1486,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1446,7 +1487,7 @@ int spi_nor_scan(struct spi_nor *nor, co return -EINVAL; } diff --git a/target/linux/layerscape/patches-4.4/1109-drivers-mtd-spi-nor-Enable-QSPI-Flash-in-Kernel.patch b/target/linux/layerscape/patches-4.4/1109-drivers-mtd-spi-nor-Enable-QSPI-Flash-in-Kernel.patch index ec6423dc29..64773fd566 100644 --- a/target/linux/layerscape/patches-4.4/1109-drivers-mtd-spi-nor-Enable-QSPI-Flash-in-Kernel.patch +++ b/target/linux/layerscape/patches-4.4/1109-drivers-mtd-spi-nor-Enable-QSPI-Flash-in-Kernel.patch @@ -14,7 +14,7 @@ Signed-off-by: Prabhakar Kushwaha --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -796,6 +796,7 @@ static const struct flash_info spi_nor_i +@@ -797,6 +797,7 @@ static const struct flash_info spi_nor_i { "s25sl032p", INFO(0x010215, 0x4d00, 64 * 1024, 64, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25sl064p", INFO(0x010216, 0x4d00, 64 * 1024, 128, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fs256s1", INFO6(0x010219, 0x4d0181, 64 * 1024, 512, 0)}, @@ -22,7 +22,7 @@ Signed-off-by: Prabhakar Kushwaha { "s25fl256s0", INFO(0x010219, 0x4d00, 256 * 1024, 128, 0) }, { "s25fl256s1", INFO(0x010219, 0x4d01, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fl512s", INFO(0x010220, 0x4d00, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, -@@ -962,9 +963,11 @@ static int spansion_s25fs_disable_4kb_er +@@ -963,9 +964,11 @@ static int spansion_s25fs_disable_4kb_er ret = nor->read_reg(nor, SPINOR_OP_SPANSION_RDAR, &cr3v, 1); if (ret) return ret; diff --git a/target/linux/layerscape/patches-4.4/1110-mtd-spi-nor-fsl-quad-add-flash-S25FS-extra-support.patch b/target/linux/layerscape/patches-4.4/1110-mtd-spi-nor-fsl-quad-add-flash-S25FS-extra-support.patch index 2b21b11165..34ad68736f 100644 --- a/target/linux/layerscape/patches-4.4/1110-mtd-spi-nor-fsl-quad-add-flash-S25FS-extra-support.patch +++ b/target/linux/layerscape/patches-4.4/1110-mtd-spi-nor-fsl-quad-add-flash-S25FS-extra-support.patch @@ -116,7 +116,7 @@ Integrated-by: Jiang Yutang * Used for Spansion S25FS-S family flash only. --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -796,7 +796,6 @@ static const struct flash_info spi_nor_i +@@ -797,7 +797,6 @@ static const struct flash_info spi_nor_i { "s25sl032p", INFO(0x010215, 0x4d00, 64 * 1024, 64, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25sl064p", INFO(0x010216, 0x4d00, 64 * 1024, 128, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fs256s1", INFO6(0x010219, 0x4d0181, 64 * 1024, 512, 0)}, @@ -124,7 +124,7 @@ Integrated-by: Jiang Yutang { "s25fl256s0", INFO(0x010219, 0x4d00, 256 * 1024, 128, 0) }, { "s25fl256s1", INFO(0x010219, 0x4d01, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fl512s", INFO(0x010220, 0x4d00, 256 * 1024, 256, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, -@@ -963,11 +962,9 @@ static int spansion_s25fs_disable_4kb_er +@@ -964,11 +963,9 @@ static int spansion_s25fs_disable_4kb_er ret = nor->read_reg(nor, SPINOR_OP_SPANSION_RDAR, &cr3v, 1); if (ret) return ret; @@ -136,7 +136,7 @@ Integrated-by: Jiang Yutang return 0; } -@@ -1334,6 +1331,8 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1335,6 +1332,8 @@ int spi_nor_scan(struct spi_nor *nor, co if (!mtd->name) mtd->name = dev_name(dev); diff --git a/target/linux/layerscape/patches-4.4/1111-mtd-spi-nor-disable-4kb-sector-erase-for-s25fl128.patch b/target/linux/layerscape/patches-4.4/1111-mtd-spi-nor-disable-4kb-sector-erase-for-s25fl128.patch index 503fa7104b..aba6958bd4 100644 --- a/target/linux/layerscape/patches-4.4/1111-mtd-spi-nor-disable-4kb-sector-erase-for-s25fl128.patch +++ b/target/linux/layerscape/patches-4.4/1111-mtd-spi-nor-disable-4kb-sector-erase-for-s25fl128.patch @@ -16,7 +16,7 @@ Integrated-by: Yutang Jiang --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -802,7 +802,7 @@ static const struct flash_info spi_nor_i +@@ -803,7 +803,7 @@ static const struct flash_info spi_nor_i { "s70fl01gs", INFO(0x010221, 0x4d00, 256 * 1024, 256, 0) }, { "s25sl12800", INFO(0x012018, 0x0300, 256 * 1024, 64, 0) }, { "s25sl12801", INFO(0x012018, 0x0301, 64 * 1024, 256, 0) }, diff --git a/target/linux/layerscape/patches-4.4/3023-powerpc-fsl-move-mpc85xx.h-to-include-linux-fsl.patch b/target/linux/layerscape/patches-4.4/3023-powerpc-fsl-move-mpc85xx.h-to-include-linux-fsl.patch index 83262bb7cc..11ff8a7bb9 100644 --- a/target/linux/layerscape/patches-4.4/3023-powerpc-fsl-move-mpc85xx.h-to-include-linux-fsl.patch +++ b/target/linux/layerscape/patches-4.4/3023-powerpc-fsl-move-mpc85xx.h-to-include-linux-fsl.patch @@ -133,7 +133,7 @@ Integrated-by: Zhao Qiang #include #include #include -@@ -1148,7 +1149,6 @@ bad_args: +@@ -1152,7 +1153,6 @@ bad_args: } #ifdef CONFIG_PPC diff --git a/target/linux/layerscape/patches-4.4/7017-fsl_qbman-add-qbman-driver.patch b/target/linux/layerscape/patches-4.4/7017-fsl_qbman-add-qbman-driver.patch index 48da3f2ba7..e7e5d311c8 100644 --- a/target/linux/layerscape/patches-4.4/7017-fsl_qbman-add-qbman-driver.patch +++ b/target/linux/layerscape/patches-4.4/7017-fsl_qbman-add-qbman-driver.patch @@ -140,7 +140,7 @@ Signed-off-by: Zhao Qiang This option is overridden by CONFIG_RELOCATABLE --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig -@@ -224,6 +224,23 @@ config SGI_XP +@@ -236,6 +236,23 @@ config SGI_XP this feature will allow for direct communication between SSIs based on a network adapter and DMA messaging. diff --git a/target/linux/layerscape/patches-4.4/8042-drivers-gpio-Port-gpio-driver-to-support-layerscape-.patch b/target/linux/layerscape/patches-4.4/8042-drivers-gpio-Port-gpio-driver-to-support-layerscape-.patch index 101f4505fe..c857dbe771 100644 --- a/target/linux/layerscape/patches-4.4/8042-drivers-gpio-Port-gpio-driver-to-support-layerscape-.patch +++ b/target/linux/layerscape/patches-4.4/8042-drivers-gpio-Port-gpio-driver-to-support-layerscape-.patch @@ -31,7 +31,7 @@ Signed-off-by: Liu Gang --- a/drivers/gpio/Kconfig +++ b/drivers/gpio/Kconfig -@@ -281,12 +281,13 @@ config GPIO_MPC5200 +@@ -282,12 +282,13 @@ config GPIO_MPC5200 depends on PPC_MPC52xx config GPIO_MPC8XXX diff --git a/target/linux/layerscape/patches-4.4/8073-ls1012a-added-clock-configuration.patch b/target/linux/layerscape/patches-4.4/8073-ls1012a-added-clock-configuration.patch index 3936c80643..9cef319737 100644 --- a/target/linux/layerscape/patches-4.4/8073-ls1012a-added-clock-configuration.patch +++ b/target/linux/layerscape/patches-4.4/8073-ls1012a-added-clock-configuration.patch @@ -51,7 +51,7 @@ Integrated-by: Zhao Qiang .compat = "fsl,ls1043a-clockgen", .init_periph = t2080_init_periph, .cmux_groups = { -@@ -1268,6 +1286,7 @@ CLK_OF_DECLARE(qoriq_clockgen_2, "fsl,qo +@@ -1272,6 +1290,7 @@ CLK_OF_DECLARE(qoriq_clockgen_2, "fsl,qo CLK_OF_DECLARE(qoriq_clockgen_ls1021a, "fsl,ls1021a-clockgen", clockgen_init); CLK_OF_DECLARE(qoriq_clockgen_ls1043a, "fsl,ls1043a-clockgen", clockgen_init); CLK_OF_DECLARE(qoriq_clockgen_ls2080a, "fsl,ls2080a-clockgen", clockgen_init); diff --git a/target/linux/mediatek/patches-4.4/0072-mtd-backport-v4.7-0day-patches-from-Boris.patch b/target/linux/mediatek/patches-4.4/0072-mtd-backport-v4.7-0day-patches-from-Boris.patch index 77cd5904fc..2fbbd774c9 100644 --- a/target/linux/mediatek/patches-4.4/0072-mtd-backport-v4.7-0day-patches-from-Boris.patch +++ b/target/linux/mediatek/patches-4.4/0072-mtd-backport-v4.7-0day-patches-from-Boris.patch @@ -4296,7 +4296,7 @@ Signed-off-by: John Crispin } /* -@@ -735,8 +868,8 @@ static const struct flash_info spi_nor_i +@@ -736,8 +869,8 @@ static const struct flash_info spi_nor_i { "n25q032a", INFO(0x20bb16, 0, 64 * 1024, 64, SPI_NOR_QUAD_READ) }, { "n25q064", INFO(0x20ba17, 0, 64 * 1024, 128, SECT_4K | SPI_NOR_QUAD_READ) }, { "n25q064a", INFO(0x20bb17, 0, 64 * 1024, 128, SECT_4K | SPI_NOR_QUAD_READ) }, @@ -4307,7 +4307,7 @@ Signed-off-by: John Crispin { "n25q256a", INFO(0x20ba19, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_QUAD_READ) }, { "n25q512a", INFO(0x20bb20, 0, 64 * 1024, 1024, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ) }, { "n25q512ax3", INFO(0x20ba20, 0, 64 * 1024, 1024, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ) }, -@@ -770,6 +903,7 @@ static const struct flash_info spi_nor_i +@@ -771,6 +904,7 @@ static const struct flash_info spi_nor_i { "s25fl008k", INFO(0xef4014, 0, 64 * 1024, 16, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fl016k", INFO(0xef4015, 0, 64 * 1024, 32, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "s25fl064k", INFO(0xef4017, 0, 64 * 1024, 128, SECT_4K) }, @@ -4315,7 +4315,7 @@ Signed-off-by: John Crispin { "s25fl132k", INFO(0x014016, 0, 64 * 1024, 64, SECT_4K) }, { "s25fl164k", INFO(0x014017, 0, 64 * 1024, 128, SECT_4K) }, { "s25fl204k", INFO(0x014013, 0, 64 * 1024, 8, SECT_4K | SPI_NOR_DUAL_READ) }, -@@ -833,11 +967,23 @@ static const struct flash_info spi_nor_i +@@ -834,11 +968,23 @@ static const struct flash_info spi_nor_i { "w25x16", INFO(0xef3015, 0, 64 * 1024, 32, SECT_4K) }, { "w25x32", INFO(0xef3016, 0, 64 * 1024, 64, SECT_4K) }, { "w25q32", INFO(0xef4016, 0, 64 * 1024, 64, SECT_4K) }, @@ -4342,7 +4342,7 @@ Signed-off-by: John Crispin { "w25q80", INFO(0xef5014, 0, 64 * 1024, 16, SECT_4K) }, { "w25q80bl", INFO(0xef4014, 0, 64 * 1024, 16, SECT_4K) }, { "w25q128", INFO(0xef4018, 0, 64 * 1024, 256, SECT_4K) }, -@@ -860,7 +1006,7 @@ static const struct flash_info *spi_nor_ +@@ -861,7 +1007,7 @@ static const struct flash_info *spi_nor_ tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN); if (tmp < 0) { @@ -4351,7 +4351,7 @@ Signed-off-by: John Crispin return ERR_PTR(tmp); } -@@ -871,7 +1017,7 @@ static const struct flash_info *spi_nor_ +@@ -872,7 +1018,7 @@ static const struct flash_info *spi_nor_ return &spi_nor_ids[tmp]; } } @@ -4360,7 +4360,7 @@ Signed-off-by: John Crispin id[0], id[1], id[2]); return ERR_PTR(-ENODEV); } -@@ -1017,6 +1163,8 @@ static int macronix_quad_enable(struct s +@@ -1018,6 +1164,8 @@ static int macronix_quad_enable(struct s int ret, val; val = read_sr(nor); @@ -4369,7 +4369,7 @@ Signed-off-by: John Crispin write_enable(nor); write_sr(nor, val | SR_QUAD_EN_MX); -@@ -1098,7 +1246,7 @@ static int set_quad_mode(struct spi_nor +@@ -1099,7 +1247,7 @@ static int set_quad_mode(struct spi_nor static int spi_nor_check(struct spi_nor *nor) { if (!nor->dev || !nor->read || !nor->write || @@ -4378,7 +4378,7 @@ Signed-off-by: John Crispin pr_err("spi-nor: please fill all the necessary fields!\n"); return -EINVAL; } -@@ -1111,7 +1259,7 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1112,7 +1260,7 @@ int spi_nor_scan(struct spi_nor *nor, co const struct flash_info *info = NULL; struct device *dev = nor->dev; struct mtd_info *mtd = &nor->mtd; @@ -4387,7 +4387,7 @@ Signed-off-by: John Crispin int ret; int i; -@@ -1161,9 +1309,11 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1162,9 +1310,11 @@ int spi_nor_scan(struct spi_nor *nor, co if (JEDEC_MFR(info) == SNOR_MFR_ATMEL || JEDEC_MFR(info) == SNOR_MFR_INTEL || JEDEC_MFR(info) == SNOR_MFR_MACRONIX || @@ -4400,7 +4400,7 @@ Signed-off-by: John Crispin } if (!mtd->name) -@@ -1177,7 +1327,8 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1178,7 +1328,8 @@ int spi_nor_scan(struct spi_nor *nor, co mtd->_read = spi_nor_read; /* NOR protection support for STmicro/Micron chips and similar */ @@ -4410,7 +4410,7 @@ Signed-off-by: John Crispin nor->flash_lock = stm_lock; nor->flash_unlock = stm_unlock; nor->flash_is_locked = stm_is_locked; -@@ -1197,6 +1348,8 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1198,6 +1349,8 @@ int spi_nor_scan(struct spi_nor *nor, co if (info->flags & USE_FSR) nor->flags |= SNOR_F_USE_FSR; @@ -4419,7 +4419,7 @@ Signed-off-by: John Crispin #ifdef CONFIG_MTD_SPI_NOR_USE_4K_SECTORS /* prefer "small sector" erase if possible */ -@@ -1299,6 +1452,12 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1300,6 +1453,12 @@ int spi_nor_scan(struct spi_nor *nor, co nor->addr_width = 3; } diff --git a/target/linux/mvebu/patches-4.4/053-ARM-dts-Add-SolidRun-Armada-388-Clearfog-A1-DT-file.patch b/target/linux/mvebu/patches-4.4/053-ARM-dts-Add-SolidRun-Armada-388-Clearfog-A1-DT-file.patch index abf2a63425..b25d71071f 100644 --- a/target/linux/mvebu/patches-4.4/053-ARM-dts-Add-SolidRun-Armada-388-Clearfog-A1-DT-file.patch +++ b/target/linux/mvebu/patches-4.4/053-ARM-dts-Add-SolidRun-Armada-388-Clearfog-A1-DT-file.patch @@ -24,9 +24,9 @@ Signed-off-by: Gregory CLEMENT --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile -@@ -749,6 +749,7 @@ dtb-$(CONFIG_MACH_ARMADA_38X) += \ - armada-385-linksys-caiman.dtb \ +@@ -750,6 +750,7 @@ dtb-$(CONFIG_MACH_ARMADA_38X) += \ armada-385-linksys-cobra.dtb \ + armada-385-linksys-rango.dtb \ armada-385-linksys-shelby.dtb \ + armada-388-clearfog.dtb \ armada-388-db.dtb \ diff --git a/target/linux/ramips/patches-4.4/0054-mtd-add-chunked-read-io-to-m25p80.patch b/target/linux/ramips/patches-4.4/0054-mtd-add-chunked-read-io-to-m25p80.patch index 825f8fab94..a87d5cd25b 100644 --- a/target/linux/ramips/patches-4.4/0054-mtd-add-chunked-read-io-to-m25p80.patch +++ b/target/linux/ramips/patches-4.4/0054-mtd-add-chunked-read-io-to-m25p80.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -1012,6 +1012,66 @@ write_err: +@@ -1013,6 +1013,66 @@ write_err: return ret; } @@ -67,7 +67,7 @@ static int macronix_quad_enable(struct spi_nor *nor) { int ret, val; -@@ -1190,10 +1250,12 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1191,10 +1251,12 @@ int spi_nor_scan(struct spi_nor *nor, co } /* sst nor chips use AAI word program */ @@ -82,7 +82,7 @@ if (info->flags & USE_FSR) nor->flags |= SNOR_F_USE_FSR; -@@ -1221,11 +1283,20 @@ int spi_nor_scan(struct spi_nor *nor, co +@@ -1222,11 +1284,20 @@ int spi_nor_scan(struct spi_nor *nor, co mtd->writebufsize = nor->page_size; if (np) { -- 2.25.1