aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2020-07-31 22:40:30 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2020-08-11 00:12:50 +0200
commit148d59c67edd550cf130f96844f63637707b99d5 (patch)
tree1f8582fed5b9f009c9b7c45991b89b1b2511b556 /target/linux
parent7db09853a83b2feaf2604e4fcc074100be377280 (diff)
downloadupstream-148d59c67edd550cf130f96844f63637707b99d5.tar.gz
upstream-148d59c67edd550cf130f96844f63637707b99d5.tar.bz2
upstream-148d59c67edd550cf130f96844f63637707b99d5.zip
kernel: update kernel 4.14 to version 4.14.193
Compile and runtime tested on lantiq/xrx200 and ipq40xx. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/apm821xx/patches-4.14/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch6
-rw-r--r--target/linux/ar71xx/patches-4.14/910-unaligned_access_hacks.patch2
-rw-r--r--target/linux/ath79/patches-4.14/910-unaligned_access_hacks.patch2
-rw-r--r--target/linux/brcm2708/patches-4.14/950-0002-smsx95xx-fix-crimes-against-truesize.patch4
-rw-r--r--target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch2
-rw-r--r--target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch4
-rw-r--r--target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch2
-rw-r--r--target/linux/generic/backport-4.14/950-tty-serial-exar-generalize-rs485-setup.patch4
-rw-r--r--target/linux/generic/hack-4.14/220-gc_sections.patch4
-rw-r--r--target/linux/generic/hack-4.14/221-module_exports.patch6
-rw-r--r--target/linux/generic/pending-4.14/810-pci_disable_common_quirks.patch6
-rw-r--r--target/linux/ipq40xx/patches-4.14/716-essedma-vlan-double-tag.patch123
-rw-r--r--target/linux/layerscape/patches-4.14/301-arch-support-layerscape.patch2
-rw-r--r--target/linux/layerscape/patches-4.14/802-dma-support-layerscape.patch4
-rw-r--r--target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch2
-rw-r--r--target/linux/layerscape/patches-4.14/818-qspi-support-layerscape.patch13
-rw-r--r--target/linux/mediatek/patches-4.14/0127-usb-xhci-mtk-use-ports-count-from-xhci-in-xhci_mtk_s.patch2
-rw-r--r--target/linux/mediatek/patches-4.14/0191-usb-xhci-allow-imod-interval-to-be-configurable.patch2
-rw-r--r--target/linux/mediatek/patches-4.14/0199-thermal-mtk-Cleanup-unused-defines.patch2
-rw-r--r--target/linux/mediatek/patches-4.14/0200-thermal-mediatek-add-support-for-MT7622-SoC.patch2
-rw-r--r--target/linux/ramips/patches-4.14/0069-awake-rt305x-dwc2-controller.patch2
21 files changed, 59 insertions, 137 deletions
diff --git a/target/linux/apm821xx/patches-4.14/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch b/target/linux/apm821xx/patches-4.14/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch
index f95fdf3d7f..43abd735b2 100644
--- a/target/linux/apm821xx/patches-4.14/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch
+++ b/target/linux/apm821xx/patches-4.14/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch
@@ -44,7 +44,7 @@ Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
#include "xhci.h"
#include "xhci-trace.h"
-@@ -269,6 +271,458 @@ static void xhci_pme_acpi_rtd3_enable(st
+@@ -272,6 +274,458 @@ static void xhci_pme_acpi_rtd3_enable(st
static void xhci_pme_acpi_rtd3_enable(struct pci_dev *dev) { }
#endif /* CONFIG_ACPI */
@@ -503,7 +503,7 @@ Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
/* called during probe() after chip reset completes */
static int xhci_pci_setup(struct usb_hcd *hcd)
{
-@@ -307,6 +761,22 @@ static int xhci_pci_probe(struct pci_dev
+@@ -310,6 +764,22 @@ static int xhci_pci_probe(struct pci_dev
struct hc_driver *driver;
struct usb_hcd *hcd;
@@ -526,7 +526,7 @@ Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
driver = (struct hc_driver *)id->driver_data;
/* For some HW implementation, a XHCI reset is just not enough... */
-@@ -368,6 +838,16 @@ static void xhci_pci_remove(struct pci_d
+@@ -371,6 +841,16 @@ static void xhci_pci_remove(struct pci_d
{
struct xhci_hcd *xhci;
diff --git a/target/linux/ar71xx/patches-4.14/910-unaligned_access_hacks.patch b/target/linux/ar71xx/patches-4.14/910-unaligned_access_hacks.patch
index 52f48d0d0e..6938f96551 100644
--- a/target/linux/ar71xx/patches-4.14/910-unaligned_access_hacks.patch
+++ b/target/linux/ar71xx/patches-4.14/910-unaligned_access_hacks.patch
@@ -757,7 +757,7 @@
EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -3878,14 +3878,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3879,14 +3879,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);
diff --git a/target/linux/ath79/patches-4.14/910-unaligned_access_hacks.patch b/target/linux/ath79/patches-4.14/910-unaligned_access_hacks.patch
index 5eaa14d327..f3332ba5c2 100644
--- a/target/linux/ath79/patches-4.14/910-unaligned_access_hacks.patch
+++ b/target/linux/ath79/patches-4.14/910-unaligned_access_hacks.patch
@@ -737,7 +737,7 @@
EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -3878,14 +3878,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3879,14 +3879,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);
diff --git a/target/linux/brcm2708/patches-4.14/950-0002-smsx95xx-fix-crimes-against-truesize.patch b/target/linux/brcm2708/patches-4.14/950-0002-smsx95xx-fix-crimes-against-truesize.patch
index 52999a9bd0..eca564d062 100644
--- a/target/linux/brcm2708/patches-4.14/950-0002-smsx95xx-fix-crimes-against-truesize.patch
+++ b/target/linux/brcm2708/patches-4.14/950-0002-smsx95xx-fix-crimes-against-truesize.patch
@@ -25,7 +25,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index,
u32 *data, int in_pm)
{
-@@ -1972,7 +1976,8 @@ static int smsc95xx_rx_fixup(struct usbn
+@@ -1979,7 +1983,8 @@ static int smsc95xx_rx_fixup(struct usbn
if (dev->net->features & NETIF_F_RXCSUM)
smsc95xx_rx_csum_offload(skb);
skb_trim(skb, skb->len - 4); /* remove fcs */
@@ -35,7 +35,7 @@ Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
return 1;
}
-@@ -1990,7 +1995,8 @@ static int smsc95xx_rx_fixup(struct usbn
+@@ -1997,7 +2002,8 @@ static int smsc95xx_rx_fixup(struct usbn
if (dev->net->features & NETIF_F_RXCSUM)
smsc95xx_rx_csum_offload(ax_skb);
skb_trim(ax_skb, ax_skb->len - 4); /* remove fcs */
diff --git a/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch b/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch
index 008043d8bf..aba96e4550 100644
--- a/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch
+++ b/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch
@@ -28,7 +28,7 @@ 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);
-@@ -3730,7 +3735,12 @@ static int lan78xx_probe(struct usb_inte
+@@ -3735,7 +3740,12 @@ static int lan78xx_probe(struct usb_inte
dev->pipe_intr = usb_rcvintpipe(dev->udev,
dev->ep_intr->desc.bEndpointAddress &
USB_ENDPOINT_NUMBER_MASK);
diff --git a/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch b/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch
index a098c4416c..4f6f5d2cfa 100644
--- a/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch
+++ b/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch
@@ -65,7 +65,7 @@ Cc: Kir Kolyshkin <kir@openvz.org>
* Before updating sk_refcnt, we must commit prior changes to memory
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
-@@ -1697,7 +1697,7 @@ u32 tcp_tso_autosize(const struct sock *
+@@ -1699,7 +1699,7 @@ u32 tcp_tso_autosize(const struct sock *
{
u32 bytes, segs;
@@ -74,7 +74,7 @@ Cc: Kir Kolyshkin <kir@openvz.org>
sk->sk_gso_max_size - 1 - MAX_TCP_HEADER);
/* Goal is to send at least one packet per ms,
-@@ -2215,7 +2215,7 @@ static bool tcp_small_queue_check(struct
+@@ -2217,7 +2217,7 @@ static bool tcp_small_queue_check(struct
{
unsigned int limit;
diff --git a/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch b/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch
index 2e08e514b7..0e6aa87f9d 100644
--- a/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch
+++ b/target/linux/generic/backport-4.14/030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch
@@ -30,7 +30,7 @@ Signed-off-by: Johan Hovold <johan@kernel.org>
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
-@@ -1987,7 +1987,8 @@ static const struct usb_device_id option
+@@ -1990,7 +1990,8 @@ static const struct usb_device_id option
{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d01, 0xff) }, /* D-Link DWM-156 (variant) */
{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d02, 0xff) },
{ USB_DEVICE_INTERFACE_CLASS(0x2001, 0x7d03, 0xff) },
diff --git a/target/linux/generic/backport-4.14/950-tty-serial-exar-generalize-rs485-setup.patch b/target/linux/generic/backport-4.14/950-tty-serial-exar-generalize-rs485-setup.patch
index 353dc14949..c4c4cfcb71 100644
--- a/target/linux/generic/backport-4.14/950-tty-serial-exar-generalize-rs485-setup.patch
+++ b/target/linux/generic/backport-4.14/950-tty-serial-exar-generalize-rs485-setup.patch
@@ -19,7 +19,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--- a/drivers/tty/serial/8250/8250_exar.c
+++ b/drivers/tty/serial/8250/8250_exar.c
-@@ -283,8 +283,32 @@ static int xr17v35x_register_gpio(struct
+@@ -293,8 +293,32 @@ static int xr17v35x_register_gpio(struct
return 0;
}
@@ -52,7 +52,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
};
static int iot2040_rs485_config(struct uart_port *port,
-@@ -317,19 +341,7 @@ static int iot2040_rs485_config(struct u
+@@ -327,19 +351,7 @@ static int iot2040_rs485_config(struct u
value |= mode;
writeb(value, p + UART_EXAR_MPIOLVL_7_0);
diff --git a/target/linux/generic/hack-4.14/220-gc_sections.patch b/target/linux/generic/hack-4.14/220-gc_sections.patch
index b69d8a01d6..6a4475fc6e 100644
--- a/target/linux/generic/hack-4.14/220-gc_sections.patch
+++ b/target/linux/generic/hack-4.14/220-gc_sections.patch
@@ -238,7 +238,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/*
* Data section helpers
-@@ -496,7 +497,7 @@
+@@ -497,7 +498,7 @@
#define ENTRY_TEXT \
ALIGN_FUNCTION(); \
VMLINUX_SYMBOL(__entry_text_start) = .; \
@@ -247,7 +247,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
VMLINUX_SYMBOL(__entry_text_end) = .;
#define IRQENTRY_TEXT \
-@@ -603,7 +604,7 @@
+@@ -604,7 +605,7 @@
. = ALIGN(sbss_align); \
.sbss : AT(ADDR(.sbss) - LOAD_OFFSET) { \
*(.dynsbss) \
diff --git a/target/linux/generic/hack-4.14/221-module_exports.patch b/target/linux/generic/hack-4.14/221-module_exports.patch
index 250bf1180f..003175c223 100644
--- a/target/linux/generic/hack-4.14/221-module_exports.patch
+++ b/target/linux/generic/hack-4.14/221-module_exports.patch
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#include <linux/export.h>
/* Align . to a 8 byte boundary equals to maximum function alignment. */
-@@ -341,14 +351,14 @@
+@@ -342,14 +352,14 @@
/* Kernel symbol table: Normal symbols */ \
__ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start___ksymtab) = .; \
@@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
VMLINUX_SYMBOL(__stop___ksymtab_gpl) = .; \
} \
\
-@@ -410,7 +420,7 @@
+@@ -411,7 +421,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 */ \
-@@ -793,6 +803,8 @@
+@@ -796,6 +806,8 @@
EXIT_TEXT \
EXIT_DATA \
EXIT_CALL \
diff --git a/target/linux/generic/pending-4.14/810-pci_disable_common_quirks.patch b/target/linux/generic/pending-4.14/810-pci_disable_common_quirks.patch
index 718b8addd4..1d10af647f 100644
--- a/target/linux/generic/pending-4.14/810-pci_disable_common_quirks.patch
+++ b/target/linux/generic/pending-4.14/810-pci_disable_common_quirks.patch
@@ -32,7 +32,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" this now blacklisted device.
-@@ -3095,6 +3096,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
+@@ -3108,6 +3109,7 @@ 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);
@@ -40,7 +40,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/*
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum. To
-@@ -3151,6 +3153,8 @@ static void fixup_debug_report(struct pc
+@@ -3164,6 +3166,8 @@ static void fixup_debug_report(struct pc
}
}
@@ -49,7 +49,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 (f.e. i915 driver is never loaded).
-@@ -3189,6 +3193,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+@@ -3202,6 +3206,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);
diff --git a/target/linux/ipq40xx/patches-4.14/716-essedma-vlan-double-tag.patch b/target/linux/ipq40xx/patches-4.14/716-essedma-vlan-double-tag.patch
index f57804f3c7..e268351273 100644
--- a/target/linux/ipq40xx/patches-4.14/716-essedma-vlan-double-tag.patch
+++ b/target/linux/ipq40xx/patches-4.14/716-essedma-vlan-double-tag.patch
@@ -21,11 +21,9 @@ Forwarded: no
drivers/net/phy/ar40xx.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
-diff --git a/drivers/net/phy/ar40xx.c b/drivers/net/phy/ar40xx.c
-index e408e8f7312f749aeb29c73a589047856e9479c7..421399b9b33e6f42d4e38db3f90b0c1d514a0b79 100644
--- a/drivers/net/phy/ar40xx.c
+++ b/drivers/net/phy/ar40xx.c
-@@ -1200,7 +1200,11 @@ ar40xx_init_port(struct ar40xx_priv *priv, int port)
+@@ -1200,7 +1200,11 @@ ar40xx_init_port(struct ar40xx_priv *pri
ar40xx_rmw(priv, AR40XX_REG_PORT_STATUS(port),
AR40XX_PORT_AUTO_LINK_EN, 0);
@@ -38,57 +36,7 @@ index e408e8f7312f749aeb29c73a589047856e9479c7..421399b9b33e6f42d4e38db3f90b0c1d
ar40xx_write(priv, AR40XX_REG_PORT_VLAN0(port), 0);
-From: Sven Eckelmann <sven@narfation.org>
-Date: Fri, 17 Mar 2017 11:00:40 +0100
-Subject: [PATCH] ipq40xx: Disable CTAG TX VLAN offloading
-
-The driver requires the offloading to set the VLAN specific header for the
-port selection. It can therefore not be used at the same time to offload
-the setting of the VLAN header on top of essedma interface.
-
-Forwarded: no
----
- drivers/net/ethernet/qualcomm/essedma/edma_axi.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/drivers/net/ethernet/qualcomm/essedma/edma_axi.c b/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
-index 81fc1e1b64daa41b15f21634ac1f08de0f5822a7..db184b82769f53e1554a1c51c53414ef7cadd7f6 100644
---- a/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
-+++ b/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
-@@ -970,7 +970,6 @@ static int edma_axi_probe(struct platform_device *pdev)
- edma_netdev[i]->netdev_ops = &edma_axi_netdev_ops;
- edma_netdev[i]->max_mtu = 9000;
- edma_netdev[i]->features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM
-- | NETIF_F_HW_VLAN_CTAG_TX
- | NETIF_F_HW_VLAN_CTAG_RX | NETIF_F_SG |
- NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_GRO;
- edma_netdev[i]->hw_features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM |
-From: Sven Eckelmann <sven@narfation.org>
-Date: Fri, 17 Mar 2017 11:04:50 +0100
-Subject: [PATCH] ar40xx: Enable QinQ on the switch
-
-The switch used in by IPQ40xx is using VLANs by default to select the
-outgoing port. It was therefore not possible to sent or receive 802.1q
-tagged frames over the CPU port. This can be allowed by changing the port
-configuration and lookup configuration.
-
-The resulting VLAN-tagged frames send or received by the CPU will therefore
-look like QinQ frames. The outer VLAN tag is the port-VLAN of the port from
-which the data was received or towards which the data has to be sent. The
-inner VLAN tag (when it exists) is the VLAN which was configrued on top of
-the ethernet device.
-
-Forwarded: no
----
- drivers/net/phy/ar40xx.c | 23 ++++++++++++++++++++---
- drivers/net/phy/ar40xx.h | 5 +++++
- 2 files changed, 25 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/net/phy/ar40xx.c b/drivers/net/phy/ar40xx.c
-index 421399b9b33e6f42d4e38db3f90b0c1d514a0b79..4af26638d542a9ab5ca27454ce557233bcb64575 100644
---- a/drivers/net/phy/ar40xx.c
-+++ b/drivers/net/phy/ar40xx.c
-@@ -1247,6 +1247,10 @@ ar40xx_init_globals(struct ar40xx_priv *priv)
+@@ -1243,6 +1247,10 @@ ar40xx_init_globals(struct ar40xx_priv *
t = (AR40XX_PORT0_FC_THRESH_ON_DFLT << 16) |
AR40XX_PORT0_FC_THRESH_OFF_DFLT;
ar40xx_write(priv, AR40XX_REG_PORT_FLOWCTRL_THRESH(0), t);
@@ -99,7 +47,7 @@ index 421399b9b33e6f42d4e38db3f90b0c1d514a0b79..4af26638d542a9ab5ca27454ce557233
}
static void
-@@ -1572,7 +1576,11 @@ ar40xx_setup_port(struct ar40xx_priv *priv, int port, u32 members)
+@@ -1568,7 +1576,11 @@ ar40xx_setup_port(struct ar40xx_priv *pr
u32 pvid = priv->vlan_id[priv->pvid[port]];
if (priv->vlan) {
@@ -112,7 +60,7 @@ index 421399b9b33e6f42d4e38db3f90b0c1d514a0b79..4af26638d542a9ab5ca27454ce557233
ingress = AR40XX_IN_SECURE;
} else {
egress = AR40XX_PORT_VLAN1_OUT_MODE_UNTOUCH;
-@@ -1583,8 +1591,17 @@ ar40xx_setup_port(struct ar40xx_priv *priv, int port, u32 members)
+@@ -1579,8 +1591,17 @@ ar40xx_setup_port(struct ar40xx_priv *pr
t |= pvid << AR40XX_PORT_VLAN0_DEF_CVID_S;
ar40xx_write(priv, AR40XX_REG_PORT_VLAN0(port), t);
@@ -132,8 +80,31 @@ index 421399b9b33e6f42d4e38db3f90b0c1d514a0b79..4af26638d542a9ab5ca27454ce557233
ar40xx_write(priv, AR40XX_REG_PORT_VLAN1(port), t);
t = members;
-diff --git a/drivers/net/phy/ar40xx.h b/drivers/net/phy/ar40xx.h
-index 722bf6ae4b32fcefa33e007ae34a3202315a3fe1..7ba40ccf753fe833e6a01b32cfe1407a317d92ee 100644
+--- a/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
++++ b/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
+@@ -970,7 +970,6 @@ static int edma_axi_probe(struct platfor
+ edma_netdev[i]->netdev_ops = &edma_axi_netdev_ops;
+ edma_netdev[i]->max_mtu = 9000;
+ edma_netdev[i]->features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM
+- | NETIF_F_HW_VLAN_CTAG_TX
+ | NETIF_F_HW_VLAN_CTAG_RX | NETIF_F_SG |
+ NETIF_F_TSO | NETIF_F_GRO;
+ edma_netdev[i]->hw_features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM |
+@@ -982,10 +981,10 @@ static int edma_axi_probe(struct platfor
+ NETIF_F_TSO | NETIF_F_GRO;
+
+ #ifdef CONFIG_RFS_ACCEL
+- edma_netdev[i]->features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
+- edma_netdev[i]->hw_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
+- edma_netdev[i]->vlan_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
+- edma_netdev[i]->wanted_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
++ edma_netdev[i]->features |= NETIF_F_NTUPLE;
++ edma_netdev[i]->hw_features |= NETIF_F_NTUPLE;
++ edma_netdev[i]->vlan_features |= NETIF_F_NTUPLE;
++ edma_netdev[i]->wanted_features |= NETIF_F_NTUPLE;
+ #endif
+ edma_set_ethtool_ops(edma_netdev[i]);
+
--- a/drivers/net/phy/ar40xx.h
+++ b/drivers/net/phy/ar40xx.h
@@ -151,6 +151,9 @@ struct ar40xx_mib_desc {
@@ -155,39 +126,3 @@ index 722bf6ae4b32fcefa33e007ae34a3202315a3fe1..7ba40ccf753fe833e6a01b32cfe1407a
#define AR40XX_PORT_VLAN1_PORT_VLAN_PROP BIT(6)
#define AR40XX_PORT_VLAN1_OUT_MODE BITS(12, 2)
#define AR40XX_PORT_VLAN1_OUT_MODE_S 12
-From: Sven Eckelmann <sven@narfation.org>
-Date: Wed, 29 Mar 2017 16:05:26 +0200
-Subject: [PATCH] ipq40xx: Disable NETIF_F_RXHASH support in essedma
-
-The NETIF_F_RXHASH requires that each skb set the hash correctly with
-skb_set_hash. essedma tries to do that but the set hash always results in
-only used CPU when RPS is allowed for all CPUs.
-
-Disabling RXHASH works around this problem for now.
-
-IssueID: #5477
-Forwarded: no
- Upstream author was informed via e-mail about the problem
----
- drivers/net/ethernet/qualcomm/essedma/edma_axi.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/net/ethernet/qualcomm/essedma/edma_axi.c b/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
-index db184b82769f53e1554a1c51c53414ef7cadd7f6..975e119cfe6f1a8cfe54ac0eb8f8752aa4bf22af 100644
---- a/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
-+++ b/drivers/net/ethernet/qualcomm/essedma/edma_axi.c
-@@ -984,10 +984,10 @@ static int edma_axi_probe(struct platform_device *pdev)
- NETIF_F_GRO;
-
- #ifdef CONFIG_RFS_ACCEL
-- edma_netdev[i]->features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
-- edma_netdev[i]->hw_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
-- edma_netdev[i]->vlan_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
-- edma_netdev[i]->wanted_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
-+ edma_netdev[i]->features |= NETIF_F_NTUPLE;
-+ edma_netdev[i]->hw_features |= NETIF_F_NTUPLE;
-+ edma_netdev[i]->vlan_features |= NETIF_F_NTUPLE;
-+ edma_netdev[i]->wanted_features |= NETIF_F_NTUPLE;
- #endif
- edma_set_ethtool_ops(edma_netdev[i]);
-
diff --git a/target/linux/layerscape/patches-4.14/301-arch-support-layerscape.patch b/target/linux/layerscape/patches-4.14/301-arch-support-layerscape.patch
index 59ed130567..302645e776 100644
--- a/target/linux/layerscape/patches-4.14/301-arch-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/301-arch-support-layerscape.patch
@@ -276,7 +276,7 @@ Signed-off-by: Zhao Qiang <qiang.zhao@nxp.com>
#define PROT_SECT_DEVICE_nGnRE (PROT_SECT_DEFAULT | PMD_SECT_PXN | PMD_SECT_UXN | PMD_ATTRINDX(MT_DEVICE_nGnRE))
#define PROT_SECT_NORMAL (PROT_SECT_DEFAULT | PMD_SECT_PXN | PMD_SECT_UXN | PMD_ATTRINDX(MT_NORMAL))
@@ -68,6 +69,7 @@
- #define PAGE_HYP_DEVICE __pgprot(PROT_DEVICE_nGnRE | PTE_HYP)
+ #define PAGE_HYP_DEVICE __pgprot(_PROT_DEFAULT | PTE_ATTRINDX(MT_DEVICE_nGnRE) | PTE_HYP | PTE_HYP_XN)
#define PAGE_S2 __pgprot(_PROT_DEFAULT | PTE_S2_MEMATTR(MT_S2_NORMAL) | PTE_S2_RDONLY)
+#define PAGE_S2_NS __pgprot(PTE_S2_MEMATTR(MT_S2_NORMAL) | PTE_S2_RDWR | PTE_TYPE_PAGE | PTE_AF)
diff --git a/target/linux/layerscape/patches-4.14/802-dma-support-layerscape.patch b/target/linux/layerscape/patches-4.14/802-dma-support-layerscape.patch
index e39bae0d1d..0b75847281 100644
--- a/target/linux/layerscape/patches-4.14/802-dma-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/802-dma-support-layerscape.patch
@@ -2964,7 +2964,7 @@ Signed-off-by: Yuan Yao <yao.yuan@nxp.com>
dst_addr = sg_dma_address(sg);
soff = 0;
doff = fsl_chan->fsc.addr_width;
-@@ -802,6 +858,7 @@ static void fsl_edma_free_chan_resources
+@@ -809,6 +865,7 @@ static void fsl_edma_free_chan_resources
fsl_edma_chan_mux(fsl_chan, 0, false);
fsl_chan->edesc = NULL;
vchan_get_all_descriptors(&fsl_chan->vchan, &head);
@@ -2972,7 +2972,7 @@ Signed-off-by: Yuan Yao <yao.yuan@nxp.com>
spin_unlock_irqrestore(&fsl_chan->vchan.lock, flags);
vchan_dma_desc_free_list(&fsl_chan->vchan, &head);
-@@ -937,6 +994,7 @@ static int fsl_edma_probe(struct platfor
+@@ -944,6 +1001,7 @@ static int fsl_edma_probe(struct platfor
fsl_chan->slave_id = 0;
fsl_chan->idle = true;
fsl_chan->vchan.desc_free = fsl_edma_free_desc;
diff --git a/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch b/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch
index 1875c8931d..e7c42d8d9b 100644
--- a/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/816-pcie-support-layerscape.patch
@@ -5604,7 +5604,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
* them, we have to fall back to INTx or other interrupts, e.g., a
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
-@@ -3395,6 +3395,13 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_A
+@@ -3408,6 +3408,13 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_A
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATHEROS, 0x0033, quirk_no_bus_reset);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ATHEROS, 0x0034, quirk_no_bus_reset);
diff --git a/target/linux/layerscape/patches-4.14/818-qspi-support-layerscape.patch b/target/linux/layerscape/patches-4.14/818-qspi-support-layerscape.patch
index 1546e4b6a7..3e482465b4 100644
--- a/target/linux/layerscape/patches-4.14/818-qspi-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/818-qspi-support-layerscape.patch
@@ -730,16 +730,3 @@ Signed-off-by: Yogesh Gaur <yogeshnarayan.gaur@nxp.com>
{ "w25x32", INFO(0xef3016, 0, 64 * 1024, 64, SECT_4K) },
{ "w25q20cl", INFO(0xef4012, 0, 64 * 1024, 4, SECT_4K) },
{ "w25q20bw", INFO(0xef5012, 0, 64 * 1024, 4, SECT_4K) },
---- a/drivers/spi/spi-fsl-dspi.c
-+++ b/drivers/spi/spi-fsl-dspi.c
-@@ -1024,8 +1024,8 @@ static int dspi_probe(struct platform_de
- goto out_clk_put;
- }
-
-- ret = devm_request_irq(&pdev->dev, dspi->irq, dspi_interrupt, 0,
-- pdev->name, dspi);
-+ ret = devm_request_irq(&pdev->dev, dspi->irq, dspi_interrupt,
-+ IRQF_SHARED, pdev->name, dspi);
- if (ret < 0) {
- dev_err(&pdev->dev, "Unable to attach DSPI interrupt\n");
- goto out_clk_put;
diff --git a/target/linux/mediatek/patches-4.14/0127-usb-xhci-mtk-use-ports-count-from-xhci-in-xhci_mtk_s.patch b/target/linux/mediatek/patches-4.14/0127-usb-xhci-mtk-use-ports-count-from-xhci-in-xhci_mtk_s.patch
index f17da7003f..3ead12e808 100644
--- a/target/linux/mediatek/patches-4.14/0127-usb-xhci-mtk-use-ports-count-from-xhci-in-xhci_mtk_s.patch
+++ b/target/linux/mediatek/patches-4.14/0127-usb-xhci-mtk-use-ports-count-from-xhci-in-xhci_mtk_s.patch
@@ -17,7 +17,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
--- a/drivers/usb/host/xhci-mtk-sch.c
+++ b/drivers/usb/host/xhci-mtk-sch.c
-@@ -289,12 +289,13 @@ static bool need_bw_sch(struct usb_host_
+@@ -293,12 +293,13 @@ static bool need_bw_sch(struct usb_host_
int xhci_mtk_sch_init(struct xhci_hcd_mtk *mtk)
{
diff --git a/target/linux/mediatek/patches-4.14/0191-usb-xhci-allow-imod-interval-to-be-configurable.patch b/target/linux/mediatek/patches-4.14/0191-usb-xhci-allow-imod-interval-to-be-configurable.patch
index df099ea3f3..32b4e63680 100644
--- a/target/linux/mediatek/patches-4.14/0191-usb-xhci-allow-imod-interval-to-be-configurable.patch
+++ b/target/linux/mediatek/patches-4.14/0191-usb-xhci-allow-imod-interval-to-be-configurable.patch
@@ -86,7 +86,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
if (!xhci->shared_hcd) {
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
-@@ -280,6 +280,9 @@ static int xhci_pci_setup(struct usb_hcd
+@@ -283,6 +283,9 @@ static int xhci_pci_setup(struct usb_hcd
if (!xhci->sbrn)
pci_read_config_byte(pdev, XHCI_SBRN_OFFSET, &xhci->sbrn);
diff --git a/target/linux/mediatek/patches-4.14/0199-thermal-mtk-Cleanup-unused-defines.patch b/target/linux/mediatek/patches-4.14/0199-thermal-mtk-Cleanup-unused-defines.patch
index af910a6660..a7288acdf1 100644
--- a/target/linux/mediatek/patches-4.14/0199-thermal-mtk-Cleanup-unused-defines.patch
+++ b/target/linux/mediatek/patches-4.14/0199-thermal-mtk-Cleanup-unused-defines.patch
@@ -40,7 +40,7 @@ Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
struct mtk_thermal;
struct thermal_bank_cfg {
-@@ -767,7 +760,7 @@ static struct platform_driver mtk_therma
+@@ -765,7 +758,7 @@ static struct platform_driver mtk_therma
.probe = mtk_thermal_probe,
.remove = mtk_thermal_remove,
.driver = {
diff --git a/target/linux/mediatek/patches-4.14/0200-thermal-mediatek-add-support-for-MT7622-SoC.patch b/target/linux/mediatek/patches-4.14/0200-thermal-mediatek-add-support-for-MT7622-SoC.patch
index 1dc293641e..731bd163d8 100644
--- a/target/linux/mediatek/patches-4.14/0200-thermal-mediatek-add-support-for-MT7622-SoC.patch
+++ b/target/linux/mediatek/patches-4.14/0200-thermal-mediatek-add-support-for-MT7622-SoC.patch
@@ -68,7 +68,7 @@ Signed-off-by: Shunli Wang <shunli.wang@mediatek.com>
/**
* raw_to_mcelsius - convert a raw ADC value to mcelsius
* @mt: The thermal controller
-@@ -633,6 +664,10 @@ static const struct of_device_id mtk_the
+@@ -631,6 +662,10 @@ static const struct of_device_id mtk_the
{
.compatible = "mediatek,mt2712-thermal",
.data = (void *)&mt2712_thermal_data,
diff --git a/target/linux/ramips/patches-4.14/0069-awake-rt305x-dwc2-controller.patch b/target/linux/ramips/patches-4.14/0069-awake-rt305x-dwc2-controller.patch
index 0e09e1d4e0..e75d19dfce 100644
--- a/target/linux/ramips/patches-4.14/0069-awake-rt305x-dwc2-controller.patch
+++ b/target/linux/ramips/patches-4.14/0069-awake-rt305x-dwc2-controller.patch
@@ -1,6 +1,6 @@
--- a/drivers/usb/dwc2/platform.c
+++ b/drivers/usb/dwc2/platform.c
-@@ -406,6 +406,12 @@ static int dwc2_driver_probe(struct plat
+@@ -407,6 +407,12 @@ static int dwc2_driver_probe(struct plat
if (retval)
return retval;