kernel: bump 5.4 to 5.4.139
All patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
This commit is contained in:
		| @@ -6,10 +6,10 @@ ifdef CONFIG_TESTING_KERNEL | |||||||
|   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) |   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) | ||||||
| endif | endif | ||||||
|  |  | ||||||
| LINUX_VERSION-5.4 = .138 | LINUX_VERSION-5.4 = .139 | ||||||
| LINUX_VERSION-5.10 = .58 | LINUX_VERSION-5.10 = .58 | ||||||
|  |  | ||||||
| LINUX_KERNEL_HASH-5.4.138 = a43957727a54e5e1035d7372a1e64203ae8e3060c52a3816916157967f9a8657 | LINUX_KERNEL_HASH-5.4.139 = 0471d0ccb7953cdae7d235192588ac5d72344851969962676d1703e69084a37f | ||||||
| LINUX_KERNEL_HASH-5.10.58 = 732cc56be539e65894621c3b6b2640597d8cf5da17319b82da6e7b4f7828f210 | LINUX_KERNEL_HASH-5.10.58 = 732cc56be539e65894621c3b6b2640597d8cf5da17319b82da6e7b4f7828f210 | ||||||
|  |  | ||||||
| remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) | remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) | ||||||
|   | |||||||
| @@ -25,7 +25,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> | |||||||
|  static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index, |  static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index, | ||||||
|  					    u32 *data, int in_pm) |  					    u32 *data, int in_pm) | ||||||
|  { |  { | ||||||
| @@ -1964,7 +1968,8 @@ static int smsc95xx_rx_fixup(struct usbn | @@ -1965,7 +1969,8 @@ static int smsc95xx_rx_fixup(struct usbn | ||||||
|  				if (dev->net->features & NETIF_F_RXCSUM) |  				if (dev->net->features & NETIF_F_RXCSUM) | ||||||
|  					smsc95xx_rx_csum_offload(skb); |  					smsc95xx_rx_csum_offload(skb); | ||||||
|  				skb_trim(skb, skb->len - 4); /* remove fcs */ |  				skb_trim(skb, skb->len - 4); /* remove fcs */ | ||||||
| @@ -35,7 +35,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com> | |||||||
|   |   | ||||||
|  				return 1; |  				return 1; | ||||||
|  			} |  			} | ||||||
| @@ -1982,7 +1987,8 @@ static int smsc95xx_rx_fixup(struct usbn | @@ -1983,7 +1988,8 @@ static int smsc95xx_rx_fixup(struct usbn | ||||||
|  			if (dev->net->features & NETIF_F_RXCSUM) |  			if (dev->net->features & NETIF_F_RXCSUM) | ||||||
|  				smsc95xx_rx_csum_offload(ax_skb); |  				smsc95xx_rx_csum_offload(ax_skb); | ||||||
|  			skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */ |  			skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */ | ||||||
|   | |||||||
| @@ -22,7 +22,7 @@ See: http://forum.kodi.tv/showthread.php?tid=285288 | |||||||
|  static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index, |  static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index, | ||||||
|  					    u32 *data, int in_pm) |  					    u32 *data, int in_pm) | ||||||
|  { |  { | ||||||
| @@ -1095,13 +1099,13 @@ static int smsc95xx_reset(struct usbnet | @@ -1096,13 +1100,13 @@ static int smsc95xx_reset(struct usbnet | ||||||
|   |   | ||||||
|  	if (!turbo_mode) { |  	if (!turbo_mode) { | ||||||
|  		burst_cap = 0; |  		burst_cap = 0; | ||||||
|   | |||||||
| @@ -82,8 +82,8 @@ Signed-off-by: popcornmix <popcornmix@gmail.com> | |||||||
| + | + | ||||||
|  static void smsc95xx_init_mac_address(struct usbnet *dev) |  static void smsc95xx_init_mac_address(struct usbnet *dev) | ||||||
|  { |  { | ||||||
|  	const u8 *mac_addr; |  	u8 mac_addr[ETH_ALEN]; | ||||||
| @@ -928,6 +980,10 @@ static void smsc95xx_init_mac_address(st | @@ -929,6 +981,10 @@ static void smsc95xx_init_mac_address(st | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|   | |||||||
| @@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> | |||||||
|  	/* Disable rate control for now */ |  	/* Disable rate control for now */ | ||||||
|  	bcmgenet_tdma_ring_writel(priv, index, flow_period_val, |  	bcmgenet_tdma_ring_writel(priv, index, flow_period_val, | ||||||
|  				  TDMA_FLOW_PERIOD); |  				  TDMA_FLOW_PERIOD); | ||||||
| @@ -3574,9 +3574,12 @@ static int bcmgenet_probe(struct platfor | @@ -3575,9 +3575,12 @@ static int bcmgenet_probe(struct platfor | ||||||
|  	netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1); |  	netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1); | ||||||
|   |   | ||||||
|  	/* Set default coalescing parameters */ |  	/* Set default coalescing parameters */ | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> | |||||||
|  |  | ||||||
| --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c | --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c | ||||||
| +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c | +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c | ||||||
| @@ -3475,7 +3475,7 @@ static int bcmgenet_probe(struct platfor | @@ -3476,7 +3476,7 @@ static int bcmgenet_probe(struct platfor | ||||||
|  	priv = netdev_priv(dev); |  	priv = netdev_priv(dev); | ||||||
|  	priv->irq0 = platform_get_irq(pdev, 0); |  	priv->irq0 = platform_get_irq(pdev, 0); | ||||||
|  	priv->irq1 = platform_get_irq(pdev, 1); |  	priv->irq1 = platform_get_irq(pdev, 1); | ||||||
|   | |||||||
| @@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com> | |||||||
|   |   | ||||||
|  	/* Reinitialize TDMA and RDMA and SW housekeeping */ |  	/* Reinitialize TDMA and RDMA and SW housekeeping */ | ||||||
|  	ret = bcmgenet_init_dma(priv); |  	ret = bcmgenet_init_dma(priv); | ||||||
| @@ -3665,7 +3673,7 @@ static int bcmgenet_resume(struct device | @@ -3666,7 +3674,7 @@ static int bcmgenet_resume(struct device | ||||||
|  		bcmgenet_power_up(priv, GENET_POWER_WOL_MAGIC); |  		bcmgenet_power_up(priv, GENET_POWER_WOL_MAGIC); | ||||||
|   |   | ||||||
|  	/* Disable RX/TX DMA and flush TX queues */ |  	/* Disable RX/TX DMA and flush TX queues */ | ||||||
|   | |||||||
| @@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  #include <linux/platform_device.h> |  #include <linux/platform_device.h> | ||||||
|  #include <linux/slab.h> |  #include <linux/slab.h> | ||||||
|  #include <linux/string.h> |  #include <linux/string.h> | ||||||
| @@ -647,7 +649,9 @@ static int bcm4908_enet_probe(struct pla | @@ -647,7 +648,9 @@ static int bcm4908_enet_probe(struct pla | ||||||
|  		return err; |  		return err; | ||||||
|   |   | ||||||
|  	SET_NETDEV_DEV(netdev, &pdev->dev); |  	SET_NETDEV_DEV(netdev, &pdev->dev); | ||||||
|   | |||||||
| @@ -269,7 +269,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  static int bcm4908_enet_change_mtu(struct net_device *netdev, int new_mtu) |  static int bcm4908_enet_change_mtu(struct net_device *netdev, int new_mtu) | ||||||
|  { |  { | ||||||
|  	struct bcm4908_enet *enet = netdev_priv(netdev); |  	struct bcm4908_enet *enet = netdev_priv(netdev); | ||||||
| @@ -642,6 +706,8 @@ static int bcm4908_enet_probe(struct pla | @@ -641,6 +705,8 @@ static int bcm4908_enet_probe(struct pla | ||||||
|  	if (netdev->irq < 0) |  	if (netdev->irq < 0) | ||||||
|  		return netdev->irq; |  		return netdev->irq; | ||||||
|   |   | ||||||
| @@ -278,7 +278,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  	dma_set_coherent_mask(dev, DMA_BIT_MASK(32)); |  	dma_set_coherent_mask(dev, DMA_BIT_MASK(32)); | ||||||
|   |   | ||||||
|  	err = bcm4908_enet_dma_alloc(enet); |  	err = bcm4908_enet_dma_alloc(enet); | ||||||
| @@ -658,7 +724,8 @@ static int bcm4908_enet_probe(struct pla | @@ -655,7 +721,8 @@ static int bcm4908_enet_probe(struct pla | ||||||
|  	netdev->min_mtu = ETH_ZLEN; |  	netdev->min_mtu = ETH_ZLEN; | ||||||
|  	netdev->mtu = ETH_DATA_LEN; |  	netdev->mtu = ETH_DATA_LEN; | ||||||
|  	netdev->max_mtu = ENET_MTU_MAX; |  	netdev->max_mtu = ENET_MTU_MAX; | ||||||
| @@ -288,7 +288,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|   |   | ||||||
|  	err = register_netdev(netdev); |  	err = register_netdev(netdev); | ||||||
|  	if (err) { |  	if (err) { | ||||||
| @@ -676,7 +743,8 @@ static int bcm4908_enet_remove(struct pl | @@ -673,7 +740,8 @@ static int bcm4908_enet_remove(struct pl | ||||||
|  	struct bcm4908_enet *enet = platform_get_drvdata(pdev); |  	struct bcm4908_enet *enet = platform_get_drvdata(pdev); | ||||||
|   |   | ||||||
|  	unregister_netdev(enet->netdev); |  	unregister_netdev(enet->netdev); | ||||||
|   | |||||||
| @@ -744,7 +744,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> | |||||||
|   |   | ||||||
|  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||||||
|  	if (!res) { |  	if (!res) { | ||||||
| @@ -658,31 +867,60 @@ ltq_etop_probe(struct platform_device *p | @@ -658,31 +866,60 @@ ltq_etop_probe(struct platform_device *p | ||||||
|  		goto err_out; |  		goto err_out; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -820,7 +820,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> | |||||||
|   |   | ||||||
|  	err = register_netdev(dev); |  	err = register_netdev(dev); | ||||||
|  	if (err) |  	if (err) | ||||||
| @@ -711,31 +951,22 @@ ltq_etop_remove(struct platform_device * | @@ -711,31 +948,22 @@ ltq_etop_remove(struct platform_device * | ||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
|   |   | ||||||
|   | |||||||
| @@ -51,7 +51,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) { |  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) { | ||||||
|  		ret = device_reset(eth->dev); |  		ret = device_reset(eth->dev); | ||||||
|  		if (ret) { |  		if (ret) { | ||||||
| @@ -3106,6 +3114,16 @@ static int mtk_probe(struct platform_dev | @@ -3101,6 +3109,16 @@ static int mtk_probe(struct platform_dev | ||||||
|  		} |  		} | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|   | |||||||
| @@ -292,7 +292,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  					MVNETA_RX_BUF_SIZE(pp->pkt_size)); |  					MVNETA_RX_BUF_SIZE(pp->pkt_size)); | ||||||
|  		mvneta_rxq_bm_disable(pp, rxq); |  		mvneta_rxq_bm_disable(pp, rxq); | ||||||
|  		mvneta_rxq_fill(pp, rxq, rxq->size); |  		mvneta_rxq_fill(pp, rxq, rxq->size); | ||||||
| @@ -4715,7 +4720,7 @@ static int mvneta_probe(struct platform_ | @@ -4713,7 +4718,7 @@ static int mvneta_probe(struct platform_ | ||||||
|  	SET_NETDEV_DEV(dev, &pdev->dev); |  	SET_NETDEV_DEV(dev, &pdev->dev); | ||||||
|   |   | ||||||
|  	pp->id = global_port_id++; |  	pp->id = global_port_id++; | ||||||
|   | |||||||
| @@ -300,7 +300,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  }; |  }; | ||||||
|   |   | ||||||
|  static const struct ethtool_ops mvneta_eth_tool_ops = { |  static const struct ethtool_ops mvneta_eth_tool_ops = { | ||||||
| @@ -4720,7 +4850,7 @@ static int mvneta_probe(struct platform_ | @@ -4718,7 +4848,7 @@ static int mvneta_probe(struct platform_ | ||||||
|  	SET_NETDEV_DEV(dev, &pdev->dev); |  	SET_NETDEV_DEV(dev, &pdev->dev); | ||||||
|   |   | ||||||
|  	pp->id = global_port_id++; |  	pp->id = global_port_id++; | ||||||
|   | |||||||
| @@ -38,7 +38,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  	mvreg_write(pp, MVNETA_ACC_MODE, MVNETA_ACC_MODE_EXT1); |  	mvreg_write(pp, MVNETA_ACC_MODE, MVNETA_ACC_MODE_EXT1); | ||||||
|  	netdev_info(pp->dev, "fail to update MTU, fall back to software BM\n"); |  	netdev_info(pp->dev, "fail to update MTU, fall back to software BM\n"); | ||||||
|  } |  } | ||||||
| @@ -4991,7 +4991,6 @@ static int mvneta_probe(struct platform_ | @@ -4989,7 +4989,6 @@ static int mvneta_probe(struct platform_ | ||||||
|  	SET_NETDEV_DEV(dev, &pdev->dev); |  	SET_NETDEV_DEV(dev, &pdev->dev); | ||||||
|   |   | ||||||
|  	pp->id = global_port_id++; |  	pp->id = global_port_id++; | ||||||
| @@ -46,7 +46,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|   |   | ||||||
|  	/* Obtain access to BM resources if enabled and already initialized */ |  	/* Obtain access to BM resources if enabled and already initialized */ | ||||||
|  	bm_node = of_parse_phandle(dn, "buffer-manager", 0); |  	bm_node = of_parse_phandle(dn, "buffer-manager", 0); | ||||||
| @@ -5016,6 +5015,10 @@ static int mvneta_probe(struct platform_ | @@ -5014,6 +5013,10 @@ static int mvneta_probe(struct platform_ | ||||||
|  	} |  	} | ||||||
|  	of_node_put(bm_node); |  	of_node_put(bm_node); | ||||||
|   |   | ||||||
| @@ -57,7 +57,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> | |||||||
|  	err = mvneta_init(&pdev->dev, pp); |  	err = mvneta_init(&pdev->dev, pp); | ||||||
|  	if (err < 0) |  	if (err < 0) | ||||||
|  		goto err_netdev; |  		goto err_netdev; | ||||||
| @@ -5173,6 +5176,7 @@ static int mvneta_resume(struct device * | @@ -5171,6 +5174,7 @@ static int mvneta_resume(struct device * | ||||||
|  		err = mvneta_bm_port_init(pdev, pp); |  		err = mvneta_bm_port_init(pdev, pp); | ||||||
|  		if (err < 0) { |  		if (err < 0) { | ||||||
|  			dev_info(&pdev->dev, "use SW buffer management\n"); |  			dev_info(&pdev->dev, "use SW buffer management\n"); | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- a/drivers/staging/octeon/ethernet.c | --- a/drivers/staging/octeon/ethernet.c | ||||||
| +++ b/drivers/staging/octeon/ethernet.c | +++ b/drivers/staging/octeon/ethernet.c | ||||||
| @@ -683,6 +683,7 @@ static int cvm_oct_probe(struct platform | @@ -679,6 +679,7 @@ static int cvm_oct_probe(struct platform | ||||||
|  	int interface; |  	int interface; | ||||||
|  	int fau = FAU_NUM_PACKET_BUFFERS_TO_FREE; |  	int fau = FAU_NUM_PACKET_BUFFERS_TO_FREE; | ||||||
|  	int qos; |  	int qos; | ||||||
| @@ -8,7 +8,7 @@ | |||||||
|  	struct device_node *pip; |  	struct device_node *pip; | ||||||
|  	int mtu_overhead = ETH_HLEN + ETH_FCS_LEN; |  	int mtu_overhead = ETH_HLEN + ETH_FCS_LEN; | ||||||
|   |   | ||||||
| @@ -806,13 +807,19 @@ static int cvm_oct_probe(struct platform | @@ -802,13 +803,19 @@ static int cvm_oct_probe(struct platform | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
|  	num_interfaces = cvmx_helper_get_number_of_interfaces(); |  	num_interfaces = cvmx_helper_get_number_of_interfaces(); | ||||||
|   | |||||||
| @@ -12,19 +12,20 @@ Tested-by: Johannes Kimmel <fff@bareminimum.eu> | |||||||
| Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com> | Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com> | ||||||
| --- a/drivers/staging/octeon/ethernet.c | --- a/drivers/staging/octeon/ethernet.c | ||||||
| +++ b/drivers/staging/octeon/ethernet.c | +++ b/drivers/staging/octeon/ethernet.c | ||||||
| @@ -408,7 +408,11 @@ int cvm_oct_common_init(struct net_devic | @@ -407,8 +407,12 @@ static int cvm_oct_common_set_mac_addres | ||||||
|  int cvm_oct_common_init(struct net_device *dev) |  int cvm_oct_common_init(struct net_device *dev) | ||||||
|  { |  { | ||||||
|  	struct octeon_ethernet *priv = netdev_priv(dev); |  	struct octeon_ethernet *priv = netdev_priv(dev); | ||||||
| +	const u8 *label = NULL; | +	const u8 *label = NULL; | ||||||
| 	int ret; |  	int ret; | ||||||
| + |   | ||||||
| +	if (priv->of_node) | +	if (priv->of_node) | ||||||
| +		label = of_get_property(priv->of_node, "label", NULL); | +		label = of_get_property(priv->of_node, "label", NULL); | ||||||
|   | + | ||||||
|  	ret = of_get_mac_address(priv->of_node, dev->dev_addr); |  	ret = of_get_mac_address(priv->of_node, dev->dev_addr); | ||||||
|  	if (ret) |  	if (ret) | ||||||
| @@ -445,6 +448,9 @@ int cvm_oct_common_init(struct net_devic |  		eth_hw_addr_random(dev); | ||||||
|  | @@ -441,6 +445,9 @@ int cvm_oct_common_init(struct net_devic | ||||||
|  	if (dev->netdev_ops->ndo_stop) |  	if (dev->netdev_ops->ndo_stop) | ||||||
|  		dev->netdev_ops->ndo_stop(dev); |  		dev->netdev_ops->ndo_stop(dev); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ Tested-by: Johannes Kimmel <fff@bareminimum.eu> | |||||||
| Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com> | Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com> | ||||||
| --- a/drivers/staging/octeon/ethernet.c | --- a/drivers/staging/octeon/ethernet.c | ||||||
| +++ b/drivers/staging/octeon/ethernet.c | +++ b/drivers/staging/octeon/ethernet.c | ||||||
| @@ -885,8 +885,10 @@ static int cvm_oct_probe(struct platform | @@ -882,8 +882,10 @@ static int cvm_oct_probe(struct platform | ||||||
|   |   | ||||||
|  			case CVMX_HELPER_INTERFACE_MODE_SGMII: |  			case CVMX_HELPER_INTERFACE_MODE_SGMII: | ||||||
|  				priv->phy_mode = PHY_INTERFACE_MODE_SGMII; |  				priv->phy_mode = PHY_INTERFACE_MODE_SGMII; | ||||||
|   | |||||||
| @@ -14,7 +14,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||||
|  |  | ||||||
| --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c | --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c | ||||||
| +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c | +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c | ||||||
| @@ -2943,6 +2943,7 @@ static const struct net_device_ops mtk_n | @@ -2940,6 +2940,7 @@ static const struct net_device_ops mtk_n | ||||||
|   |   | ||||||
|  static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np) |  static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np) | ||||||
|  { |  { | ||||||
| @@ -22,9 +22,9 @@ Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||||
|  	const __be32 *_id = of_get_property(np, "reg", NULL); |  	const __be32 *_id = of_get_property(np, "reg", NULL); | ||||||
|  	struct phylink *phylink; |  	struct phylink *phylink; | ||||||
|  	int phy_mode, id, err; |  	int phy_mode, id, err; | ||||||
| @@ -3037,6 +3038,9 @@ static int mtk_add_mac(struct mtk_eth *e | @@ -3032,6 +3033,9 @@ static int mtk_add_mac(struct mtk_eth *e | ||||||
|   |   | ||||||
|  	of_platform_device_create(np, NULL, NULL); |  	eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH - MTK_RX_ETH_HLEN; | ||||||
|   |   | ||||||
| +	if (name) | +	if (name) | ||||||
| +		strlcpy(eth->netdev[id]->name, name, IFNAMSIZ); | +		strlcpy(eth->netdev[id]->name, name, IFNAMSIZ); | ||||||
|   | |||||||
| @@ -37,7 +37,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org> | |||||||
|  		break; |  		break; | ||||||
| --- a/include/linux/phy.h | --- a/include/linux/phy.h | ||||||
| +++ b/include/linux/phy.h | +++ b/include/linux/phy.h | ||||||
| @@ -380,6 +380,7 @@ struct phy_device { | @@ -381,6 +381,7 @@ struct phy_device { | ||||||
|  	unsigned suspended_by_mdio_bus:1; |  	unsigned suspended_by_mdio_bus:1; | ||||||
|  	unsigned sysfs_links:1; |  	unsigned sysfs_links:1; | ||||||
|  	unsigned loopback_enabled:1; |  	unsigned loopback_enabled:1; | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| --- a/include/linux/phy.h | --- a/include/linux/phy.h | ||||||
| +++ b/include/linux/phy.h | +++ b/include/linux/phy.h | ||||||
| @@ -644,6 +644,10 @@ struct phy_driver { | @@ -645,6 +645,10 @@ struct phy_driver { | ||||||
|  			    struct ethtool_tunable *tuna, |  			    struct ethtool_tunable *tuna, | ||||||
|  			    const void *data); |  			    const void *data); | ||||||
|  	int (*set_loopback)(struct phy_device *dev, bool enable); |  	int (*set_loopback)(struct phy_device *dev, bool enable); | ||||||
|   | |||||||
| @@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net> | |||||||
|  #include <linux/crc32.h> |  #include <linux/crc32.h> | ||||||
|  #include <linux/if_vlan.h> |  #include <linux/if_vlan.h> | ||||||
|  #include <linux/uaccess.h> |  #include <linux/uaccess.h> | ||||||
| @@ -4335,6 +4336,22 @@ static void rtl_tally_reset(struct r8152 | @@ -4336,6 +4337,22 @@ static void rtl_tally_reset(struct r8152 | ||||||
|  	ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data); |  	ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data); | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net> | |||||||
|  static void r8152b_init(struct r8152 *tp) |  static void r8152b_init(struct r8152 *tp) | ||||||
|  { |  { | ||||||
|  	u32 ocp_data; |  	u32 ocp_data; | ||||||
| @@ -4376,6 +4393,8 @@ static void r8152b_init(struct r8152 *tp | @@ -4377,6 +4394,8 @@ static void r8152b_init(struct r8152 *tp | ||||||
|  	ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL); |  	ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL); | ||||||
|  	ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN); |  	ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN); | ||||||
|  	ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data); |  	ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data); | ||||||
| @@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static void r8153_init(struct r8152 *tp) |  static void r8153_init(struct r8152 *tp) | ||||||
| @@ -4510,6 +4529,8 @@ static void r8153_init(struct r8152 *tp) | @@ -4511,6 +4530,8 @@ static void r8153_init(struct r8152 *tp) | ||||||
|  		tp->coalesce = COALESCE_SLOW; |  		tp->coalesce = COALESCE_SLOW; | ||||||
|  		break; |  		break; | ||||||
|  	} |  	} | ||||||
| @@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  static void r8153b_init(struct r8152 *tp) |  static void r8153b_init(struct r8152 *tp) | ||||||
| @@ -4586,6 +4607,8 @@ static void r8153b_init(struct r8152 *tp | @@ -4587,6 +4608,8 @@ static void r8153b_init(struct r8152 *tp | ||||||
|  	rtl_tally_reset(tp); |  	rtl_tally_reset(tp); | ||||||
|   |   | ||||||
|  	tp->coalesce = 15000;	/* 15 us */ |  	tp->coalesce = 15000;	/* 15 us */ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 John Audia
					John Audia