kernel: bump 5.4 to 5.4.58
authorJohn Audia <graysky@archlinux.us>
Tue, 11 Aug 2020 16:13:19 +0000 (12:13 -0400)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Tue, 18 Aug 2020 16:14:54 +0000 (18:14 +0200)
This PR is a blend of several kernel bumps authored by ldir taken from his
staging tree w/ some further adjustments made by me and update_kernel.sh

Summary:
Deleted upstreamed patches:
  generic:
    742-v5.5-net-sfp-add-support-for-module-quirks.patch
    743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch
  bcm63xx:
    022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch
    024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch
  mediatek:
    0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch

Deleted patches applied differently upstream:
  generic:
    641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch

Manually merged patches:
  generic:
    395-v5.8-net-sch_cake-Take-advantage-of-skb-hash-where-appropriate.patch
  bcm27xx:
    950-0132-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch
  layerscape:
    701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch

Build system: x86_64
Build-tested: ath79/generic, bcm27xx/bcm2708, bcm27xx/bcm2711,
  imx6, mvebu/cortexa9, sunxi/a53
Run-tested: Netgear R7800 (ipq806x)

No dmesg regressions, everything functional

Signed-off-by: John Audia <graysky@archlinux.us>
Tested-By: Lucian Cristian <Lucian.cristian@gmail.com> [mvebu]
Tested-By: Curtis Deptuck <curtdept@me.com> [x86/64]
[do not remove 395-v5.8-net-sch_cake-Take-advantage-... patch,
adjust and refresh patches, adjust commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-By: John Audia <graysky@archlinux.us> [ipq806x]
65 files changed:
include/kernel-version.mk
target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch
target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch
target/linux/ath79/patches-5.4/0011-MIPS-ath79-select-the-PINCTRL-subsystem.patch
target/linux/ath79/patches-5.4/0032-MIPS-ath79-sanitize-symbols.patch
target/linux/ath79/patches-5.4/910-unaligned_access_hacks.patch
target/linux/bcm27xx/patches-5.4/950-0030-lan78xx-Enable-LEDs-and-auto-negotiation.patch
target/linux/bcm27xx/patches-5.4/950-0111-lan78xx-Read-initial-EEE-status-from-DT.patch
target/linux/bcm27xx/patches-5.4/950-0117-net-lan78xx-Disable-TCP-Segmentation-Offload-TSO.patch
target/linux/bcm27xx/patches-5.4/950-0118-lan78xx-Move-enabling-of-EEE-into-PHY-init-code.patch
target/linux/bcm27xx/patches-5.4/950-0132-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch
target/linux/bcm27xx/patches-5.4/950-0138-lan78xx-EEE-support-is-now-a-PHY-property.patch
target/linux/bcm27xx/patches-5.4/950-0146-lan78xx-use-default-alignment-for-rx-buffers.patch
target/linux/bcm27xx/patches-5.4/950-0214-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch
target/linux/bcm27xx/patches-5.4/950-0267-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch
target/linux/bcm27xx/patches-5.4/950-0283-hid-usb-Add-device-quirks-for-Freeway-Airmouse-T3-an.patch
target/linux/bcm53xx/patches-5.4/905-BCM53573-minor-hacks.patch
target/linux/bcm63xx/patches-5.4/021-v5.8-mtd-rawnand-brcmnand-improve-hamming-oob-layout.patch
target/linux/bcm63xx/patches-5.4/022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch [deleted file]
target/linux/bcm63xx/patches-5.4/024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch [deleted file]
target/linux/generic/backport-5.4/070-v5.5-MIPS-BPF-Restore-MIPS32-cBPF-JIT.patch
target/linux/generic/backport-5.4/310-v5.6-mips-vdso-fix-jalr-t9-crash-in-vdso-code.patch
target/linux/generic/backport-5.4/395-v5.8-net-sch_cake-Take-advantage-of-skb-hash-where-appropriate.patch
target/linux/generic/backport-5.4/716-v5.4-net-sfp-move-fwnode-parsing-into-sfp-bus-layer.patch
target/linux/generic/backport-5.4/717-v5.5-net-sfp-rework-upstream-interface.patch
target/linux/generic/backport-5.4/718-v5.5-net-sfp-fix-sfp_bus_put-kernel-documentation.patch
target/linux/generic/backport-5.4/742-v5.5-net-sfp-add-support-for-module-quirks.patch [deleted file]
target/linux/generic/backport-5.4/743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch [deleted file]
target/linux/generic/hack-5.4/221-module_exports.patch
target/linux/generic/hack-5.4/301-mips_image_cmdline_hack.patch
target/linux/generic/hack-5.4/641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch [deleted file]
target/linux/generic/hack-5.4/904-debloat_dma_buf.patch
target/linux/generic/pending-5.4/300-mips_expose_boot_raw.patch
target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
target/linux/generic/pending-5.4/810-pci_disable_common_quirks.patch
target/linux/lantiq/patches-5.4/0152-lantiq-VPE.patch
target/linux/layerscape/patches-5.4/701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch
target/linux/layerscape/patches-5.4/701-net-0234-enetc-WA-for-MDIO-register-access-issue.patch
target/linux/layerscape/patches-5.4/701-net-0236-enetc-Replace-enetc_gregs-with-a-readers-writer-lock.patch
target/linux/layerscape/patches-5.4/701-net-0237-enetc-Remove-mdio-bus-on-PF-probe-error-path.patch
target/linux/layerscape/patches-5.4/701-net-0337-enetc-add-support-tsn-capabilities-qbv-qci-qbu-cbs.patch
target/linux/layerscape/patches-5.4/806-dma-0019-dmaengine-fsl-edma-calculate-the-real-count-for-slav.patch
target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch
target/linux/layerscape/patches-5.4/811-kvm-0002-arm-arm64-KVM-allow-specifying-s2-prot-bits-when-map.patch
target/linux/layerscape/patches-5.4/811-kvm-0003-arm-arm64-KVM-drop-qman-mmio-cacheable-mapping-hack.patch
target/linux/layerscape/patches-5.4/812-pcie-0005-MLK-20684-PCI-Disable-MSI-on-CYW4356-and-CYW4359-chi.patch
target/linux/layerscape/patches-5.4/812-pcie-0007-PCI-Disable-MSI-on-marvel-88w9098-and-88w8997-chips.patch
target/linux/mediatek/patches-5.4/0400-eth-fix-rx-vlan-hw-offload.patch
target/linux/mediatek/patches-5.4/0401-eth-fix-eth1-tx-timeout.patch
target/linux/mediatek/patches-5.4/0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch [deleted file]
target/linux/mediatek/patches-5.4/0991-dt-bindings-PCI-Mediatek-Update-PCIe-binding.patch
target/linux/mediatek/patches-5.4/0999-hnat.patch
target/linux/mediatek/patches-5.4/1000-eth-gdm-config-backport.patch
target/linux/mediatek/patches-5.4/1001-eth-mtk-disable-TBDDONE-support.patch
target/linux/mvebu/patches-5.4/012-net-mvneta-rely-on-build_skb-in-mvneta_rx_swbm-poll-.patch
target/linux/mvebu/patches-5.4/013-net-mvneta-add-basic-XDP-support.patch
target/linux/mvebu/patches-5.4/023-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch
target/linux/mvebu/patches-5.4/561-mvebu-armada-38x-enable-libata-leds.patch
target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch
target/linux/ramips/patches-5.4/0069-awake-rt305x-dwc2-controller.patch
target/linux/ramips/patches-5.4/0400-net-ethernet-mediatek-use-napi_consume_skb.patch
target/linux/ramips/patches-5.4/401-net-ethernet-mediatek-support-net-labels.patch
target/linux/rockchip/patches-5.4/101-dts-rockchip-add-usb3-controller-node-for-RK3328-SoCs.patch
target/linux/rockchip/patches-5.4/102-rockchip-enable-LAN-port-on-NanoPi-R2S.patch
target/linux/rockchip/patches-5.4/103-arm64-rockchip-add-OF-node-for-USB-eth-on-NanoPi-R2S.patch

index 1ff1a0967f74b3a6f4f663d0acbbb863e3ba3434..52c8a0ff2c5c3fce6ac93518f567fdce6652f1d9 100644 (file)
@@ -8,11 +8,11 @@ endif
 
 LINUX_VERSION-4.14 = .193
 LINUX_VERSION-4.19 = .138
-LINUX_VERSION-5.4 = .52
+LINUX_VERSION-5.4 = .58
 
 LINUX_KERNEL_HASH-4.14.193 = 0b0fb41d4430e1a42738b341cbfd2f41951aa5cd02acabbd53f076119c8b9f03
 LINUX_KERNEL_HASH-4.19.138 = d15c27d05f6c527269b75b30cc72972748e55720e7e00ad8abbaa4fe3b1d5e02
-LINUX_KERNEL_HASH-5.4.52 = 037efa531120b1c20ff55e78cd3e17288b1804b3a57dc31de760837b3bea5d3a
+LINUX_KERNEL_HASH-5.4.58 = 702fe2af119375387b314481b603d8ce71e71b4e5bae4cb70a980e0951b21647
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
 sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
index 36eab9349b28107c2b0a6bc8e0144d507829f6d0..937382fdf5fb536929a13cfa26e20cf45a7cde76 100644 (file)
@@ -48,9 +48,9 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
  
  #include "xhci.h"
  #include "xhci-trace.h"
-@@ -57,6 +59,44 @@
- #define PCI_DEVICE_ID_AMD_PROMONTORYA_1                       0x43bc
- #define PCI_DEVICE_ID_ASMEDIA_1042A_XHCI              0x1142
+@@ -60,6 +62,44 @@
+ #define PCI_DEVICE_ID_ASMEDIA_1142_XHCI                       0x1242
+ #define PCI_DEVICE_ID_ASMEDIA_2142_XHCI                       0x2142
  
 +#define RENESAS_FW_VERSION                            0x6C
 +#define RENESAS_ROM_CONFIG                            0xF0
@@ -93,7 +93,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
  static const char hcd_name[] = "xhci_hcd";
  
  static struct hc_driver __read_mostly xhci_pci_hc_driver;
-@@ -284,6 +324,873 @@ static void xhci_pme_acpi_rtd3_enable(st
+@@ -291,6 +331,873 @@ static void xhci_pme_acpi_rtd3_enable(st
  static void xhci_pme_acpi_rtd3_enable(struct pci_dev *dev) { }
  #endif /* CONFIG_ACPI */
  
@@ -967,7 +967,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
  /* called during probe() after chip reset completes */
  static int xhci_pci_setup(struct usb_hcd *hcd)
  {
-@@ -325,6 +1232,27 @@ static int xhci_pci_probe(struct pci_dev
+@@ -332,6 +1239,27 @@ static int xhci_pci_probe(struct pci_dev
        struct hc_driver *driver;
        struct usb_hcd *hcd;
  
@@ -995,7 +995,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
        driver = (struct hc_driver *)id->driver_data;
  
        /* Prevent runtime suspending between USB-2 and USB-3 initialization */
-@@ -386,6 +1314,16 @@ static void xhci_pci_remove(struct pci_d
+@@ -393,6 +1321,16 @@ static void xhci_pci_remove(struct pci_d
  {
        struct xhci_hcd *xhci;
  
@@ -1012,7 +1012,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
        xhci = hcd_to_xhci(pci_get_drvdata(dev));
        xhci->xhc_state |= XHCI_STATE_REMOVING;
  
-@@ -513,6 +1451,11 @@ static int xhci_pci_resume(struct usb_hc
+@@ -520,6 +1458,11 @@ static int xhci_pci_resume(struct usb_hc
        if (pdev->vendor == PCI_VENDOR_ID_INTEL)
                usb_enable_intel_xhci_ports(pdev);
  
index 7f09adf6a3e046d224b14b553a31f18e03fc4e14..02c9bcb2bf8c55656871baabc5a9431cf9682dbf 100644 (file)
@@ -13,7 +13,7 @@ produce a noisy warning.
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -275,6 +275,7 @@ static void xhci_pci_quirks(struct devic
+@@ -278,6 +278,7 @@ static void xhci_pci_quirks(struct devic
            pdev->device == 0x0015) {
                xhci->quirks |= XHCI_RESET_ON_RESUME;
                xhci->quirks |= XHCI_ZERO_64B_REGS;
index 4ac58d10c48d9d89c6c9611f2c28c3c4bcd89c7d..2edd06110c52faec08c02fd903c2992509f18fc7 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
 
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
-@@ -295,6 +295,7 @@ config BCM63XX
+@@ -296,6 +296,7 @@ config BCM63XX
        select SYS_HAS_EARLY_PRINTK
        select SWAP_IO_SPACE
        select GPIOLIB
index 382c5e6dfaad9fe30de8c4c8e3d70b1311c1a2cd..14dddd5147670a3244db30c3c6a320fed37a9d4b 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
 
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
-@@ -216,6 +216,8 @@ config ATH79
+@@ -217,6 +217,8 @@ config ATH79
        select SYS_SUPPORTS_BIG_ENDIAN
        select SYS_SUPPORTS_MIPS16
        select SYS_SUPPORTS_ZBOOT_UART_PROM
index 053b72023f3b013a365284eb984380e5b7ac5d3e..e77289dc5633a047d1181b5363db09f7613c1f0a 100644 (file)
  #include <linux/netdevice.h>
 --- a/include/net/inet_ecn.h
 +++ b/include/net/inet_ecn.h
-@@ -139,9 +139,9 @@ static inline int IP6_ECN_set_ce(struct
+@@ -140,9 +140,9 @@ static inline int IP6_ECN_set_ce(struct
        if (INET_ECN_is_not_ect(ipv6_get_dsfield(iph)))
                return 0;
  
  EXPORT_SYMBOL(xfrm_parse_spi);
 --- a/net/ipv4/tcp_input.c
 +++ b/net/ipv4/tcp_input.c
-@@ -3968,14 +3968,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3971,14 +3971,16 @@ static bool tcp_parse_aligned_timestamp(
  {
        const __be32 *ptr = (const __be32 *)(th + 1);
  
index 6799a07d78b49878dd6af02fad51f4d4b6ce0a66..f5567bdaded0155fc6c6b0a789dd0cfb19e56e3b 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -2465,6 +2465,11 @@ static int lan78xx_reset(struct lan78xx_
+@@ -2461,6 +2461,11 @@ static int lan78xx_reset(struct lan78xx_
        int ret = 0;
        unsigned long timeout;
        u8 sig;
@@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
  
        ret = lan78xx_read_reg(dev, HW_CFG, &buf);
        buf |= HW_CFG_LRST_;
-@@ -2518,6 +2523,9 @@ static int lan78xx_reset(struct lan78xx_
+@@ -2514,6 +2519,9 @@ static int lan78xx_reset(struct lan78xx_
  
        ret = lan78xx_read_reg(dev, HW_CFG, &buf);
        buf |= HW_CFG_MEF_;
@@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        ret = lan78xx_write_reg(dev, HW_CFG, buf);
  
        ret = lan78xx_read_reg(dev, USB_CFG0, &buf);
-@@ -2573,6 +2581,9 @@ static int lan78xx_reset(struct lan78xx_
+@@ -2569,6 +2577,9 @@ static int lan78xx_reset(struct lan78xx_
                        buf |= MAC_CR_AUTO_DUPLEX_ | MAC_CR_AUTO_SPEED_;
                }
        }
index 2d536375680729829315a01ff882ac33e0341c05..e4f52577e1867c46eb54955fc811e43826672ea8 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -2647,6 +2647,22 @@ static int lan78xx_open(struct net_devic
+@@ -2643,6 +2643,22 @@ static int lan78xx_open(struct net_devic
  
        netif_dbg(dev, ifup, dev->net, "phy initialised successfully");
  
index be6173c9304665ce36dee1444da180616c59c459..894c3ea7ceec2ac6a79b1fa7242f99b496bd850d 100644 (file)
@@ -21,7 +21,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
 
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -429,6 +429,15 @@ static int msg_level = -1;
+@@ -425,6 +425,15 @@ static int msg_level = -1;
  module_param(msg_level, int, 0);
  MODULE_PARM_DESC(msg_level, "Override default message level");
  
@@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
  static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
  {
        u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
-@@ -2995,8 +3004,14 @@ static int lan78xx_bind(struct lan78xx_n
+@@ -2925,8 +2934,14 @@ static int lan78xx_bind(struct lan78xx_n
        if (DEFAULT_RX_CSUM_ENABLE)
                dev->net->features |= NETIF_F_RXCSUM;
  
index 998c3a82355df218896fd83c243f6facd70c8b86..4d46461dd8bdd4dde1b582ac3f891d53f594fee7 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -2179,6 +2179,22 @@ static int lan78xx_phy_init(struct lan78
+@@ -2175,6 +2175,22 @@ static int lan78xx_phy_init(struct lan78
        mii_adv_to_linkmode_adv_t(fc, mii_adv);
        linkmode_or(phydev->advertising, fc, phydev->advertising);
  
@@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
        if (phydev->mdio.dev.of_node) {
                u32 reg;
                int len;
-@@ -2656,22 +2672,6 @@ static int lan78xx_open(struct net_devic
+@@ -2652,22 +2668,6 @@ static int lan78xx_open(struct net_devic
  
        netif_dbg(dev, ifup, dev->net, "phy initialised successfully");
  
index da43a76bf217d8c30913591c6736f4468a98e879..855a9a7e83289c560c5a897b957193a32789ff6b 100644 (file)
@@ -13,10 +13,9 @@ See: https://github.com/raspberrypi/linux/issues/2447
 ---
  drivers/net/usb/lan78xx.c | 12 +++++++++++-
  1 file changed, 11 insertions(+), 1 deletion(-)
-
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -438,6 +438,11 @@ static bool enable_tso;
+@@ -434,6 +434,11 @@ static bool enable_tso;
  module_param(enable_tso, bool, 0644);
  MODULE_PARM_DESC(enable_tso, "Enables TCP segmentation offload");
  
@@ -28,17 +27,17 @@ See: https://github.com/raspberrypi/linux/issues/2447
  static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
  {
        u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
-@@ -3819,7 +3824,12 @@ static int lan78xx_probe(struct usb_inte
-       dev->pipe_intr = usb_rcvintpipe(dev->udev,
-                                       dev->ep_intr->desc.bEndpointAddress &
-                                       USB_ENDPOINT_NUMBER_MASK);
--      period = dev->ep_intr->desc.bInterval;
+@@ -3768,7 +3773,12 @@ static int lan78xx_probe(struct usb_inte
+       netdev->max_mtu = MAX_SINGLE_PACKET_SIZE;
+       netif_set_gso_max_size(netdev, MAX_SINGLE_PACKET_SIZE - MAX_HEADER);
+-      period = ep_intr->desc.bInterval;
 +      if (int_urb_interval_ms <= 0)
-+              period = dev->ep_intr->desc.bInterval;
++              period = ep_intr->desc.bInterval;
 +      else
 +              period = int_urb_interval_ms * INT_URB_MICROFRAMES_PER_MS;
 +
 +      netif_notice(dev, probe, netdev, "int urb period %d\n", period);
        maxp = usb_maxpacket(dev->udev, dev->pipe_intr, 0);
        buf = kmalloc(maxp, GFP_KERNEL);
+       if (buf) {
index 2c3180fa234be9ec7e26c4e939e90644e9a65f29..2778f40a94da195ddbb1b7f335adc9d8cffb6df7 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -2184,7 +2184,7 @@ static int lan78xx_phy_init(struct lan78
+@@ -2180,7 +2180,7 @@ static int lan78xx_phy_init(struct lan78
        mii_adv_to_linkmode_adv_t(fc, mii_adv);
        linkmode_or(phydev->advertising, fc, phydev->advertising);
  
index 8327e4fc3136285153f2a2ca62f6b842e6be47a7..1c2daad7644dbdd467cce15bb9556367559c2865 100644 (file)
@@ -12,7 +12,7 @@ in both dwc_otg and in ipv6 processing.
 
 --- a/drivers/net/usb/lan78xx.c
 +++ b/drivers/net/usb/lan78xx.c
-@@ -3239,7 +3239,7 @@ static int rx_submit(struct lan78xx_net
+@@ -3169,7 +3169,7 @@ static int rx_submit(struct lan78xx_net
        size_t size = dev->rx_urb_size;
        int ret = 0;
  
index ee1e3940b3bb8faba2033adbe6e47189e4515efa..7a1c2991f5eadf72f42261680c2c541a4f9c85f6 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -244,6 +244,10 @@ static void xhci_pci_quirks(struct devic
+@@ -247,6 +247,10 @@ static void xhci_pci_quirks(struct devic
                        pdev->device == 0x3432)
                xhci->quirks |= XHCI_BROKEN_STREAMS;
  
@@ -19,5 +19,5 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 +              xhci->quirks |= XHCI_LPM_SUPPORT;
 +
        if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
-                       pdev->device == 0x1042)
+               pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
                xhci->quirks |= XHCI_BROKEN_STREAMS;
index 6dba6fbc5f12747c4c84db71166d301e9af19877..83c86f61683277ec43ddb44869b33cf128a6e5d3 100644 (file)
@@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -245,8 +245,10 @@ static void xhci_pci_quirks(struct devic
+@@ -248,8 +248,10 @@ static void xhci_pci_quirks(struct devic
                xhci->quirks |= XHCI_BROKEN_STREAMS;
  
        if (pdev->vendor == PCI_VENDOR_ID_VIA &&
@@ -34,7 +34,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
 +      }
  
        if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA &&
-                       pdev->device == 0x1042)
+               pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI)
 --- a/drivers/usb/host/xhci-ring.c
 +++ b/drivers/usb/host/xhci-ring.c
 @@ -527,7 +527,10 @@ void xhci_find_new_dequeue_state(struct
index 26a54c22c9a08dae88ec9d71243b417ebddea758..f265beb34e496e3208ef164edd2cdf859232a170 100644 (file)
@@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
  #define USB_VENDOR_ID_BELKIN          0x050d
  #define USB_DEVICE_ID_FLIP_KVM                0x3201
  
-@@ -1234,6 +1237,9 @@
+@@ -1237,6 +1240,9 @@
  #define USB_VENDOR_ID_XAT     0x2505
  #define USB_DEVICE_ID_XAT_CSR 0x0220
  
@@ -53,7 +53,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
        { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_MULTI_TOUCH), HID_QUIRK_MULTI_INPUT },
        { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE), HID_QUIRK_ALWAYS_POLL },
        { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE2), HID_QUIRK_ALWAYS_POLL },
-@@ -178,6 +179,7 @@ static const struct hid_device_id hid_qu
+@@ -179,6 +180,7 @@ static const struct hid_device_id hid_qu
        { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP_LTD2, USB_DEVICE_ID_SMARTJOY_DUAL_PLUS), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
        { HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
        { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT },
index e3806b4e728218dd9865d69e274931c82247ab2a..3b0a3323af14dcc033e81fa70090b538022937eb 100644 (file)
@@ -61,7 +61,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
  #include <linux/clockchips.h>
  #include <linux/clocksource.h>
  #include <linux/interrupt.h>
-@@ -899,6 +900,16 @@ static void arch_timer_of_configure_rate
+@@ -910,6 +911,16 @@ static void arch_timer_of_configure_rate
        if (of_property_read_u32(np, "clock-frequency", &arch_timer_rate))
                arch_timer_rate = rate;
  
index 1df2411035a06058610cb64debc1fa78b9939113..78fa1b39e35b4f63131a182b6692872f7242da37 100644 (file)
@@ -40,7 +40,7 @@ Link: https://lore.kernel.org/linux-mtd/20200512075733.745374-3-noltari@gmail.co
 
 --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
 +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-@@ -1003,33 +1003,30 @@ static int brcmnand_hamming_ooblayout_fr
+@@ -1004,33 +1004,30 @@ static int brcmnand_hamming_ooblayout_fr
        struct brcmnand_cfg *cfg = &host->hwcfg;
        int sas = cfg->spare_area_size << cfg->sector_size_1k;
        int sectors = cfg->page_size / (512 << cfg->sector_size_1k);
diff --git a/target/linux/bcm63xx/patches-5.4/022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch b/target/linux/bcm63xx/patches-5.4/022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch
deleted file mode 100644 (file)
index e8a9f14..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-From dcb351c03f2fa6a599de1061b174167e03ee312b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= <noltari@gmail.com>
-Date: Tue, 12 May 2020 10:24:51 +0200
-Subject: [PATCH] mtd: rawnand: brcmnand: correctly verify erased pages
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The current code checks that the whole OOB area is erased.
-This is a problem when JFFS2 cleanmarkers are added to the OOB, since it will
-fail due to the usable OOB bytes not being 0xff.
-Correct this by only checking that data and ECC bytes aren't 0xff.
-
-Fixes: 02b88eea9f9c ("mtd: brcmnand: Add check for erased page bitflips")
-Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Link: https://lore.kernel.org/linux-mtd/20200512082451.771212-1-noltari@gmail.com
----
- drivers/mtd/nand/raw/brcmnand/brcmnand.c | 19 +++++++++++--------
- 1 file changed, 11 insertions(+), 8 deletions(-)
-
---- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-@@ -1787,28 +1787,31 @@ static int brcmnand_read_by_pio(struct m
- static int brcmstb_nand_verify_erased_page(struct mtd_info *mtd,
-                 struct nand_chip *chip, void *buf, u64 addr)
- {
--      int i, sas;
--      void *oob = chip->oob_poi;
-+      struct mtd_oob_region ecc;
-+      int i;
-       int bitflips = 0;
-       int page = addr >> chip->page_shift;
-       int ret;
-+      void *ecc_bytes;
-       void *ecc_chunk;
-       if (!buf)
-               buf = nand_get_data_buf(chip);
--      sas = mtd->oobsize / chip->ecc.steps;
--
-       /* read without ecc for verification */
-       ret = chip->ecc.read_page_raw(chip, buf, true, page);
-       if (ret)
-               return ret;
--      for (i = 0; i < chip->ecc.steps; i++, oob += sas) {
-+      for (i = 0; i < chip->ecc.steps; i++) {
-               ecc_chunk = buf + chip->ecc.size * i;
--              ret = nand_check_erased_ecc_chunk(ecc_chunk,
--                                                chip->ecc.size,
--                                                oob, sas, NULL, 0,
-+
-+              mtd_ooblayout_ecc(mtd, i, &ecc);
-+              ecc_bytes = chip->oob_poi + ecc.offset;
-+
-+              ret = nand_check_erased_ecc_chunk(ecc_chunk, chip->ecc.size,
-+                                                ecc_bytes, ecc.length,
-+                                                NULL, 0,
-                                                 chip->ecc.strength);
-               if (ret < 0)
-                       return ret;
diff --git a/target/linux/bcm63xx/patches-5.4/024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch b/target/linux/bcm63xx/patches-5.4/024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch
deleted file mode 100644 (file)
index 0eeefe1..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 3d3fb3c5be9ce07fa85d8f67fb3922e4613b955b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= <noltari@gmail.com>
-Date: Fri, 22 May 2020 14:15:21 +0200
-Subject: [PATCH] mtd: rawnand: brcmnand: fix CS0 layout
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Only v3.3-v5.0 have a different CS0 layout.
-Controllers before v3.3 use the same layout for every CS.
-
-Fixes: 27c5b17cd1b1 ("mtd: nand: add NAND driver "library" for Broadcom STB NAND controller")
-Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-3-noltari@gmail.com
----
- drivers/mtd/nand/raw/brcmnand/brcmnand.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
---- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-@@ -537,8 +537,9 @@ static int brcmnand_revision_init(struct
-       } else {
-               ctrl->cs_offsets = brcmnand_cs_offsets;
--              /* v5.0 and earlier has a different CS0 offset layout */
--              if (ctrl->nand_version <= 0x0500)
-+              /* v3.3-5.0 have a different CS0 offset layout */
-+              if (ctrl->nand_version >= 0x0303 &&
-+                  ctrl->nand_version <= 0x0500)
-                       ctrl->cs0_offsets = brcmnand_cs_offsets_cs0;
-       }
index 793c8be24a71bf52040c90a63744331b68c19882..027d0253a33d58ab7f7b0416ab8bd21531c5f094 100644 (file)
@@ -69,8 +69,6 @@ Cc: linux-kernel@vger.kernel.org
  create mode 100644 arch/mips/net/bpf_jit.c
  create mode 100644 arch/mips/net/bpf_jit_asm.S
 
-diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index e5c2d47608fe..33674cdc3aa8 100644
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
 @@ -46,6 +46,7 @@ config MIPS
@@ -81,8 +79,6 @@ index e5c2d47608fe..33674cdc3aa8 100644
        select HAVE_EBPF_JIT if 64BIT && !CPU_MICROMIPS && TARGET_ISA_REV >= 2
        select HAVE_CONTEXT_TRACKING
        select HAVE_COPY_THREAD_TLS
-diff --git a/arch/mips/net/Makefile b/arch/mips/net/Makefile
-index 2d03af7d6b19..d55912349039 100644
 --- a/arch/mips/net/Makefile
 +++ b/arch/mips/net/Makefile
 @@ -1,4 +1,5 @@
@@ -91,9 +87,6 @@ index 2d03af7d6b19..d55912349039 100644
  
 +obj-$(CONFIG_MIPS_CBPF_JIT) += bpf_jit.o bpf_jit_asm.o
  obj-$(CONFIG_MIPS_EBPF_JIT) += ebpf_jit.o
-diff --git a/arch/mips/net/bpf_jit.c b/arch/mips/net/bpf_jit.c
-new file mode 100644
-index 000000000000..3a0e34f4e615
 --- /dev/null
 +++ b/arch/mips/net/bpf_jit.c
 @@ -0,0 +1,1270 @@
@@ -1367,9 +1360,6 @@ index 000000000000..3a0e34f4e615
 +
 +      bpf_prog_unlock_free(fp);
 +}
-diff --git a/arch/mips/net/bpf_jit_asm.S b/arch/mips/net/bpf_jit_asm.S
-new file mode 100644
-index 000000000000..57154c5883b6
 --- /dev/null
 +++ b/arch/mips/net/bpf_jit_asm.S
 @@ -0,0 +1,285 @@
@@ -1658,6 +1648,3 @@ index 000000000000..57154c5883b6
 +fault:
 +      jr      $r_ra
 +       addiu $r_ret, zero, 1
--- 
-2.17.1
-
index 20551d81dc0a29b9f181c2c0a08273fc730a09e8..25c87a32635d9ce37788f39edb6366b484d2c262 100644 (file)
@@ -42,11 +42,9 @@ Cc: richard.purdie@linuxfoundation.org
  arch/mips/vdso/Makefile | 1 +
  1 file changed, 1 insertion(+)
 
-diff --git a/arch/mips/vdso/Makefile b/arch/mips/vdso/Makefile
-index aa89a41dc5dd..848baeaef1f8 100644
 --- a/arch/mips/vdso/Makefile
 +++ b/arch/mips/vdso/Makefile
-@@ -33,6 +33,7 @@ endif
+@@ -29,6 +29,7 @@ endif
  cflags-vdso := $(ccflags-vdso) \
        $(filter -W%,$(filter-out -Wa$(comma)%,$(KBUILD_CFLAGS))) \
        -O3 -g -fPIC -fno-strict-aliasing -fno-common -fno-builtin -G 0 \
@@ -54,6 +52,3 @@ index aa89a41dc5dd..848baeaef1f8 100644
        -fno-stack-protector -fno-jump-tables -DDISABLE_BRANCH_PROFILING \
        $(call cc-option, -fno-asynchronous-unwind-tables) \
        $(call cc-option, -fno-stack-protector)
--- 
-2.17.1
-
index 12962135d05efcb3d331194955f72a817bfd9908..a4981acdee022ced94f6bbeb3f2f6163944eda4b 100644 (file)
@@ -67,7 +67,7 @@ Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
 +      bool rev = !skb->_nfct, upd = false;
 +      __be32 ip;
  
-       if (tc_skb_protocol(skb) != htons(ETH_P_IP))
+       if (skb_protocol(skb, true) != htons(ETH_P_IP))
 -              return;
 +              return false;
  
index 858c584c056bc1b65a8f63fd5f5022b1fcfe3dee..92fe2248731683739970f591eb0ad0c24840e58c 100644 (file)
@@ -59,7 +59,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
  #include <linux/rtnetlink.h>
  #include <linux/slab.h>
  
-@@ -445,45 +446,63 @@ static void sfp_upstream_clear(struct sf
+@@ -520,45 +521,63 @@ static void sfp_upstream_clear(struct sf
  }
  
  /**
index f3454851bfe93b40c2d250c8043159058ab4993c..9175f2557a38a95a25696f233c69d72450f09b29 100644 (file)
@@ -53,7 +53,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
  
 --- a/drivers/net/phy/sfp-bus.c
 +++ b/drivers/net/phy/sfp-bus.c
-@@ -329,10 +329,19 @@ static void sfp_bus_release(struct kref
+@@ -404,10 +404,19 @@ static void sfp_bus_release(struct kref
        kfree(bus);
  }
  
@@ -75,7 +75,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
  
  static int sfp_register_bus(struct sfp_bus *bus)
  {
-@@ -348,11 +357,11 @@ static int sfp_register_bus(struct sfp_b
+@@ -423,11 +432,11 @@ static int sfp_register_bus(struct sfp_b
                                return ret;
                }
        }
@@ -88,7 +88,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
        return 0;
  }
  
-@@ -446,13 +455,12 @@ static void sfp_upstream_clear(struct sf
+@@ -521,13 +530,12 @@ static void sfp_upstream_clear(struct sf
  }
  
  /**
@@ -106,7 +106,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
   *
   * Returns: on success, a pointer to the sfp_bus structure,
   *        %NULL if no SFP is specified,
-@@ -462,9 +470,7 @@ static void sfp_upstream_clear(struct sf
+@@ -537,9 +545,7 @@ static void sfp_upstream_clear(struct sf
   *            %-ENOMEM if we failed to allocate the bus.
   *            an error from the upstream's connect_phy() method.
   */
@@ -117,7 +117,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
  {
        struct fwnode_reference_args ref;
        struct sfp_bus *bus;
-@@ -482,7 +488,39 @@ struct sfp_bus *sfp_register_upstream_no
+@@ -557,7 +563,39 @@ struct sfp_bus *sfp_register_upstream_no
        if (!bus)
                return ERR_PTR(-ENOMEM);
  
@@ -157,7 +157,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
        bus->upstream_ops = ops;
        bus->upstream = upstream;
  
-@@ -495,33 +533,33 @@ struct sfp_bus *sfp_register_upstream_no
+@@ -570,33 +608,33 @@ struct sfp_bus *sfp_register_upstream_no
        }
        rtnl_unlock();
  
index 13dc5216f96770b028bd8c5bdc3bb491c569e8a1..c7bfd8a30490485ead1fa073cc832b275cc9f40e 100644 (file)
@@ -16,7 +16,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
 
 --- a/drivers/net/phy/sfp-bus.c
 +++ b/drivers/net/phy/sfp-bus.c
-@@ -331,7 +331,7 @@ static void sfp_bus_release(struct kref
+@@ -406,7 +406,7 @@ static void sfp_bus_release(struct kref
  
  /**
   * sfp_bus_put() - put a reference on the &struct sfp_bus
diff --git a/target/linux/generic/backport-5.4/742-v5.5-net-sfp-add-support-for-module-quirks.patch b/target/linux/generic/backport-5.4/742-v5.5-net-sfp-add-support-for-module-quirks.patch
deleted file mode 100644 (file)
index 46c56a6..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-From 8df5dd55cef48c0769379e04dbc085a899b106d4 Mon Sep 17 00:00:00 2001
-From: Russell King <rmk+kernel@armlinux.org.uk>
-Date: Fri, 8 Mar 2019 14:02:25 +0000
-Subject: [PATCH 640/660] net: sfp: add support for module quirks
-
-Add support for applying module quirks to the list of supported
-ethtool link modes.
-
-Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
----
- drivers/net/phy/sfp-bus.c | 54 +++++++++++++++++++++++++++++++++++++++
- 1 file changed, 54 insertions(+)
-
---- a/drivers/net/phy/sfp-bus.c
-+++ b/drivers/net/phy/sfp-bus.c
-@@ -10,6 +10,12 @@
- #include "sfp.h"
-+struct sfp_quirk {
-+      const char *vendor;
-+      const char *part;
-+      void (*modes)(const struct sfp_eeprom_id *id, unsigned long *modes);
-+};
-+
- /**
-  * struct sfp_bus - internal representation of a sfp bus
-  */
-@@ -22,6 +28,7 @@ struct sfp_bus {
-       const struct sfp_socket_ops *socket_ops;
-       struct device *sfp_dev;
-       struct sfp *sfp;
-+      const struct sfp_quirk *sfp_quirk;
-       const struct sfp_upstream_ops *upstream_ops;
-       void *upstream;
-@@ -31,6 +38,46 @@ struct sfp_bus {
-       bool started;
- };
-+static const struct sfp_quirk sfp_quirks[] = {
-+};
-+
-+static size_t sfp_strlen(const char *str, size_t maxlen)
-+{
-+      size_t size, i;
-+
-+      /* Trailing characters should be filled with space chars */
-+      for (i = 0, size = 0; i < maxlen; i++)
-+              if (str[i] != ' ')
-+                      size = i + 1;
-+
-+      return size;
-+}
-+
-+static bool sfp_match(const char *qs, const char *str, size_t len)
-+{
-+      if (!qs)
-+              return true;
-+      if (strlen(qs) != len)
-+              return false;
-+      return !strncmp(qs, str, len);
-+}
-+
-+static const struct sfp_quirk *sfp_lookup_quirk(const struct sfp_eeprom_id *id)
-+{
-+      const struct sfp_quirk *q;
-+      unsigned int i;
-+      size_t vs, ps;
-+
-+      vs = sfp_strlen(id->base.vendor_name, ARRAY_SIZE(id->base.vendor_name));
-+      ps = sfp_strlen(id->base.vendor_pn, ARRAY_SIZE(id->base.vendor_pn));
-+
-+      for (i = 0, q = sfp_quirks; i < ARRAY_SIZE(sfp_quirks); i++, q++)
-+              if (sfp_match(q->vendor, id->base.vendor_name, vs) &&
-+                  sfp_match(q->part, id->base.vendor_pn, ps))
-+                      return q;
-+
-+      return NULL;
-+}
- /**
-  * sfp_parse_port() - Parse the EEPROM base ID, setting the port type
-  * @bus: a pointer to the &struct sfp_bus structure for the sfp module
-@@ -234,6 +281,9 @@ void sfp_parse_support(struct sfp_bus *b
-                       phylink_set(modes, 1000baseX_Full);
-       }
-+      if (bus->sfp_quirk)
-+              bus->sfp_quirk->modes(id, modes);
-+
-       bitmap_or(support, support, modes, __ETHTOOL_LINK_MODE_MASK_NBITS);
-       phylink_set(support, Autoneg);
-@@ -610,6 +660,8 @@ int sfp_module_insert(struct sfp_bus *bu
-       const struct sfp_upstream_ops *ops = sfp_get_upstream_ops(bus);
-       int ret = 0;
-+      bus->sfp_quirk = sfp_lookup_quirk(id);
-+
-       if (ops && ops->module_insert)
-               ret = ops->module_insert(bus->upstream, id);
-@@ -623,6 +675,8 @@ void sfp_module_remove(struct sfp_bus *b
-       if (ops && ops->module_remove)
-               ops->module_remove(bus->upstream);
-+
-+      bus->sfp_quirk = NULL;
- }
- EXPORT_SYMBOL_GPL(sfp_module_remove);
diff --git a/target/linux/generic/backport-5.4/743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch b/target/linux/generic/backport-5.4/743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch
deleted file mode 100644 (file)
index 0b085ff..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From ecaa542cfed078dbc356dadff0bad4b6a8e704a0 Mon Sep 17 00:00:00 2001
-From: Russell King <rmk+kernel@armlinux.org.uk>
-Date: Fri, 17 May 2019 10:14:45 +0100
-Subject: [PATCH 641/660] net: sfp: add some quirks for GPON modules
-
-Marc Micalizzi reports that Huawei MA5671A and Alcatel/Lucent G-010S-P
-modules are capable of 2500base-X, but incorrectly report their
-capabilities in the EEPROM.  It seems rather common that GPON modules
-mis-report.
-
-Let's fix these modules by adding some quirks.
-
-Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
----
- drivers/net/phy/sfp-bus.c | 25 +++++++++++++++++++++++++
- 1 file changed, 25 insertions(+)
-
---- a/drivers/net/phy/sfp-bus.c
-+++ b/drivers/net/phy/sfp-bus.c
-@@ -38,7 +38,32 @@ struct sfp_bus {
-       bool started;
- };
-+static void sfp_quirk_2500basex(const struct sfp_eeprom_id *id,
-+                              unsigned long *modes)
-+{
-+      phylink_set(modes, 2500baseX_Full);
-+}
-+
- static const struct sfp_quirk sfp_quirks[] = {
-+      {
-+              // Alcatel Lucent G-010S-P can operate at 2500base-X, but
-+              // incorrectly report 2500MBd NRZ in their EEPROM
-+              .vendor = "ALCATELLUCENT",
-+              .part = "G010SP",
-+              .modes = sfp_quirk_2500basex,
-+      }, {
-+              // Alcatel Lucent G-010S-A can operate at 2500base-X, but
-+              // report 3.2GBd NRZ in their EEPROM
-+              .vendor = "ALCATELLUCENT",
-+              .part = "3FE46541AA",
-+              .modes = sfp_quirk_2500basex,
-+      }, {
-+              // Huawei MA5671A can operate at 2500base-X, but report 1.2GBd
-+              // NRZ in their EEPROM
-+              .vendor = "HUAWEI",
-+              .part = "MA5671A",
-+              .modes = sfp_quirk_2500basex,
-+      },
- };
- static size_t sfp_strlen(const char *str, size_t maxlen)
index 00802bb401df2c755e58f65f5b50b4797f4e2f72..f3d6c554370326c46f82d2c45a5654976da40cee 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  /* Align . to a 8 byte boundary equals to maximum function alignment. */
  #define ALIGN_FUNCTION()  . = ALIGN(8)
  
-@@ -405,14 +415,14 @@
+@@ -406,14 +416,14 @@
        /* Kernel symbol table: Normal symbols */                       \
        __ksymtab         : AT(ADDR(__ksymtab) - LOAD_OFFSET) {         \
                __start___ksymtab = .;                                  \
@@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                __stop___ksymtab_gpl = .;                               \
        }                                                               \
                                                                        \
-@@ -474,7 +484,7 @@
+@@ -475,7 +485,7 @@
                                                                        \
        /* Kernel symbol table: strings */                              \
          __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) {       \
@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        }                                                               \
                                                                        \
        /* __*init sections */                                          \
-@@ -881,6 +891,8 @@
+@@ -884,6 +894,8 @@
        EXIT_TEXT                                                       \
        EXIT_DATA                                                       \
        EXIT_CALL                                                       \
index a6daf1bdbf355977c27d4c33b7fab506d8ce398b..4af9e5a257683c970e3f03c684d76870c91c7c05 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
 
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
-@@ -1156,6 +1156,10 @@ config SYNC_R4K
+@@ -1157,6 +1157,10 @@ config SYNC_R4K
  config MIPS_MACHINE
        def_bool n
  
diff --git a/target/linux/generic/hack-5.4/641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch b/target/linux/generic/hack-5.4/641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch
deleted file mode 100644 (file)
index e651743..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-From a00590d570212c3c633bd463cef8ec7377cc7993 Mon Sep 17 00:00:00 2001
-From: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
-Date: Tue, 30 Jun 2020 12:07:44 +0100
-Subject: [PATCH] sch_cake: fix IP protocol handling in the presence of VLAN
- tags
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: Ilya Ponetayev <i.ponetaev@ndmsystems.com>
-
-CAKE was using the return value of tc_skb_protocol() and expecting it to be
-the IP protocol type. This can fail in the presence of QinQ VLAN tags,
-making CAKE unable to handle ECN marking and diffserv parsing in this case.
-Fix this by implementing our own version of tc_skb_protocol(), which will
-use skb->protocol directly, but also parse and skip over any VLAN tags and
-return the inner protocol number instead.
-
-Also fix CE marking by implementing a version of INET_ECN_set_ce() that
-uses the same parsing routine.
-
-Fixes: ea82511518f4 ("sch_cake: Add NAT awareness to packet classifier")
-Fixes: b2100cc56fca ("sch_cake: Use tc_skb_protocol() helper for getting packet protocol")
-Fixes: 046f6fd5daef ("sched: Add Common Applications Kept Enhanced (cake) qdisc")
-Signed-off-by: Ilya Ponetayev <i.ponetaev@ndmsystems.com>
-[ squash original two patches, rewrite commit message ]
-Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
-Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
----
- net/sched/sch_cake.c | 52 +++++++++++++++++++++++++++++++++++++++++---
- 1 file changed, 49 insertions(+), 3 deletions(-)
-
---- a/net/sched/sch_cake.c
-+++ b/net/sched/sch_cake.c
-@@ -497,6 +497,52 @@ static bool cobalt_queue_empty(struct co
-       return down;
- }
-+static __be16 cake_skb_proto(const struct sk_buff *skb)
-+{
-+      unsigned int offset = skb_mac_offset(skb) + sizeof(struct ethhdr);
-+      __be16 proto = skb->protocol;
-+      struct vlan_hdr vhdr, *vh;
-+
-+      while (proto == htons(ETH_P_8021Q) || proto == htons(ETH_P_8021AD)) {
-+              vh = skb_header_pointer(skb, offset, sizeof(vhdr), &vhdr);
-+              if (!vh)
-+                      break;
-+
-+              proto = vh->h_vlan_encapsulated_proto;
-+              offset += sizeof(vhdr);
-+      }
-+
-+      return proto;
-+}
-+
-+static int cake_set_ce(struct sk_buff *skb)
-+{
-+      int wlen = skb_network_offset(skb);
-+
-+      switch (cake_skb_proto(skb)) {
-+      case htons(ETH_P_IP):
-+              wlen += sizeof(struct iphdr);
-+              if (!pskb_may_pull(skb, wlen) ||
-+                  skb_try_make_writable(skb, wlen))
-+                      return 0;
-+
-+              return IP_ECN_set_ce(ip_hdr(skb));
-+
-+      case htons(ETH_P_IPV6):
-+              wlen += sizeof(struct ipv6hdr);
-+              if (!pskb_may_pull(skb, wlen) ||
-+                  skb_try_make_writable(skb, wlen))
-+                      return 0;
-+
-+              return IP6_ECN_set_ce(skb, ipv6_hdr(skb));
-+
-+      default:
-+              return 0;
-+      }
-+
-+      return 0;
-+}
-+
- /* Call this with a freshly dequeued packet for possible congestion marking.
-  * Returns true as an instruction to drop the packet, false for delivery.
-  */
-@@ -549,7 +595,7 @@ static bool cobalt_should_drop(struct co
-       if (next_due && vars->dropping) {
-               /* Use ECN mark if possible, otherwise drop */
--              drop = !(vars->ecn_marked = INET_ECN_set_ce(skb));
-+              drop = !(vars->ecn_marked = cake_set_ce(skb));
-               vars->count++;
-               if (!vars->count)
-@@ -592,7 +638,7 @@ static bool cake_update_flowkeys(struct
-       bool rev = !skb->_nfct, upd = false;
-       __be32 ip;
--      if (tc_skb_protocol(skb) != htons(ETH_P_IP))
-+      if (cake_skb_proto(skb) != htons(ETH_P_IP))
-               return false;
-       if (!nf_ct_get_tuple_skb(&tuple, skb))
-@@ -1557,7 +1603,7 @@ static u8 cake_handle_diffserv(struct sk
-       u16 *buf, buf_;
-       u8 dscp;
--      switch (tc_skb_protocol(skb)) {
-+      switch (cake_skb_proto(skb)) {
-       case htons(ETH_P_IP):
-               buf = skb_header_pointer(skb, offset, sizeof(buf_), &buf_);
-               if (unlikely(!buf))
index 9c7c3c2c24da54354a39fb47d813993054ee1682..1b103d5e0088056e5ef50a83af56446e5436930e 100644 (file)
@@ -45,7 +45,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        selftest.o \
 --- a/drivers/dma-buf/dma-buf.c
 +++ b/drivers/dma-buf/dma-buf.c
-@@ -1295,4 +1295,5 @@ static void __exit dma_buf_deinit(void)
+@@ -1298,4 +1298,5 @@ static void __exit dma_buf_deinit(void)
        dma_buf_uninit_debugfs();
        kern_unmount(dma_buf_mnt);
  }
index f6fdabe60816a9b7529a67a0f5367608da680fc5..50029a4551d45be840e38c656fade664cfb81075 100644 (file)
@@ -9,7 +9,7 @@ Acked-by: Rob Landley <rob@landley.net>
 ---
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
-@@ -1066,9 +1066,6 @@ config FW_ARC
+@@ -1067,9 +1067,6 @@ config FW_ARC
  config ARCH_MAY_HAVE_PC_FDC
        bool
  
@@ -19,7 +19,7 @@ Acked-by: Rob Landley <rob@landley.net>
  config CEVT_BCM1480
        bool
  
-@@ -3040,6 +3037,18 @@ choice
+@@ -3041,6 +3038,18 @@ choice
                bool "Extend builtin kernel arguments with bootloader arguments"
  endchoice
  
index 766abc7489af292a124645e83152a6a7969c347c..232aee9634ae1ad466110c4530135edaaddc2a92 100644 (file)
@@ -138,7 +138,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  static const struct rt6_info ip6_blk_hole_entry_template = {
        .dst = {
                .__refcnt       = ATOMIC_INIT(1),
-@@ -1044,6 +1058,7 @@ static const int fib6_prop[RTN_MAX + 1]
+@@ -1047,6 +1061,7 @@ static const int fib6_prop[RTN_MAX + 1]
        [RTN_BLACKHOLE] = -EINVAL,
        [RTN_UNREACHABLE] = -EHOSTUNREACH,
        [RTN_PROHIBIT]  = -EACCES,
@@ -146,7 +146,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        [RTN_THROW]     = -EAGAIN,
        [RTN_NAT]       = -EINVAL,
        [RTN_XRESOLVE]  = -EINVAL,
-@@ -1081,6 +1096,10 @@ static void ip6_rt_init_dst_reject(struc
+@@ -1084,6 +1099,10 @@ static void ip6_rt_init_dst_reject(struc
                rt->dst.output = ip6_pkt_prohibit_out;
                rt->dst.input = ip6_pkt_prohibit;
                break;
@@ -157,7 +157,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        case RTN_THROW:
        case RTN_UNREACHABLE:
        default:
-@@ -4416,6 +4435,17 @@ static int ip6_pkt_prohibit_out(struct n
+@@ -4419,6 +4438,17 @@ static int ip6_pkt_prohibit_out(struct n
        return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
  }
  
@@ -175,7 +175,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  /*
   *    Allocate a dst for local (unicast / anycast) address.
   */
-@@ -4896,7 +4926,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -4899,7 +4929,8 @@ static int rtm_to_fib6_config(struct sk_
        if (rtm->rtm_type == RTN_UNREACHABLE ||
            rtm->rtm_type == RTN_BLACKHOLE ||
            rtm->rtm_type == RTN_PROHIBIT ||
@@ -185,7 +185,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                cfg->fc_flags |= RTF_REJECT;
  
        if (rtm->rtm_type == RTN_LOCAL)
-@@ -6016,6 +6047,8 @@ static int ip6_route_dev_notify(struct n
+@@ -6019,6 +6050,8 @@ static int ip6_route_dev_notify(struct n
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
                net->ipv6.ip6_prohibit_entry->dst.dev = dev;
                net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
@@ -194,7 +194,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
                net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
  #endif
-@@ -6027,6 +6060,7 @@ static int ip6_route_dev_notify(struct n
+@@ -6030,6 +6063,7 @@ static int ip6_route_dev_notify(struct n
                in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev);
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
                in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev);
@@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev);
  #endif
        }
-@@ -6219,6 +6253,8 @@ static int __net_init ip6_route_net_init
+@@ -6222,6 +6256,8 @@ static int __net_init ip6_route_net_init
  
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
        net->ipv6.fib6_has_custom_rules = false;
@@ -211,7 +211,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        net->ipv6.ip6_prohibit_entry = kmemdup(&ip6_prohibit_entry_template,
                                               sizeof(*net->ipv6.ip6_prohibit_entry),
                                               GFP_KERNEL);
-@@ -6229,11 +6265,21 @@ static int __net_init ip6_route_net_init
+@@ -6232,11 +6268,21 @@ static int __net_init ip6_route_net_init
                         ip6_template_metrics, true);
        INIT_LIST_HEAD(&net->ipv6.ip6_prohibit_entry->rt6i_uncached);
  
@@ -234,7 +234,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
        dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
                         ip6_template_metrics, true);
-@@ -6257,6 +6303,8 @@ out:
+@@ -6260,6 +6306,8 @@ out:
        return ret;
  
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
@@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  out_ip6_prohibit_entry:
        kfree(net->ipv6.ip6_prohibit_entry);
  out_ip6_null_entry:
-@@ -6276,6 +6324,7 @@ static void __net_exit ip6_route_net_exi
+@@ -6279,6 +6327,7 @@ static void __net_exit ip6_route_net_exi
        kfree(net->ipv6.ip6_null_entry);
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
        kfree(net->ipv6.ip6_prohibit_entry);
@@ -251,7 +251,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
        kfree(net->ipv6.ip6_blk_hole_entry);
  #endif
        dst_entries_destroy(&net->ipv6.ip6_dst_ops);
-@@ -6353,6 +6402,9 @@ void __init ip6_route_init_special_entri
+@@ -6356,6 +6405,9 @@ void __init ip6_route_init_special_entri
        init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
        init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
        init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
index ac659c2f9f7a198227d6e7391c92da5fed376100..3f89103fa2ad0e384442bbfa7abe36adfd05d7fd 100644 (file)
@@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  /*
   * The Mellanox Tavor device gives false positive parity errors.  Mark this
   * device with a broken_parity_status to allow PCI scanning code to "skip"
-@@ -3307,6 +3308,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
+@@ -3320,6 +3321,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
  
@@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  /*
   * Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
   * To work around this, query the size it should be configured to by the
-@@ -3332,6 +3335,8 @@ static void quirk_intel_ntb(struct pci_d
+@@ -3345,6 +3348,8 @@ static void quirk_intel_ntb(struct pci_d
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
  
@@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
  /*
   * Some BIOS implementations leave the Intel GPU interrupts enabled, even
   * though no one is handling them (e.g., if the i915 driver is never
-@@ -3370,6 +3375,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+@@ -3383,6 +3388,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);
  
index f4540558249c0284ec287244dba740f9efb9fc03..fa0f136cb2766d2382536dab82fc1743d63ec192 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
-@@ -2375,6 +2375,12 @@ config MIPS_VPE_LOADER
+@@ -2376,6 +2376,12 @@ config MIPS_VPE_LOADER
          Includes a loader for loading an elf relocatable object
          onto another VPE and running it.
  
index 54fc619dd6f37858f250b5e70b32bc61d60d52b3..dcdd279204a3ccdc48fc654d4142ab7b83549fa6 100644 (file)
@@ -156,15 +156,15 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
        err = enetc_configure_serdes(priv);
        if (err)
                dev_warn(&pdev->dev, "Attempted serdes config but failed\n");
-@@ -937,7 +942,6 @@ static int enetc_pf_probe(struct pci_dev
-       return 0;
+@@ -938,7 +943,6 @@ static int enetc_pf_probe(struct pci_dev
  
  err_reg_netdev:
+       enetc_mdio_remove(pf);
 -      enetc_of_put_phy(priv);
        enetc_free_msix(priv);
  err_alloc_msix:
        enetc_free_si_resources(priv);
-@@ -945,6 +949,7 @@ err_alloc_si_res:
+@@ -946,6 +950,7 @@ err_alloc_si_res:
        si->ndev = NULL;
        free_netdev(ndev);
  err_alloc_netdev:
@@ -172,7 +172,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
  err_map_pf_space:
        enetc_pci_remove(pdev);
  
-@@ -967,7 +972,7 @@ static void enetc_pf_remove(struct pci_d
+@@ -968,7 +973,7 @@ static void enetc_pf_remove(struct pci_d
        unregister_netdev(si->ndev);
  
        enetc_mdio_remove(pf);
index b754389f6a5e1f21e0de265dced6116dfc147834..5f24a6069098d777061c9716470a160750915bcd 100644 (file)
@@ -397,7 +397,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
  #define enetc_mdio_rd(mdio_priv, off) \
 --- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
 +++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
-@@ -986,6 +986,9 @@ static void enetc_pf_remove(struct pci_d
+@@ -987,6 +987,9 @@ static void enetc_pf_remove(struct pci_d
        enetc_pci_remove(pdev);
  }
  
index d5a18f6c2ae4479469e0c63c2b534654fbf02702..ca79c4384800c1d5c774117214107f81828c1d86 100644 (file)
@@ -371,7 +371,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
  #define enetc_rd(hw, off)             enetc_rd_reg((hw)->reg + (off))
 --- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
 +++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
-@@ -986,8 +986,9 @@ static void enetc_pf_remove(struct pci_d
+@@ -987,8 +987,9 @@ static void enetc_pf_remove(struct pci_d
        enetc_pci_remove(pdev);
  }
  
index e3d36978d42a38eb29e349521d36f861b4b46b33..87ca136a2138cafb64e871aa589649a703edb018 100644 (file)
@@ -48,7 +48,7 @@ Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
 
 --- a/drivers/net/ethernet/freescale/enetc/enetc_pf.c
 +++ b/drivers/net/ethernet/freescale/enetc/enetc_pf.c
-@@ -952,6 +952,7 @@ err_alloc_si_res:
+@@ -953,6 +953,7 @@ err_alloc_si_res:
        si->ndev = NULL;
        free_netdev(ndev);
  err_alloc_netdev:
index 6200bd88ae3de6331363663dddc26025d98e07c2..e54631f71f882c91a1b70aba9db18dabb4d249ce 100644 (file)
@@ -848,7 +848,7 @@ Signed-off-by: Po Liu <Po.Liu@nxp.com>
        return 0;
  
  err_reg_netdev:
-@@ -973,6 +982,8 @@ static void enetc_pf_remove(struct pci_d
+@@ -974,6 +983,8 @@ static void enetc_pf_remove(struct pci_d
        netif_info(priv, drv, si->ndev, "%s v%s remove\n",
                   enetc_drv_name, enetc_drv_ver);
  
index 4278711b8070c1a18708582ecfeda6698e2fb447..f8bbaaffa1e94c356bb1c8da47d20ff438c397d0 100644 (file)
@@ -60,9 +60,9 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
  struct dma_async_tx_descriptor *fsl_edma_prep_dma_cyclic(
 --- a/drivers/dma/fsl-edma.c
 +++ b/drivers/dma/fsl-edma.c
-@@ -46,6 +46,7 @@ static irqreturn_t fsl_edma_tx_handler(i
+@@ -53,6 +53,7 @@ static irqreturn_t fsl_edma_tx_handler(i
+                       }
  
-                       spin_lock(&fsl_chan->vchan.lock);
                        if (!fsl_chan->edesc->iscyclic) {
 +                              fsl_edma_get_realcnt(fsl_chan);
                                list_del(&fsl_chan->edesc->vdesc.node);
index 611f96b1a8df5ba14c6a604a6f70976d24dd9479..4707eccdabfd364d200cf378eb817caef905b376 100644 (file)
@@ -70,7 +70,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
  };
 --- a/drivers/dma/fsl-edma.c
 +++ b/drivers/dma/fsl-edma.c
-@@ -234,6 +234,13 @@ static struct fsl_edma_drvdata vf610_dat
+@@ -241,6 +241,13 @@ static struct fsl_edma_drvdata vf610_dat
        .setup_irq = fsl_edma_irq_init,
  };
  
@@ -84,7 +84,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
  static struct fsl_edma_drvdata imx7ulp_data = {
        .version = v3,
        .dmamuxs = 1,
-@@ -243,6 +250,7 @@ static struct fsl_edma_drvdata imx7ulp_d
+@@ -250,6 +257,7 @@ static struct fsl_edma_drvdata imx7ulp_d
  
  static const struct of_device_id fsl_edma_dt_ids[] = {
        { .compatible = "fsl,vf610-edma", .data = &vf610_data},
index d4fcf5c4b8849c5d507e770e24f7f4e593d5edea..96708ec09e37b13a642704b6e369ad1649175060 100644 (file)
@@ -64,7 +64,7 @@ Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com>
  
                if (writable)
                        pte = kvm_s2pte_mkwrite(pte);
-@@ -2346,7 +2348,7 @@ int kvm_arch_prepare_memory_region(struc
+@@ -2347,7 +2349,7 @@ int kvm_arch_prepare_memory_region(struc
  
                        ret = kvm_phys_addr_ioremap(kvm, gpa, pa,
                                                    vm_end - vm_start,
index 8593714b3d1d05497c05b8cb29d3fce5e60989c9..3c8203ea45d2720b358a456e09791cd76cf68e32 100644 (file)
@@ -105,7 +105,7 @@ Signed-off-by: Diana Craciun <diana.craciun@nxp.com>
        if (kvm_is_device_pfn(pfn)) {
                mem_type = PAGE_S2_DEVICE;
                flags |= KVM_S2PTE_FLAG_IS_IOMAP;
-@@ -2336,6 +2380,9 @@ int kvm_arch_prepare_memory_region(struc
+@@ -2337,6 +2381,9 @@ int kvm_arch_prepare_memory_region(struc
                        gpa_t gpa = mem->guest_phys_addr +
                                    (vm_start - mem->userspace_addr);
                        phys_addr_t pa;
@@ -115,7 +115,7 @@ Signed-off-by: Diana Craciun <diana.craciun@nxp.com>
  
                        pa = (phys_addr_t)vma->vm_pgoff << PAGE_SHIFT;
                        pa += vm_start - vma->vm_start;
-@@ -2346,9 +2393,13 @@ int kvm_arch_prepare_memory_region(struc
+@@ -2347,9 +2394,13 @@ int kvm_arch_prepare_memory_region(struc
                                goto out;
                        }
  
index eaedf8a9ece29fef004debbbc65c768e278759ee..5a00cf765f2c8bd2bc2f2b639783ab1843604486 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
 
 --- a/drivers/pci/quirks.c
 +++ b/drivers/pci/quirks.c
-@@ -2510,6 +2510,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
+@@ -2523,6 +2523,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT3364, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8380_0, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
index 79e7ef9db592051292f0bd00e4c0b7293303bbd8..835b5cedb9a300e112a2d4b5302b9cf6b5061f9e 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
 
 --- a/drivers/pci/quirks.c
 +++ b/drivers/pci/quirks.c
-@@ -2516,6 +2516,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
+@@ -2529,6 +2529,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ec, quirk_disable_all_msi);
  DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);
index b1fda5eeec2510b34eb12222bd72838575bace14..dd75edf1166eb99c37de1c544f6083efeec855ea 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1306,7 +1306,7 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1315,7 +1315,7 @@ static int mtk_poll_rx(struct napi_struc
                skb->protocol = eth_type_trans(skb, netdev);
  
                if (netdev->features & NETIF_F_HW_VLAN_CTAG_RX &&
index 271a70df62ef8c90a4cd9aee5cb5664f4d50ecfb..407211830228c7654339a5b4cf62a884c4a301d6 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1112,17 +1112,6 @@ static void mtk_wake_queue(struct mtk_et
+@@ -1121,17 +1121,6 @@ static void mtk_wake_queue(struct mtk_et
        }
  }
  
@@ -18,7 +18,7 @@
  static int mtk_start_xmit(struct sk_buff *skb, struct net_device *dev)
  {
        struct mtk_mac *mac = netdev_priv(dev);
-@@ -1143,7 +1132,7 @@ static int mtk_start_xmit(struct sk_buff
+@@ -1152,7 +1141,7 @@ static int mtk_start_xmit(struct sk_buff
  
        tx_num = mtk_cal_txd_req(skb);
        if (unlikely(atomic_read(&ring->free_count) <= tx_num)) {
@@ -27,7 +27,7 @@
                netif_err(eth, tx_queued, dev,
                          "Tx Ring full when queue awake!\n");
                spin_unlock(&eth->page_lock);
-@@ -1169,7 +1158,7 @@ static int mtk_start_xmit(struct sk_buff
+@@ -1178,7 +1167,7 @@ static int mtk_start_xmit(struct sk_buff
                goto drop;
  
        if (unlikely(atomic_read(&ring->free_count) <= ring->thresh))
diff --git a/target/linux/mediatek/patches-5.4/0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch b/target/linux/mediatek/patches-5.4/0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch
deleted file mode 100644 (file)
index 0dc50f2..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-In-Reply-To: <trinity-fb0cdf15-dfcf-4d60-9144-87d8fbfad5ba-1586179542451@3c-app-gmx-bap62>
-References: <trinity-fb0cdf15-dfcf-4d60-9144-87d8fbfad5ba-1586179542451@3c-app-gmx-bap62>
-Subject: [PATCH] net: ethernet: mtk_eth_soc: Always call mtk_gmac0_rgmii_adjust() for mt7623
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: René van Dorst <opensource@vdorst.com>
-
-Modify mtk_gmac0_rgmii_adjust() so it can always be called.
-mtk_gmac0_rgmii_adjust() sets-up the TRGMII clocks.
-
-Signed-off-by: René van Dorst <opensource@vdorst.com>
-Signed-off-By: David Woodhouse <dwmw2@infradead.org>
----
- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 19 ++++++++++++++-----
- 1 file changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-index b5408c5b954a..f89f225ab144 100644
---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -171,11 +171,21 @@ static int mt7621_gmac0_rgmii_adjust(struct mtk_eth *eth,
-       return 0;
- }
--static void mtk_gmac0_rgmii_adjust(struct mtk_eth *eth, int speed)
-+static void mtk_gmac0_rgmii_adjust(struct mtk_eth *eth,
-+                                 phy_interface_t interface, int speed)
- {
-       u32 val;
-       int ret;
-+      if (interface == PHY_INTERFACE_MODE_TRGMII) {
-+              mtk_w32(eth, TRGMII_MODE, INTF_MODE);
-+              val = 500000000;
-+              ret = clk_set_rate(eth->clks[MTK_CLK_TRGPLL], val);
-+              if (ret)
-+                      dev_err(eth->dev, "Failed to set trgmii pll: %d\n", ret);
-+              return;
-+      }
-+
-       val = (speed == SPEED_1000) ?
-               INTF_MODE_RGMII_1000 : INTF_MODE_RGMII_10_100;
-       mtk_w32(eth, val, INTF_MODE);
-@@ -262,10 +272,9 @@ static void mtk_mac_config(struct phylink_config *config, unsigned int mode,
-                                                             state->interface))
-                                       goto err_phy;
-                       } else {
--                              if (state->interface !=
--                                  PHY_INTERFACE_MODE_TRGMII)
--                                      mtk_gmac0_rgmii_adjust(mac->hw,
--                                                             state->speed);
-+                              mtk_gmac0_rgmii_adjust(mac->hw,
-+                                                     state->interface,
-+                                                     state->speed);
-                               /* mt7623_pad_clk_setup */
-                               for (i = 0 ; i < NUM_TRGMII_CTRL; i++)
--- 
-2.26.2
-
index e32042301fb509478954baffad77936270e42276..02e4c130ea46b8314b2536ca21124282a06db65a 100644 (file)
@@ -382,8 +382,7 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
                        };
                };
 +      };
--              pcie1: pcie@1,0 {
++
 +      pcie1: pcie@1a145000 {
 +              compatible = "mediatek,mt7622-pcie";
 +              device_type = "pci";
@@ -408,7 +407,8 @@ Signed-off-by: chuanjia.liu <Chuanjia.Liu@mediatek.com>
 +              bus-range = <0x00 0xff>;
 +              ranges = <0x82000000 0 0x28000000  0 0x28000000  0 0x8000000>;
 +              status = "disabled";
-+
+-              pcie1: pcie@1,0 {
 +              slot1: pcie@1,0 {
                        reg = <0x0800 0 0 0 0>;
                        #address-cells = <3>;
index f0af321fd8bb2f68f1e2c518a2e94331b1acb9a0..26e4a0a54deac61f92af84bf6c2154b1aff3b4c1 100644 (file)
  
  #include "mtk_eth_soc.h"
  
-@@ -1298,8 +1300,16 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1307,8 +1309,16 @@ static int mtk_poll_rx(struct napi_struc
                    (trxd.rxd2 & RX_DMA_VTAG))
                        __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
                                               RX_DMA_VID(trxd.rxd3));
  
                ring->data[idx] = new_data;
                rxd->rxd1 = (unsigned int)dma_addr;
-@@ -2216,6 +2226,9 @@ static int mtk_open(struct net_device *d
+@@ -2225,6 +2235,9 @@ static int mtk_open(struct net_device *d
                mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
                mtk_rx_irq_enable(eth, MTK_RX_DONE_INT);
                refcount_set(&eth->dma_refcnt, 1);
        }
        else
                refcount_inc(&eth->dma_refcnt);
-@@ -2274,6 +2287,9 @@ static int mtk_stop(struct net_device *d
+@@ -2283,6 +2296,9 @@ static int mtk_stop(struct net_device *d
  
        mtk_dma_free(eth);
  
        return 0;
  }
  
-@@ -2733,6 +2749,27 @@ static int mtk_set_rxnfc(struct net_devi
+@@ -2742,6 +2758,27 @@ static int mtk_set_rxnfc(struct net_devi
        return ret;
  }
  
  static const struct ethtool_ops mtk_ethtool_ops = {
        .get_link_ksettings     = mtk_get_link_ksettings,
        .set_link_ksettings     = mtk_set_link_ksettings,
-@@ -2764,6 +2801,9 @@ static const struct net_device_ops mtk_n
+@@ -2773,6 +2810,9 @@ static const struct net_device_ops mtk_n
  #ifdef CONFIG_NET_POLL_CONTROLLER
        .ndo_poll_controller    = mtk_poll_controller,
  #endif
  };
  
  static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
-@@ -3097,6 +3137,7 @@ static const struct mtk_soc_data mt7622_
+@@ -3108,6 +3148,7 @@ static const struct mtk_soc_data mt7622_
        .hw_features = MTK_HW_FEATURES,
        .required_clks = MT7622_CLKS_BITMAP,
        .required_pctl = false,
index 7b8d186aa41b789ab57e2e4010e8832e1e95e0e3..78932933de5b0a6268c32c96e89c05761a8f621c 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2201,6 +2201,31 @@ static int mtk_start_dma(struct mtk_eth
+@@ -2210,6 +2210,31 @@ static int mtk_start_dma(struct mtk_eth
        return 0;
  }
  
@@ -32,7 +32,7 @@
  static int mtk_open(struct net_device *dev)
  {
        struct mtk_mac *mac = netdev_priv(dev);
-@@ -2221,6 +2246,8 @@ static int mtk_open(struct net_device *d
+@@ -2230,6 +2255,8 @@ static int mtk_open(struct net_device *d
                if (err)
                        return err;
  
@@ -41,7 +41,7 @@
                napi_enable(&eth->tx_napi);
                napi_enable(&eth->rx_napi);
                mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
-@@ -2276,6 +2303,8 @@ static int mtk_stop(struct net_device *d
+@@ -2285,6 +2312,8 @@ static int mtk_stop(struct net_device *d
        if (!refcount_dec_and_test(&eth->dma_refcnt))
                return 0;
  
@@ -50,7 +50,7 @@
        mtk_tx_irq_disable(eth, MTK_TX_DONE_INT);
        mtk_rx_irq_disable(eth, MTK_RX_DONE_INT);
        napi_disable(&eth->tx_napi);
-@@ -2402,8 +2431,6 @@ static int mtk_hw_init(struct mtk_eth *e
+@@ -2411,8 +2440,6 @@ static int mtk_hw_init(struct mtk_eth *e
        mtk_w32(eth, 0, MTK_QDMA_DELAY_INT);
        mtk_tx_irq_disable(eth, ~0);
        mtk_rx_irq_disable(eth, ~0);
@@ -59,7 +59,7 @@
  
        /* FE int grouping */
        mtk_w32(eth, MTK_TX_DONE_INT, MTK_PDMA_INT_GRP1);
-@@ -2412,19 +2439,6 @@ static int mtk_hw_init(struct mtk_eth *e
+@@ -2421,19 +2448,6 @@ static int mtk_hw_init(struct mtk_eth *e
        mtk_w32(eth, MTK_RX_DONE_INT, MTK_QDMA_INT_GRP2);
        mtk_w32(eth, 0x21021000, MTK_FE_INT_GRP);
  
index ea1d1dce2e7ea98ae481e1816f5b570fe985eae0..a1ddc3d5dfb74fa35c0c6de81857860f7dbf7150 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1355,10 +1355,11 @@ static int mtk_poll_tx_qdma(struct mtk_e
+@@ -1364,10 +1364,11 @@ static int mtk_poll_tx_qdma(struct mtk_e
                u32 next_cpu = desc->txd2;
                int mac = 0;
  
@@ -13,7 +13,7 @@
                tx_buf = mtk_desc_to_tx_buf(ring, desc);
                if (tx_buf->flags & MTK_TX_FLAGS_FPORT1)
                        mac = 1;
-@@ -2182,7 +2183,7 @@ static int mtk_start_dma(struct mtk_eth
+@@ -2191,7 +2192,7 @@ static int mtk_start_dma(struct mtk_eth
  
        if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
                mtk_w32(eth,
index 13ed9e4c8aba1df3adba6c958bc9c0ee0e6b12ee..e3269a592f1768dfabc44e397eeeccf79e7d4196 100644 (file)
@@ -292,7 +292,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                                        MVNETA_RX_BUF_SIZE(pp->pkt_size));
                mvneta_rxq_bm_disable(pp, rxq);
                mvneta_rxq_fill(pp, rxq, rxq->size);
-@@ -4700,7 +4705,7 @@ static int mvneta_probe(struct platform_
+@@ -4708,7 +4713,7 @@ static int mvneta_probe(struct platform_
        SET_NETDEV_DEV(dev, &pdev->dev);
  
        pp->id = global_port_id++;
index 06968bdaef36eca07258ec45fcbc0bc62d243587..62c00ddeb19376934d0cb61afeb1436ee7781b76 100644 (file)
@@ -300,7 +300,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  static const struct ethtool_ops mvneta_eth_tool_ops = {
-@@ -4705,7 +4835,7 @@ static int mvneta_probe(struct platform_
+@@ -4713,7 +4843,7 @@ static int mvneta_probe(struct platform_
        SET_NETDEV_DEV(dev, &pdev->dev);
  
        pp->id = global_port_id++;
index f76b27a36d31623b4f041e27038c7a53e6d9523b..86bffa538afd2d49e1ef20f0fb655e4076a3475a 100644 (file)
@@ -38,7 +38,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvreg_write(pp, MVNETA_ACC_MODE, MVNETA_ACC_MODE_EXT1);
        netdev_info(pp->dev, "fail to update MTU, fall back to software BM\n");
  }
-@@ -4976,7 +4976,6 @@ static int mvneta_probe(struct platform_
+@@ -4984,7 +4984,6 @@ static int mvneta_probe(struct platform_
        SET_NETDEV_DEV(dev, &pdev->dev);
  
        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 */
        bm_node = of_parse_phandle(dn, "buffer-manager", 0);
-@@ -5001,6 +5000,10 @@ static int mvneta_probe(struct platform_
+@@ -5009,6 +5008,10 @@ static int mvneta_probe(struct platform_
        }
        of_node_put(bm_node);
  
@@ -57,7 +57,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        err = mvneta_init(&pdev->dev, pp);
        if (err < 0)
                goto err_netdev;
-@@ -5154,6 +5157,7 @@ static int mvneta_resume(struct device *
+@@ -5166,6 +5169,7 @@ static int mvneta_resume(struct device *
                err = mvneta_bm_port_init(pdev, pp);
                if (err < 0) {
                        dev_info(&pdev->dev, "use SW buffer management\n");
index 3f9ad364de3974875b2d7fce2331b69178f818bc..b8ab700c970ea0518a37b4f75fa8400b8756b0d4 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-mvebu/Kconfig
 +++ b/arch/arm/mach-mvebu/Kconfig
-@@ -68,6 +68,7 @@
+@@ -69,6 +69,7 @@ config MACH_ARMADA_38X
        select HAVE_SMP
        select MACH_MVEBU_V7
        select PINCTRL_ARMADA_38X
index 5308d3b286ced68f62a657abf0e7946d577aa91f..f35245b8bdefb699e3585c88596e912cdd5c879b 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
  #include <linux/platform_data/x86/apple.h>
  #include <linux/pm_runtime.h>
  #include <linux/switchtec.h>
-@@ -5604,3 +5605,34 @@ static void apex_pci_fixup_class(struct
+@@ -5617,3 +5618,34 @@ static void apex_pci_fixup_class(struct
  }
  DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
                               PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);
index f5283ed1238acbff205a67c495d4848d71efe7da..7110a5b8080aba57e74206e874d26cb5544ec1a9 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/usb/dwc2/platform.c
 +++ b/drivers/usb/dwc2/platform.c
-@@ -430,6 +430,12 @@ static int dwc2_driver_probe(struct plat
+@@ -431,6 +431,12 @@ static int dwc2_driver_probe(struct plat
        if (retval)
                return retval;
  
index 1ccb85d4b4344dd0b749471f1a08f3af7082adae..a31100642b07b4c626a0a735bfa8c805e9b107a8 100644 (file)
@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -844,7 +844,8 @@ static int txd_to_idx(struct mtk_tx_ring
+@@ -853,7 +853,8 @@ static int txd_to_idx(struct mtk_tx_ring
        return ((void *)dma - (void *)ring->dma) / sizeof(*dma);
  }
  
@@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  {
        if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
                if (tx_buf->flags & MTK_TX_FLAGS_SINGLE0) {
-@@ -876,8 +877,12 @@ static void mtk_tx_unmap(struct mtk_eth
+@@ -885,8 +886,12 @@ static void mtk_tx_unmap(struct mtk_eth
  
        tx_buf->flags = 0;
        if (tx_buf->skb &&
@@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        tx_buf->skb = NULL;
  }
  
-@@ -1055,7 +1060,7 @@ err_dma:
+@@ -1064,7 +1069,7 @@ err_dma:
                tx_buf = mtk_desc_to_tx_buf(ring, itxd);
  
                /* unmap dma */
@@ -43,7 +43,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
                itxd->txd3 = TX_DMA_LS0 | TX_DMA_OWNER_CPU;
                if (!MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA))
-@@ -1373,7 +1378,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
+@@ -1382,7 +1387,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
                        done[mac]++;
                        budget--;
                }
@@ -52,7 +52,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
                ring->last_free = desc;
                atomic_inc(&ring->free_count);
-@@ -1410,7 +1415,7 @@ static int mtk_poll_tx_pdma(struct mtk_e
+@@ -1419,7 +1424,7 @@ static int mtk_poll_tx_pdma(struct mtk_e
                        budget--;
                }
  
@@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
                desc = &ring->dma[cpu];
                ring->last_free = desc;
-@@ -1612,7 +1617,7 @@ static void mtk_tx_clean(struct mtk_eth
+@@ -1621,7 +1626,7 @@ static void mtk_tx_clean(struct mtk_eth
  
        if (ring->buf) {
                for (i = 0; i < MTK_DMA_SIZE; i++)
index 206826c1b2e343fbf3028cea00ffb7f482e7f02a..33325876712e0ac752de9c2fba82c2717abd46e5 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2784,6 +2784,7 @@ static const struct net_device_ops mtk_n
+@@ -2793,6 +2793,7 @@ static const struct net_device_ops mtk_n
  
  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);
        struct phylink *phylink;
        int phy_mode, id, err;
-@@ -2874,6 +2875,9 @@ static int mtk_add_mac(struct mtk_eth *e
-       eth->netdev[id]->irq = eth->irq[0];
-       eth->netdev[id]->dev.of_node = np;
+@@ -2885,6 +2886,9 @@ static int mtk_add_mac(struct mtk_eth *e
+       eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH - MTK_RX_ETH_HLEN;
  
 +      if (name)
 +              strlcpy(eth->netdev[id]->name, name, IFNAMSIZ);
index 316f7c01d3c58c9ab9e98f035abda69ba2d24101..2635c7a676646bcc67d8838f39a7062971e7207c 100644 (file)
@@ -26,7 +26,7 @@ use-case. You've been warned.
 
 --- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
 +++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-@@ -936,6 +936,33 @@
+@@ -938,6 +938,33 @@
                status = "disabled";
        };
  
index 1b52de231eeb579a5504a4b7cb391635681e7634..e2aa2d67e6986b9424b69d74ad4d8c9e47c644e0 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
        leds {
                compatible = "gpio-leds";
  
-@@ -288,6 +300,12 @@
+@@ -299,6 +311,12 @@
                        rockchip,pins = <1 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>;
                };
        };
@@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
  };
  
  &sdmmc {
-@@ -328,3 +346,12 @@
+@@ -339,3 +357,12 @@
  &usb_host0_ohci {
        status = "okay";
  };
index 96c756609574569c70ddb924c4a10a68c41b7349..3b97ecde9e068fdc289071842e38ac53e1725582 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
 
 --- a/arch/arm64/boot/dts/rockchip/rk3328-nanopi-r2s.dts
 +++ b/arch/arm64/boot/dts/rockchip/rk3328-nanopi-r2s.dts
-@@ -354,4 +354,11 @@
+@@ -365,4 +365,11 @@
  &usbdrd_dwc3 {
        dr_mode = "host";
        status = "okay";