kernel: bump 5.4 to 5.4.140 (#7685)

* 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>

* kernel: bump 5.4 to 5.4.140

Removed upstreamed bcm27xx/patches-5.4:
    950-0977-USB-gadget-f_hid-avoid-crashes-and-log-spam.patch
    950-0980-SQUASH-USB-gadget-f_hid-remove-more-spam.patch

All other 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>

Co-authored-by: John Audia <graysky@archlinux.us>
This commit is contained in:
AmadeusGhost 2021-08-17 23:29:42 +08:00 committed by GitHub
parent 0469fc1c98
commit eed97b08c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 39 additions and 121 deletions

View File

@ -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 = .140
LINUX_VERSION-5.10 = .57 LINUX_VERSION-5.10 = .57
LINUX_KERNEL_HASH-5.4.138 = a43957727a54e5e1035d7372a1e64203ae8e3060c52a3816916157967f9a8657 LINUX_KERNEL_HASH-5.4.140 = 2c657a2df4f2e805ac50aeb39ecf5d1e4cb1501e7fcf15eafd14486b587f7e43
LINUX_KERNEL_HASH-5.10.57 = 00bbaeaac17f82d9a6d93cbc42cafd39d3b2fa3a6087333503d2344fa5e3142d LINUX_KERNEL_HASH-5.10.57 = 00bbaeaac17f82d9a6d93cbc42cafd39d3b2fa3a6087333503d2344fa5e3142d
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))

View File

@ -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 */

View File

@ -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;

View File

@ -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
} }
} }

View File

@ -9,7 +9,7 @@ Subject: [PATCH] Added Device IDs for August DVB-T 205
--- a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c --- a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
+++ b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c +++ b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
@@ -1938,6 +1938,10 @@ static const struct usb_device_id rtl28x @@ -1947,6 +1947,10 @@ static const struct usb_device_id rtl28x
&rtl28xxu_props, "Compro VideoMate U650F", NULL) }, &rtl28xxu_props, "Compro VideoMate U650F", NULL) },
{ DVB_USB_DEVICE(USB_VID_KWORLD_2, 0xd394, { DVB_USB_DEVICE(USB_VID_KWORLD_2, 0xd394,
&rtl28xxu_props, "MaxMedia HU394-T", NULL) }, &rtl28xxu_props, "MaxMedia HU394-T", NULL) },

View File

@ -19,7 +19,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
--- a/drivers/media/common/videobuf2/videobuf2-core.c --- a/drivers/media/common/videobuf2/videobuf2-core.c
+++ b/drivers/media/common/videobuf2/videobuf2-core.c +++ b/drivers/media/common/videobuf2/videobuf2-core.c
@@ -2073,12 +2073,12 @@ static int __find_plane_by_offset(struct @@ -2084,12 +2084,12 @@ static int __find_plane_by_offset(struct
return -EINVAL; return -EINVAL;
} }
@ -35,7 +35,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
struct dma_buf *dbuf; struct dma_buf *dbuf;
if (q->memory != VB2_MEMORY_MMAP) { if (q->memory != VB2_MEMORY_MMAP) {
@@ -2128,6 +2128,21 @@ int vb2_core_expbuf(struct vb2_queue *q, @@ -2139,6 +2139,21 @@ int vb2_core_expbuf(struct vb2_queue *q,
return -EINVAL; return -EINVAL;
} }

View File

@ -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 */

View File

@ -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);

View File

@ -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 */

View File

@ -1,56 +0,0 @@
From 22198e801db7542c59098a75bdab120bcbc42652 Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Wed, 30 Sep 2020 19:23:43 +0100
Subject: [PATCH] USB: gadget: f_hid: avoid crashes and log spam
Disconnecting and reconnecting the USB cable can lead to crashes and a
variety of kernel log spam. Try to fix or minimise both.
See: https://github.com/raspberrypi/linux/issues/3870
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
drivers/usb/gadget/function/f_hid.c | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
--- a/drivers/usb/gadget/function/f_hid.c
+++ b/drivers/usb/gadget/function/f_hid.c
@@ -344,6 +344,11 @@ static ssize_t f_hidg_write(struct file
spin_lock_irqsave(&hidg->write_spinlock, flags);
+ if (!hidg->req) {
+ spin_unlock_irqrestore(&hidg->write_spinlock, flags);
+ return -ESHUTDOWN;
+ }
+
#define WRITE_COND (!hidg->write_pending)
try_again:
/* write queue */
@@ -364,7 +369,13 @@ try_again:
count = min_t(unsigned, count, hidg->report_length);
spin_unlock_irqrestore(&hidg->write_spinlock, flags);
- status = copy_from_user(req->buf, buffer, count);
+ if (req) {
+ status = copy_from_user(req->buf, buffer, count);
+ } else {
+ ERROR(hidg->func.config->cdev, "hidg->req is NULL\n");
+ status = -ESHUTDOWN;
+ goto release_write_pending;
+ }
if (status != 0) {
ERROR(hidg->func.config->cdev,
@@ -393,6 +404,11 @@ try_again:
spin_unlock_irqrestore(&hidg->write_spinlock, flags);
+ if (!hidg->in_ep->enabled) {
+ ERROR(hidg->func.config->cdev, "in_ep is disabled\n");
+ status = -ESHUTDOWN;
+ goto release_write_pending;
+ }
status = usb_ep_queue(hidg->in_ep, req, GFP_ATOMIC);
if (status < 0) {
ERROR(hidg->func.config->cdev,

View File

@ -1,26 +0,0 @@
From 5018dc559136e2bca24973e71ed8747adf0f37f3 Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Mon, 5 Oct 2020 15:41:15 +0100
Subject: [PATCH] SQUASH: USB: gadget: f_hid: remove more spam
Tidying up the previous patch to this file dropped the deletion of a
particularly noisy error message. Restore its removal.
See: https://github.com/raspberrypi/linux/issues/3870
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
drivers/usb/gadget/function/f_hid.c | 2 --
1 file changed, 2 deletions(-)
--- a/drivers/usb/gadget/function/f_hid.c
+++ b/drivers/usb/gadget/function/f_hid.c
@@ -411,8 +411,6 @@ try_again:
}
status = usb_ep_queue(hidg->in_ep, req, GFP_ATOMIC);
if (status < 0) {
- ERROR(hidg->func.config->cdev,
- "usb_ep_queue error on int endpoint %zd\n", status);
goto release_write_pending;
} else {
status = count;

View File

@ -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);

View File

@ -19,7 +19,7 @@
}, },
[PORT_NPCM] = { [PORT_NPCM] = {
.name = "Nuvoton 16550", .name = "Nuvoton 16550",
@@ -2591,6 +2591,11 @@ serial8250_do_set_termios(struct uart_po @@ -2597,6 +2597,11 @@ serial8250_do_set_termios(struct uart_po
unsigned long flags; unsigned long flags;
unsigned int baud, quot, frac = 0; unsigned int baud, quot, frac = 0;

View File

@ -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
} }
} }

View File

@ -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++;

View File

@ -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++;

View File

@ -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");

View File

@ -69,7 +69,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
/* J6 */ /* J6 */
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts --- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts +++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -126,10 +126,6 @@ @@ -127,10 +127,6 @@
}; };
}; };

View File

@ -37,7 +37,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>; reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts --- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts +++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -132,7 +132,6 @@ @@ -133,7 +133,6 @@
status = "okay"; status = "okay";
max-link-speed = <2>; max-link-speed = <2>;
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>; reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;

View File

@ -24,7 +24,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts --- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts +++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -130,7 +130,6 @@ @@ -131,7 +131,6 @@
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>; pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>;
status = "okay"; status = "okay";

View File

@ -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();

View File

@ -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;

View File

@ -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);

View File

@ -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;

View File

@ -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);

View File

@ -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 */