diff --git a/build_patches/openwrt/0000-kernel-bump-5.4-to-5.4.158.patch b/build_patches/openwrt/0000-kernel-bump-5.4-to-5.4.158.patch new file mode 100644 index 00000000..b722eeab --- /dev/null +++ b/build_patches/openwrt/0000-kernel-bump-5.4-to-5.4.158.patch @@ -0,0 +1,890 @@ +From 0b7311300b01d9975e9996327ee469e4f66fb2ec Mon Sep 17 00:00:00 2001 +From: Hauke Mehrtens +Date: Sat, 6 Nov 2021 19:29:39 +0000 +Subject: [PATCH] kernel: bump 5.4 to 5.4.158 + +Removed upstreamed: + generic/backport-5.4/790-v5.7-net-switchdev-do-not-propagate-bridge-updates-across.patch + +All others updated automatically. + +Compile-tested on: lantiq/xrx200, armvirt/64 +Runtime-tested on: lantiq/xrx200, armvirt/64 + +Signed-off-by: Hauke Mehrtens +--- + include/kernel-version.mk | 4 +- + ...mware-loader-for-uPD720201-and-uPD72.patch | 10 ++-- + .../802-usb-xhci-force-msi-renesas-xhci.patch | 2 +- + ...Show-that-the-VIA-VL805-supports-LPM.patch | 2 +- + ...-for-updating-interrupt-endpoint-int.patch | 4 +- + ...hci_fixup_endpoint-for-interval-adju.patch | 4 +- + ...or-host-controllers-that-don-t-updat.patch | 6 +- + ...-0504-mmc-sdhci-Silence-MMC-warnings.patch | 4 +- + ...-quirks-add-link-TRB-quirk-for-VL805.patch | 4 +- + ...ast-GRO-for-skbs-with-Ethernet-heade.patch | 2 +- + ...-net-phy-add-core-phylib-sfp-support.patch | 4 +- + ...-not-propagate-bridge-updates-across.patch | 60 ------------------- + ...sfs-attributes-for-VPD-pages-0h-and-.patch | 10 ++-- + .../generic/hack-5.4/220-gc_sections.patch | 2 +- + .../generic/hack-5.4/721-phy_packets.patch | 2 +- + ...ng-with-source-address-failed-policy.patch | 26 ++++---- + ...T-skip-GRO-for-foreign-MAC-addresses.patch | 10 ++-- + ...dd-support-for-threaded-NAPI-polling.patch | 14 ++--- + .../811-pci_disable_usb_common_quirks.patch | 2 +- + ...arch-arm-force-ZRELADDR-on-arch-qcom.patch | 2 +- + ...Mangle-bootloader-s-kernel-arguments.patch | 2 +- + .../900-arm-add-cmdline-override.patch | 2 +- + ...5-NET-MIPS-lantiq-adds-xrx200-legacy.patch | 2 +- + ...move-EH-SINGLE_STEP_SET_FEATURE-impl.patch | 4 +- + ...host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch | 4 +- + ...host-xhci-do-not-return-error-status.patch | 2 +- + ...-host-xhci-add-.bus_suspend-override.patch | 2 +- + .../901-fix_irq_type_of_pca953x.patch | 2 +- + ...Mangle-bootloader-s-kernel-arguments.patch | 2 +- + ...Mangle-bootloader-s-kernel-arguments.patch | 2 +- + .../patches-5.4/200-add-ralink-eth.patch | 2 +- + .../990-NET-no-auto-carrier-off-support.patch | 4 +- + ...net-add-support-for-rtl838x-ethernet.patch | 2 +- + 33 files changed, 73 insertions(+), 133 deletions(-) + delete mode 100644 target/linux/generic/backport-5.4/790-v5.7-net-switchdev-do-not-propagate-bridge-updates-across.patch + +diff --git a/include/kernel-version.mk b/include/kernel-version.mk +index 83bfcd8ff2..688660cbbd 100644 +--- a/include/kernel-version.mk ++++ b/include/kernel-version.mk +@@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL + KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) + endif + +-LINUX_VERSION-5.4 = .154 ++LINUX_VERSION-5.4 = .158 + +-LINUX_KERNEL_HASH-5.4.154 = 058994f4666b6b0474a4d5228583e394594e406783b7e93d487c2a66c35f3c06 ++LINUX_KERNEL_HASH-5.4.158 = 6e018fecdc8fc24553756e582d83b82d65b10a6b03ef36262a24911f839b8d59 + + remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) + sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) +diff --git a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch +index 980a0407db..220e5da73b 100644 +--- a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch ++++ b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch +@@ -48,7 +48,7 @@ Signed-off-by: Vinod Koul + + #include "xhci.h" + #include "xhci-trace.h" +-@@ -64,6 +66,44 @@ ++@@ -65,6 +67,44 @@ + #define PCI_DEVICE_ID_ASMEDIA_2142_XHCI 0x2142 + #define PCI_DEVICE_ID_ASMEDIA_3242_XHCI 0x3242 + +@@ -93,7 +93,7 @@ Signed-off-by: Vinod Koul + static const char hcd_name[] = "xhci_hcd"; + + static struct hc_driver __read_mostly xhci_pci_hc_driver; +-@@ -309,6 +349,873 @@ static void xhci_pme_acpi_rtd3_enable(st ++@@ -311,6 +351,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 + /* called during probe() after chip reset completes */ + static int xhci_pci_setup(struct usb_hcd *hcd) + { +-@@ -350,6 +1257,27 @@ static int xhci_pci_probe(struct pci_dev ++@@ -352,6 +1259,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 + driver = (struct hc_driver *)id->driver_data; + + /* Prevent runtime suspending between USB-2 and USB-3 initialization */ +-@@ -411,6 +1339,16 @@ static void xhci_pci_remove(struct pci_d ++@@ -413,6 +1341,16 @@ static void xhci_pci_remove(struct pci_d + { + struct xhci_hcd *xhci; + +@@ -1012,7 +1012,7 @@ Signed-off-by: Vinod Koul + xhci = hcd_to_xhci(pci_get_drvdata(dev)); + xhci->xhc_state |= XHCI_STATE_REMOVING; + +-@@ -550,6 +1488,11 @@ static int xhci_pci_resume(struct usb_hc ++@@ -552,6 +1490,11 @@ static int xhci_pci_resume(struct usb_hc + if (pdev->vendor == PCI_VENDOR_ID_INTEL) + usb_enable_intel_xhci_ports(pdev); + +diff --git a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch +index 4217a1e949..6980ce80ee 100644 +--- a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch ++++ b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch +@@ -13,7 +13,7 @@ produce a noisy warning. + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -288,6 +288,7 @@ static void xhci_pci_quirks(struct devic ++@@ -290,6 +290,7 @@ static void xhci_pci_quirks(struct devic + pdev->device == 0x0015) { + xhci->quirks |= XHCI_RESET_ON_RESUME; + xhci->quirks |= XHCI_ZERO_64B_REGS; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch b/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch +index 5679126103..cf3cb58362 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch +@@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -257,6 +257,10 @@ static void xhci_pci_quirks(struct devic ++@@ -259,6 +259,10 @@ static void xhci_pci_quirks(struct devic + pdev->device == 0x3432) + xhci->quirks |= XHCI_BROKEN_STREAMS; + +diff --git a/target/linux/bcm27xx/patches-5.4/950-0218-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch b/target/linux/bcm27xx/patches-5.4/950-0218-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch +index 9e886ee2df..f654cd8a57 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0218-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0218-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch +@@ -81,7 +81,7 @@ Signed-off-by: Jonathan Bell + extern int usb_driver_set_configuration(struct usb_device *udev, int config); + --- a/include/linux/usb/hcd.h + +++ b/include/linux/usb/hcd.h +-@@ -384,6 +384,11 @@ struct hc_driver { ++@@ -382,6 +382,11 @@ struct hc_driver { + * or bandwidth constraints. + */ + void (*reset_bandwidth)(struct usb_hcd *, struct usb_device *); +@@ -93,7 +93,7 @@ Signed-off-by: Jonathan Bell + /* Returns the hardware-chosen device address */ + int (*address_device)(struct usb_hcd *, struct usb_device *udev); + /* prepares the hardware to send commands to the device */ +-@@ -445,6 +450,8 @@ extern void usb_hcd_unmap_urb_setup_for_ ++@@ -443,6 +448,8 @@ extern void usb_hcd_unmap_urb_setup_for_ + extern void usb_hcd_unmap_urb_for_dma(struct usb_hcd *, struct urb *); + extern void usb_hcd_flush_endpoint(struct usb_device *udev, + struct usb_host_endpoint *ep); +diff --git a/target/linux/bcm27xx/patches-5.4/950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch b/target/linux/bcm27xx/patches-5.4/950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch +index 1016627521..b316ef8180 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0219-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch +@@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell + + --- a/drivers/usb/host/xhci.c + +++ b/drivers/usb/host/xhci.c +-@@ -1469,6 +1469,103 @@ command_cleanup: ++@@ -1468,6 +1468,103 @@ command_cleanup: + } + + /* +@@ -119,7 +119,7 @@ Signed-off-by: Jonathan Bell + * non-error returns are a promise to giveback() the urb later + * we drop ownership so next owner (or urb unlink) can get it + */ +-@@ -5358,6 +5455,7 @@ static const struct hc_driver xhci_hc_dr ++@@ -5362,6 +5459,7 @@ static const struct hc_driver xhci_hc_dr + .endpoint_reset = xhci_endpoint_reset, + .check_bandwidth = xhci_check_bandwidth, + .reset_bandwidth = xhci_reset_bandwidth, +diff --git a/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch b/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch +index 947b00b398..683f0905ef 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch +@@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -258,8 +258,10 @@ static void xhci_pci_quirks(struct devic ++@@ -260,8 +260,10 @@ static void xhci_pci_quirks(struct devic + xhci->quirks |= XHCI_BROKEN_STREAMS; + + if (pdev->vendor == PCI_VENDOR_ID_VIA && +@@ -37,7 +37,7 @@ Signed-off-by: Jonathan Bell + pdev->device == PCI_DEVICE_ID_ASMEDIA_1042_XHCI) + --- a/drivers/usb/host/xhci-ring.c + +++ b/drivers/usb/host/xhci-ring.c +-@@ -550,7 +550,10 @@ void xhci_find_new_dequeue_state(struct ++@@ -556,7 +556,10 @@ void xhci_find_new_dequeue_state(struct + struct xhci_virt_ep *ep = &dev->eps[ep_index]; + struct xhci_ring *ep_ring; + struct xhci_segment *new_seg; +@@ -48,7 +48,7 @@ Signed-off-by: Jonathan Bell + dma_addr_t addr; + u64 hw_dequeue; + bool cycle_found = false; +-@@ -588,7 +591,28 @@ void xhci_find_new_dequeue_state(struct ++@@ -594,7 +597,28 @@ void xhci_find_new_dequeue_state(struct + hw_dequeue = xhci_get_hw_deq(xhci, dev, ep_index, stream_id); + new_seg = ep_ring->deq_seg; + new_deq = ep_ring->dequeue; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch b/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch +index 89fd58dca0..ba815eecfd 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch +@@ -22,7 +22,7 @@ Signed-off-by: Maxime Ripard + + #define MAX_TUNING_LOOP 40 + +-@@ -2762,7 +2762,7 @@ static void sdhci_timeout_timer(struct t ++@@ -2768,7 +2768,7 @@ static void sdhci_timeout_timer(struct t + spin_lock_irqsave(&host->lock, flags); + + if (host->cmd && !sdhci_data_line_cmd(host->cmd)) { +@@ -31,7 +31,7 @@ Signed-off-by: Maxime Ripard + mmc_hostname(host->mmc)); + sdhci_dumpregs(host); + +-@@ -2784,7 +2784,7 @@ static void sdhci_timeout_data_timer(str ++@@ -2790,7 +2790,7 @@ static void sdhci_timeout_data_timer(str + + if (host->data || host->data_cmd || + (host->cmd && sdhci_data_line_cmd(host->cmd))) { +diff --git a/target/linux/bcm27xx/patches-5.4/950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch b/target/linux/bcm27xx/patches-5.4/950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch +index 627ec30f06..cc05573eb0 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch +@@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -261,6 +261,7 @@ static void xhci_pci_quirks(struct devic ++@@ -263,6 +263,7 @@ static void xhci_pci_quirks(struct devic + pdev->device == 0x3483) { + xhci->quirks |= XHCI_LPM_SUPPORT; + xhci->quirks |= XHCI_EP_CTX_BROKEN_DCS; +@@ -32,7 +32,7 @@ Signed-off-by: Jonathan Bell + if (pdev->vendor == PCI_VENDOR_ID_ASMEDIA && + --- a/drivers/usb/host/xhci-ring.c + +++ b/drivers/usb/host/xhci-ring.c +-@@ -647,6 +647,16 @@ void xhci_find_new_dequeue_state(struct ++@@ -653,6 +653,16 @@ void xhci_find_new_dequeue_state(struct + + } while (!cycle_found || !td_last_trb_found); + +diff --git a/target/linux/generic/backport-5.4/700-v5.5-net-core-allow-fast-GRO-for-skbs-with-Ethernet-heade.patch b/target/linux/generic/backport-5.4/700-v5.5-net-core-allow-fast-GRO-for-skbs-with-Ethernet-heade.patch +index eeea18bb9c..13f0d9d000 100644 +--- a/target/linux/generic/backport-5.4/700-v5.5-net-core-allow-fast-GRO-for-skbs-with-Ethernet-heade.patch ++++ b/target/linux/generic/backport-5.4/700-v5.5-net-core-allow-fast-GRO-for-skbs-with-Ethernet-heade.patch +@@ -66,7 +66,7 @@ Signed-off-by: David S. Miller + + --- a/net/core/dev.c + +++ b/net/core/dev.c +-@@ -5423,8 +5423,7 @@ static inline void skb_gro_reset_offset( ++@@ -5429,8 +5429,7 @@ static inline void skb_gro_reset_offset( + NAPI_GRO_CB(skb)->frag0 = NULL; + NAPI_GRO_CB(skb)->frag0_len = 0; + +diff --git a/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch b/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch +index 11da9540e9..edfe151725 100644 +--- a/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch ++++ b/target/linux/generic/backport-5.4/737-v5.5-net-phy-add-core-phylib-sfp-support.patch +@@ -24,7 +24,7 @@ Signed-off-by: Russell King + #include + #include + #include +-@@ -843,6 +844,9 @@ void phy_stop(struct phy_device *phydev) ++@@ -863,6 +864,9 @@ void phy_stop(struct phy_device *phydev) + + mutex_lock(&phydev->lock); + +@@ -34,7 +34,7 @@ Signed-off-by: Russell King + phydev->state = PHY_HALTED; + + mutex_unlock(&phydev->lock); +-@@ -905,6 +909,9 @@ void phy_state_machine(struct work_struc ++@@ -925,6 +929,9 @@ void phy_state_machine(struct work_struc + + old_state = phydev->state; + +diff --git a/target/linux/generic/backport-5.4/790-v5.7-net-switchdev-do-not-propagate-bridge-updates-across.patch b/target/linux/generic/backport-5.4/790-v5.7-net-switchdev-do-not-propagate-bridge-updates-across.patch +deleted file mode 100644 +index bc8014b772..0000000000 +--- a/target/linux/generic/backport-5.4/790-v5.7-net-switchdev-do-not-propagate-bridge-updates-across.patch ++++ /dev/null +@@ -1,60 +0,0 @@ +-From 07c6f9805f12f1bb538ef165a092b300350384aa Mon Sep 17 00:00:00 2001 +-From: Russell King +-Date: Wed, 26 Feb 2020 17:14:21 +0000 +-Subject: [PATCH] net: switchdev: do not propagate bridge updates across +- bridges +- +-When configuring a tree of independent bridges, propagating changes +-from the upper bridge across a bridge master to the lower bridge +-ports brings surprises. +- +-For example, a lower bridge may have vlan filtering enabled. It +-may have a vlan interface attached to the bridge master, which may +-then be incorporated into another bridge. As soon as the lower +-bridge vlan interface is attached to the upper bridge, the lower +-bridge has vlan filtering disabled. +- +-This occurs because switchdev recursively applies its changes to +-all lower devices no matter what. +- +-Reviewed-by: Ido Schimmel +-Tested-by: Ido Schimmel +-Signed-off-by: Russell King +-Reviewed-by: Florian Fainelli +-Signed-off-by: David S. Miller +---- +- net/switchdev/switchdev.c | 9 +++++++++ +- 1 file changed, 9 insertions(+) +- +---- a/net/switchdev/switchdev.c +-+++ b/net/switchdev/switchdev.c +-@@ -476,6 +476,9 @@ static int __switchdev_handle_port_obj_a +- * necessary to go through this helper. +- */ +- netdev_for_each_lower_dev(dev, lower_dev, iter) { +-+ if (netif_is_bridge_master(lower_dev)) +-+ continue; +-+ +- err = __switchdev_handle_port_obj_add(lower_dev, port_obj_info, +- check_cb, add_cb); +- if (err && err != -EOPNOTSUPP) +-@@ -528,6 +531,9 @@ static int __switchdev_handle_port_obj_d +- * necessary to go through this helper. +- */ +- netdev_for_each_lower_dev(dev, lower_dev, iter) { +-+ if (netif_is_bridge_master(lower_dev)) +-+ continue; +-+ +- err = __switchdev_handle_port_obj_del(lower_dev, port_obj_info, +- check_cb, del_cb); +- if (err && err != -EOPNOTSUPP) +-@@ -579,6 +585,9 @@ static int __switchdev_handle_port_attr_ +- * necessary to go through this helper. +- */ +- netdev_for_each_lower_dev(dev, lower_dev, iter) { +-+ if (netif_is_bridge_master(lower_dev)) +-+ continue; +-+ +- err = __switchdev_handle_port_attr_set(lower_dev, port_attr_info, +- check_cb, set_cb); +- if (err && err != -EOPNOTSUPP) +diff --git a/target/linux/generic/backport-5.4/800-v5.5-scsi-core-Add-sysfs-attributes-for-VPD-pages-0h-and-.patch b/target/linux/generic/backport-5.4/800-v5.5-scsi-core-Add-sysfs-attributes-for-VPD-pages-0h-and-.patch +index 438588f9f4..8c18d5df6d 100644 +--- a/target/linux/generic/backport-5.4/800-v5.5-scsi-core-Add-sysfs-attributes-for-VPD-pages-0h-and-.patch ++++ b/target/linux/generic/backport-5.4/800-v5.5-scsi-core-Add-sysfs-attributes-for-VPD-pages-0h-and-.patch +@@ -41,9 +41,9 @@ Signed-off-by: Martin K. Petersen + struct scsi_vpd *vpd_pg80 = NULL, *vpd_pg83 = NULL; + + struct scsi_vpd *vpd_pg0 = NULL, *vpd_pg89 = NULL; + unsigned long flags; ++ struct module *mod; + +- sdev = container_of(work, struct scsi_device, ew.work); +-@@ -466,16 +467,24 @@ static void scsi_device_dev_release_user ++@@ -469,16 +470,24 @@ static void scsi_device_dev_release_user + sdev->request_queue = NULL; + + mutex_lock(&sdev->inquiry_mutex); +@@ -68,7 +68,7 @@ Signed-off-by: Martin K. Petersen + kfree(sdev->inquiry); + kfree(sdev); + +-@@ -874,6 +883,8 @@ static struct bin_attribute dev_attr_vpd ++@@ -883,6 +892,8 @@ static struct bin_attribute dev_attr_vpd + + sdev_vpd_pg_attr(pg83); + sdev_vpd_pg_attr(pg80); +@@ -77,7 +77,7 @@ Signed-off-by: Martin K. Petersen + + static ssize_t show_inquiry(struct file *filep, struct kobject *kobj, + struct bin_attribute *bin_attr, +-@@ -1206,12 +1217,18 @@ static umode_t scsi_sdev_bin_attr_is_vis ++@@ -1215,12 +1226,18 @@ static umode_t scsi_sdev_bin_attr_is_vis + struct scsi_device *sdev = to_scsi_device(dev); + + +@@ -96,7 +96,7 @@ Signed-off-by: Martin K. Petersen + return S_IRUGO; + } + +-@@ -1254,8 +1271,10 @@ static struct attribute *scsi_sdev_attrs ++@@ -1263,8 +1280,10 @@ static struct attribute *scsi_sdev_attrs + }; + + static struct bin_attribute *scsi_sdev_bin_attrs[] = { +diff --git a/target/linux/generic/hack-5.4/220-gc_sections.patch b/target/linux/generic/hack-5.4/220-gc_sections.patch +index 6207eb0ec9..fdfaf51406 100644 +--- a/target/linux/generic/hack-5.4/220-gc_sections.patch ++++ b/target/linux/generic/hack-5.4/220-gc_sections.patch +@@ -21,7 +21,7 @@ Signed-off-by: Gabor Juhos + + --- a/arch/arm/Kconfig + +++ b/arch/arm/Kconfig +-@@ -111,6 +111,7 @@ config ARM ++@@ -112,6 +112,7 @@ config ARM + select HAVE_UID16 + select HAVE_VIRT_CPU_ACCOUNTING_GEN + select IRQ_FORCED_THREADING +diff --git a/target/linux/generic/hack-5.4/721-phy_packets.patch b/target/linux/generic/hack-5.4/721-phy_packets.patch +index 836fc54ba2..bc9b3a4783 100644 +--- a/target/linux/generic/hack-5.4/721-phy_packets.patch ++++ b/target/linux/generic/hack-5.4/721-phy_packets.patch +@@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau + help + --- a/net/core/dev.c + +++ b/net/core/dev.c +-@@ -3192,10 +3192,20 @@ static int xmit_one(struct sk_buff *skb, ++@@ -3198,10 +3198,20 @@ static int xmit_one(struct sk_buff *skb, + if (dev_nit_active(dev)) + dev_queue_xmit_nit(skb, dev); + +diff --git a/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +index 0b95eee494..06227cfafe 100644 +--- a/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch ++++ b/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +@@ -110,7 +110,7 @@ Signed-off-by: Jonas Gorski + return -EINVAL; + --- a/net/ipv6/route.c + +++ b/net/ipv6/route.c +-@@ -93,6 +93,8 @@ static int ip6_pkt_discard(struct sk_bu ++@@ -94,6 +94,8 @@ static int ip6_pkt_discard(struct sk_bu + static int ip6_pkt_discard_out(struct net *net, struct sock *sk, struct sk_buff *skb); + static int ip6_pkt_prohibit(struct sk_buff *skb); + static int ip6_pkt_prohibit_out(struct net *net, struct sock *sk, struct sk_buff *skb); +@@ -119,7 +119,7 @@ Signed-off-by: Jonas Gorski + static void ip6_link_failure(struct sk_buff *skb); + static void ip6_rt_update_pmtu(struct dst_entry *dst, struct sock *sk, + struct sk_buff *skb, u32 mtu, +-@@ -326,6 +328,18 @@ static const struct rt6_info ip6_prohibi ++@@ -327,6 +329,18 @@ static const struct rt6_info ip6_prohibi + .rt6i_flags = (RTF_REJECT | RTF_NONEXTHOP), + }; + +@@ -138,7 +138,7 @@ Signed-off-by: Jonas Gorski + static const struct rt6_info ip6_blk_hole_entry_template = { + .dst = { + .__refcnt = ATOMIC_INIT(1), +-@@ -1047,6 +1061,7 @@ static const int fib6_prop[RTN_MAX + 1] ++@@ -1048,6 +1062,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 + [RTN_THROW] = -EAGAIN, + [RTN_NAT] = -EINVAL, + [RTN_XRESOLVE] = -EINVAL, +-@@ -1084,6 +1099,10 @@ static void ip6_rt_init_dst_reject(struc ++@@ -1085,6 +1100,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 + case RTN_THROW: + case RTN_UNREACHABLE: + default: +-@@ -4426,6 +4445,17 @@ static int ip6_pkt_prohibit_out(struct n ++@@ -4434,6 +4453,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 + /* + * Allocate a dst for local (unicast / anycast) address. + */ +-@@ -4906,7 +4936,8 @@ static int rtm_to_fib6_config(struct sk_ ++@@ -4914,7 +4944,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 + cfg->fc_flags |= RTF_REJECT; + + if (rtm->rtm_type == RTN_LOCAL) +-@@ -6029,6 +6060,8 @@ static int ip6_route_dev_notify(struct n ++@@ -6037,6 +6068,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 + net->ipv6.ip6_blk_hole_entry->dst.dev = dev; + net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev); + #endif +-@@ -6040,6 +6073,7 @@ static int ip6_route_dev_notify(struct n ++@@ -6048,6 +6081,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 + in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev); + #endif + } +-@@ -6232,6 +6266,8 @@ static int __net_init ip6_route_net_init ++@@ -6240,6 +6274,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 + net->ipv6.ip6_prohibit_entry = kmemdup(&ip6_prohibit_entry_template, + sizeof(*net->ipv6.ip6_prohibit_entry), + GFP_KERNEL); +-@@ -6242,11 +6278,21 @@ static int __net_init ip6_route_net_init ++@@ -6250,11 +6286,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 + 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); +-@@ -6270,6 +6316,8 @@ out: ++@@ -6278,6 +6324,8 @@ out: + return ret; + + #ifdef CONFIG_IPV6_MULTIPLE_TABLES +@@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski + out_ip6_prohibit_entry: + kfree(net->ipv6.ip6_prohibit_entry); + out_ip6_null_entry: +-@@ -6289,6 +6337,7 @@ static void __net_exit ip6_route_net_exi ++@@ -6297,6 +6345,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 + kfree(net->ipv6.ip6_blk_hole_entry); + #endif + dst_entries_destroy(&net->ipv6.ip6_dst_ops); +-@@ -6366,6 +6415,9 @@ void __init ip6_route_init_special_entri ++@@ -6374,6 +6423,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); +diff --git a/target/linux/generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +index 4839ac5e70..e0540866c6 100644 +--- a/target/linux/generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch ++++ b/target/linux/generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +@@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau + __u16 tc_index; /* traffic control index */ + --- a/net/core/dev.c + +++ b/net/core/dev.c +-@@ -5489,6 +5489,9 @@ static enum gro_result dev_gro_receive(s ++@@ -5495,6 +5495,9 @@ static enum gro_result dev_gro_receive(s + int same_flow; + int grow; + +@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau + if (netif_elide_gro(skb->dev)) + goto normal; + +-@@ -7291,6 +7294,48 @@ static void __netdev_adjacent_dev_unlink ++@@ -7297,6 +7300,48 @@ static void __netdev_adjacent_dev_unlink + &upper_dev->adj_list.lower); + } + +@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau + static int __netdev_upper_dev_link(struct net_device *dev, + struct net_device *upper_dev, bool master, + void *upper_priv, void *upper_info, +-@@ -7341,6 +7386,7 @@ static int __netdev_upper_dev_link(struc ++@@ -7347,6 +7392,7 @@ static int __netdev_upper_dev_link(struc + if (ret) + return ret; + +@@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau + ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, + &changeupper_info.info); + ret = notifier_to_errno(ret); +-@@ -7434,6 +7480,7 @@ void netdev_upper_dev_unlink(struct net_ ++@@ -7440,6 +7486,7 @@ void netdev_upper_dev_unlink(struct net_ + + __netdev_adjacent_dev_unlink_neighbour(dev, upper_dev); + +@@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau + call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, + &changeupper_info.info); + +-@@ -8164,6 +8211,7 @@ int dev_set_mac_address(struct net_devic ++@@ -8170,6 +8217,7 @@ int dev_set_mac_address(struct net_devic + if (err) + return err; + dev->addr_assign_type = NET_ADDR_SET; +diff --git a/target/linux/generic/pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch b/target/linux/generic/pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch +index f45efdf12b..febec868f4 100644 +--- a/target/linux/generic/pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch ++++ b/target/linux/generic/pending-5.4/690-net-add-support-for-threaded-NAPI-polling.patch +@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau + + static int netif_rx_internal(struct sk_buff *skb); + static int call_netdevice_notifiers_info(unsigned long val, +-@@ -5931,6 +5932,11 @@ void __napi_schedule(struct napi_struct ++@@ -5937,6 +5938,11 @@ void __napi_schedule(struct napi_struct + { + unsigned long flags; + +@@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau + local_irq_save(flags); + ____napi_schedule(this_cpu_ptr(&softnet_data), n); + local_irq_restore(flags); +-@@ -5982,6 +5988,11 @@ EXPORT_SYMBOL(napi_schedule_prep); ++@@ -5988,6 +5994,11 @@ EXPORT_SYMBOL(napi_schedule_prep); + */ + void __napi_schedule_irqoff(struct napi_struct *n) + { +@@ -119,7 +119,7 @@ Signed-off-by: Felix Fietkau + if (!IS_ENABLED(CONFIG_PREEMPT_RT)) + ____napi_schedule(this_cpu_ptr(&softnet_data), n); + else +-@@ -6246,9 +6257,89 @@ static void init_gro_hash(struct napi_st ++@@ -6252,9 +6263,89 @@ static void init_gro_hash(struct napi_st + napi->gro_bitmask = 0; + } + +@@ -209,7 +209,7 @@ Signed-off-by: Felix Fietkau + INIT_LIST_HEAD(&napi->poll_list); + hrtimer_init(&napi->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_PINNED); + napi->timer.function = napi_watchdog; +-@@ -6265,6 +6356,7 @@ void netif_napi_add(struct net_device *d ++@@ -6271,6 +6362,7 @@ void netif_napi_add(struct net_device *d + #ifdef CONFIG_NETPOLL + napi->poll_owner = -1; + #endif +@@ -217,7 +217,7 @@ Signed-off-by: Felix Fietkau + set_bit(NAPI_STATE_SCHED, &napi->state); + set_bit(NAPI_STATE_NPSVC, &napi->state); + list_add_rcu(&napi->dev_list, &dev->napi_list); +-@@ -6305,6 +6397,7 @@ static void flush_gro_hash(struct napi_s ++@@ -6311,6 +6403,7 @@ static void flush_gro_hash(struct napi_s + void netif_napi_del(struct napi_struct *napi) + { + might_sleep(); +@@ -225,7 +225,7 @@ Signed-off-by: Felix Fietkau + if (napi_hash_del(napi)) + synchronize_net(); + list_del_init(&napi->dev_list); +-@@ -6317,50 +6410,18 @@ EXPORT_SYMBOL(netif_napi_del); ++@@ -6323,50 +6416,18 @@ EXPORT_SYMBOL(netif_napi_del); + + static int napi_poll(struct napi_struct *n, struct list_head *repoll) + { +@@ -280,7 +280,7 @@ Signed-off-by: Felix Fietkau + + /* Some drivers may have called napi_schedule + * prior to exhausting their budget. +-@@ -10340,6 +10401,10 @@ static int __init net_dev_init(void) ++@@ -10346,6 +10407,10 @@ static int __init net_dev_init(void) + sd->backlog.weight = weight_p; + } + +diff --git a/target/linux/generic/pending-5.4/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/pending-5.4/811-pci_disable_usb_common_quirks.patch +index 86f8a416e9..6e4584c8a1 100644 +--- a/target/linux/generic/pending-5.4/811-pci_disable_usb_common_quirks.patch ++++ b/target/linux/generic/pending-5.4/811-pci_disable_usb_common_quirks.patch +@@ -98,7 +98,7 @@ Signed-off-by: Felix Fietkau + #endif /* __LINUX_USB_PCI_QUIRKS_H */ + --- a/include/linux/usb/hcd.h + +++ b/include/linux/usb/hcd.h +-@@ -485,7 +485,14 @@ extern int usb_hcd_pci_probe(struct pci_ ++@@ -483,7 +483,14 @@ extern int usb_hcd_pci_probe(struct pci_ + extern void usb_hcd_pci_remove(struct pci_dev *dev); + extern void usb_hcd_pci_shutdown(struct pci_dev *dev); + +diff --git a/target/linux/ipq806x/patches-5.4/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch b/target/linux/ipq806x/patches-5.4/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch +index d3b39ac3e3..6d3e7d9ee0 100644 +--- a/target/linux/ipq806x/patches-5.4/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch ++++ b/target/linux/ipq806x/patches-5.4/0060-HACK-arch-arm-force-ZRELADDR-on-arch-qcom.patch +@@ -33,7 +33,7 @@ Signed-off-by: Mathieu Olivari + + --- a/arch/arm/Kconfig + +++ b/arch/arm/Kconfig +-@@ -318,7 +318,7 @@ config ARCH_MULTIPLATFORM ++@@ -319,7 +319,7 @@ config ARCH_MULTIPLATFORM + depends on MMU + select ARM_HAS_SG_CHAIN + select ARM_PATCH_PHYS_VIRT +diff --git a/target/linux/ipq806x/patches-5.4/0067-generic-Mangle-bootloader-s-kernel-arguments.patch b/target/linux/ipq806x/patches-5.4/0067-generic-Mangle-bootloader-s-kernel-arguments.patch +index 751ac10a19..33c77fb729 100644 +--- a/target/linux/ipq806x/patches-5.4/0067-generic-Mangle-bootloader-s-kernel-arguments.patch ++++ b/target/linux/ipq806x/patches-5.4/0067-generic-Mangle-bootloader-s-kernel-arguments.patch +@@ -22,7 +22,7 @@ Signed-off-by: Adrian Panella + + --- a/arch/arm/Kconfig + +++ b/arch/arm/Kconfig +-@@ -1827,6 +1827,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN ++@@ -1828,6 +1828,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN + The command-line arguments provided by the boot loader will be + appended to the the device tree bootargs property. + +diff --git a/target/linux/ipq806x/patches-5.4/900-arm-add-cmdline-override.patch b/target/linux/ipq806x/patches-5.4/900-arm-add-cmdline-override.patch +index 49cd68b68d..17f20f068c 100644 +--- a/target/linux/ipq806x/patches-5.4/900-arm-add-cmdline-override.patch ++++ b/target/linux/ipq806x/patches-5.4/900-arm-add-cmdline-override.patch +@@ -1,6 +1,6 @@ + --- a/arch/arm/Kconfig + +++ b/arch/arm/Kconfig +-@@ -1840,6 +1840,14 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_MANGL ++@@ -1841,6 +1841,14 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_MANGL + + endchoice + +diff --git a/target/linux/lantiq/patches-5.4/0025-NET-MIPS-lantiq-adds-xrx200-legacy.patch b/target/linux/lantiq/patches-5.4/0025-NET-MIPS-lantiq-adds-xrx200-legacy.patch +index 6a2143e17e..a43982f9e1 100644 +--- a/target/linux/lantiq/patches-5.4/0025-NET-MIPS-lantiq-adds-xrx200-legacy.patch ++++ b/target/linux/lantiq/patches-5.4/0025-NET-MIPS-lantiq-adds-xrx200-legacy.patch +@@ -16,7 +16,7 @@ Subject: NET: MIPS: lantiq: adds xrx200 ethernet and switch driver + + --- a/drivers/net/ethernet/Kconfig + +++ b/drivers/net/ethernet/Kconfig +-@@ -108,7 +108,13 @@ config LANTIQ_ETOP ++@@ -109,7 +109,13 @@ config LANTIQ_ETOP + tristate "Lantiq SoC ETOP driver" + depends on SOC_TYPE_XWAY + ---help--- +diff --git a/target/linux/layerscape/patches-5.4/820-usb-0014-MLK-17380-3-usb-move-EH-SINGLE_STEP_SET_FEATURE-impl.patch b/target/linux/layerscape/patches-5.4/820-usb-0014-MLK-17380-3-usb-move-EH-SINGLE_STEP_SET_FEATURE-impl.patch +index 3c05330b1a..d43626577b 100644 +--- a/target/linux/layerscape/patches-5.4/820-usb-0014-MLK-17380-3-usb-move-EH-SINGLE_STEP_SET_FEATURE-impl.patch ++++ b/target/linux/layerscape/patches-5.4/820-usb-0014-MLK-17380-3-usb-move-EH-SINGLE_STEP_SET_FEATURE-impl.patch +@@ -335,7 +335,7 @@ Signed-off-by: Peter Chen + int is_setup + --- a/include/linux/usb/hcd.h + +++ b/include/linux/usb/hcd.h +-@@ -411,7 +411,10 @@ struct hc_driver { ++@@ -409,7 +409,10 @@ struct hc_driver { + int (*find_raw_port_number)(struct usb_hcd *, int); + /* Call for power on/off the port if necessary */ + int (*port_power)(struct usb_hcd *hcd, int portnum, bool enable); +@@ -347,7 +347,7 @@ Signed-off-by: Peter Chen + }; + + static inline int hcd_giveback_urb_in_bh(struct usb_hcd *hcd) +-@@ -476,6 +479,14 @@ int usb_hcd_setup_local_mem(struct usb_h ++@@ -474,6 +477,14 @@ int usb_hcd_setup_local_mem(struct usb_h + + struct platform_device; + extern void usb_hcd_platform_shutdown(struct platform_device *dev); +diff --git a/target/linux/layerscape/patches-5.4/820-usb-0015-MLK-17380-4-usb-host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch b/target/linux/layerscape/patches-5.4/820-usb-0015-MLK-17380-4-usb-host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch +index fcad77c1eb..361328cf05 100644 +--- a/target/linux/layerscape/patches-5.4/820-usb-0015-MLK-17380-4-usb-host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch ++++ b/target/linux/layerscape/patches-5.4/820-usb-0015-MLK-17380-4-usb-host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch +@@ -42,7 +42,7 @@ Signed-off-by: Peter Chen + retval = xhci_enter_test_mode(xhci, test_mode, wIndex, + --- a/drivers/usb/host/xhci-ring.c + +++ b/drivers/usb/host/xhci-ring.c +-@@ -3624,6 +3624,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * ++@@ -3630,6 +3630,129 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * + return 0; + } + +@@ -174,7 +174,7 @@ Signed-off-by: Peter Chen + * bursts that are required to move all packets in this TD. Only SuperSpeed + --- a/drivers/usb/host/xhci.c + +++ b/drivers/usb/host/xhci.c +-@@ -5385,6 +5385,7 @@ static const struct hc_driver xhci_hc_dr ++@@ -5389,6 +5389,7 @@ static const struct hc_driver xhci_hc_dr + .disable_usb3_lpm_timeout = xhci_disable_usb3_lpm_timeout, + .find_raw_port_number = xhci_find_raw_port_number, + .clear_tt_buffer_complete = xhci_clear_tt_buffer_complete, +diff --git a/target/linux/layerscape/patches-5.4/820-usb-0017-MLK-19153-2-usb-host-xhci-do-not-return-error-status.patch b/target/linux/layerscape/patches-5.4/820-usb-0017-MLK-19153-2-usb-host-xhci-do-not-return-error-status.patch +index 637d514d76..e5394cc6d8 100644 +--- a/target/linux/layerscape/patches-5.4/820-usb-0017-MLK-19153-2-usb-host-xhci-do-not-return-error-status.patch ++++ b/target/linux/layerscape/patches-5.4/820-usb-0017-MLK-19153-2-usb-host-xhci-do-not-return-error-status.patch +@@ -22,7 +22,7 @@ Signed-off-by: Peter Chen + + --- a/drivers/usb/host/xhci-ring.c + +++ b/drivers/usb/host/xhci-ring.c +-@@ -2091,12 +2091,9 @@ static int process_ctrl_td(struct xhci_h ++@@ -2097,12 +2097,9 @@ static int process_ctrl_td(struct xhci_h + + switch (trb_comp_code) { + case COMP_SUCCESS: +diff --git a/target/linux/layerscape/patches-5.4/820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch b/target/linux/layerscape/patches-5.4/820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch +index 060a809f5b..f808b5b556 100644 +--- a/target/linux/layerscape/patches-5.4/820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch ++++ b/target/linux/layerscape/patches-5.4/820-usb-0018-MLK-18794-1-usb-host-xhci-add-.bus_suspend-override.patch +@@ -24,7 +24,7 @@ Signed-off-by: Peter Chen + + --- a/drivers/usb/host/xhci.c + +++ b/drivers/usb/host/xhci.c +-@@ -5406,6 +5406,8 @@ void xhci_init_driver(struct hc_driver * ++@@ -5410,6 +5410,8 @@ void xhci_init_driver(struct hc_driver * + drv->check_bandwidth = over->check_bandwidth; + if (over->reset_bandwidth) + drv->reset_bandwidth = over->reset_bandwidth; +diff --git a/target/linux/layerscape/patches-5.4/901-fix_irq_type_of_pca953x.patch b/target/linux/layerscape/patches-5.4/901-fix_irq_type_of_pca953x.patch +index a00a240135..5f022ac27f 100644 +--- a/target/linux/layerscape/patches-5.4/901-fix_irq_type_of_pca953x.patch ++++ b/target/linux/layerscape/patches-5.4/901-fix_irq_type_of_pca953x.patch +@@ -11,7 +11,7 @@ Signed-off-by: Pawel Dembicki + + --- a/drivers/gpio/gpio-pca953x.c + +++ b/drivers/gpio/gpio-pca953x.c +-@@ -879,10 +879,12 @@ static int pca953x_irq_setup(struct pca9 ++@@ -881,10 +881,12 @@ static int pca953x_irq_setup(struct pca9 + for (i = 0; i < NBANK(chip); i++) + chip->irq_stat[i] &= reg_direction[i]; + mutex_init(&chip->irq_lock); +diff --git a/target/linux/mvebu/patches-5.4/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch b/target/linux/mvebu/patches-5.4/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch +index fd60cdb322..b6b3247c9d 100644 +--- a/target/linux/mvebu/patches-5.4/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch ++++ b/target/linux/mvebu/patches-5.4/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch +@@ -28,7 +28,7 @@ Signed-off-by: Michael Gray + + --- a/arch/arm/Kconfig + +++ b/arch/arm/Kconfig +-@@ -1827,6 +1827,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN ++@@ -1828,6 +1828,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN + The command-line arguments provided by the boot loader will be + appended to the the device tree bootargs property. + +diff --git a/target/linux/oxnas/patches-5.4/996-generic-Mangle-bootloader-s-kernel-arguments.patch b/target/linux/oxnas/patches-5.4/996-generic-Mangle-bootloader-s-kernel-arguments.patch +index 8c83d55b6c..bc46f308d3 100644 +--- a/target/linux/oxnas/patches-5.4/996-generic-Mangle-bootloader-s-kernel-arguments.patch ++++ b/target/linux/oxnas/patches-5.4/996-generic-Mangle-bootloader-s-kernel-arguments.patch +@@ -22,7 +22,7 @@ Signed-off-by: Adrian Panella + + --- a/arch/arm/Kconfig + +++ b/arch/arm/Kconfig +-@@ -1827,6 +1827,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN ++@@ -1828,6 +1828,17 @@ config ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEN + The command-line arguments provided by the boot loader will be + appended to the the device tree bootargs property. + +diff --git a/target/linux/ramips/patches-5.4/200-add-ralink-eth.patch b/target/linux/ramips/patches-5.4/200-add-ralink-eth.patch +index b8fd8e511d..79e7c2309b 100644 +--- a/target/linux/ramips/patches-5.4/200-add-ralink-eth.patch ++++ b/target/linux/ramips/patches-5.4/200-add-ralink-eth.patch +@@ -1,6 +1,6 @@ + --- a/drivers/net/ethernet/Kconfig + +++ b/drivers/net/ethernet/Kconfig +-@@ -159,6 +159,7 @@ source "drivers/net/ethernet/pasemi/Kcon ++@@ -160,6 +160,7 @@ source "drivers/net/ethernet/pasemi/Kcon + source "drivers/net/ethernet/pensando/Kconfig" + source "drivers/net/ethernet/qlogic/Kconfig" + source "drivers/net/ethernet/qualcomm/Kconfig" +diff --git a/target/linux/ramips/patches-5.4/990-NET-no-auto-carrier-off-support.patch b/target/linux/ramips/patches-5.4/990-NET-no-auto-carrier-off-support.patch +index c19cfd322d..b53108ec3c 100644 +--- a/target/linux/ramips/patches-5.4/990-NET-no-auto-carrier-off-support.patch ++++ b/target/linux/ramips/patches-5.4/990-NET-no-auto-carrier-off-support.patch +@@ -11,7 +11,7 @@ Signed-off-by: John Crispin + + --- a/drivers/net/phy/phy.c + +++ b/drivers/net/phy/phy.c +-@@ -547,7 +547,10 @@ static int phy_check_link_status(struct ++@@ -549,7 +549,10 @@ static int phy_check_link_status(struct + phy_link_up(phydev); + } else if (!phydev->link && phydev->state != PHY_NOLINK) { + phydev->state = PHY_NOLINK; +@@ -23,7 +23,7 @@ Signed-off-by: John Crispin + } + + return 0; +-@@ -927,7 +930,10 @@ void phy_state_machine(struct work_struc ++@@ -947,7 +950,10 @@ void phy_state_machine(struct work_struc + case PHY_HALTED: + if (phydev->link) { + phydev->link = 0; +diff --git a/target/linux/realtek/patches-5.4/702-net-ethernet-add-support-for-rtl838x-ethernet.patch b/target/linux/realtek/patches-5.4/702-net-ethernet-add-support-for-rtl838x-ethernet.patch +index 11e62450d5..952384ac89 100644 +--- a/target/linux/realtek/patches-5.4/702-net-ethernet-add-support-for-rtl838x-ethernet.patch ++++ b/target/linux/realtek/patches-5.4/702-net-ethernet-add-support-for-rtl838x-ethernet.patch +@@ -1,6 +1,6 @@ + --- a/drivers/net/ethernet/Kconfig + +++ b/drivers/net/ethernet/Kconfig +-@@ -163,6 +163,13 @@ source "drivers/net/ethernet/rdc/Kconfig ++@@ -164,6 +164,13 @@ source "drivers/net/ethernet/rdc/Kconfig + source "drivers/net/ethernet/realtek/Kconfig" + source "drivers/net/ethernet/renesas/Kconfig" + source "drivers/net/ethernet/rocker/Kconfig" +-- +2.34.1 + diff --git a/build_patches/openwrt/0000-kernel-bump-5.4-to-5.4.163.patch b/build_patches/openwrt/0000-kernel-bump-5.4-to-5.4.163.patch new file mode 100644 index 00000000..5af854df --- /dev/null +++ b/build_patches/openwrt/0000-kernel-bump-5.4-to-5.4.163.patch @@ -0,0 +1,3433 @@ +From 14940aee4566cff33fff9e068fb9559a1925cf44 Mon Sep 17 00:00:00 2001 +From: Hauke Mehrtens +Date: Sun, 5 Dec 2021 16:43:36 +0000 +Subject: [PATCH] kernel: bump 5.4 to 5.4.163 + +Removed upstreamed: + target/linux/mvebu/patches-5.4/001-PCI-aardvark-Wait-for-endpoint-to-be-ready-before-tr.patch + target/linux/mvebu/patches-5.4/016-PCI-aardvark-Train-link-immediately-after-enabling-t.patch + target/linux/mvebu/patches-5.4/017-PCI-aardvark-Improve-link-training.patch + target/linux/mvebu/patches-5.4/018-PCI-aardvark-Issue-PERST-via-GPIO.patch + target/linux/mvebu/patches-5.4/020-arm64-dts-marvell-armada-37xx-Set-pcie_reset_pin-to-.patch + +The following patch does not apply to upstream any more and needs some +more work to make it work fully again. I am not sure if we are still +able to set the UART to a none standard baud rate. + target/linux/ath79/patches-5.4/921-serial-core-add-support-for-boot-console-with-arbitr.patch + +These patches needed manually changes: + target/linux/generic/pending-5.4/110-ehci_hcd_ignore_oc.patch + target/linux/ipq806x/patches-5.4/0065-arm-override-compiler-flags.patch + target/linux/layerscape/patches-5.4/804-crypto-0016-MLKU-114-1-crypto-caam-reduce-page-0-regs-access-to-.patch + target/linux/mvebu/patches-5.4/019-PCI-aardvark-Add-PHY-support.patch + target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch + +All others updated automatically. + +Compile-tested on: malta/le, armvirt/64, lantiq/xrx200 +Runtime-tested on: malta/le, armvirt/64, lantiq/xrx200 + +Signed-off-by: Hauke Mehrtens +--- + include/kernel-version.mk | 4 +- + ...mware-loader-for-uPD720201-and-uPD72.patch | 10 +- + .../802-usb-xhci-force-msi-renesas-xhci.patch | 2 +- + .../910-unaligned_access_hacks.patch | 2 +- + ...support-for-boot-console-with-arbitr.patch | 54 ----- + .../950-0037-Add-dwc_otg-driver.patch | 2 +- + ...oup-Disable-cgroup-memory-by-default.patch | 8 +- + ...Show-that-the-VIA-VL805-supports-LPM.patch | 2 +- + ...or-host-controllers-that-don-t-updat.patch | 2 +- + ...-inbound-resource-parsing-to-helpers.patch | 6 +- + ...finitions-for-HEVC-stateless-decodin.patch | 2 +- + ...h-Add-a-format-for-column-YUV4-2-0-m.patch | 2 +- + ...-0504-mmc-sdhci-Silence-MMC-warnings.patch | 4 +- + ...core-Add-sensor-ancillary-data-V4L2-.patch | 2 +- + ...core-Add-ISP-statistics-output-V4L2-.patch | 2 +- + ...car-csi2-Negotiate-data-lanes-number.patch | 6 +- + ...l-Add-14-bit-raw-bayer-pixel-formats.patch | 2 +- + ...dd-14-bit-raw-greyscale-pixel-format.patch | 2 +- + ...l-format-for-MIPI-packed-12bit-luma-.patch | 2 +- + ...l-format-for-MIPI-packed-14bit-luma-.patch | 2 +- + ...tft-Add-support-for-display-variants.patch | 6 +- + ...-quirks-add-link-TRB-quirk-for-VL805.patch | 2 +- + ...M-dts-BCM5301X-Specify-PWM-in-the-DT.patch | 4 +- + ...dts-BCM5301X-Specify-uart2-in-the-DT.patch | 2 +- + ...dts-BCM5301X-Specify-pcie2-in-the-DT.patch | 2 +- + ...1X-Harmonize-EHCI-OHCI-DT-nodes-name.patch | 4 +- + ...CM5310X-Harmonize-xHCI-DT-nodes-name.patch | 2 +- + ...-Use-corretc-pinctrl-compatible-for-.patch | 2 +- + ...01X-Update-Ethernet-switch-node-name.patch | 2 +- + ...-Add-a-default-compatible-for-switch.patch | 2 +- + ...-Provide-defaults-ports-container-no.patch | 2 +- + ...01X-Update-Northstar-pinctrl-binding.patch | 2 +- + ...low-limiting-ports-for-ehci-platform.patch | 2 +- + ...IPS-BCM63XX-add-support-for-BCM63268.patch | 4 +- + ...MIPS-BCM63XX-add-support-for-BCM6318.patch | 6 +- + ...X-add-clkdev-lookups-for-device-tree.patch | 20 +- + .../430-MIPS-BCM63XX-add-nand-clocks.patch | 6 +- + ...ast-GRO-for-skbs-with-Ethernet-heade.patch | 2 +- + ...sfs-attributes-for-VPD-pages-0h-and-.patch | 6 +- + .../301-mips_image_cmdline_hack.patch | 2 +- + .../661-use_fq_codel_by_default.patch | 2 +- + .../generic/hack-5.4/721-phy_packets.patch | 2 +- + .../generic/hack-5.4/902-debloat_proc.patch | 2 +- + .../hack-5.4/904-debloat_dma_buf.patch | 4 +- + ...CPU_MIPS64-for-remaining-MIPS64-CPUs.patch | 2 +- + .../pending-5.4/110-ehci_hcd_ignore_oc.patch | 8 +- + .../300-mips_expose_boot_raw.patch | 4 +- + ...-support-hardware-flow-table-offload.patch | 4 +- + ...ng-with-source-address-failed-policy.patch | 18 +- + ...T-skip-GRO-for-foreign-MAC-addresses.patch | 10 +- + ...dd-support-for-threaded-NAPI-polling.patch | 18 +- + .../0065-arm-override-compiler-flags.patch | 6 +- + .../0001-MIPS-lantiq-add-pcie-driver.patch | 2 +- + .../lantiq/patches-5.4/0152-lantiq-VPE.patch | 2 +- + ...t-to-remap-kernel-cacheable-memory-t.patch | 2 +- + ...d-support-to-map-cacheable-and-non-s.patch | 2 +- + ...-dts-0011-ARM-dts-accumulated-change.patch | 14 +- + ...DWC3-IP-VBUS-glitch-issue-on-LS1021A.patch | 2 +- + ...replace-ftm0-with-ftm_alarm0-DT-node.patch | 7 +- + ...fix-that-FlexTimer-cannot-wakeup-sys.patch | 2 +- + ...-fsl-Add-clock-names-mclk0-for-SAI-n.patch | 4 +- + ...link-too-be-created-with-a-cftype-fi.patch | 4 +- + ...bfq-revert-bfq.weight-symlink-change.patch | 4 +- + ...t-break-apart-ocelot_vlan_port_apply.patch | 12 +- + ...break-out-fdb-operations-into-abstra.patch | 2 +- + ...change-prototypes-of-hwtstamping-ioc.patch | 4 +- + ...change-prototypes-of-switchdev-port-.patch | 10 +- + ...refactor-struct-ocelot_port-out-of-f.patch | 14 +- + ...separate-net_device-related-items-ou.patch | 28 +-- + ...cc-ocelot-refactor-ethtool-callbacks.patch | 10 +- + ...move-port-initialization-into-separa.patch | 6 +- + ...initialize-list-of-multicast-address.patch | 2 +- + ...split-assignment-of-the-cpu-port-int.patch | 6 +- + ...don-t-hardcode-the-number-of-the-CPU.patch | 4 +- + ...move-invariant-configs-out-of-adjust.patch | 2 +- + ...create-a-helper-for-changing-the-por.patch | 6 +- + ...adjust-MTU-on-the-CPU-port-in-NPI-mo.patch | 2 +- + ...separate-the-implementation-of-switc.patch | 2 +- + ...publish-structure-definitions-to-inc.patch | 30 +-- + ...export-ocelot_hwstamp_get-set-functi.patch | 2 +- + ...t-use-skb-queue-instead-of-skbs-list.patch | 6 +- + ...scc-ocelot-tsn-configuration-support.patch | 2 +- + ...ocelot-add-VCAP-IS2-rule-to-trap-PTP.patch | 6 +- + ...Workaround-to-allow-traffic-to-CPU-i.patch | 2 +- + ..._ocelot-don-t-flood-unicast-traffic-.patch | 4 +- + ...K-19053-crypto-caam-RNG4-TRNG-errata.patch | 2 +- + ...o-caam-reduce-page-0-regs-access-to-.patch | 12 +- + ...rypto-caam-add-Secure-Memory-support.patch | 10 +- + ...-caam-Change-structure-type-represen.patch | 4 +- + ...2-2-crypto-caam-add-power-management.patch | 2 +- + ...aer-pme-interrupts-with-none-MSI-MSI.patch | 2 +- + ...move-EH-SINGLE_STEP_SET_FEATURE-impl.patch | 2 +- + ...host-xhci-add-EH-SINGLE_STEP_SET_FEA.patch | 2 +- + ...e-print-suggested-message-if-failed-.patch | 2 +- + ...st-xhci-do-warm-reset-for-link-state.patch | 2 +- + ...agate-resolved-link-config-via-mac_l.patch | 2 +- + ...t-for-endpoint-to-be-ready-before-tr.patch | 50 ----- + ...in-link-immediately-after-enabling-t.patch | 60 ----- + ...7-PCI-aardvark-Improve-link-training.patch | 208 ------------------ + ...18-PCI-aardvark-Issue-PERST-via-GPIO.patch | 123 ----------- + .../019-PCI-aardvark-Add-PHY-support.patch | 14 +- + ...l-armada-37xx-Set-pcie_reset_pin-to-.patch | 93 -------- + ...-t-touch-PCIe-registers-if-no-card-c.patch | 4 +- + ...-initialization-with-old-Marvell-s-A.patch | 2 +- + ...r-Gateworks-PLX-PEX860x-switch-with-.patch | 6 +- + ...0031-uvc-add-iPassion-iP2970-support.patch | 6 +- + ...erial-add-ugly-custom-baud-rate-hack.patch | 2 +- + .../ramips/patches-5.4/0098-disable_cm.patch | 4 +- + ...122-mips-ralink-enable-zboot-support.patch | 2 +- + .../300-mips-add-rtl838x-platform.patch | 2 +- + .../302-clocksource-add-rtl9300-driver.patch | 4 +- + 111 files changed, 260 insertions(+), 847 deletions(-) + delete mode 100644 target/linux/ath79/patches-5.4/921-serial-core-add-support-for-boot-console-with-arbitr.patch + delete mode 100644 target/linux/mvebu/patches-5.4/001-PCI-aardvark-Wait-for-endpoint-to-be-ready-before-tr.patch + delete mode 100644 target/linux/mvebu/patches-5.4/016-PCI-aardvark-Train-link-immediately-after-enabling-t.patch + delete mode 100644 target/linux/mvebu/patches-5.4/017-PCI-aardvark-Improve-link-training.patch + delete mode 100644 target/linux/mvebu/patches-5.4/018-PCI-aardvark-Issue-PERST-via-GPIO.patch + delete mode 100644 target/linux/mvebu/patches-5.4/020-arm64-dts-marvell-armada-37xx-Set-pcie_reset_pin-to-.patch + +diff --git a/include/kernel-version.mk b/include/kernel-version.mk +index 688660cbbd..ecb2857263 100644 +--- a/include/kernel-version.mk ++++ b/include/kernel-version.mk +@@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL + KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) + endif + +-LINUX_VERSION-5.4 = .158 ++LINUX_VERSION-5.4 = .163 + +-LINUX_KERNEL_HASH-5.4.158 = 6e018fecdc8fc24553756e582d83b82d65b10a6b03ef36262a24911f839b8d59 ++LINUX_KERNEL_HASH-5.4.163 = 6246fe1776d83039d71f74eb839f38ebdec23e1b37a7bf76f3bce13cbf0290be + + remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) + sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) +diff --git a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch +index 220e5da73b..b85f62e680 100644 +--- a/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch ++++ b/target/linux/apm821xx/patches-5.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch +@@ -48,7 +48,7 @@ Signed-off-by: Vinod Koul + + #include "xhci.h" + #include "xhci-trace.h" +-@@ -65,6 +67,44 @@ ++@@ -72,6 +74,44 @@ + #define PCI_DEVICE_ID_ASMEDIA_2142_XHCI 0x2142 + #define PCI_DEVICE_ID_ASMEDIA_3242_XHCI 0x3242 + +@@ -93,7 +93,7 @@ Signed-off-by: Vinod Koul + static const char hcd_name[] = "xhci_hcd"; + + static struct hc_driver __read_mostly xhci_pci_hc_driver; +-@@ -311,6 +351,873 @@ static void xhci_pme_acpi_rtd3_enable(st ++@@ -327,6 +367,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 + /* called during probe() after chip reset completes */ + static int xhci_pci_setup(struct usb_hcd *hcd) + { +-@@ -352,6 +1259,27 @@ static int xhci_pci_probe(struct pci_dev ++@@ -368,6 +1275,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 + driver = (struct hc_driver *)id->driver_data; + + /* Prevent runtime suspending between USB-2 and USB-3 initialization */ +-@@ -413,6 +1341,16 @@ static void xhci_pci_remove(struct pci_d ++@@ -429,6 +1357,16 @@ static void xhci_pci_remove(struct pci_d + { + struct xhci_hcd *xhci; + +@@ -1012,7 +1012,7 @@ Signed-off-by: Vinod Koul + xhci = hcd_to_xhci(pci_get_drvdata(dev)); + xhci->xhc_state |= XHCI_STATE_REMOVING; + +-@@ -552,6 +1490,11 @@ static int xhci_pci_resume(struct usb_hc ++@@ -568,6 +1506,11 @@ static int xhci_pci_resume(struct usb_hc + if (pdev->vendor == PCI_VENDOR_ID_INTEL) + usb_enable_intel_xhci_ports(pdev); + +diff --git a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch +index 6980ce80ee..1fe38dc60a 100644 +--- a/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch ++++ b/target/linux/apm821xx/patches-5.4/802-usb-xhci-force-msi-renesas-xhci.patch +@@ -13,7 +13,7 @@ produce a noisy warning. + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -290,6 +290,7 @@ static void xhci_pci_quirks(struct devic ++@@ -297,6 +297,7 @@ static void xhci_pci_quirks(struct devic + pdev->device == 0x0015) { + xhci->quirks |= XHCI_RESET_ON_RESUME; + xhci->quirks |= XHCI_ZERO_64B_REGS; +diff --git a/target/linux/ath79/patches-5.4/910-unaligned_access_hacks.patch b/target/linux/ath79/patches-5.4/910-unaligned_access_hacks.patch +index d2200c8976..26c4a7b213 100644 +--- a/target/linux/ath79/patches-5.4/910-unaligned_access_hacks.patch ++++ b/target/linux/ath79/patches-5.4/910-unaligned_access_hacks.patch +@@ -754,7 +754,7 @@ + ptr = ip6hoff + sizeof(struct ipv6hdr); + --- a/include/net/neighbour.h + +++ b/include/net/neighbour.h +-@@ -274,8 +274,10 @@ static inline bool neigh_key_eq128(const ++@@ -275,8 +275,10 @@ static inline bool neigh_key_eq128(const + const u32 *n32 = (const u32 *)n->primary_key; + const u32 *p32 = pkey; + +diff --git a/target/linux/ath79/patches-5.4/921-serial-core-add-support-for-boot-console-with-arbitr.patch b/target/linux/ath79/patches-5.4/921-serial-core-add-support-for-boot-console-with-arbitr.patch +deleted file mode 100644 +index 2a2aafa568..0000000000 +--- a/target/linux/ath79/patches-5.4/921-serial-core-add-support-for-boot-console-with-arbitr.patch ++++ /dev/null +@@ -1,54 +0,0 @@ +-From 4d3c17975c7814884a721fe693b3adf5c426d759 Mon Sep 17 00:00:00 2001 +-From: Hauke Mehrtens +-Date: Tue, 10 Nov 2015 22:18:39 +0100 +-Subject: [RFC] serial: core: add support for boot console with arbitrary +- baud rates +- +-The Arduino Yun uses a baud rate of 250000 by default. The serial is +-going over the Atmel ATmega and is used to connect to this chip. +-Without this patch Linux wants to switch the console to 9600 Baud. +- +-With this patch Linux will use the configured baud rate and not a +-default one specified in uart_register_driver(). +- +-Signed-off-by: Hauke Mehrtens +-[rebased to 4.14, slightly reworded commit message] +-Signed-off-by: Sungbo Eo +---- +- drivers/tty/serial/serial_core.c | 6 +++++- +- include/linux/console.h | 1 + +- 2 files changed, 6 insertions(+), 1 deletions(-) +- +---- a/drivers/tty/serial/serial_core.c +-+++ b/drivers/tty/serial/serial_core.c +-@@ -220,6 +220,8 @@ static int uart_port_startup(struct tty_ +- if (retval == 0) { +- if (uart_console(uport) && uport->cons->cflag) { +- tty->termios.c_cflag = uport->cons->cflag; +-+ tty->termios.c_ospeed = uport->cons->baud; +-+ tty->termios.c_ispeed = uport->cons->baud; +- uport->cons->cflag = 0; +- } +- /* +-@@ -2110,8 +2112,10 @@ uart_set_options(struct uart_port *port, +- * Allow the setting of the UART parameters with a NULL console +- * too: +- */ +-- if (co) +-+ if (co) { +- co->cflag = termios.c_cflag; +-+ co->baud = baud; +-+ } +- +- return 0; +- } +---- a/include/linux/console.h +-+++ b/include/linux/console.h +-@@ -153,6 +153,7 @@ struct console { +- short flags; +- short index; +- int cflag; +-+ int baud; +- void *data; +- struct console *next; +- }; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0037-Add-dwc_otg-driver.patch b/target/linux/bcm27xx/patches-5.4/950-0037-Add-dwc_otg-driver.patch +index f514d9940d..b7cf6857ab 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0037-Add-dwc_otg-driver.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0037-Add-dwc_otg-driver.patch +@@ -1040,7 +1040,7 @@ Signed-off-by: Jonathan Bell + } + --- a/drivers/usb/core/hub.c + +++ b/drivers/usb/core/hub.c +-@@ -5369,7 +5369,7 @@ static void port_event(struct usb_hub *h ++@@ -5379,7 +5379,7 @@ static void port_event(struct usb_hub *h + port_dev->over_current_count++; + port_over_current_notify(port_dev); + +diff --git a/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch +index d4818b2239..aa7629ac0b 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch +@@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell + + --- a/kernel/cgroup/cgroup.c + +++ b/kernel/cgroup/cgroup.c +-@@ -5721,6 +5721,9 @@ int __init cgroup_init_early(void) ++@@ -5744,6 +5744,9 @@ int __init cgroup_init_early(void) + return 0; + } + +@@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell + /** + * cgroup_init - cgroup initialization + * +-@@ -5759,6 +5762,12 @@ int __init cgroup_init(void) ++@@ -5782,6 +5785,12 @@ int __init cgroup_init(void) + + mutex_unlock(&cgroup_mutex); + +@@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell + for_each_subsys(ss, ssid) { + if (ss->early_init) { + struct cgroup_subsys_state *css = +-@@ -6168,6 +6177,10 @@ static int __init cgroup_disable(char *s ++@@ -6191,6 +6200,10 @@ static int __init cgroup_disable(char *s + strcmp(token, ss->legacy_name)) + continue; + +@@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell + static_branch_disable(cgroup_subsys_enabled_key[i]); + pr_info("Disabling %s control group subsystem\n", + ss->name); +-@@ -6177,6 +6190,31 @@ static int __init cgroup_disable(char *s ++@@ -6200,6 +6213,31 @@ static int __init cgroup_disable(char *s + } + __setup("cgroup_disable=", cgroup_disable); + +diff --git a/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch b/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch +index cf3cb58362..dfc6193625 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0211-usb-xhci-Show-that-the-VIA-VL805-supports-LPM.patch +@@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -259,6 +259,10 @@ static void xhci_pci_quirks(struct devic ++@@ -266,6 +266,10 @@ static void xhci_pci_quirks(struct devic + pdev->device == 0x3432) + xhci->quirks |= XHCI_BROKEN_STREAMS; + +diff --git a/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch b/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch +index 683f0905ef..e5cff71905 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0264-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch +@@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell + + --- a/drivers/usb/host/xhci-pci.c + +++ b/drivers/usb/host/xhci-pci.c +-@@ -260,8 +260,10 @@ static void xhci_pci_quirks(struct devic ++@@ -267,8 +267,10 @@ static void xhci_pci_quirks(struct devic + xhci->quirks |= XHCI_BROKEN_STREAMS; + + if (pdev->vendor == PCI_VENDOR_ID_VIA && +diff --git a/target/linux/bcm27xx/patches-5.4/950-0441-PCI-of-Add-inbound-resource-parsing-to-helpers.patch b/target/linux/bcm27xx/patches-5.4/950-0441-PCI-of-Add-inbound-resource-parsing-to-helpers.patch +index bbcb3aeeda..8f21837db7 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0441-PCI-of-Add-inbound-resource-parsing-to-helpers.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0441-PCI-of-Add-inbound-resource-parsing-to-helpers.patch +@@ -82,7 +82,7 @@ Cc: linux-rockchip@lists.infradead.org + + --- a/drivers/pci/controller/pci-aardvark.c + +++ b/drivers/pci/controller/pci-aardvark.c +-@@ -1176,7 +1176,8 @@ static int advk_pcie_probe(struct platfo ++@@ -1523,7 +1523,8 @@ static int advk_pcie_probe(struct platfo + return ret; + } + +@@ -402,7 +402,7 @@ Cc: linux-rockchip@lists.infradead.org + } + --- a/include/linux/pci.h + +++ b/include/linux/pci.h +-@@ -2279,6 +2279,7 @@ struct irq_domain; ++@@ -2281,6 +2281,7 @@ struct irq_domain; + struct irq_domain *pci_host_bridge_of_msi_domain(struct pci_bus *bus); + int pci_parse_request_of_pci_ranges(struct device *dev, + struct list_head *resources, +@@ -410,7 +410,7 @@ Cc: linux-rockchip@lists.infradead.org + struct resource **bus_range); + + /* Arch may override this (weak) */ +-@@ -2287,9 +2288,11 @@ struct device_node *pcibios_get_phb_of_n ++@@ -2289,9 +2290,11 @@ struct device_node *pcibios_get_phb_of_n + #else /* CONFIG_OF */ + static inline struct irq_domain * + pci_host_bridge_of_msi_domain(struct pci_bus *bus) { return NULL; } +diff --git a/target/linux/bcm27xx/patches-5.4/950-0492-media-v4l-Add-definitions-for-HEVC-stateless-decodin.patch b/target/linux/bcm27xx/patches-5.4/950-0492-media-v4l-Add-definitions-for-HEVC-stateless-decodin.patch +index effff9b748..f0c311d916 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0492-media-v4l-Add-definitions-for-HEVC-stateless-decodin.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0492-media-v4l-Add-definitions-for-HEVC-stateless-decodin.patch +@@ -838,7 +838,7 @@ Signed-off-by: Mauro Carvalho Chehab + break; + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1356,6 +1356,7 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1374,6 +1374,7 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_PIX_FMT_VP8_FRAME: descr = "VP8 Frame"; break; + case V4L2_PIX_FMT_VP9: descr = "VP9"; break; + case V4L2_PIX_FMT_HEVC: descr = "HEVC"; break; /* aka H.265 */ +diff --git a/target/linux/bcm27xx/patches-5.4/950-0499-media-videodev2.h-Add-a-format-for-column-YUV4-2-0-m.patch b/target/linux/bcm27xx/patches-5.4/950-0499-media-videodev2.h-Add-a-format-for-column-YUV4-2-0-m.patch +index 5a309827e2..e2e0ec72db 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0499-media-videodev2.h-Add-a-format-for-column-YUV4-2-0-m.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0499-media-videodev2.h-Add-a-format-for-column-YUV4-2-0-m.patch +@@ -278,7 +278,7 @@ Signed-off-by: Dave Stevenson + pixfmt-nv24 + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1258,6 +1258,8 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1276,6 +1276,8 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_PIX_FMT_NV61M: descr = "Y/CrCb 4:2:2 (N-C)"; break; + case V4L2_PIX_FMT_NV12MT: descr = "Y/CbCr 4:2:0 (64x32 MB, N-C)"; break; + case V4L2_PIX_FMT_NV12MT_16X16: descr = "Y/CbCr 4:2:0 (16x16 MB, N-C)"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch b/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch +index ba815eecfd..bf15071587 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0504-mmc-sdhci-Silence-MMC-warnings.patch +@@ -22,7 +22,7 @@ Signed-off-by: Maxime Ripard + + #define MAX_TUNING_LOOP 40 + +-@@ -2768,7 +2768,7 @@ static void sdhci_timeout_timer(struct t ++@@ -2780,7 +2780,7 @@ static void sdhci_timeout_timer(struct t + spin_lock_irqsave(&host->lock, flags); + + if (host->cmd && !sdhci_data_line_cmd(host->cmd)) { +@@ -31,7 +31,7 @@ Signed-off-by: Maxime Ripard + mmc_hostname(host->mmc)); + sdhci_dumpregs(host); + +-@@ -2790,7 +2790,7 @@ static void sdhci_timeout_data_timer(str ++@@ -2802,7 +2802,7 @@ static void sdhci_timeout_data_timer(str + + if (host->data || host->data_cmd || + (host->cmd && sdhci_data_line_cmd(host->cmd))) { +diff --git a/target/linux/bcm27xx/patches-5.4/950-0641-media-uapi-v4l2-core-Add-sensor-ancillary-data-V4L2-.patch b/target/linux/bcm27xx/patches-5.4/950-0641-media-uapi-v4l2-core-Add-sensor-ancillary-data-V4L2-.patch +index 69414e381c..3fa056258c 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0641-media-uapi-v4l2-core-Add-sensor-ancillary-data-V4L2-.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0641-media-uapi-v4l2-core-Add-sensor-ancillary-data-V4L2-.patch +@@ -65,7 +65,7 @@ Signed-off-by: Naushir Patuck + + + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1332,6 +1332,7 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1350,6 +1350,7 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_META_FMT_VSP1_HGT: descr = "R-Car VSP1 2-D Histogram"; break; + case V4L2_META_FMT_UVC: descr = "UVC Payload Header Metadata"; break; + case V4L2_META_FMT_D4XX: descr = "Intel D4xx UVC Metadata"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0669-media-uapi-v4l2-core-Add-ISP-statistics-output-V4L2-.patch b/target/linux/bcm27xx/patches-5.4/950-0669-media-uapi-v4l2-core-Add-ISP-statistics-output-V4L2-.patch +index 082dff510c..d3404b8531 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0669-media-uapi-v4l2-core-Add-ISP-statistics-output-V4L2-.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0669-media-uapi-v4l2-core-Add-ISP-statistics-output-V4L2-.patch +@@ -74,7 +74,7 @@ Signed-off-by: Naushir Patuck + + + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1333,6 +1333,7 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1351,6 +1351,7 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_META_FMT_UVC: descr = "UVC Payload Header Metadata"; break; + case V4L2_META_FMT_D4XX: descr = "Intel D4xx UVC Metadata"; break; + case V4L2_META_FMT_SENSOR_DATA: descr = "Sensor Ancillary Metadata"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0803-media-rcar-csi2-Negotiate-data-lanes-number.patch b/target/linux/bcm27xx/patches-5.4/950-0803-media-rcar-csi2-Negotiate-data-lanes-number.patch +index f54b33e59c..def9ab09d5 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0803-media-rcar-csi2-Negotiate-data-lanes-number.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0803-media-rcar-csi2-Negotiate-data-lanes-number.patch +@@ -119,7 +119,7 @@ Signed-off-by: Jacopo Mondi + unsigned int i; + int mbps, ret; + +-@@ -520,10 +571,18 @@ static int rcsi2_start_receiver(struct r ++@@ -522,10 +573,18 @@ static int rcsi2_start_receiver(struct r + fld |= FLD_FLD_NUM(1); + } + +@@ -140,7 +140,7 @@ Signed-off-by: Jacopo Mondi + if (mbps < 0) + return mbps; + +-@@ -570,7 +629,7 @@ static int rcsi2_start_receiver(struct r ++@@ -572,7 +631,7 @@ static int rcsi2_start_receiver(struct r + rcsi2_write(priv, PHYCNT_REG, phycnt | PHYCNT_SHUTDOWNZ); + rcsi2_write(priv, PHYCNT_REG, phycnt | PHYCNT_SHUTDOWNZ | PHYCNT_RSTZ); + +@@ -149,7 +149,7 @@ Signed-off-by: Jacopo Mondi + if (ret) + return ret; + +-@@ -747,6 +806,7 @@ static int rcsi2_notify_bound(struct v4l ++@@ -749,6 +808,7 @@ static int rcsi2_notify_bound(struct v4l + } + + priv->remote = subdev; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0844-media-v4l-Add-14-bit-raw-bayer-pixel-formats.patch b/target/linux/bcm27xx/patches-5.4/950-0844-media-v4l-Add-14-bit-raw-bayer-pixel-formats.patch +index 1bb9a932a3..4717f0dbc5 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0844-media-v4l-Add-14-bit-raw-bayer-pixel-formats.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0844-media-v4l-Add-14-bit-raw-bayer-pixel-formats.patch +@@ -125,7 +125,7 @@ Signed-off-by: Mauro Carvalho Chehab + + - R\ :sub:`33high` + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1298,6 +1298,10 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1316,6 +1316,10 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_PIX_FMT_SGBRG12P: descr = "12-bit Bayer GBGB/RGRG Packed"; break; + case V4L2_PIX_FMT_SGRBG12P: descr = "12-bit Bayer GRGR/BGBG Packed"; break; + case V4L2_PIX_FMT_SRGGB12P: descr = "12-bit Bayer RGRG/GBGB Packed"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0845-media-v4l-Add-14-bit-raw-greyscale-pixel-format.patch b/target/linux/bcm27xx/patches-5.4/950-0845-media-v4l-Add-14-bit-raw-greyscale-pixel-format.patch +index 1910668595..52bff95e54 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0845-media-v4l-Add-14-bit-raw-greyscale-pixel-format.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0845-media-v4l-Add-14-bit-raw-greyscale-pixel-format.patch +@@ -111,7 +111,7 @@ Signed-off-by: Mauro Carvalho Chehab + pixfmt-y16 + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1212,6 +1212,7 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1230,6 +1230,7 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_PIX_FMT_Y6: descr = "6-bit Greyscale"; break; + case V4L2_PIX_FMT_Y10: descr = "10-bit Greyscale"; break; + case V4L2_PIX_FMT_Y12: descr = "12-bit Greyscale"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0847-media-Add-a-pixel-format-for-MIPI-packed-12bit-luma-.patch b/target/linux/bcm27xx/patches-5.4/950-0847-media-Add-a-pixel-format-for-MIPI-packed-12bit-luma-.patch +index b5d407b205..1f562bc1c3 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0847-media-Add-a-pixel-format-for-MIPI-packed-12bit-luma-.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0847-media-Add-a-pixel-format-for-MIPI-packed-12bit-luma-.patch +@@ -75,7 +75,7 @@ Signed-off-by: Dave Stevenson + pixfmt-y10p + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1217,6 +1217,7 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1235,6 +1235,7 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_PIX_FMT_Y16_BE: descr = "16-bit Greyscale BE"; break; + case V4L2_PIX_FMT_Y10BPACK: descr = "10-bit Greyscale (Packed)"; break; + case V4L2_PIX_FMT_Y10P: descr = "10-bit Greyscale (MIPI Packed)"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0848-media-Add-a-pixel-format-for-MIPI-packed-14bit-luma-.patch b/target/linux/bcm27xx/patches-5.4/950-0848-media-Add-a-pixel-format-for-MIPI-packed-14bit-luma-.patch +index f8b255f15a..4aefd822e2 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0848-media-Add-a-pixel-format-for-MIPI-packed-14bit-luma-.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0848-media-Add-a-pixel-format-for-MIPI-packed-14bit-luma-.patch +@@ -84,7 +84,7 @@ Signed-off-by: Dave Stevenson + pixfmt-y16 + --- a/drivers/media/v4l2-core/v4l2-ioctl.c + +++ b/drivers/media/v4l2-core/v4l2-ioctl.c +-@@ -1218,6 +1218,7 @@ static void v4l_fill_fmtdesc(struct v4l2 ++@@ -1236,6 +1236,7 @@ static void v4l_fill_fmtdesc(struct v4l2 + case V4L2_PIX_FMT_Y10BPACK: descr = "10-bit Greyscale (Packed)"; break; + case V4L2_PIX_FMT_Y10P: descr = "10-bit Greyscale (MIPI Packed)"; break; + case V4L2_PIX_FMT_Y12P: descr = "12-bit Greyscale (MIPI Packed)"; break; +diff --git a/target/linux/bcm27xx/patches-5.4/950-0960-staging-fbtft-Add-support-for-display-variants.patch b/target/linux/bcm27xx/patches-5.4/950-0960-staging-fbtft-Add-support-for-display-variants.patch +index 7206bad51d..30178b0eb8 100644 +--- a/target/linux/bcm27xx/patches-5.4/950-0960-staging-fbtft-Add-support-for-display-variants.patch ++++ b/target/linux/bcm27xx/patches-5.4/950-0960-staging-fbtft-Add-support-for-display-variants.patch +@@ -94,7 +94,7 @@ Signed-off-by: Phil Elwell + #include