aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorPetr Štetiar <ynezz@true.cz>2020-04-07 10:08:16 +0200
committerPetr Štetiar <ynezz@true.cz>2020-04-09 00:12:46 +0200
commitb299002877c801202c3b61d5e09865e88f506176 (patch)
treecf1d30e16b53a53e4d04630527f67b01eac38181 /target/linux
parent196cab719f8f318ec771e5f1a07728c12b7fa207 (diff)
downloadupstream-b299002877c801202c3b61d5e09865e88f506176.tar.gz
upstream-b299002877c801202c3b61d5e09865e88f506176.tar.bz2
upstream-b299002877c801202c3b61d5e09865e88f506176.zip
kernel: bump 5.4 to 5.4.31
Refreshed patches, removed upstreamed patches: oxnas: 003-ARM-dts-oxnas-Fix-clear-mask-property.patch generic: 184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch Run tested: apu2, qemu-x86-64, apalis Build tested: sunxi/a53, imx6, x86/64, ipq40xx Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> [apu2] Signed-off-by: Petr Štetiar <ynezz@true.cz>
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0043-MMC-added-alternative-MMC-driver.patch2
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch4
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0456-dma-mapping-treat-dev-bus_dma_mask-as-a-DMA-limit.patch2
-rw-r--r--target/linux/generic/backport-5.4/300-MIPS-Exclude-more-dsemul-code-when-CONFIG_MIPS_FP_SU.patch12
-rw-r--r--target/linux/generic/backport-5.4/745-v5.7-net-dsa-mt7530-add-support-for-port-mirroring.patch8
-rw-r--r--target/linux/generic/hack-5.4/647-netfilter-flow-acct.patch4
-rw-r--r--target/linux/generic/hack-5.4/721-phy_packets.patch6
-rw-r--r--target/linux/generic/hack-5.4/901-debloat_sock_diag.patch4
-rw-r--r--target/linux/generic/pending-5.4/102-MIPS-only-process-negative-stack-offsets-on-stack-tr.patch2
-rw-r--r--target/linux/generic/pending-5.4/184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch55
-rw-r--r--target/linux/generic/pending-5.4/630-packet_socket_type.patch10
-rw-r--r--target/linux/generic/pending-5.4/655-increase_skb_pad.patch2
-rw-r--r--target/linux/generic/pending-5.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch12
-rw-r--r--target/linux/mediatek/patches-5.4/0301-mtd-mtk-ecc-move-mtk-ecc-header-file-to-include-mtd.patch4
-rw-r--r--target/linux/mediatek/patches-5.4/0303-mtd-spinand-disable-on-die-ECC.patch4
-rw-r--r--target/linux/mediatek/patches-5.4/0306-spi-spi-mem-MediaTek-Add-SPI-NAND-Flash-interface-dr.patch14
-rw-r--r--target/linux/mediatek/patches-5.4/0307-dts-mt7629-add-snand-support.patch4
-rw-r--r--target/linux/mediatek/patches-5.4/0308-dts-mt7622-add-snand-support.patch10
-rw-r--r--target/linux/mediatek/patches-5.4/0310-dts-add-wmac-support-for-mt7622-rfb1.patch12
-rw-r--r--target/linux/mediatek/patches-5.4/0400-eth-fix-rx-vlan-hw-offload.patch12
-rw-r--r--target/linux/mediatek/patches-5.4/0401-eth-fix-eth1-tx-timeout.patch11
-rw-r--r--target/linux/mediatek/patches-5.4/0900-bt-mtk-serial-fix.patch6
-rw-r--r--target/linux/mediatek/patches-5.4/0990-gsw-rtl8367s-mt7622-support.patch16
-rw-r--r--target/linux/mediatek/patches-5.4/0999-hnat.patch36
-rw-r--r--target/linux/oxnas/patches-5.4/003-ARM-dts-oxnas-Fix-clear-mask-property.patch55
25 files changed, 83 insertions, 224 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0043-MMC-added-alternative-MMC-driver.patch b/target/linux/bcm27xx/patches-5.4/950-0043-MMC-added-alternative-MMC-driver.patch
index 327aef06ee..362b5c9ada 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0043-MMC-added-alternative-MMC-driver.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0043-MMC-added-alternative-MMC-driver.patch
@@ -267,7 +267,7 @@ Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
goto out;
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
-@@ -1919,7 +1919,8 @@ EXPORT_SYMBOL(mmc_erase);
+@@ -1922,7 +1922,8 @@ EXPORT_SYMBOL(mmc_erase);
int mmc_can_erase(struct mmc_card *card)
{
if ((card->host->caps & MMC_CAP_ERASE) &&
diff --git a/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch b/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
index ca66626711..4286abf01a 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch
@@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
/* Device and char device-related information */
static DEFINE_IDA(gpio_ida);
static dev_t gpio_devt;
-@@ -3084,8 +3086,8 @@ int gpiod_direction_output(struct gpio_d
+@@ -3091,8 +3093,8 @@ int gpiod_direction_output(struct gpio_d
value = !!value;
/* GPIOs used for enabled IRQs shall not be set as output */
@@ -37,7 +37,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
gpiod_err(desc,
"%s: tried to set a GPIO tied to an IRQ as output\n",
__func__);
-@@ -3887,7 +3889,7 @@ int gpiochip_lock_as_irq(struct gpio_chi
+@@ -3894,7 +3896,7 @@ int gpiochip_lock_as_irq(struct gpio_chi
}
}
diff --git a/target/linux/bcm27xx/patches-5.4/950-0456-dma-mapping-treat-dev-bus_dma_mask-as-a-DMA-limit.patch b/target/linux/bcm27xx/patches-5.4/950-0456-dma-mapping-treat-dev-bus_dma_mask-as-a-DMA-limit.patch
index 05dad5ddaf..155e18936a 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0456-dma-mapping-treat-dev-bus_dma_mask-as-a-DMA-limit.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0456-dma-mapping-treat-dev-bus_dma_mask-as-a-DMA-limit.patch
@@ -187,7 +187,7 @@ Signed-off-by: Christoph Hellwig <hch@lst.de>
}
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
-@@ -899,7 +899,7 @@ static int ahci_configure_dma_masks(stru
+@@ -900,7 +900,7 @@ static int ahci_configure_dma_masks(stru
* value, don't extend it here. This happens on STA2X11, for example.
*
* XXX: manipulating the DMA mask from platform code is completely
diff --git a/target/linux/generic/backport-5.4/300-MIPS-Exclude-more-dsemul-code-when-CONFIG_MIPS_FP_SU.patch b/target/linux/generic/backport-5.4/300-MIPS-Exclude-more-dsemul-code-when-CONFIG_MIPS_FP_SU.patch
index 1be051e1df..0bc58e756b 100644
--- a/target/linux/generic/backport-5.4/300-MIPS-Exclude-more-dsemul-code-when-CONFIG_MIPS_FP_SU.patch
+++ b/target/linux/generic/backport-5.4/300-MIPS-Exclude-more-dsemul-code-when-CONFIG_MIPS_FP_SU.patch
@@ -13,8 +13,6 @@ Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
arch/mips/kernel/vdso.c | 26 +++++++++++++++-----------
3 files changed, 29 insertions(+), 19 deletions(-)
-diff --git a/arch/mips/include/asm/processor.h b/arch/mips/include/asm/processor.h
-index 7619ad319400..813ba94d87bb 100644
--- a/arch/mips/include/asm/processor.h
+++ b/arch/mips/include/asm/processor.h
@@ -253,13 +253,13 @@ struct thread_struct {
@@ -56,11 +54,9 @@ index 7619ad319400..813ba94d87bb 100644
/* \
* Saved DSP stuff \
*/ \
-diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
-index 339870ed92f7..b2a797557825 100644
--- a/arch/mips/kernel/process.c
+++ b/arch/mips/kernel/process.c
-@@ -75,7 +75,9 @@ void start_thread(struct pt_regs * regs, unsigned long pc, unsigned long sp)
+@@ -75,7 +75,9 @@ void start_thread(struct pt_regs * regs,
lose_fpu(0);
clear_thread_flag(TIF_MSA_CTX_LIVE);
clear_used_math();
@@ -70,7 +66,7 @@ index 339870ed92f7..b2a797557825 100644
init_dsp();
regs->cp0_epc = pc;
regs->regs[29] = sp;
-@@ -176,7 +178,9 @@ int copy_thread_tls(unsigned long clone_flags, unsigned long usp,
+@@ -176,7 +178,9 @@ int copy_thread_tls(unsigned long clone_
clear_tsk_thread_flag(p, TIF_FPUBOUND);
#endif /* CONFIG_MIPS_MT_FPAFF */
@@ -93,8 +89,6 @@ index 339870ed92f7..b2a797557825 100644
/* Space for the VDSO, data page & GIC user page */
top -= PAGE_ALIGN(current->thread.abi->vdso->size);
-diff --git a/arch/mips/kernel/vdso.c b/arch/mips/kernel/vdso.c
-index bc35f8499111..3adb7354bc01 100644
--- a/arch/mips/kernel/vdso.c
+++ b/arch/mips/kernel/vdso.c
@@ -71,10 +71,12 @@ subsys_initcall(init_vdso);
@@ -113,7 +107,7 @@ index bc35f8499111..3adb7354bc01 100644
if (current->flags & PF_RANDOMIZE) {
base += get_random_int() & (VDSO_RANDOMIZE_SIZE - 1);
-@@ -95,14 +97,16 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
+@@ -95,14 +97,16 @@ int arch_setup_additional_pages(struct l
if (down_write_killable(&mm->mmap_sem))
return -EINTR;
diff --git a/target/linux/generic/backport-5.4/745-v5.7-net-dsa-mt7530-add-support-for-port-mirroring.patch b/target/linux/generic/backport-5.4/745-v5.7-net-dsa-mt7530-add-support-for-port-mirroring.patch
index 39e351e279..4185547264 100644
--- a/target/linux/generic/backport-5.4/745-v5.7-net-dsa-mt7530-add-support-for-port-mirroring.patch
+++ b/target/linux/generic/backport-5.4/745-v5.7-net-dsa-mt7530-add-support-for-port-mirroring.patch
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
-@@ -1222,6 +1222,64 @@ mt7530_port_vlan_del(struct dsa_switch *ds, int port,
+@@ -1222,6 +1222,64 @@ mt7530_port_vlan_del(struct dsa_switch *
return 0;
}
@@ -80,9 +80,9 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
+}
+
static enum dsa_tag_protocol
- mtk_get_tag_protocol(struct dsa_switch *ds, int port,
- enum dsa_tag_protocol mp)
-@@ -1613,6 +1671,8 @@ static const struct dsa_switch_ops mt7530_switch_ops = {
+ mtk_get_tag_protocol(struct dsa_switch *ds, int port)
+ {
+@@ -1606,6 +1664,8 @@ static const struct dsa_switch_ops mt753
.port_vlan_prepare = mt7530_port_vlan_prepare,
.port_vlan_add = mt7530_port_vlan_add,
.port_vlan_del = mt7530_port_vlan_del,
diff --git a/target/linux/generic/hack-5.4/647-netfilter-flow-acct.patch b/target/linux/generic/hack-5.4/647-netfilter-flow-acct.patch
index 920514f11f..a7761e2d46 100644
--- a/target/linux/generic/hack-5.4/647-netfilter-flow-acct.patch
+++ b/target/linux/generic/hack-5.4/647-netfilter-flow-acct.patch
@@ -52,7 +52,7 @@
/* For layer 4 checksum field offset. */
#include <linux/tcp.h>
#include <linux/udp.h>
-@@ -295,6 +296,7 @@ nf_flow_offload_ip_hook(void *priv, stru
+@@ -296,6 +297,7 @@ nf_flow_offload_ip_hook(void *priv, stru
skb->dev = outdev;
nexthop = rt_nexthop(rt, flow->tuplehash[!dir].tuple.src_v4.s_addr);
skb_dst_set_noref(skb, &rt->dst);
@@ -60,7 +60,7 @@
neigh_xmit(NEIGH_ARP_TABLE, outdev, &nexthop, skb);
return NF_STOLEN;
-@@ -524,6 +526,7 @@ nf_flow_offload_ipv6_hook(void *priv, st
+@@ -526,6 +528,7 @@ nf_flow_offload_ipv6_hook(void *priv, st
skb->dev = outdev;
nexthop = rt6_nexthop(rt, &flow->tuplehash[!dir].tuple.src_v6);
skb_dst_set_noref(skb, &rt->dst);
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 a04529e6e4..07845da1ef 100644
--- a/target/linux/generic/hack-5.4/721-phy_packets.patch
+++ b/target/linux/generic/hack-5.4/721-phy_packets.patch
@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
*/
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2665,6 +2665,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -2667,6 +2667,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
@@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
-@@ -2796,16 +2800,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -2798,16 +2802,6 @@ static inline struct sk_buff *dev_alloc_
}
@@ -101,7 +101,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
help
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -3193,10 +3193,20 @@ static int xmit_one(struct sk_buff *skb,
+@@ -3195,10 +3195,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/hack-5.4/901-debloat_sock_diag.patch b/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch
index aec1d58fa7..3a1e23480c 100644
--- a/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch
+++ b/target/linux/generic/hack-5.4/901-debloat_sock_diag.patch
@@ -16,7 +16,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/Kconfig
+++ b/net/Kconfig
-@@ -100,6 +100,9 @@ source "net/netlabel/Kconfig"
+@@ -103,6 +103,9 @@ source "net/netlabel/Kconfig"
endif # if INET
@@ -105,7 +105,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
{
--- a/net/ipv4/Kconfig
+++ b/net/ipv4/Kconfig
-@@ -399,6 +399,7 @@ config INET_TUNNEL
+@@ -400,6 +400,7 @@ config INET_TUNNEL
config INET_DIAG
tristate "INET: socket monitoring interface"
diff --git a/target/linux/generic/pending-5.4/102-MIPS-only-process-negative-stack-offsets-on-stack-tr.patch b/target/linux/generic/pending-5.4/102-MIPS-only-process-negative-stack-offsets-on-stack-tr.patch
index 0b87f493ec..45319415f1 100644
--- a/target/linux/generic/pending-5.4/102-MIPS-only-process-negative-stack-offsets-on-stack-tr.patch
+++ b/target/linux/generic/pending-5.4/102-MIPS-only-process-negative-stack-offsets-on-stack-tr.patch
@@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/arch/mips/kernel/process.c
+++ b/arch/mips/kernel/process.c
-@@ -361,6 +361,8 @@ static inline int is_sp_move_ins(union m
+@@ -365,6 +365,8 @@ static inline int is_sp_move_ins(union m
if (ip->i_format.opcode == addiu_op ||
ip->i_format.opcode == daddiu_op) {
diff --git a/target/linux/generic/pending-5.4/184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch b/target/linux/generic/pending-5.4/184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch
deleted file mode 100644
index a37e76d350..0000000000
--- a/target/linux/generic/pending-5.4/184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 9d2e23253eb5fabff02a7ce4be9c4a7fc23562e8 Mon Sep 17 00:00:00 2001
-From: Pawel Dembicki <paweldembicki@gmail.com>
-Date: Fri, 20 Mar 2020 22:56:28 +0100
-Subject: [PATCH v2 3/3] USB: serial: option: add Wistron Neweb D19Q1
-
-This modem is embedded on dlink dwr-960 router.
-The oem configuration states:
-
-T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
-D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
-P: Vendor=1435 ProdID=d191 Rev=ff.ff
-S: Manufacturer=Android
-S: Product=Android
-S: SerialNumber=0123456789ABCDEF
-C:* #Ifs= 6 Cfg#= 1 Atr=80 MxPwr=500mA
-I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
-E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=(none)
-E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none)
-E: Ad=84(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
-E: Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none)
-E: Ad=86(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
-E: Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-I:* If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
-E: Ad=88(I) Atr=03(Int.) MxPS= 8 Ivl=32ms
-E: Ad=87(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-E: Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-I:* If#= 5 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=(none)
-E: Ad=89(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
-E: Ad=06(O) Atr=02(Bulk) MxPS= 512 Ivl=125us
-
-Tested on openwrt distribution
-
-Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
----
- drivers/usb/serial/option.c | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/drivers/usb/serial/option.c
-+++ b/drivers/usb/serial/option.c
-@@ -1990,6 +1990,8 @@ static const struct usb_device_id option
- { USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x3e01, 0xff, 0xff, 0xff) }, /* D-Link DWM-152/C1 */
- { USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x3e02, 0xff, 0xff, 0xff) }, /* D-Link DWM-156/C1 */
- { USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x7e11, 0xff, 0xff, 0xff) }, /* D-Link DWM-156/A3 */
-+ { USB_DEVICE_INTERFACE_CLASS(0x1435, 0xd191, 0xff), /* Wistron Neweb D19Q1 */
-+ .driver_info = RSVD(1) | RSVD(4) },
- { USB_DEVICE_INTERFACE_CLASS(0x2020, 0x2031, 0xff), /* Olicard 600 */
- .driver_info = RSVD(4) },
- { USB_DEVICE_INTERFACE_CLASS(0x2020, 0x2060, 0xff), /* BroadMobi BM818 */
diff --git a/target/linux/generic/pending-5.4/630-packet_socket_type.patch b/target/linux/generic/pending-5.4/630-packet_socket_type.patch
index fcd00ad666..622aada943 100644
--- a/target/linux/generic/pending-5.4/630-packet_socket_type.patch
+++ b/target/linux/generic/pending-5.4/630-packet_socket_type.patch
@@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -2181,12 +2183,12 @@ static int tpacket_rcv(struct sk_buff *s
+@@ -2182,12 +2184,12 @@ static int tpacket_rcv(struct sk_buff *s
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
@@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -3268,6 +3270,7 @@ static int packet_create(struct net *net
+@@ -3279,6 +3281,7 @@ static int packet_create(struct net *net
mutex_init(&po->pg_vec_lock);
po->rollover = NULL;
po->prot_hook.func = packet_rcv;
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3901,6 +3904,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3912,6 +3915,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
@@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
default:
return -ENOPROTOOPT;
}
-@@ -3957,6 +3970,13 @@ static int packet_getsockopt(struct sock
+@@ -3968,6 +3981,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
@@ -128,7 +128,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
break;
--- a/net/packet/internal.h
+++ b/net/packet/internal.h
-@@ -133,6 +133,7 @@ struct packet_sock {
+@@ -136,6 +136,7 @@ struct packet_sock {
int (*xmit)(struct sk_buff *skb);
struct packet_type prot_hook ____cacheline_aligned_in_smp;
atomic_t tp_drops ____cacheline_aligned_in_smp;
diff --git a/target/linux/generic/pending-5.4/655-increase_skb_pad.patch b/target/linux/generic/pending-5.4/655-increase_skb_pad.patch
index 4fd40c65f5..d8ca330ac2 100644
--- a/target/linux/generic/pending-5.4/655-increase_skb_pad.patch
+++ b/target/linux/generic/pending-5.4/655-increase_skb_pad.patch
@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2631,7 +2631,7 @@ static inline int pskb_network_may_pull(
+@@ -2633,7 +2633,7 @@ static inline int pskb_network_may_pull(
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD
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 951be15610..d34ba6a569 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
@@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#endif
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -822,6 +822,7 @@ struct sk_buff {
+@@ -824,6 +824,7 @@ struct sk_buff {
#ifdef CONFIG_TLS_DEVICE
__u8 decrypted:1;
#endif
@@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
__u16 tc_index; /* traffic control index */
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -5458,6 +5458,9 @@ static enum gro_result dev_gro_receive(s
+@@ -5460,6 +5460,9 @@ static enum gro_result dev_gro_receive(s
int same_flow;
int grow;
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (netif_elide_gro(skb->dev))
goto normal;
-@@ -7251,6 +7254,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -7253,6 +7256,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower);
}
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master,
void *upper_priv, void *upper_info,
-@@ -7301,6 +7346,7 @@ static int __netdev_upper_dev_link(struc
+@@ -7303,6 +7348,7 @@ static int __netdev_upper_dev_link(struc
if (ret)
return ret;
@@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
&changeupper_info.info);
ret = notifier_to_errno(ret);
-@@ -7394,6 +7440,7 @@ void netdev_upper_dev_unlink(struct net_
+@@ -7396,6 +7442,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 <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
&changeupper_info.info);
-@@ -8124,6 +8171,7 @@ int dev_set_mac_address(struct net_devic
+@@ -8126,6 +8173,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/mediatek/patches-5.4/0301-mtd-mtk-ecc-move-mtk-ecc-header-file-to-include-mtd.patch b/target/linux/mediatek/patches-5.4/0301-mtd-mtk-ecc-move-mtk-ecc-header-file-to-include-mtd.patch
index fd303552ee..d9ab339fa8 100644
--- a/target/linux/mediatek/patches-5.4/0301-mtd-mtk-ecc-move-mtk-ecc-header-file-to-include-mtd.patch
+++ b/target/linux/mediatek/patches-5.4/0301-mtd-mtk-ecc-move-mtk-ecc-header-file-to-include-mtd.patch
@@ -14,7 +14,7 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
--- a/drivers/mtd/nand/raw/mtk_ecc.c
+++ b/drivers/mtd/nand/raw/mtk_ecc.c
-@@ -23,8 +23,7 @@
+@@ -15,8 +15,7 @@
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/mutex.h>
@@ -26,7 +26,7 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
#define ECC_IRQ_EN BIT(0)
--- a/drivers/mtd/nand/raw/mtk_nand.c
+++ b/drivers/mtd/nand/raw/mtk_nand.c
-@@ -25,7 +25,7 @@
+@@ -17,7 +17,7 @@
#include <linux/iopoll.h>
#include <linux/of.h>
#include <linux/of_device.h>
diff --git a/target/linux/mediatek/patches-5.4/0303-mtd-spinand-disable-on-die-ECC.patch b/target/linux/mediatek/patches-5.4/0303-mtd-spinand-disable-on-die-ECC.patch
index cdf214688c..5c18ea0f74 100644
--- a/target/linux/mediatek/patches-5.4/0303-mtd-spinand-disable-on-die-ECC.patch
+++ b/target/linux/mediatek/patches-5.4/0303-mtd-spinand-disable-on-die-ECC.patch
@@ -11,7 +11,7 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
--- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c
-@@ -552,7 +552,7 @@ static int spinand_mtd_read(struct mtd_i
+@@ -491,7 +491,7 @@ static int spinand_mtd_read(struct mtd_i
int ret = 0;
if (ops->mode != MTD_OPS_RAW && spinand->eccinfo.ooblayout)
@@ -20,7 +20,7 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
mutex_lock(&spinand->lock);
-@@ -600,7 +600,7 @@ static int spinand_mtd_write(struct mtd_
+@@ -539,7 +539,7 @@ static int spinand_mtd_write(struct mtd_
int ret = 0;
if (ops->mode != MTD_OPS_RAW && mtd->ooblayout)
diff --git a/target/linux/mediatek/patches-5.4/0306-spi-spi-mem-MediaTek-Add-SPI-NAND-Flash-interface-dr.patch b/target/linux/mediatek/patches-5.4/0306-spi-spi-mem-MediaTek-Add-SPI-NAND-Flash-interface-dr.patch
index 4e266bf183..b3672e5b15 100644
--- a/target/linux/mediatek/patches-5.4/0306-spi-spi-mem-MediaTek-Add-SPI-NAND-Flash-interface-dr.patch
+++ b/target/linux/mediatek/patches-5.4/0306-spi-spi-mem-MediaTek-Add-SPI-NAND-Flash-interface-dr.patch
@@ -13,19 +13,19 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
3 files changed, 1193 insertions(+)
create mode 100644 drivers/spi/spi-mtk-snfi.c
---- a/drivers/spi/Makefile 2020-03-02 15:33:05.223669793 +0800
-+++ b/drivers/spi/Makefile 2020-03-02 15:33:44.146364315 +0800
-@@ -60,6 +60,7 @@
+--- a/drivers/spi/Makefile
++++ b/drivers/spi/Makefile
+@@ -60,6 +60,7 @@ obj-$(CONFIG_SPI_MPC512x_PSC) += spi-mp
obj-$(CONFIG_SPI_MPC52xx_PSC) += spi-mpc52xx-psc.o
obj-$(CONFIG_SPI_MPC52xx) += spi-mpc52xx.o
obj-$(CONFIG_SPI_MT65XX) += spi-mt65xx.o
+obj-$(CONFIG_SPI_MTK_SNFI) += spi-mtk-snfi.o
obj-$(CONFIG_SPI_MT7621) += spi-mt7621.o
+ obj-$(CONFIG_SPI_MTK_NOR) += spi-mtk-nor.o
obj-$(CONFIG_SPI_MXIC) += spi-mxic.o
- obj-$(CONFIG_SPI_MXS) += spi-mxs.o
---- a/drivers/spi/Kconfig 2020-03-02 15:33:11.183468935 +0800
-+++ b/drivers/spi/Kconfig 2020-03-02 15:34:53.304079101 +0800
-@@ -427,6 +427,15 @@
+--- a/drivers/spi/Kconfig
++++ b/drivers/spi/Kconfig
+@@ -427,6 +427,15 @@ config SPI_MT65XX
say Y or M here.If you are not sure, say N.
SPI drivers for Mediatek MT65XX and MT81XX series ARM SoCs.
diff --git a/target/linux/mediatek/patches-5.4/0307-dts-mt7629-add-snand-support.patch b/target/linux/mediatek/patches-5.4/0307-dts-mt7629-add-snand-support.patch
index 2775563b09..753c1117b9 100644
--- a/target/linux/mediatek/patches-5.4/0307-dts-mt7629-add-snand-support.patch
+++ b/target/linux/mediatek/patches-5.4/0307-dts-mt7629-add-snand-support.patch
@@ -11,7 +11,7 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
--- a/arch/arm/boot/dts/mt7629.dtsi
+++ b/arch/arm/boot/dts/mt7629.dtsi
-@@ -259,6 +259,28 @@
+@@ -258,6 +258,28 @@
status = "disabled";
};
@@ -42,7 +42,7 @@ Signed-off-by: Xiangsheng Hou <xiangsheng.hou@mediatek.com>
"mediatek,mt7622-spi";
--- a/arch/arm/boot/dts/mt7629-rfb.dts
+++ b/arch/arm/boot/dts/mt7629-rfb.dts
-@@ -281,6 +281,52 @@
+@@ -276,6 +276,52 @@
};
};
diff --git a/target/linux/mediatek/patches-5.4/0308-dts-mt7622-add-snand-support.patch b/target/linux/mediatek/patches-5.4/0308-dts-mt7622-add-snand-support.patch
index 7c135cf2bf..4e10319508 100644
--- a/target/linux/mediatek/patches-5.4/0308-dts-mt7622-add-snand-support.patch
+++ b/target/linux/mediatek/patches-5.4/0308-dts-mt7622-add-snand-support.patch
@@ -1,6 +1,5 @@
-diff -urN a/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
---- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi 2020-03-02 17:16:13.700464470 +0800
-+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi 2020-03-02 17:15:55.276885406 +0800
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -554,6 +554,19 @@
status = "disabled";
};
@@ -21,9 +20,8 @@ diff -urN a/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/arch/arm64/boot/dts/media
nor_flash: spi@11014000 {
compatible = "mediatek,mt7622-nor",
"mediatek,mt8173-nor";
-diff -urN a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
---- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts 2020-03-02 17:16:25.492193459 +0800
-+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts 2020-03-02 17:16:35.243968416 +0800
+--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
++++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
@@ -108,7 +108,7 @@
};
diff --git a/target/linux/mediatek/patches-5.4/0310-dts-add-wmac-support-for-mt7622-rfb1.patch b/target/linux/mediatek/patches-5.4/0310-dts-add-wmac-support-for-mt7622-rfb1.patch
index 7e24596fb8..3ebe45c6e4 100644
--- a/target/linux/mediatek/patches-5.4/0310-dts-add-wmac-support-for-mt7622-rfb1.patch
+++ b/target/linux/mediatek/patches-5.4/0310-dts-add-wmac-support-for-mt7622-rfb1.patch
@@ -1,6 +1,5 @@
-diff -urN a/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
---- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi 2020-03-31 14:47:46.554212143 +0800
-+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi 2020-03-31 14:47:32.322642377 +0800
+--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
++++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -712,6 +712,17 @@
status = "disabled";
};
@@ -19,10 +18,9 @@ diff -urN a/arch/arm64/boot/dts/mediatek/mt7622.dtsi b/arch/arm64/boot/dts/media
ssusbsys: ssusbsys@1a000000 {
compatible = "mediatek,mt7622-ssusbsys",
"syscon";
-diff -urN a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
---- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts 2020-03-31 14:48:15.769329276 +0800
-+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts 2020-03-31 14:47:54.545970592 +0800
-@@ -579,7 +591,7 @@
+--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
++++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+@@ -579,7 +579,7 @@
reg = <0x140000 0x0080000>;
};
diff --git a/target/linux/mediatek/patches-5.4/0400-eth-fix-rx-vlan-hw-offload.patch b/target/linux/mediatek/patches-5.4/0400-eth-fix-rx-vlan-hw-offload.patch
index f04b07fa53..5bc5ce3a6c 100644
--- a/target/linux/mediatek/patches-5.4/0400-eth-fix-rx-vlan-hw-offload.patch
+++ b/target/linux/mediatek/patches-5.4/0400-eth-fix-rx-vlan-hw-offload.patch
@@ -1,7 +1,6 @@
-diff -urN a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c 2020-03-31 16:05:24.398403054 +0800
-+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c 2020-03-31 16:05:39.142008780 +0800
-@@ -1284,7 +1284,7 @@
+--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
++++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+@@ -1284,7 +1284,7 @@ static int mtk_poll_rx(struct napi_struc
skb->protocol = eth_type_trans(skb, netdev);
if (netdev->features & NETIF_F_HW_VLAN_CTAG_RX &&
@@ -10,9 +9,8 @@ diff -urN a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/m
__vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
RX_DMA_VID(trxd.rxd3));
skb_record_rx_queue(skb, 0);
-diff -urN a/drivers/net/ethernet/mediatek/mtk_eth_soc.h b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h 2020-03-31 16:05:29.726260583 +0800
-+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h 2020-03-31 16:05:43.493892389 +0800
+--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
++++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
@@ -293,6 +293,7 @@
#define RX_DMA_LSO BIT(30)
#define RX_DMA_PLEN0(_x) (((_x) & 0x3fff) << 16)
diff --git a/target/linux/mediatek/patches-5.4/0401-eth-fix-eth1-tx-timeout.patch b/target/linux/mediatek/patches-5.4/0401-eth-fix-eth1-tx-timeout.patch
index c882cbbfe3..a0d0591770 100644
--- a/target/linux/mediatek/patches-5.4/0401-eth-fix-eth1-tx-timeout.patch
+++ b/target/linux/mediatek/patches-5.4/0401-eth-fix-eth1-tx-timeout.patch
@@ -1,7 +1,6 @@
-diff -urN b/drivers/net/ethernet/mediatek/mtk_eth_soc.c c/drivers/net/ethernet/mediatek/mtk_eth_soc.c
---- b/drivers/net/ethernet/mediatek/mtk_eth_soc.c 2020-03-31 16:05:39.142008780 +0800
-+++ c/drivers/net/ethernet/mediatek/mtk_eth_soc.c 2020-03-31 16:08:12.422190657 +0800
-@@ -1090,17 +1090,6 @@
+--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
++++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+@@ -1090,17 +1090,6 @@ static void mtk_wake_queue(struct mtk_et
}
}
@@ -19,7 +18,7 @@ diff -urN b/drivers/net/ethernet/mediatek/mtk_eth_soc.c c/drivers/net/ethernet/m
static int mtk_start_xmit(struct sk_buff *skb, struct net_device *dev)
{
struct mtk_mac *mac = netdev_priv(dev);
-@@ -1121,7 +1110,7 @@
+@@ -1121,7 +1110,7 @@ static int mtk_start_xmit(struct sk_buff
tx_num = mtk_cal_txd_req(skb);
if (unlikely(atomic_read(&ring->free_count) <= tx_num)) {
@@ -28,7 +27,7 @@ diff -urN b/drivers/net/ethernet/mediatek/mtk_eth_soc.c c/drivers/net/ethernet/m
netif_err(eth, tx_queued, dev,
"Tx Ring full when queue awake!\n");
spin_unlock(&eth->page_lock);
-@@ -1147,7 +1136,7 @@
+@@ -1147,7 +1136,7 @@ static int mtk_start_xmit(struct sk_buff
goto drop;
if (unlikely(atomic_read(&ring->free_count) <= ring->thresh))
diff --git a/target/linux/mediatek/patches-5.4/0900-bt-mtk-serial-fix.patch b/target/linux/mediatek/patches-5.4/0900-bt-mtk-serial-fix.patch
index 6d4cce276b..f68f52c12a 100644
--- a/target/linux/mediatek/patches-5.4/0900-bt-mtk-serial-fix.patch
+++ b/target/linux/mediatek/patches-5.4/0900-bt-mtk-serial-fix.patch
@@ -1,6 +1,6 @@
--- a/drivers/tty/serial/8250/8250.h
+++ b/drivers/tty/serial/8250/8250.h
-@@ -80,6 +80,7 @@ struct serial8250_config {
+@@ -82,6 +82,7 @@ struct serial8250_config {
#define UART_CAP_MINI (1 << 17) /* Mini UART on BCM283X family lacks:
* STOP PARITY EPAR SPAR WLEN5 WLEN6
*/
@@ -10,7 +10,7 @@
#define UART_BUG_TXEN (1 << 1) /* UART has buggy TX IIR status */
--- a/drivers/tty/serial/8250/8250_port.c
+++ b/drivers/tty/serial/8250/8250_port.c
-@@ -297,7 +297,7 @@ static const struct serial8250_config ua
+@@ -290,7 +290,7 @@ static const struct serial8250_config ua
.tx_loadsz = 16,
.fcr = UART_FCR_ENABLE_FIFO |
UART_FCR_CLEAR_RCVR | UART_FCR_CLEAR_XMIT,
@@ -19,7 +19,7 @@
},
[PORT_NPCM] = {
.name = "Nuvoton 16550",
-@@ -2648,6 +2648,11 @@ serial8250_do_set_termios(struct uart_po
+@@ -2559,6 +2559,11 @@ serial8250_do_set_termios(struct uart_po
unsigned long flags;
unsigned int baud, quot, frac = 0;
diff --git a/target/linux/mediatek/patches-5.4/0990-gsw-rtl8367s-mt7622-support.patch b/target/linux/mediatek/patches-5.4/0990-gsw-rtl8367s-mt7622-support.patch
index 62f47115d6..e4cd77bdc8 100644
--- a/target/linux/mediatek/patches-5.4/0990-gsw-rtl8367s-mt7622-support.patch
+++ b/target/linux/mediatek/patches-5.4/0990-gsw-rtl8367s-mt7622-support.patch
@@ -1,8 +1,6 @@
-Index: linux-4.19.88/drivers/net/phy/Kconfig
-===================================================================
---- linux-4.19.88.orig/drivers/net/phy/Kconfig
-+++ linux-4.19.88/drivers/net/phy/Kconfig
-@@ -26,6 +26,12 @@ config MDIO_BCM_IPROC
+--- a/drivers/net/phy/Kconfig
++++ b/drivers/net/phy/Kconfig
+@@ -42,6 +42,12 @@ config MDIO_BCM_IPROC
This module provides a driver for the MDIO busses found in the
Broadcom iProc SoC's.
@@ -15,11 +13,9 @@ Index: linux-4.19.88/drivers/net/phy/Kconfig
config MDIO_BCM_UNIMAC
tristate "Broadcom UniMAC MDIO bus controller"
depends on HAS_IOMEM
-Index: linux-4.19.88/drivers/net/phy/Makefile
-===================================================================
---- linux-4.19.88.orig/drivers/net/phy/Makefile
-+++ linux-4.19.88/drivers/net/phy/Makefile
-@@ -101,4 +101,5 @@ obj-$(CONFIG_TERANETICS_PHY) += teraneti
+--- a/drivers/net/phy/Makefile
++++ b/drivers/net/phy/Makefile
+@@ -111,4 +111,5 @@ obj-$(CONFIG_TERANETICS_PHY) += teraneti
obj-$(CONFIG_VITESSE_PHY) += vitesse.o
obj-$(CONFIG_XILINX_GMII2RGMII) += xilinx_gmii2rgmii.o
obj-$(CONFIG_MT753X_GSW) += mtk/mt753x/
diff --git a/target/linux/mediatek/patches-5.4/0999-hnat.patch b/target/linux/mediatek/patches-5.4/0999-hnat.patch
index ad04e355e6..63c2b789cc 100644
--- a/target/linux/mediatek/patches-5.4/0999-hnat.patch
+++ b/target/linux/mediatek/patches-5.4/0999-hnat.patch
@@ -1,7 +1,5 @@
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/Kconfig
-===================================================================
---- linux-5.4.28.orig/drivers/net/ethernet/mediatek/Kconfig
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/Kconfig
+--- a/drivers/net/ethernet/mediatek/Kconfig
++++ b/drivers/net/ethernet/mediatek/Kconfig
@@ -14,4 +14,8 @@ config NET_MEDIATEK_SOC
This driver supports the gigabit ethernet MACs in the
MediaTek SoC family.
@@ -11,19 +9,15 @@ Index: linux-5.4.28/drivers/net/ethernet/mediatek/Kconfig
+ depends on NET_MEDIATEK_SOC
+
endif #NET_VENDOR_MEDIATEK
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/Makefile
-===================================================================
---- linux-5.4.28.orig/drivers/net/ethernet/mediatek/Makefile
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/Makefile
+--- a/drivers/net/ethernet/mediatek/Makefile
++++ b/drivers/net/ethernet/mediatek/Makefile
@@ -5,3 +5,4 @@
obj-$(CONFIG_NET_MEDIATEK_SOC) += mtk_eth.o
mtk_eth-y := mtk_eth_soc.o mtk_sgmii.o mtk_eth_path.o
+mtk_eth-$(CONFIG_NET_MEDIATEK_OFFLOAD) += mtk_offload.o mtk_debugfs.o
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_debugfs.c
-===================================================================
--- /dev/null
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/mtk_debugfs.c
++++ b/drivers/net/ethernet/mediatek/mtk_debugfs.c
@@ -0,0 +1,117 @@
+/* This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -142,10 +136,8 @@ Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_debugfs.c
+
+ return 0;
+}
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-===================================================================
---- linux-5.4.28.orig/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
++++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -19,6 +19,8 @@
#include <linux/interrupt.h>
#include <linux/pinctrl/devinfo.h>
@@ -259,10 +251,8 @@ Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_eth_soc.c
};
static const struct mtk_soc_data mt7623_data = {
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_eth_soc.h
-===================================================================
---- linux-5.4.28.orig/drivers/net/ethernet/mediatek/mtk_eth_soc.h
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/mtk_eth_soc.h
+--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
++++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
@@ -771,6 +771,13 @@ enum mkt_eth_capabilities {
MTK_MUX_U3_GMAC2_TO_QPHY | \
MTK_MUX_GMAC12_TO_GEPHY_SGMII | MTK_QDMA)
@@ -348,10 +338,8 @@ Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_eth_soc.h
+int mtk_offload_check_rx(struct mtk_eth *eth, struct sk_buff *skb, u32 rxd4);
+
#endif /* MTK_ETH_H */
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_offload.c
-===================================================================
--- /dev/null
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/mtk_offload.c
++++ b/drivers/net/ethernet/mediatek/mtk_offload.c
@@ -0,0 +1,593 @@
+/* This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
@@ -946,10 +934,8 @@ Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_offload.c
+{
+ mtk_ppe_stop(eth);
+}
-Index: linux-5.4.28/drivers/net/ethernet/mediatek/mtk_offload.h
-===================================================================
--- /dev/null
-+++ linux-5.4.28/drivers/net/ethernet/mediatek/mtk_offload.h
++++ b/drivers/net/ethernet/mediatek/mtk_offload.h
@@ -0,0 +1,298 @@
+/* This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
diff --git a/target/linux/oxnas/patches-5.4/003-ARM-dts-oxnas-Fix-clear-mask-property.patch b/target/linux/oxnas/patches-5.4/003-ARM-dts-oxnas-Fix-clear-mask-property.patch
deleted file mode 100644
index cac125e7b3..0000000000
--- a/target/linux/oxnas/patches-5.4/003-ARM-dts-oxnas-Fix-clear-mask-property.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From patchwork Sat Mar 21 14:36:53 2020
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-X-Patchwork-Submitter: Sungbo Eo <mans0n@gorani.run>
-X-Patchwork-Id: 11451187
-From: Sungbo Eo <mans0n@gorani.run>
-To: Neil Armstrong <narmstrong@baylibre.com>,
- Rob Herring <robh+dt@kernel.org>,
- Mark Rutland <mark.rutland@arm.com>, linux-arm-kernel@lists.infradead.org,
- linux-oxnas@groups.io, devicetree@vger.kernel.org,
- linux-kernel@vger.kernel.org
-Subject: [PATCH] ARM: dts: oxnas: Fix clear-mask property
-Date: Sat, 21 Mar 2020 23:36:53 +0900
-Message-Id: <20200321143653.2412823-1-mans0n@gorani.run>
-Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org>
-
-Disable all rps-irq interrupts during driver initialization to prevent
-an accidental interrupt on GIC.
-
-Fixes: 84316f4ef141 ("ARM: boot: dts: Add Oxford Semiconductor OX810SE dtsi")
-Fixes: 38d4a53733f5 ("ARM: dts: Add support for OX820 and Pogoplug V3")
-Signed-off-by: Sungbo Eo <mans0n@gorani.run>
-Acked-by: Neil Armstrong <narmstrong@baylibre.com>
----
- arch/arm/boot/dts/ox810se.dtsi | 4 ++--
- arch/arm/boot/dts/ox820.dtsi | 4 ++--
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
---- a/arch/arm/boot/dts/ox810se.dtsi
-+++ b/arch/arm/boot/dts/ox810se.dtsi
-@@ -323,8 +323,8 @@
- interrupt-controller;
- reg = <0 0x200>;
- #interrupt-cells = <1>;
-- valid-mask = <0xFFFFFFFF>;
-- clear-mask = <0>;
-+ valid-mask = <0xffffffff>;
-+ clear-mask = <0xffffffff>;
- };
-
- timer0: timer@200 {
---- a/arch/arm/boot/dts/ox820.dtsi
-+++ b/arch/arm/boot/dts/ox820.dtsi
-@@ -240,8 +240,8 @@
- reg = <0 0x200>;
- interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
- #interrupt-cells = <1>;
-- valid-mask = <0xFFFFFFFF>;
-- clear-mask = <0>;
-+ valid-mask = <0xffffffff>;
-+ clear-mask = <0xffffffff>;
- };
-
- timer0: timer@200 {