kernel: bump 4.14 to 4.14.78
Refreshed all patches. Remove upstreamed: - 050-net-emac-fix-fixed-link-setup-for-the-RTL8363SB-swit.patch Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
This commit is contained in:
		| @@ -4,11 +4,11 @@ LINUX_RELEASE?=1 | |||||||
|  |  | ||||||
| LINUX_VERSION-3.18 = .124 | LINUX_VERSION-3.18 = .124 | ||||||
| LINUX_VERSION-4.9 = .135 | LINUX_VERSION-4.9 = .135 | ||||||
| LINUX_VERSION-4.14 = .77 | LINUX_VERSION-4.14 = .78 | ||||||
|  |  | ||||||
| LINUX_KERNEL_HASH-3.18.124 = 25d2a5abd627534a1e51d028890c184aad8e628c345c5fe0cc0f9d7c31b7a5a3 | LINUX_KERNEL_HASH-3.18.124 = 25d2a5abd627534a1e51d028890c184aad8e628c345c5fe0cc0f9d7c31b7a5a3 | ||||||
| LINUX_KERNEL_HASH-4.9.135 = e023b0bbe9ea7fc56aa57210342dd18ea3e0900ee207226df1523c6d7df154ce | LINUX_KERNEL_HASH-4.9.135 = e023b0bbe9ea7fc56aa57210342dd18ea3e0900ee207226df1523c6d7df154ce | ||||||
| LINUX_KERNEL_HASH-4.14.77 = 0496f4e194cadbe23f27e6f4b9c3cd264448983780b73b30f7f05c92273fa6f8 | LINUX_KERNEL_HASH-4.14.78 = f4da4dc0f079e420e1c1b8c71312eaa5415b08be847aa224a61d8af6a6e74c6c | ||||||
|  |  | ||||||
| remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) | remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) | ||||||
| sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) | sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) | ||||||
|   | |||||||
| @@ -47,7 +47,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static inline void emac_tx_enable(struct emac_instance *dev) |  static inline void emac_tx_enable(struct emac_instance *dev) | ||||||
| @@ -2865,7 +2865,7 @@ static int emac_init_config(struct emac_ | @@ -2870,7 +2870,7 @@ static int emac_init_config(struct emac_ | ||||||
|  	/* PHY mode needs some decoding */ |  	/* PHY mode needs some decoding */ | ||||||
|  	dev->phy_mode = of_get_phy_mode(np); |  	dev->phy_mode = of_get_phy_mode(np); | ||||||
|  	if (dev->phy_mode < 0) |  	if (dev->phy_mode < 0) | ||||||
| @@ -56,7 +56,7 @@ Signed-off-by: Christian Lamparter <chunkeey@gmail.com> | |||||||
|   |   | ||||||
|  	/* Check EMAC version */ |  	/* Check EMAC version */ | ||||||
|  	if (of_device_is_compatible(np, "ibm,emac4sync")) { |  	if (of_device_is_compatible(np, "ibm,emac4sync")) { | ||||||
| @@ -3168,7 +3168,7 @@ static int emac_probe(struct platform_de | @@ -3173,7 +3173,7 @@ static int emac_probe(struct platform_de | ||||||
|  	printk(KERN_INFO "%s: EMAC-%d %pOF, MAC %pM\n", |  	printk(KERN_INFO "%s: EMAC-%d %pOF, MAC %pM\n", | ||||||
|  	       ndev->name, dev->cell_index, np, ndev->dev_addr); |  	       ndev->name, dev->cell_index, np, ndev->dev_addr); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -1,48 +0,0 @@ | |||||||
| From 08e39982ef64f800fd1f9b9b92968d14d5fafa82 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Christian Lamparter <chunkeey@gmail.com> |  | ||||||
| Date: Mon, 17 Sep 2018 17:22:40 +0200 |  | ||||||
| Subject: net: emac: fix fixed-link setup for the RTL8363SB switch |  | ||||||
|  |  | ||||||
| On the Netgear WNDAP620, the emac ethernet isn't receiving nor |  | ||||||
| xmitting any frames from/to the RTL8363SB (identifies itself |  | ||||||
| as a RTL8367RB). |  | ||||||
|  |  | ||||||
| This is caused by the emac hardware not knowing the forced link |  | ||||||
| parameters for speed, duplex, pause, etc. |  | ||||||
|  |  | ||||||
| This begs the question, how this was working on the original |  | ||||||
| driver code, when it was necessary to set the phy_address and |  | ||||||
| phy_map to 0xffffffff. But I guess without access to the old |  | ||||||
| PPC405/440/460 hardware, it's not possible to know. |  | ||||||
|  |  | ||||||
| Signed-off-by: Christian Lamparter <chunkeey@gmail.com> |  | ||||||
| Signed-off-by: David S. Miller <davem@davemloft.net> |  | ||||||
| --- |  | ||||||
|  drivers/net/ethernet/ibm/emac/core.c | 15 ++++++++++----- |  | ||||||
|  1 file changed, 10 insertions(+), 5 deletions(-) |  | ||||||
|  |  | ||||||
| --- a/drivers/net/ethernet/ibm/emac/core.c |  | ||||||
| +++ b/drivers/net/ethernet/ibm/emac/core.c |  | ||||||
| @@ -2671,12 +2671,17 @@ static int emac_init_phy(struct emac_ins |  | ||||||
|  		if (of_phy_is_fixed_link(np)) { |  | ||||||
|  			int res = emac_dt_mdio_probe(dev); |  | ||||||
|   |  | ||||||
| -			if (!res) { |  | ||||||
| -				res = of_phy_register_fixed_link(np); |  | ||||||
| -				if (res) |  | ||||||
| -					mdiobus_unregister(dev->mii_bus); |  | ||||||
| +			if (res) |  | ||||||
| +				return res; |  | ||||||
| + |  | ||||||
| +			res = of_phy_register_fixed_link(np); |  | ||||||
| +			dev->phy_dev = of_phy_find_device(np); |  | ||||||
| +			if (res || !dev->phy_dev) { |  | ||||||
| +				mdiobus_unregister(dev->mii_bus); |  | ||||||
| +				return res ? res : -EINVAL; |  | ||||||
|  			} |  | ||||||
| -			return res; |  | ||||||
| +			emac_adjust_link(dev->ndev); |  | ||||||
| +			put_device(&dev->phy_dev->mdio.dev); |  | ||||||
|  		} |  | ||||||
|  		return 0; |  | ||||||
|  	} |  | ||||||
| @@ -13,7 +13,7 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com> | |||||||
|  |  | ||||||
| --- a/drivers/mtd/spi-nor/spi-nor.c | --- a/drivers/mtd/spi-nor/spi-nor.c | ||||||
| +++ b/drivers/mtd/spi-nor/spi-nor.c | +++ b/drivers/mtd/spi-nor/spi-nor.c | ||||||
| @@ -1210,6 +1210,18 @@ static const struct flash_info *spi_nor_ | @@ -1215,6 +1215,18 @@ static const struct flash_info *spi_nor_ | ||||||
|  	} |  	} | ||||||
|  	dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n", |  	dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n", | ||||||
|  		id[0], id[1], id[2]); |  		id[0], id[1], id[2]); | ||||||
|   | |||||||
| @@ -8,7 +8,7 @@ | |||||||
|  	{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) }, |  	{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) }, | ||||||
|  	{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) }, |  	{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) }, | ||||||
|  	{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, |  	{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, | ||||||
| @@ -1189,11 +1190,12 @@ static const struct flash_info spi_nor_i | @@ -1194,11 +1195,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); |  	tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN); | ||||||
|  	if (tmp < 0) { |  	if (tmp < 0) { | ||||||
| @@ -1204,10 +1206,16 @@ static const struct flash_info *spi_nor_ | @@ -1209,10 +1211,16 @@ static const struct flash_info *spi_nor_ | ||||||
|  	for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) { |  	for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) { | ||||||
|  		info = &spi_nor_ids[tmp]; |  		info = &spi_nor_ids[tmp]; | ||||||
|  		if (info->id_len) { |  		if (info->id_len) { | ||||||
| @@ -42,7 +42,7 @@ | |||||||
|  	dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n", |  	dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n", | ||||||
|  		id[0], id[1], id[2]); |  		id[0], id[1], id[2]); | ||||||
|  	return ERR_PTR(-ENODEV); |  	return ERR_PTR(-ENODEV); | ||||||
| @@ -2667,7 +2675,7 @@ int spi_nor_scan(struct spi_nor *nor, co | @@ -2672,7 +2680,7 @@ int spi_nor_scan(struct spi_nor *nor, co | ||||||
|  		info = spi_nor_match_id(name); |  		info = spi_nor_match_id(name); | ||||||
|  	/* Try to auto-detect if chip name wasn't specified or not found */ |  	/* Try to auto-detect if chip name wasn't specified or not found */ | ||||||
|  	if (!info) |  	if (!info) | ||||||
| @@ -51,7 +51,7 @@ | |||||||
|  	if (IS_ERR_OR_NULL(info)) |  	if (IS_ERR_OR_NULL(info)) | ||||||
|  		return -ENOENT; |  		return -ENOENT; | ||||||
|   |   | ||||||
| @@ -2678,7 +2686,7 @@ int spi_nor_scan(struct spi_nor *nor, co | @@ -2683,7 +2691,7 @@ int spi_nor_scan(struct spi_nor *nor, co | ||||||
|  	if (name && info->id_len) { |  	if (name && info->id_len) { | ||||||
|  		const struct flash_info *jinfo; |  		const struct flash_info *jinfo; | ||||||
|   |   | ||||||
|   | |||||||
| @@ -10,7 +10,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com> | |||||||
|  |  | ||||||
| --- a/drivers/mtd/spi-nor/spi-nor.c | --- a/drivers/mtd/spi-nor/spi-nor.c | ||||||
| +++ b/drivers/mtd/spi-nor/spi-nor.c | +++ b/drivers/mtd/spi-nor/spi-nor.c | ||||||
| @@ -2651,6 +2651,7 @@ int spi_nor_scan(struct spi_nor *nor, co | @@ -2656,6 +2656,7 @@ int spi_nor_scan(struct spi_nor *nor, co | ||||||
|  	struct device *dev = nor->dev; |  	struct device *dev = nor->dev; | ||||||
|  	struct mtd_info *mtd = &nor->mtd; |  	struct mtd_info *mtd = &nor->mtd; | ||||||
|  	struct device_node *np = spi_nor_get_flash_node(nor); |  	struct device_node *np = spi_nor_get_flash_node(nor); | ||||||
| @@ -18,7 +18,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com> | |||||||
|  	int ret; |  	int ret; | ||||||
|  	int i; |  	int i; | ||||||
|   |   | ||||||
| @@ -2726,7 +2727,12 @@ int spi_nor_scan(struct spi_nor *nor, co | @@ -2731,7 +2732,12 @@ int spi_nor_scan(struct spi_nor *nor, co | ||||||
|  		spi_nor_wait_till_ready(nor); |  		spi_nor_wait_till_ready(nor); | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Koen Vandeputte
					Koen Vandeputte