[openwrt/openwrt] kernel: bump 5.10 to 5.10.124

LEDE Commits lede-commits at lists.infradead.org
Sun Jun 26 15:58:04 PDT 2022


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/9e5d743422edc4036cda7d96b96ba62705f382de

commit 9e5d743422edc4036cda7d96b96ba62705f382de
Author: John Audia <therealgraysky at proton.me>
AuthorDate: Wed Jun 22 11:58:33 2022 -0400

    kernel: bump 5.10 to 5.10.124
    
    All patches automatically rebased.
    
    Build system: x86_64
    Build-tested: ipq806x/R7800
    
    Signed-off-by: John Audia <therealgraysky at proton.me>
---
 include/kernel-5.10                                |  4 +-
 ...S-BCM47XX-Devices-database-update-for-4.x.patch | 80 ++++++++++------------
 ...et-mtk_eth_soc-fix-parsing-packets-in-GDM.patch |  4 +-
 ...t-mtk_eth_soc-add-support-for-initializin.patch | 10 +--
 ...t-mtk_eth_soc-add-flow-offloading-support.patch |  4 +-
 ...t-mtk_eth_soc-unmap-RX-data-before-callin.patch |  4 +-
 ...thernet-mtk_eth_soc-fix-build_skb-cleanup.patch |  4 +-
 ...ethernet-mtk_eth_soc-use-napi_consume_skb.patch | 12 ++--
 ...t-mtk_eth_soc-remove-unnecessary-TX-queue.patch |  6 +-
 ...t-mtk_eth_soc-use-larger-burst-size-for-Q.patch |  2 +-
 ...t-mtk_eth_soc-implement-dynamic-interrupt.patch | 24 +++----
 ...t-mtk_eth_soc-cache-HW-pointer-of-last-fr.patch |  8 +--
 ...t-mtk_eth_soc-only-read-the-full-RX-descr.patch |  4 +-
 ...t-mtk_eth_soc-reduce-unnecessary-interrup.patch |  4 +-
 ...thernet-mtk_eth_soc-rework-NAPI-callbacks.patch |  6 +-
 ...t-mtk_eth_soc-set-PPE-flow-hash-as-skb-ha.patch |  4 +-
 ...t-mtk_eth_soc-use-iopoll.h-macro-for-DMA-.patch |  2 +-
 ...net-ethernet-mediatek-support-setting-MTU.patch |  6 +-
 ...pass-the-dst-buffer-to-of_get_mac_address.patch |  2 +-
 ....15-leds-pca955x-clean-up-code-formatting.patch | 20 +++---
 ...-leds-pca955x-add-brightness-get-function.patch |  6 +-
 ...955x-implement-the-default-state-property.patch | 12 ++--
 ...s-pca955x-let-the-core-process-the-fwnode.patch | 14 ++--
 ...5.15-leds-pca955x-switch-to-i2c-probe-new.patch |  9 ++-
 target/linux/generic/hack-5.10/251-kconfig.patch   | 12 ++--
 .../linux/generic/hack-5.10/253-ksmbd-config.patch |  2 +-
 .../hack-5.10/260-crypto_test_dependencies.patch   |  2 +-
 .../780-usb-net-MeigLink_modem_support.patch       |  2 +-
 .../530-jffs2_make_lzma_available.patch            |  2 +-
 ...t-mtk_eth_soc-add-support-for-coherent-DM.patch | 38 +++++-----
 ...t-mtk_eth_soc-add-support-for-Wireless-Et.patch |  2 +-
 ...t-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch |  6 +-
 ...t-mtk_eth_soc-rework-hardware-flow-table-.patch |  6 +-
 ...ethernet-mtk_eth_soc-enable-threaded-NAPI.patch |  6 +-
 ...-net-ethernet-mediatek-support-net-labels.patch |  4 +-
 35 files changed, 157 insertions(+), 176 deletions(-)

diff --git a/include/kernel-5.10 b/include/kernel-5.10
index 2b990e7f7a..284ad99f40 100644
--- a/include/kernel-5.10
+++ b/include/kernel-5.10
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.10 = .123
-LINUX_KERNEL_HASH-5.10.123 = 654ab0960b70013e7dad6b3782c25d62e13cbb8c053010daef667d5d74061e52
+LINUX_VERSION-5.10 = .124
+LINUX_KERNEL_HASH-5.10.124 = ec46b1743286b08208769932f2cde2faa93656e986640010d661992500f7e37b
diff --git a/target/linux/bcm47xx/patches-5.10/320-MIPS-BCM47XX-Devices-database-update-for-4.x.patch b/target/linux/bcm47xx/patches-5.10/320-MIPS-BCM47XX-Devices-database-update-for-4.x.patch
index 43c682c457..8126768f72 100644
--- a/target/linux/bcm47xx/patches-5.10/320-MIPS-BCM47XX-Devices-database-update-for-4.x.patch
+++ b/target/linux/bcm47xx/patches-5.10/320-MIPS-BCM47XX-Devices-database-update-for-4.x.patch
@@ -1,8 +1,6 @@
-diff --git a/arch/mips/bcm47xx/board.c b/arch/mips/bcm47xx/board.c
-index 35266a70e22a..4ef610431802 100644
 --- a/arch/mips/bcm47xx/board.c
 +++ b/arch/mips/bcm47xx/board.c
-@@ -141,6 +141,7 @@ struct bcm47xx_board_type_list2 bcm47xx_board_list_boot_hw[] __initconst = {
+@@ -141,6 +141,7 @@ struct bcm47xx_board_type_list2 bcm47xx_
  	{{BCM47XX_BOARD_LINKSYS_WRT300NV11, "Linksys WRT300N V1.1"}, "WRT300N", "1.1"},
  	{{BCM47XX_BOARD_LINKSYS_WRT310NV1, "Linksys WRT310N V1"}, "WRT310N", "1.0"},
  	{{BCM47XX_BOARD_LINKSYS_WRT310NV2, "Linksys WRT310N V2"}, "WRT310N", "2.0"},
@@ -10,7 +8,7 @@ index 35266a70e22a..4ef610431802 100644
  	{{BCM47XX_BOARD_LINKSYS_WRT54G3GV2, "Linksys WRT54G3GV2-VF"}, "WRT54G3GV2-VF", "1.0"},
  	{{BCM47XX_BOARD_LINKSYS_WRT610NV1, "Linksys WRT610N V1"}, "WRT610N", "1.0"},
  	{{BCM47XX_BOARD_LINKSYS_WRT610NV2, "Linksys WRT610N V2"}, "WRT610N", "2.0"},
-@@ -161,9 +162,12 @@ struct bcm47xx_board_type_list1 bcm47xx_board_list_board_id[] __initconst = {
+@@ -161,9 +162,12 @@ struct bcm47xx_board_type_list1 bcm47xx_
  	{{BCM47XX_BOARD_LUXUL_XWR_600_V1, "Luxul XWR-600 V1"}, "luxul_xwr600_v1"},
  	{{BCM47XX_BOARD_LUXUL_XWR_1750_V1, "Luxul XWR-1750 V1"}, "luxul_xwr1750_v1"},
  	{{BCM47XX_BOARD_NETGEAR_R6200_V1, "Netgear R6200 V1"}, "U12H192T00_NETGEAR"},
@@ -23,7 +21,7 @@ index 35266a70e22a..4ef610431802 100644
  	{{BCM47XX_BOARD_NETGEAR_WNDR3300, "Netgear WNDR3300"}, "U12H093T00_NETGEAR"},
  	{{BCM47XX_BOARD_NETGEAR_WNDR3400V1, "Netgear WNDR3400 V1"}, "U12H155T00_NETGEAR"},
  	{{BCM47XX_BOARD_NETGEAR_WNDR3400V2, "Netgear WNDR3400 V2"}, "U12H187T00_NETGEAR"},
-@@ -177,6 +181,7 @@ struct bcm47xx_board_type_list1 bcm47xx_board_list_board_id[] __initconst = {
+@@ -177,6 +181,7 @@ struct bcm47xx_board_type_list1 bcm47xx_
  	{{BCM47XX_BOARD_NETGEAR_WNR1000_V3, "Netgear WNR1000 V3"}, "U12H139T50_NETGEAR"},
  	{{BCM47XX_BOARD_NETGEAR_WNR2000, "Netgear WNR2000"}, "U12H114T00_NETGEAR"},
  	{{BCM47XX_BOARD_NETGEAR_WNR3500L, "Netgear WNR3500L"}, "U12H136T99_NETGEAR"},
@@ -31,7 +29,7 @@ index 35266a70e22a..4ef610431802 100644
  	{{BCM47XX_BOARD_NETGEAR_WNR3500U, "Netgear WNR3500U"}, "U12H136T00_NETGEAR"},
  	{{BCM47XX_BOARD_NETGEAR_WNR3500V2, "Netgear WNR3500 V2"}, "U12H127T00_NETGEAR"},
  	{{BCM47XX_BOARD_NETGEAR_WNR3500V2VC, "Netgear WNR3500 V2vc"}, "U12H127T70_NETGEAR"},
-@@ -191,6 +196,7 @@ struct bcm47xx_board_type_list3 bcm47xx_board_list_board[] __initconst = {
+@@ -191,6 +196,7 @@ struct bcm47xx_board_type_list3 bcm47xx_
  	{{BCM47XX_BOARD_PHICOMM_M1, "Phicomm M1"}, "0x0590", "80", "0x1104"},
  	{{BCM47XX_BOARD_ZTE_H218N, "ZTE H218N"}, "0x053d", "1234", "0x1305"},
  	{{BCM47XX_BOARD_NETGEAR_WNR3500L, "Netgear WNR3500L"}, "0x04CF", "3500", "02"},
@@ -39,28 +37,25 @@ index 35266a70e22a..4ef610431802 100644
  	{{BCM47XX_BOARD_LINKSYS_WRT54G_TYPE_0101, "Linksys WRT54G/GS/GL"}, "0x0101", "42", "0x10"},
  	{{BCM47XX_BOARD_LINKSYS_WRT54G_TYPE_0467, "Linksys WRT54G/GS/GL"}, "0x0467", "42", "0x10"},
  	{{BCM47XX_BOARD_LINKSYS_WRT54G_TYPE_0708, "Linksys WRT54G/GS/GL"}, "0x0708", "42", "0x10"},
-diff --git a/arch/mips/bcm47xx/buttons.c b/arch/mips/bcm47xx/buttons.c
-index 535d84addcdb..38e4a9cbcf4e 100644
 --- a/arch/mips/bcm47xx/buttons.c
 +++ b/arch/mips/bcm47xx/buttons.c
-@@ -26,6 +26,12 @@
- 
+@@ -27,6 +27,12 @@
  /* Asus */
  
-+static const struct gpio_keys_button
+ static const struct gpio_keys_button
 +bcm47xx_buttons_asus_rtn10u[] __initconst = {
 +	BCM47XX_GPIO_KEY(20, KEY_WPS_BUTTON),
 +	BCM47XX_GPIO_KEY(21, KEY_RESTART),
 +};
 +
- static const struct gpio_keys_button
++static const struct gpio_keys_button
  bcm47xx_buttons_asus_rtn12[] __initconst = {
  	BCM47XX_GPIO_KEY(0, KEY_WPS_BUTTON),
-@@ -276,6 +282,18 @@ bcm47xx_buttons_linksys_wrt310nv1[] __initconst = {
- 	BCM47XX_GPIO_KEY(8, KEY_UNKNOWN),
+ 	BCM47XX_GPIO_KEY(1, KEY_RESTART),
+@@ -277,6 +283,18 @@ bcm47xx_buttons_linksys_wrt310nv1[] __in
  };
  
-+static const struct gpio_keys_button
+ static const struct gpio_keys_button
 +bcm47xx_buttons_linksys_wrt310n_v2[] __initconst = {
 +	BCM47XX_GPIO_KEY(5, KEY_WPS_BUTTON),
 +	BCM47XX_GPIO_KEY(6, KEY_RESTART),
@@ -72,14 +67,14 @@ index 535d84addcdb..38e4a9cbcf4e 100644
 +	BCM47XX_GPIO_KEY(8, KEY_RESTART),
 +};
 +
- static const struct gpio_keys_button
++static const struct gpio_keys_button
  bcm47xx_buttons_linksys_wrt54g3gv2[] __initconst = {
  	BCM47XX_GPIO_KEY(5, KEY_WIMAX),
-@@ -391,6 +409,17 @@ bcm47xx_buttons_netgear_r6200_v1[] __initconst = {
- 	BCM47XX_GPIO_KEY(4, KEY_WPS_BUTTON),
+ 	BCM47XX_GPIO_KEY(6, KEY_RESTART),
+@@ -392,6 +410,17 @@ bcm47xx_buttons_netgear_r6200_v1[] __ini
  };
  
-+static const struct gpio_keys_button
+ static const struct gpio_keys_button
 +bcm47xx_buttons_netgear_r6300_v1[] __initconst = {
 +	BCM47XX_GPIO_KEY(6, KEY_RESTART),
 +};
@@ -90,24 +85,25 @@ index 535d84addcdb..38e4a9cbcf4e 100644
 +	BCM47XX_GPIO_KEY(31, KEY_WPS_BUTTON),
 +};
 +
- static const struct gpio_keys_button
++static const struct gpio_keys_button
  bcm47xx_buttons_netgear_wndr3400v1[] __initconst = {
  	BCM47XX_GPIO_KEY(4, KEY_RESTART),
-@@ -430,6 +459,13 @@ bcm47xx_buttons_netgear_wnr3500lv1[] __initconst = {
  	BCM47XX_GPIO_KEY(6, KEY_WPS_BUTTON),
+@@ -431,6 +460,13 @@ bcm47xx_buttons_netgear_wnr3500lv1[] __i
  };
  
-+static const struct gpio_keys_button
+ static const struct gpio_keys_button
 +bcm47xx_buttons_netgear_wnr3500lv2[] __initconst = {
 +	BCM47XX_GPIO_KEY(4, KEY_RESTART),
 +	BCM47XX_GPIO_KEY(6, KEY_WPS_BUTTON),
 +	BCM47XX_GPIO_KEY(8, KEY_RFKILL),
 +};
 +
- static const struct gpio_keys_button
++static const struct gpio_keys_button
  bcm47xx_buttons_netgear_wnr834bv2[] __initconst = {
  	BCM47XX_GPIO_KEY(6, KEY_RESTART),
-@@ -478,6 +514,9 @@ int __init bcm47xx_buttons_register(void)
+ };
+@@ -478,6 +514,9 @@ int __init bcm47xx_buttons_register(void
  	int err;
  
  	switch (board) {
@@ -117,7 +113,7 @@ index 535d84addcdb..38e4a9cbcf4e 100644
  	case BCM47XX_BOARD_ASUS_RTN12:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_asus_rtn12);
  		break;
-@@ -608,6 +647,12 @@ int __init bcm47xx_buttons_register(void)
+@@ -608,6 +647,12 @@ int __init bcm47xx_buttons_register(void
  	case BCM47XX_BOARD_LINKSYS_WRT310NV1:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt310nv1);
  		break;
@@ -130,7 +126,7 @@ index 535d84addcdb..38e4a9cbcf4e 100644
  	case BCM47XX_BOARD_LINKSYS_WRT54G3GV2:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_wrt54g3gv2);
  		break;
-@@ -674,6 +719,12 @@ int __init bcm47xx_buttons_register(void)
+@@ -674,6 +719,12 @@ int __init bcm47xx_buttons_register(void
  	case BCM47XX_BOARD_NETGEAR_R6200_V1:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_r6200_v1);
  		break;
@@ -143,7 +139,7 @@ index 535d84addcdb..38e4a9cbcf4e 100644
  	case BCM47XX_BOARD_NETGEAR_WNDR3400V1:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wndr3400v1);
  		break;
-@@ -692,6 +743,9 @@ int __init bcm47xx_buttons_register(void)
+@@ -692,6 +743,9 @@ int __init bcm47xx_buttons_register(void
  	case BCM47XX_BOARD_NETGEAR_WNR3500L:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wnr3500lv1);
  		break;
@@ -153,15 +149,12 @@ index 535d84addcdb..38e4a9cbcf4e 100644
  	case BCM47XX_BOARD_NETGEAR_WNR834BV2:
  		err = bcm47xx_copy_bdata(bcm47xx_buttons_netgear_wnr834bv2);
  		break;
-diff --git a/arch/mips/bcm47xx/leds.c b/arch/mips/bcm47xx/leds.c
-index 167c42c71e79..8e257d0896d2 100644
 --- a/arch/mips/bcm47xx/leds.c
 +++ b/arch/mips/bcm47xx/leds.c
-@@ -29,6 +29,14 @@
- 
+@@ -30,6 +30,14 @@
  /* Asus */
  
-+static const struct gpio_led
+ static const struct gpio_led
 +bcm47xx_leds_asus_rtn10u[] __initconst = {
 +	BCM47XX_GPIO_LED(5, "green", "wlan", 0, LEDS_GPIO_DEFSTATE_OFF),
 +	BCM47XX_GPIO_LED(6, "green", "power", 1, LEDS_GPIO_DEFSTATE_ON),
@@ -169,28 +162,28 @@ index 167c42c71e79..8e257d0896d2 100644
 +	BCM47XX_GPIO_LED(8, "green", "usb", 0, LEDS_GPIO_DEFSTATE_OFF),
 +};
 +
- static const struct gpio_led
++static const struct gpio_led
  bcm47xx_leds_asus_rtn12[] __initconst = {
  	BCM47XX_GPIO_LED(2, "unk", "power", 1, LEDS_GPIO_DEFSTATE_ON),
-@@ -313,6 +321,13 @@ bcm47xx_leds_linksys_wrt310nv1[] __initconst = {
- 	BCM47XX_GPIO_LED(9, "blue", "wps", 1, LEDS_GPIO_DEFSTATE_OFF),
+ 	BCM47XX_GPIO_LED(7, "unk", "wlan", 0, LEDS_GPIO_DEFSTATE_OFF),
+@@ -314,6 +322,13 @@ bcm47xx_leds_linksys_wrt310nv1[] __initc
  };
  
-+static const struct gpio_led
+ static const struct gpio_led
 +bcm47xx_leds_linksys_wrt320n_v1[] __initconst = {
 +	BCM47XX_GPIO_LED(1, "blue", "wlan", 1, LEDS_GPIO_DEFSTATE_OFF),
 +	BCM47XX_GPIO_LED(2, "blue", "power", 0, LEDS_GPIO_DEFSTATE_ON),
 +	BCM47XX_GPIO_LED(4, "amber", "wps", 1, LEDS_GPIO_DEFSTATE_OFF),
 +};
 +
- static const struct gpio_led
++static const struct gpio_led
  bcm47xx_leds_linksys_wrt54g_generic[] __initconst = {
  	BCM47XX_GPIO_LED(0, "unk", "dmz", 1, LEDS_GPIO_DEFSTATE_OFF),
-@@ -512,6 +527,14 @@ bcm47xx_leds_netgear_wnr3500lv1[] __initconst = {
- 	BCM47XX_GPIO_LED(7, "amber", "power", 0, LEDS_GPIO_DEFSTATE_OFF),
+ 	BCM47XX_GPIO_LED(1, "unk", "power", 0, LEDS_GPIO_DEFSTATE_ON),
+@@ -513,6 +528,14 @@ bcm47xx_leds_netgear_wnr3500lv1[] __init
  };
  
-+static const struct gpio_led
+ static const struct gpio_led
 +bcm47xx_leds_netgear_wnr3500lv2[] __initconst = {
 +	BCM47XX_GPIO_LED(0, "blue", "wlan", 0, LEDS_GPIO_DEFSTATE_OFF),
 +	BCM47XX_GPIO_LED(1, "green", "wps", 0, LEDS_GPIO_DEFSTATE_OFF),
@@ -198,9 +191,10 @@ index 167c42c71e79..8e257d0896d2 100644
 +	BCM47XX_GPIO_LED(7, "amber", "power", 0, LEDS_GPIO_DEFSTATE_OFF),
 +};
 +
- static const struct gpio_led
++static const struct gpio_led
  bcm47xx_leds_netgear_wnr834bv2[] __initconst = {
  	BCM47XX_GPIO_LED(2, "green", "power", 0, LEDS_GPIO_DEFSTATE_ON),
+ 	BCM47XX_GPIO_LED(3, "amber", "power", 0, LEDS_GPIO_DEFSTATE_OFF),
 @@ -556,6 +579,9 @@ void __init bcm47xx_leds_register(void)
  	enum bcm47xx_board board = bcm47xx_board_get();
  
@@ -231,8 +225,6 @@ index 167c42c71e79..8e257d0896d2 100644
  	case BCM47XX_BOARD_NETGEAR_WNR834BV2:
  		bcm47xx_set_pdata(bcm47xx_leds_netgear_wnr834bv2);
  		break;
-diff --git a/arch/mips/bcm47xx/workarounds.c b/arch/mips/bcm47xx/workarounds.c
-index 0ab95dd431b3..745c6228eb2c 100644
 --- a/arch/mips/bcm47xx/workarounds.c
 +++ b/arch/mips/bcm47xx/workarounds.c
 @@ -22,6 +22,7 @@ void __init bcm47xx_workarounds(void)
@@ -243,8 +235,6 @@ index 0ab95dd431b3..745c6228eb2c 100644
  		bcm47xx_workarounds_enable_usb_power(12);
  		break;
  	case BCM47XX_BOARD_NETGEAR_WNDR3400V2:
-diff --git a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
-index f879be3e8099..30f4114ab872 100644
 --- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
 +++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
 @@ -72,6 +72,7 @@ enum bcm47xx_board {
diff --git a/target/linux/generic/backport-5.10/610-v5.13-31-net-ethernet-mtk_eth_soc-fix-parsing-packets-in-GDM.patch b/target/linux/generic/backport-5.10/610-v5.13-31-net-ethernet-mtk_eth_soc-fix-parsing-packets-in-GDM.patch
index 4f20909e35..4fa61bec35 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-31-net-ethernet-mtk_eth_soc-fix-parsing-packets-in-GDM.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-31-net-ethernet-mtk_eth_soc-fix-parsing-packets-in-GDM.patch
@@ -19,7 +19,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  
  #include "mtk_eth_soc.h"
  
-@@ -1285,13 +1286,12 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1296,13 +1297,12 @@ static int mtk_poll_rx(struct napi_struc
  			break;
  
  		/* find out which mac the packet come from. values start at 1 */
@@ -38,7 +38,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  
  		if (unlikely(mac < 0 || mac >= MTK_MAC_COUNT ||
  			     !eth->netdev[mac]))
-@@ -2257,6 +2257,9 @@ static void mtk_gdm_config(struct mtk_et
+@@ -2274,6 +2274,9 @@ static void mtk_gdm_config(struct mtk_et
  
  		val |= config;
  
diff --git a/target/linux/generic/backport-5.10/610-v5.13-32-net-ethernet-mtk_eth_soc-add-support-for-initializin.patch b/target/linux/generic/backport-5.10/610-v5.13-32-net-ethernet-mtk_eth_soc-add-support-for-initializin.patch
index 9abe293dee..f8ee000eeb 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-32-net-ethernet-mtk_eth_soc-add-support-for-initializin.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-32-net-ethernet-mtk_eth_soc-add-support-for-initializin.patch
@@ -27,7 +27,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  obj-$(CONFIG_NET_MEDIATEK_STAR_EMAC) += mtk_star_emac.o
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2282,12 +2282,17 @@ static int mtk_open(struct net_device *d
+@@ -2299,12 +2299,17 @@ static int mtk_open(struct net_device *d
  
  	/* we run 2 netdevs on the same dma ring so we only bring it up once */
  	if (!refcount_read(&eth->dma_refcnt)) {
@@ -47,7 +47,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  
  		napi_enable(&eth->tx_napi);
  		napi_enable(&eth->rx_napi);
-@@ -2354,6 +2359,9 @@ static int mtk_stop(struct net_device *d
+@@ -2371,6 +2376,9 @@ static int mtk_stop(struct net_device *d
  
  	mtk_dma_free(eth);
  
@@ -57,7 +57,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  	return 0;
  }
  
-@@ -3082,6 +3090,13 @@ static int mtk_probe(struct platform_dev
+@@ -3099,6 +3107,13 @@ static int mtk_probe(struct platform_dev
  			goto err_free_dev;
  	}
  
@@ -71,7 +71,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  	for (i = 0; i < MTK_MAX_DEVS; i++) {
  		if (!eth->netdev[i])
  			continue;
-@@ -3156,6 +3171,7 @@ static const struct mtk_soc_data mt7621_
+@@ -3173,6 +3188,7 @@ static const struct mtk_soc_data mt7621_
  	.hw_features = MTK_HW_FEATURES,
  	.required_clks = MT7621_CLKS_BITMAP,
  	.required_pctl = false,
@@ -79,7 +79,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  };
  
  static const struct mtk_soc_data mt7622_data = {
-@@ -3164,6 +3180,7 @@ static const struct mtk_soc_data mt7622_
+@@ -3181,6 +3197,7 @@ static const struct mtk_soc_data mt7622_
  	.hw_features = MTK_HW_FEATURES,
  	.required_clks = MT7622_CLKS_BITMAP,
  	.required_pctl = false,
diff --git a/target/linux/generic/backport-5.10/610-v5.13-33-net-ethernet-mtk_eth_soc-add-flow-offloading-support.patch b/target/linux/generic/backport-5.10/610-v5.13-33-net-ethernet-mtk_eth_soc-add-flow-offloading-support.patch
index c3542d7de3..b58eeacd77 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-33-net-ethernet-mtk_eth_soc-add-flow-offloading-support.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-33-net-ethernet-mtk_eth_soc-add-flow-offloading-support.patch
@@ -21,7 +21,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  obj-$(CONFIG_NET_MEDIATEK_STAR_EMAC) += mtk_star_emac.o
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2837,6 +2837,7 @@ static const struct net_device_ops mtk_n
+@@ -2854,6 +2854,7 @@ static const struct net_device_ops mtk_n
  #ifdef CONFIG_NET_POLL_CONTROLLER
  	.ndo_poll_controller	= mtk_poll_controller,
  #endif
@@ -29,7 +29,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
  };
  
  static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
-@@ -3095,6 +3096,10 @@ static int mtk_probe(struct platform_dev
+@@ -3112,6 +3113,10 @@ static int mtk_probe(struct platform_dev
  				   eth->base + MTK_ETH_PPE_BASE, 2);
  		if (err)
  			goto err_free_dev;
diff --git a/target/linux/generic/backport-5.10/610-v5.13-38-net-ethernet-mtk_eth_soc-unmap-RX-data-before-callin.patch b/target/linux/generic/backport-5.10/610-v5.13-38-net-ethernet-mtk_eth_soc-unmap-RX-data-before-callin.patch
index e99302ecda..78197c98a8 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-38-net-ethernet-mtk_eth_soc-unmap-RX-data-before-callin.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-38-net-ethernet-mtk_eth_soc-unmap-RX-data-before-callin.patch
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1319,6 +1319,9 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1333,6 +1333,9 @@ static int mtk_poll_rx(struct napi_struc
  			goto release_desc;
  		}
  
@@ -27,7 +27,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  		/* receive data */
  		skb = build_skb(data, ring->frag_size);
  		if (unlikely(!skb)) {
-@@ -1328,8 +1331,6 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1342,8 +1345,6 @@ static int mtk_poll_rx(struct napi_struc
  		}
  		skb_reserve(skb, NET_SKB_PAD + NET_IP_ALIGN);
  
diff --git a/target/linux/generic/backport-5.10/610-v5.13-39-net-ethernet-mtk_eth_soc-fix-build_skb-cleanup.patch b/target/linux/generic/backport-5.10/610-v5.13-39-net-ethernet-mtk_eth_soc-fix-build_skb-cleanup.patch
index a82518882a..12e531cab3 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-39-net-ethernet-mtk_eth_soc-fix-build_skb-cleanup.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-39-net-ethernet-mtk_eth_soc-fix-build_skb-cleanup.patch
@@ -16,7 +16,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1325,9 +1325,9 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1339,9 +1339,9 @@ static int mtk_poll_rx(struct napi_struc
  		/* receive data */
  		skb = build_skb(data, ring->frag_size);
  		if (unlikely(!skb)) {
@@ -28,7 +28,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  		}
  		skb_reserve(skb, NET_SKB_PAD + NET_IP_ALIGN);
  
-@@ -1347,6 +1347,7 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1361,6 +1361,7 @@ static int mtk_poll_rx(struct napi_struc
  		skb_record_rx_queue(skb, 0);
  		napi_gro_receive(napi, skb);
  
diff --git a/target/linux/generic/backport-5.10/610-v5.13-40-net-ethernet-mtk_eth_soc-use-napi_consume_skb.patch b/target/linux/generic/backport-5.10/610-v5.13-40-net-ethernet-mtk_eth_soc-use-napi_consume_skb.patch
index 5972b9afa7..8913f1255c 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-40-net-ethernet-mtk_eth_soc-use-napi_consume_skb.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-40-net-ethernet-mtk_eth_soc-use-napi_consume_skb.patch
@@ -14,7 +14,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -879,7 +879,8 @@ static int txd_to_idx(struct mtk_tx_ring
+@@ -890,7 +890,8 @@ static int txd_to_idx(struct mtk_tx_ring
  	return ((void *)dma - (void *)ring->dma) / sizeof(*dma);
  }
  
@@ -24,7 +24,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  {
  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
  		if (tx_buf->flags & MTK_TX_FLAGS_SINGLE0) {
-@@ -911,8 +912,12 @@ static void mtk_tx_unmap(struct mtk_eth
+@@ -922,8 +923,12 @@ static void mtk_tx_unmap(struct mtk_eth
  
  	tx_buf->flags = 0;
  	if (tx_buf->skb &&
@@ -39,7 +39,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	tx_buf->skb = NULL;
  }
  
-@@ -1090,7 +1095,7 @@ err_dma:
+@@ -1101,7 +1106,7 @@ err_dma:
  		tx_buf = mtk_desc_to_tx_buf(ring, itxd);
  
  		/* unmap dma */
@@ -48,7 +48,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
  		itxd->txd3 = TX_DMA_LS0 | TX_DMA_OWNER_CPU;
  		if (!MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA))
-@@ -1409,7 +1414,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
+@@ -1423,7 +1428,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
  			done[mac]++;
  			budget--;
  		}
@@ -57,7 +57,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
  		ring->last_free = desc;
  		atomic_inc(&ring->free_count);
-@@ -1446,7 +1451,7 @@ static int mtk_poll_tx_pdma(struct mtk_e
+@@ -1460,7 +1465,7 @@ static int mtk_poll_tx_pdma(struct mtk_e
  			budget--;
  		}
  
@@ -66,7 +66,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
  		desc = &ring->dma[cpu];
  		ring->last_free = desc;
-@@ -1648,7 +1653,7 @@ static void mtk_tx_clean(struct mtk_eth
+@@ -1662,7 +1667,7 @@ static void mtk_tx_clean(struct mtk_eth
  
  	if (ring->buf) {
  		for (i = 0; i < MTK_DMA_SIZE; i++)
diff --git a/target/linux/generic/backport-5.10/610-v5.13-42-net-ethernet-mtk_eth_soc-remove-unnecessary-TX-queue.patch b/target/linux/generic/backport-5.10/610-v5.13-42-net-ethernet-mtk_eth_soc-remove-unnecessary-TX-queue.patch
index 56d4a82824..ad839297d5 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-42-net-ethernet-mtk_eth_soc-remove-unnecessary-TX-queue.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-42-net-ethernet-mtk_eth_soc-remove-unnecessary-TX-queue.patch
@@ -16,7 +16,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1152,17 +1152,6 @@ static void mtk_wake_queue(struct mtk_et
+@@ -1163,17 +1163,6 @@ static void mtk_wake_queue(struct mtk_et
  	}
  }
  
@@ -34,7 +34,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  static netdev_tx_t mtk_start_xmit(struct sk_buff *skb, struct net_device *dev)
  {
  	struct mtk_mac *mac = netdev_priv(dev);
-@@ -1183,7 +1172,7 @@ static netdev_tx_t mtk_start_xmit(struct
+@@ -1194,7 +1183,7 @@ static netdev_tx_t mtk_start_xmit(struct
  
  	tx_num = mtk_cal_txd_req(skb);
  	if (unlikely(atomic_read(&ring->free_count) <= tx_num)) {
@@ -43,7 +43,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  		netif_err(eth, tx_queued, dev,
  			  "Tx Ring full when queue awake!\n");
  		spin_unlock(&eth->page_lock);
-@@ -1209,7 +1198,7 @@ static netdev_tx_t mtk_start_xmit(struct
+@@ -1220,7 +1209,7 @@ static netdev_tx_t mtk_start_xmit(struct
  		goto drop;
  
  	if (unlikely(atomic_read(&ring->free_count) <= ring->thresh))
diff --git a/target/linux/generic/backport-5.10/610-v5.13-43-net-ethernet-mtk_eth_soc-use-larger-burst-size-for-Q.patch b/target/linux/generic/backport-5.10/610-v5.13-43-net-ethernet-mtk_eth_soc-use-larger-burst-size-for-Q.patch
index 5c80324142..1c59f99911 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-43-net-ethernet-mtk_eth_soc-use-larger-burst-size-for-Q.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-43-net-ethernet-mtk_eth_soc-use-larger-burst-size-for-Q.patch
@@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2217,7 +2217,7 @@ static int mtk_start_dma(struct mtk_eth
+@@ -2234,7 +2234,7 @@ static int mtk_start_dma(struct mtk_eth
  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
  		mtk_w32(eth,
  			MTK_TX_WB_DDONE | MTK_TX_DMA_EN |
diff --git a/target/linux/generic/backport-5.10/610-v5.13-45-net-ethernet-mtk_eth_soc-implement-dynamic-interrupt.patch b/target/linux/generic/backport-5.10/610-v5.13-45-net-ethernet-mtk_eth_soc-implement-dynamic-interrupt.patch
index 2234d2f795..ba9e160dd2 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-45-net-ethernet-mtk_eth_soc-implement-dynamic-interrupt.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-45-net-ethernet-mtk_eth_soc-implement-dynamic-interrupt.patch
@@ -28,7 +28,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	  MediaTek SoC family.
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1254,12 +1254,13 @@ static void mtk_update_rx_cpu_idx(struct
+@@ -1265,12 +1265,13 @@ static void mtk_update_rx_cpu_idx(struct
  static int mtk_poll_rx(struct napi_struct *napi, int budget,
  		       struct mtk_eth *eth)
  {
@@ -43,7 +43,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
  	while (done < budget) {
  		struct net_device *netdev;
-@@ -1333,6 +1334,7 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1347,6 +1348,7 @@ static int mtk_poll_rx(struct napi_struc
  		else
  			skb_checksum_none_assert(skb);
  		skb->protocol = eth_type_trans(skb, netdev);
@@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
  		if (netdev->features & NETIF_F_HW_VLAN_CTAG_RX &&
  		    (trxd.rxd2 & RX_DMA_VTAG))
-@@ -1365,6 +1367,12 @@ rx_done:
+@@ -1379,6 +1381,12 @@ rx_done:
  		mtk_update_rx_cpu_idx(eth);
  	}
  
@@ -64,7 +64,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	return done;
  }
  
-@@ -1457,6 +1465,7 @@ static int mtk_poll_tx_pdma(struct mtk_e
+@@ -1471,6 +1479,7 @@ static int mtk_poll_tx_pdma(struct mtk_e
  static int mtk_poll_tx(struct mtk_eth *eth, int budget)
  {
  	struct mtk_tx_ring *ring = &eth->tx_ring;
@@ -72,7 +72,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	unsigned int done[MTK_MAX_DEVS];
  	unsigned int bytes[MTK_MAX_DEVS];
  	int total = 0, i;
-@@ -1474,8 +1483,14 @@ static int mtk_poll_tx(struct mtk_eth *e
+@@ -1488,8 +1497,14 @@ static int mtk_poll_tx(struct mtk_eth *e
  			continue;
  		netdev_completed_queue(eth->netdev[i], done[i], bytes[i]);
  		total += done[i];
@@ -87,7 +87,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	if (mtk_queue_stopped(eth) &&
  	    (atomic_read(&ring->free_count) > ring->thresh))
  		mtk_wake_queue(eth);
-@@ -2153,6 +2168,7 @@ static irqreturn_t mtk_handle_irq_rx(int
+@@ -2170,6 +2185,7 @@ static irqreturn_t mtk_handle_irq_rx(int
  {
  	struct mtk_eth *eth = _eth;
  
@@ -95,7 +95,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	if (likely(napi_schedule_prep(&eth->rx_napi))) {
  		__napi_schedule(&eth->rx_napi);
  		mtk_rx_irq_disable(eth, MTK_RX_DONE_INT);
-@@ -2165,6 +2181,7 @@ static irqreturn_t mtk_handle_irq_tx(int
+@@ -2182,6 +2198,7 @@ static irqreturn_t mtk_handle_irq_tx(int
  {
  	struct mtk_eth *eth = _eth;
  
@@ -103,7 +103,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	if (likely(napi_schedule_prep(&eth->tx_napi))) {
  		__napi_schedule(&eth->tx_napi);
  		mtk_tx_irq_disable(eth, MTK_TX_DONE_INT);
-@@ -2349,6 +2366,9 @@ static int mtk_stop(struct net_device *d
+@@ -2366,6 +2383,9 @@ static int mtk_stop(struct net_device *d
  	napi_disable(&eth->tx_napi);
  	napi_disable(&eth->rx_napi);
  
@@ -113,7 +113,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA))
  		mtk_stop_dma(eth, MTK_QDMA_GLO_CFG);
  	mtk_stop_dma(eth, MTK_PDMA_GLO_CFG);
-@@ -2401,6 +2421,64 @@ err_disable_clks:
+@@ -2418,6 +2438,64 @@ err_disable_clks:
  	return ret;
  }
  
@@ -178,7 +178,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  static int mtk_hw_init(struct mtk_eth *eth)
  {
  	int i, val, ret;
-@@ -2422,9 +2500,6 @@ static int mtk_hw_init(struct mtk_eth *e
+@@ -2439,9 +2517,6 @@ static int mtk_hw_init(struct mtk_eth *e
  			goto err_disable_pm;
  		}
  
@@ -188,7 +188,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  		/* disable delay and normal interrupt */
  		mtk_tx_irq_disable(eth, ~0);
  		mtk_rx_irq_disable(eth, ~0);
-@@ -2463,11 +2538,11 @@ static int mtk_hw_init(struct mtk_eth *e
+@@ -2480,11 +2555,11 @@ static int mtk_hw_init(struct mtk_eth *e
  	/* Enable RX VLan Offloading */
  	mtk_w32(eth, 1, MTK_CDMP_EG_CTRL);
  
@@ -203,7 +203,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	mtk_tx_irq_disable(eth, ~0);
  	mtk_rx_irq_disable(eth, ~0);
  
-@@ -2972,6 +3047,13 @@ static int mtk_probe(struct platform_dev
+@@ -2989,6 +3064,13 @@ static int mtk_probe(struct platform_dev
  	spin_lock_init(&eth->page_lock);
  	spin_lock_init(&eth->tx_irq_lock);
  	spin_lock_init(&eth->rx_irq_lock);
diff --git a/target/linux/generic/backport-5.10/610-v5.13-46-net-ethernet-mtk_eth_soc-cache-HW-pointer-of-last-fr.patch b/target/linux/generic/backport-5.10/610-v5.13-46-net-ethernet-mtk_eth_soc-cache-HW-pointer-of-last-fr.patch
index c2252ed728..c84bfbfd08 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-46-net-ethernet-mtk_eth_soc-cache-HW-pointer-of-last-fr.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-46-net-ethernet-mtk_eth_soc-cache-HW-pointer-of-last-fr.patch
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1385,7 +1385,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
+@@ -1399,7 +1399,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
  	struct mtk_tx_buf *tx_buf;
  	u32 cpu, dma;
  
@@ -26,7 +26,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	dma = mtk_r32(eth, MTK_QTX_DRX_PTR);
  
  	desc = mtk_qdma_phys_to_virt(ring, cpu);
-@@ -1419,6 +1419,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
+@@ -1433,6 +1433,7 @@ static int mtk_poll_tx_qdma(struct mtk_e
  		cpu = next_cpu;
  	}
  
@@ -34,7 +34,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	mtk_w32(eth, cpu, MTK_QTX_CRX_PTR);
  
  	return budget;
-@@ -1619,6 +1620,7 @@ static int mtk_tx_alloc(struct mtk_eth *
+@@ -1633,6 +1634,7 @@ static int mtk_tx_alloc(struct mtk_eth *
  	atomic_set(&ring->free_count, MTK_DMA_SIZE - 2);
  	ring->next_free = &ring->dma[0];
  	ring->last_free = &ring->dma[MTK_DMA_SIZE - 1];
@@ -42,7 +42,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	ring->thresh = MAX_SKB_FRAGS;
  
  	/* make sure that all changes to the dma ring are flushed before we
-@@ -1632,9 +1634,7 @@ static int mtk_tx_alloc(struct mtk_eth *
+@@ -1646,9 +1648,7 @@ static int mtk_tx_alloc(struct mtk_eth *
  		mtk_w32(eth,
  			ring->phys + ((MTK_DMA_SIZE - 1) * sz),
  			MTK_QTX_CRX_PTR);
diff --git a/target/linux/generic/backport-5.10/610-v5.13-47-net-ethernet-mtk_eth_soc-only-read-the-full-RX-descr.patch b/target/linux/generic/backport-5.10/610-v5.13-47-net-ethernet-mtk_eth_soc-only-read-the-full-RX-descr.patch
index 09b8b3afb9..8d27d448aa 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-47-net-ethernet-mtk_eth_soc-only-read-the-full-RX-descr.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-47-net-ethernet-mtk_eth_soc-only-read-the-full-RX-descr.patch
@@ -36,8 +36,8 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 +	return true;
  }
  
- /* the qdma core needs scratch memory to be setup */
-@@ -1276,8 +1281,7 @@ static int mtk_poll_rx(struct napi_struc
+ static void *mtk_max_lro_buf_alloc(gfp_t gfp_mask)
+@@ -1287,8 +1292,7 @@ static int mtk_poll_rx(struct napi_struc
  		rxd = &ring->dma[idx];
  		data = ring->data[idx];
  
diff --git a/target/linux/generic/backport-5.10/610-v5.13-48-net-ethernet-mtk_eth_soc-reduce-unnecessary-interrup.patch b/target/linux/generic/backport-5.10/610-v5.13-48-net-ethernet-mtk_eth_soc-reduce-unnecessary-interrup.patch
index 411374c2e7..6df02c9a56 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-48-net-ethernet-mtk_eth_soc-reduce-unnecessary-interrup.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-48-net-ethernet-mtk_eth_soc-reduce-unnecessary-interrup.patch
@@ -14,7 +14,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1540,8 +1540,8 @@ static int mtk_napi_tx(struct napi_struc
+@@ -1554,8 +1554,8 @@ static int mtk_napi_tx(struct napi_struc
  	if (status & MTK_TX_DONE_INT)
  		return budget;
  
@@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
  	return tx_done;
  }
-@@ -1574,8 +1574,9 @@ poll_again:
+@@ -1588,8 +1588,9 @@ poll_again:
  		remain_budget -= rx_done;
  		goto poll_again;
  	}
diff --git a/target/linux/generic/backport-5.10/610-v5.13-49-net-ethernet-mtk_eth_soc-rework-NAPI-callbacks.patch b/target/linux/generic/backport-5.10/610-v5.13-49-net-ethernet-mtk_eth_soc-rework-NAPI-callbacks.patch
index d0926325d9..a423df0d9a 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-49-net-ethernet-mtk_eth_soc-rework-NAPI-callbacks.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-49-net-ethernet-mtk_eth_soc-rework-NAPI-callbacks.patch
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -1517,7 +1517,6 @@ static void mtk_handle_status_irq(struct
+@@ -1531,7 +1531,6 @@ static void mtk_handle_status_irq(struct
  static int mtk_napi_tx(struct napi_struct *napi, int budget)
  {
  	struct mtk_eth *eth = container_of(napi, struct mtk_eth, tx_napi);
@@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  	int tx_done = 0;
  
  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA))
-@@ -1526,21 +1525,19 @@ static int mtk_napi_tx(struct napi_struc
+@@ -1540,21 +1539,19 @@ static int mtk_napi_tx(struct napi_struc
  	tx_done = mtk_poll_tx(eth, budget);
  
  	if (unlikely(netif_msg_intr(eth))) {
@@ -52,7 +52,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  		mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
  
  	return tx_done;
-@@ -1549,36 +1546,33 @@ static int mtk_napi_tx(struct napi_struc
+@@ -1563,36 +1560,33 @@ static int mtk_napi_tx(struct napi_struc
  static int mtk_napi_rx(struct napi_struct *napi, int budget)
  {
  	struct mtk_eth *eth = container_of(napi, struct mtk_eth, rx_napi);
diff --git a/target/linux/generic/backport-5.10/610-v5.13-50-net-ethernet-mtk_eth_soc-set-PPE-flow-hash-as-skb-ha.patch b/target/linux/generic/backport-5.10/610-v5.13-50-net-ethernet-mtk_eth_soc-set-PPE-flow-hash-as-skb-ha.patch
index ab298ec42b..ed433a5770 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-50-net-ethernet-mtk_eth_soc-set-PPE-flow-hash-as-skb-ha.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-50-net-ethernet-mtk_eth_soc-set-PPE-flow-hash-as-skb-ha.patch
@@ -24,7 +24,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  #include <net/dsa.h>
  
  #include "mtk_eth_soc.h"
-@@ -1271,6 +1272,7 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1282,6 +1283,7 @@ static int mtk_poll_rx(struct napi_struc
  		struct net_device *netdev;
  		unsigned int pktlen;
  		dma_addr_t dma_addr;
@@ -32,7 +32,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  		int mac;
  
  		ring = mtk_get_rx_ring(eth);
-@@ -1340,6 +1342,12 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1354,6 +1356,12 @@ static int mtk_poll_rx(struct napi_struc
  		skb->protocol = eth_type_trans(skb, netdev);
  		bytes += pktlen;
  
diff --git a/target/linux/generic/backport-5.10/610-v5.13-51-net-ethernet-mtk_eth_soc-use-iopoll.h-macro-for-DMA-.patch b/target/linux/generic/backport-5.10/610-v5.13-51-net-ethernet-mtk_eth_soc-use-iopoll.h-macro-for-DMA-.patch
index 7a203d4ef3..e7918fb52c 100644
--- a/target/linux/generic/backport-5.10/610-v5.13-51-net-ethernet-mtk_eth_soc-use-iopoll.h-macro-for-DMA-.patch
+++ b/target/linux/generic/backport-5.10/610-v5.13-51-net-ethernet-mtk_eth_soc-use-iopoll.h-macro-for-DMA-.patch
@@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2057,25 +2057,22 @@ static int mtk_set_features(struct net_d
+@@ -2074,25 +2074,22 @@ static int mtk_set_features(struct net_d
  /* wait for DMA to finish whatever it is doing before we start using it again */
  static int mtk_dma_busy_wait(struct mtk_eth *eth)
  {
diff --git a/target/linux/generic/backport-5.10/611-v5.12-net-ethernet-mediatek-support-setting-MTU.patch b/target/linux/generic/backport-5.10/611-v5.12-net-ethernet-mediatek-support-setting-MTU.patch
index 3d33ec0aeb..b0908cca9a 100644
--- a/target/linux/generic/backport-5.10/611-v5.12-net-ethernet-mediatek-support-setting-MTU.patch
+++ b/target/linux/generic/backport-5.10/611-v5.12-net-ethernet-mediatek-support-setting-MTU.patch
@@ -48,7 +48,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  
  	return buf_size;
  }
-@@ -2609,6 +2609,35 @@ static void mtk_uninit(struct net_device
+@@ -2626,6 +2626,35 @@ static void mtk_uninit(struct net_device
  	mtk_rx_irq_disable(eth, ~0);
  }
  
@@ -84,7 +84,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  static int mtk_do_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
  {
  	struct mtk_mac *mac = netdev_priv(dev);
-@@ -2905,6 +2934,7 @@ static const struct net_device_ops mtk_n
+@@ -2922,6 +2951,7 @@ static const struct net_device_ops mtk_n
  	.ndo_set_mac_address	= mtk_set_mac_address,
  	.ndo_validate_addr	= eth_validate_addr,
  	.ndo_do_ioctl		= mtk_do_ioctl,
@@ -92,7 +92,7 @@ Signed-off-by: Jakub Kicinski <kuba at kernel.org>
  	.ndo_tx_timeout		= mtk_tx_timeout,
  	.ndo_get_stats64        = mtk_get_stats64,
  	.ndo_fix_features	= mtk_fix_features,
-@@ -3007,7 +3037,10 @@ static int mtk_add_mac(struct mtk_eth *e
+@@ -3024,7 +3054,10 @@ static int mtk_add_mac(struct mtk_eth *e
  	eth->netdev[id]->irq = eth->irq[0];
  	eth->netdev[id]->dev.of_node = np;
  
diff --git a/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch b/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch
index 6ed71faa7d..80f51e7a22 100644
--- a/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch
+++ b/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch
@@ -895,7 +895,7 @@ Signed-off-by: David S. Miller <davem at davemloft.net>
  
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2583,14 +2583,11 @@ static int __init mtk_init(struct net_de
+@@ -2600,14 +2600,11 @@ static int __init mtk_init(struct net_de
  {
  	struct mtk_mac *mac = netdev_priv(dev);
  	struct mtk_eth *eth = mac->hw;
diff --git a/target/linux/generic/backport-5.10/840-v5.15-leds-pca955x-clean-up-code-formatting.patch b/target/linux/generic/backport-5.10/840-v5.15-leds-pca955x-clean-up-code-formatting.patch
index 41199dd93e..80257c2ea0 100644
--- a/target/linux/generic/backport-5.10/840-v5.15-leds-pca955x-clean-up-code-formatting.patch
+++ b/target/linux/generic/backport-5.10/840-v5.15-leds-pca955x-clean-up-code-formatting.patch
@@ -11,11 +11,9 @@ Signed-off-by: Pavel Machek <pavel at ucw.cz>
  drivers/leds/leds-pca955x.c | 63 ++++++++++++++++++-------------------
  1 file changed, 30 insertions(+), 33 deletions(-)
 
-diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
-index 7087ca4592fc96..f0d841cb59fcc8 100644
 --- a/drivers/leds/leds-pca955x.c
 +++ b/drivers/leds/leds-pca955x.c
-@@ -166,11 +166,10 @@ static inline u8 pca955x_ledsel(u8 oldval, int led_num, int state)
+@@ -166,11 +166,10 @@ static inline u8 pca955x_ledsel(u8 oldva
  static int pca955x_write_psc(struct i2c_client *client, int n, u8 val)
  {
  	struct pca955x *pca955x = i2c_get_clientdata(client);
@@ -29,7 +27,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	if (ret < 0)
  		dev_err(&client->dev, "%s: reg 0x%x, val 0x%x, err %d\n",
  			__func__, n, val, ret);
-@@ -187,11 +186,10 @@ static int pca955x_write_psc(struct i2c_client *client, int n, u8 val)
+@@ -187,11 +186,10 @@ static int pca955x_write_psc(struct i2c_
  static int pca955x_write_pwm(struct i2c_client *client, int n, u8 val)
  {
  	struct pca955x *pca955x = i2c_get_clientdata(client);
@@ -43,7 +41,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	if (ret < 0)
  		dev_err(&client->dev, "%s: reg 0x%x, val 0x%x, err %d\n",
  			__func__, n, val, ret);
-@@ -205,11 +203,10 @@ static int pca955x_write_pwm(struct i2c_client *client, int n, u8 val)
+@@ -205,11 +203,10 @@ static int pca955x_write_pwm(struct i2c_
  static int pca955x_write_ls(struct i2c_client *client, int n, u8 val)
  {
  	struct pca955x *pca955x = i2c_get_clientdata(client);
@@ -57,7 +55,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	if (ret < 0)
  		dev_err(&client->dev, "%s: reg 0x%x, val 0x%x, err %d\n",
  			__func__, n, val, ret);
-@@ -223,10 +220,10 @@ static int pca955x_write_ls(struct i2c_client *client, int n, u8 val)
+@@ -223,10 +220,10 @@ static int pca955x_write_ls(struct i2c_c
  static int pca955x_read_ls(struct i2c_client *client, int n, u8 *val)
  {
  	struct pca955x *pca955x = i2c_get_clientdata(client);
@@ -78,7 +76,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	struct fwnode_handle *child;
  	int count;
  
-@@ -401,13 +399,13 @@ pca955x_get_pdata(struct i2c_client *client, struct pca955x_chipdef *chip)
+@@ -401,13 +399,13 @@ pca955x_get_pdata(struct i2c_client *cli
  		if ((res != 0) && is_of_node(child))
  			name = to_of_node(child)->name;
  
@@ -97,7 +95,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	}
  
  	pdata->num_leds = chip->bits;
-@@ -426,11 +424,12 @@ static const struct of_device_id of_pca955x_match[] = {
+@@ -426,11 +424,12 @@ static const struct of_device_id of_pca9
  MODULE_DEVICE_TABLE(of, of_pca955x_match);
  
  static int pca955x_probe(struct i2c_client *client,
@@ -111,7 +109,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	struct i2c_adapter *adapter;
  	int i, err;
  	struct pca955x_platform_data *pdata;
-@@ -449,13 +448,13 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -449,13 +448,13 @@ static int pca955x_probe(struct i2c_clie
  	if ((client->addr & ~((1 << chip->slv_addr_shift) - 1)) !=
  	    chip->slv_addr) {
  		dev_err(&client->dev, "invalid slave address %02x\n",
@@ -128,7 +126,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  
  	if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA))
  		return -EIO;
-@@ -471,8 +470,8 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -471,8 +470,8 @@ static int pca955x_probe(struct i2c_clie
  	if (!pca955x)
  		return -ENOMEM;
  
@@ -139,7 +137,7 @@ index 7087ca4592fc96..f0d841cb59fcc8 100644
  	if (!pca955x->leds)
  		return -ENOMEM;
  
-@@ -501,27 +500,25 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -501,27 +500,25 @@ static int pca955x_probe(struct i2c_clie
  			 */
  			if (pdata->leds[i].name[0] == '\0')
  				snprintf(pdata->leds[i].name,
diff --git a/target/linux/generic/backport-5.10/841-v5.15-leds-pca955x-add-brightness-get-function.patch b/target/linux/generic/backport-5.10/841-v5.15-leds-pca955x-add-brightness-get-function.patch
index c3344be4fd..bdb095dc2e 100644
--- a/target/linux/generic/backport-5.10/841-v5.15-leds-pca955x-add-brightness-get-function.patch
+++ b/target/linux/generic/backport-5.10/841-v5.15-leds-pca955x-add-brightness-get-function.patch
@@ -11,11 +11,9 @@ Signed-off-by: Pavel Machek <pavel at ucw.cz>
  drivers/leds/leds-pca955x.c | 52 +++++++++++++++++++++++++++++++++++++
  1 file changed, 52 insertions(+)
 
-diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
-index f0d841cb59fcc8..e47ba7c3b7c7d8 100644
 --- a/drivers/leds/leds-pca955x.c
 +++ b/drivers/leds/leds-pca955x.c
-@@ -233,6 +233,57 @@ static int pca955x_read_ls(struct i2c_client *client, int n, u8 *val)
+@@ -233,6 +233,57 @@ static int pca955x_read_ls(struct i2c_cl
  	return 0;
  }
  
@@ -73,7 +71,7 @@ index f0d841cb59fcc8..e47ba7c3b7c7d8 100644
  static int pca955x_led_set(struct led_classdev *led_cdev,
  			    enum led_brightness value)
  {
-@@ -512,6 +563,7 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -512,6 +563,7 @@ static int pca955x_probe(struct i2c_clie
  
  			led->name = pca955x_led->name;
  			led->brightness_set_blocking = pca955x_led_set;
diff --git a/target/linux/generic/backport-5.10/842-v5.15-leds-pca955x-implement-the-default-state-property.patch b/target/linux/generic/backport-5.10/842-v5.15-leds-pca955x-implement-the-default-state-property.patch
index 055801f096..8c79eb1b67 100644
--- a/target/linux/generic/backport-5.10/842-v5.15-leds-pca955x-implement-the-default-state-property.patch
+++ b/target/linux/generic/backport-5.10/842-v5.15-leds-pca955x-implement-the-default-state-property.patch
@@ -13,8 +13,6 @@ Signed-off-by: Pavel Machek <pavel at ucw.cz>
  drivers/leds/leds-pca955x.c | 54 +++++++++++++++++++++++++++++++------
  1 file changed, 46 insertions(+), 8 deletions(-)
 
-diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
-index e47ba7c3b7c7d8..fa1d77d86ef67b 100644
 --- a/drivers/leds/leds-pca955x.c
 +++ b/drivers/leds/leds-pca955x.c
 @@ -129,6 +129,7 @@ struct pca955x_led {
@@ -25,7 +23,7 @@ index e47ba7c3b7c7d8..fa1d77d86ef67b 100644
  	const char		*default_trigger;
  };
  
-@@ -439,6 +440,7 @@ pca955x_get_pdata(struct i2c_client *client, struct pca955x_chipdef *chip)
+@@ -439,6 +440,7 @@ pca955x_get_pdata(struct i2c_client *cli
  
  	device_for_each_child_node(&client->dev, child) {
  		const char *name;
@@ -33,7 +31,7 @@ index e47ba7c3b7c7d8..fa1d77d86ef67b 100644
  		u32 reg;
  		int res;
  
-@@ -457,6 +459,18 @@ pca955x_get_pdata(struct i2c_client *client, struct pca955x_chipdef *chip)
+@@ -457,6 +459,18 @@ pca955x_get_pdata(struct i2c_client *cli
  		fwnode_property_read_u32(child, "type", &led->type);
  		fwnode_property_read_string(child, "linux,default-trigger",
  					    &led->default_trigger);
@@ -52,7 +50,7 @@ index e47ba7c3b7c7d8..fa1d77d86ef67b 100644
  	}
  
  	pdata->num_leds = chip->bits;
-@@ -485,6 +499,7 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -485,6 +499,7 @@ static int pca955x_probe(struct i2c_clie
  	int i, err;
  	struct pca955x_platform_data *pdata;
  	int ngpios = 0;
@@ -60,7 +58,7 @@ index e47ba7c3b7c7d8..fa1d77d86ef67b 100644
  
  	chip = &pca955x_chipdefs[id->driver_data];
  	adapter = client->adapter;
-@@ -565,14 +580,35 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -565,14 +580,35 @@ static int pca955x_probe(struct i2c_clie
  			led->brightness_set_blocking = pca955x_led_set;
  			led->brightness_get = pca955x_led_get;
  
@@ -100,7 +98,7 @@ index e47ba7c3b7c7d8..fa1d77d86ef67b 100644
  		}
  	}
  
-@@ -581,10 +617,12 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -581,10 +617,12 @@ static int pca955x_probe(struct i2c_clie
  	if (err)
  		return err;
  
diff --git a/target/linux/generic/backport-5.10/843-v5.15-leds-pca955x-let-the-core-process-the-fwnode.patch b/target/linux/generic/backport-5.10/843-v5.15-leds-pca955x-let-the-core-process-the-fwnode.patch
index 7a091d9716..11311b8b2b 100644
--- a/target/linux/generic/backport-5.10/843-v5.15-leds-pca955x-let-the-core-process-the-fwnode.patch
+++ b/target/linux/generic/backport-5.10/843-v5.15-leds-pca955x-let-the-core-process-the-fwnode.patch
@@ -14,8 +14,6 @@ Signed-off-by: Pavel Machek <pavel at ucw.cz>
  drivers/leds/leds-pca955x.c | 58 +++++++++++++++++++------------------
  1 file changed, 30 insertions(+), 28 deletions(-)
 
-diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
-index fa1d77d86ef67b..a6aa4b9abde8c4 100644
 --- a/drivers/leds/leds-pca955x.c
 +++ b/drivers/leds/leds-pca955x.c
 @@ -127,10 +127,9 @@ struct pca955x_led {
@@ -30,7 +28,7 @@ index fa1d77d86ef67b..a6aa4b9abde8c4 100644
  };
  
  struct pca955x_platform_data {
-@@ -439,7 +438,6 @@ pca955x_get_pdata(struct i2c_client *client, struct pca955x_chipdef *chip)
+@@ -439,7 +438,6 @@ pca955x_get_pdata(struct i2c_client *cli
  		return ERR_PTR(-ENOMEM);
  
  	device_for_each_child_node(&client->dev, child) {
@@ -38,7 +36,7 @@ index fa1d77d86ef67b..a6aa4b9abde8c4 100644
  		const char *state;
  		u32 reg;
  		int res;
-@@ -448,17 +446,10 @@ pca955x_get_pdata(struct i2c_client *client, struct pca955x_chipdef *chip)
+@@ -448,17 +446,10 @@ pca955x_get_pdata(struct i2c_client *cli
  		if ((res != 0) || (reg >= chip->bits))
  			continue;
  
@@ -57,7 +55,7 @@ index fa1d77d86ef67b..a6aa4b9abde8c4 100644
  
  		if (!fwnode_property_read_string(child, "default-state",
  						 &state)) {
-@@ -495,11 +486,14 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -495,11 +486,14 @@ static int pca955x_probe(struct i2c_clie
  	struct pca955x_led *pca955x_led;
  	struct pca955x_chipdef *chip;
  	struct led_classdev *led;
@@ -72,7 +70,7 @@ index fa1d77d86ef67b..a6aa4b9abde8c4 100644
  
  	chip = &pca955x_chipdefs[id->driver_data];
  	adapter = client->adapter;
-@@ -547,6 +541,9 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -547,6 +541,9 @@ static int pca955x_probe(struct i2c_clie
  	pca955x->client = client;
  	pca955x->chipdef = chip;
  
@@ -82,7 +80,7 @@ index fa1d77d86ef67b..a6aa4b9abde8c4 100644
  	for (i = 0; i < chip->bits; i++) {
  		pca955x_led = &pca955x->leds[i];
  		pca955x_led->led_num = i;
-@@ -560,23 +557,7 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -560,23 +557,7 @@ static int pca955x_probe(struct i2c_clie
  			ngpios++;
  			break;
  		case PCA955X_TYPE_LED:
@@ -106,7 +104,7 @@ index fa1d77d86ef67b..a6aa4b9abde8c4 100644
  			led->brightness_set_blocking = pca955x_led_set;
  			led->brightness_get = pca955x_led_get;
  
-@@ -592,7 +573,28 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -592,7 +573,28 @@ static int pca955x_probe(struct i2c_clie
  					return err;
  			}
  
diff --git a/target/linux/generic/backport-5.10/844-v5.15-leds-pca955x-switch-to-i2c-probe-new.patch b/target/linux/generic/backport-5.10/844-v5.15-leds-pca955x-switch-to-i2c-probe-new.patch
index 77ac4e7dc9..8154cd66f1 100644
--- a/target/linux/generic/backport-5.10/844-v5.15-leds-pca955x-switch-to-i2c-probe-new.patch
+++ b/target/linux/generic/backport-5.10/844-v5.15-leds-pca955x-switch-to-i2c-probe-new.patch
@@ -14,11 +14,9 @@ Signed-off-by: Pavel Machek <pavel at ucw.cz>
  drivers/leds/leds-pca955x.c | 23 +++++++++++++++++++----
  1 file changed, 19 insertions(+), 4 deletions(-)
 
-diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
-index a6aa4b9abde8c4..a6b5699aeae4fe 100644
 --- a/drivers/leds/leds-pca955x.c
 +++ b/drivers/leds/leds-pca955x.c
-@@ -479,8 +479,7 @@ static const struct of_device_id of_pca955x_match[] = {
+@@ -479,8 +479,7 @@ static const struct of_device_id of_pca9
  };
  MODULE_DEVICE_TABLE(of, of_pca955x_match);
  
@@ -28,7 +26,7 @@ index a6aa4b9abde8c4..a6b5699aeae4fe 100644
  {
  	struct pca955x *pca955x;
  	struct pca955x_led *pca955x_led;
-@@ -494,8 +493,24 @@ static int pca955x_probe(struct i2c_client *client,
+@@ -494,8 +493,24 @@ static int pca955x_probe(struct i2c_clie
  	bool set_default_label = false;
  	bool keep_pwm = false;
  	char default_label[8];
@@ -54,7 +52,7 @@ index a6aa4b9abde8c4..a6b5699aeae4fe 100644
  	adapter = client->adapter;
  	pdata = dev_get_platdata(&client->dev);
  	if (!pdata) {
-@@ -670,7 +685,7 @@ static struct i2c_driver pca955x_driver = {
+@@ -670,7 +685,7 @@ static struct i2c_driver pca955x_driver
  		.name	= "leds-pca955x",
  		.of_match_table = of_pca955x_match,
  	},
@@ -62,3 +60,4 @@ index a6aa4b9abde8c4..a6b5699aeae4fe 100644
 +	.probe_new = pca955x_probe,
  	.id_table = pca955x_id,
  };
+ 
diff --git a/target/linux/generic/hack-5.10/251-kconfig.patch b/target/linux/generic/hack-5.10/251-kconfig.patch
index 4ada399fbf..30b8ee23ea 100644
--- a/target/linux/generic/hack-5.10/251-kconfig.patch
+++ b/target/linux/generic/hack-5.10/251-kconfig.patch
@@ -16,7 +16,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
 
 --- a/crypto/Kconfig
 +++ b/crypto/Kconfig
-@@ -33,7 +33,7 @@ config CRYPTO_FIPS
+@@ -34,7 +34,7 @@ config CRYPTO_FIPS
  	  this is.
  
  config CRYPTO_ALGAPI
@@ -25,7 +25,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_ALGAPI2
  	help
  	  This option provides the API for cryptographic algorithms.
-@@ -42,7 +42,7 @@ config CRYPTO_ALGAPI2
+@@ -43,7 +43,7 @@ config CRYPTO_ALGAPI2
  	tristate
  
  config CRYPTO_AEAD
@@ -34,7 +34,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_AEAD2
  	select CRYPTO_ALGAPI
  
-@@ -53,7 +53,7 @@ config CRYPTO_AEAD2
+@@ -54,7 +54,7 @@ config CRYPTO_AEAD2
  	select CRYPTO_RNG2
  
  config CRYPTO_SKCIPHER
@@ -43,7 +43,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_SKCIPHER2
  	select CRYPTO_ALGAPI
  
-@@ -63,7 +63,7 @@ config CRYPTO_SKCIPHER2
+@@ -64,7 +64,7 @@ config CRYPTO_SKCIPHER2
  	select CRYPTO_RNG2
  
  config CRYPTO_HASH
@@ -52,7 +52,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	select CRYPTO_HASH2
  	select CRYPTO_ALGAPI
  
-@@ -72,7 +72,7 @@ config CRYPTO_HASH2
+@@ -73,7 +73,7 @@ config CRYPTO_HASH2
  	select CRYPTO_ALGAPI2
  
  config CRYPTO_RNG
@@ -92,7 +92,7 @@ Signed-off-by: John Crispin <john at phrozen.org>
  	bool
 --- a/lib/Kconfig
 +++ b/lib/Kconfig
-@@ -420,16 +420,16 @@ config BCH_CONST_T
+@@ -423,16 +423,16 @@ config BCH_CONST_T
  # Textsearch support is select'ed if needed
  #
  config TEXTSEARCH
diff --git a/target/linux/generic/hack-5.10/253-ksmbd-config.patch b/target/linux/generic/hack-5.10/253-ksmbd-config.patch
index 3e51aa60be..4d07c1c00e 100644
--- a/target/linux/generic/hack-5.10/253-ksmbd-config.patch
+++ b/target/linux/generic/hack-5.10/253-ksmbd-config.patch
@@ -11,7 +11,7 @@
  	  that can be interpreted by the ASN.1 stream decoder and used to
 --- a/lib/Kconfig
 +++ b/lib/Kconfig
-@@ -591,7 +591,7 @@ config LIBFDT
+@@ -594,7 +594,7 @@ config LIBFDT
  	bool
  
  config OID_REGISTRY
diff --git a/target/linux/generic/hack-5.10/260-crypto_test_dependencies.patch b/target/linux/generic/hack-5.10/260-crypto_test_dependencies.patch
index 1eab709c46..3ccf67b23e 100644
--- a/target/linux/generic/hack-5.10/260-crypto_test_dependencies.patch
+++ b/target/linux/generic/hack-5.10/260-crypto_test_dependencies.patch
@@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/crypto/Kconfig
 +++ b/crypto/Kconfig
-@@ -120,13 +120,13 @@ config CRYPTO_MANAGER
+@@ -121,13 +121,13 @@ config CRYPTO_MANAGER
  	  cbc(aes).
  
  config CRYPTO_MANAGER2
diff --git a/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch b/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch
index e55f2c0086..bdbab68ee1 100644
--- a/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch
+++ b/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch
@@ -19,7 +19,7 @@
  
  #define QUECTEL_VENDOR_ID			0x2c7c
  /* These Quectel products use Quectel's vendor ID */
-@@ -1129,6 +1131,11 @@ static const struct usb_device_id option
+@@ -1131,6 +1133,11 @@ static const struct usb_device_id option
  	{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0, 0) },
  	{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
  	  .driver_info = RSVD(4) },
diff --git a/target/linux/generic/pending-5.10/530-jffs2_make_lzma_available.patch b/target/linux/generic/pending-5.10/530-jffs2_make_lzma_available.patch
index d30d3b7560..bd901efd71 100644
--- a/target/linux/generic/pending-5.10/530-jffs2_make_lzma_available.patch
+++ b/target/linux/generic/pending-5.10/530-jffs2_make_lzma_available.patch
@@ -1087,7 +1087,7 @@ Signed-off-by: Alexandros C. Couloumbis <alex at ozo.com>
  #define JFFS2_NODE_ACCURATE 0x2000
 --- a/lib/Kconfig
 +++ b/lib/Kconfig
-@@ -317,6 +317,12 @@ config ZSTD_DECOMPRESS
+@@ -320,6 +320,12 @@ config ZSTD_DECOMPRESS
  
  source "lib/xz/Kconfig"
  
diff --git a/target/linux/generic/pending-5.10/701-00-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch b/target/linux/generic/pending-5.10/701-00-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch
index 204f888d51..3678530e9a 100644
--- a/target/linux/generic/pending-5.10/701-00-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch
+++ b/target/linux/generic/pending-5.10/701-00-net-ethernet-mtk_eth_soc-add-support-for-coherent-DM.patch
@@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #include <linux/mfd/syscon.h>
  #include <linux/regmap.h>
  #include <linux/clk.h>
-@@ -821,7 +822,7 @@ static int mtk_init_fq_dma(struct mtk_et
+@@ -832,7 +833,7 @@ static int mtk_init_fq_dma(struct mtk_et
  	dma_addr_t dma_addr;
  	int i;
  
@@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  					       cnt * sizeof(struct mtk_tx_dma),
  					       &eth->phy_scratch_ring,
  					       GFP_ATOMIC);
-@@ -833,10 +834,10 @@ static int mtk_init_fq_dma(struct mtk_et
+@@ -844,10 +845,10 @@ static int mtk_init_fq_dma(struct mtk_et
  	if (unlikely(!eth->scratch_head))
  		return -ENOMEM;
  
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		return -ENOMEM;
  
  	phy_ring_tail = eth->phy_scratch_ring +
-@@ -890,26 +891,26 @@ static void mtk_tx_unmap(struct mtk_eth
+@@ -901,26 +902,26 @@ static void mtk_tx_unmap(struct mtk_eth
  {
  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
  		if (tx_buf->flags & MTK_TX_FLAGS_SINGLE0) {
@@ -73,7 +73,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				       dma_unmap_addr(tx_buf, dma_addr1),
  				       dma_unmap_len(tx_buf, dma_len1),
  				       DMA_TO_DEVICE);
-@@ -987,9 +988,9 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -998,9 +999,9 @@ static int mtk_tx_map(struct sk_buff *sk
  	if (skb_vlan_tag_present(skb))
  		txd4 |= TX_DMA_INS_VLAN | skb_vlan_tag_get(skb);
  
@@ -85,7 +85,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		return -ENOMEM;
  
  	WRITE_ONCE(itxd->txd1, mapped_addr);
-@@ -1028,10 +1029,10 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1039,10 +1040,10 @@ static int mtk_tx_map(struct sk_buff *sk
  
  
  			frag_map_size = min(frag_size, MTK_TX_DMA_BUF_LEN);
@@ -98,7 +98,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				goto err_dma;
  
  			if (i == nr_frags - 1 &&
-@@ -1309,18 +1310,18 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1323,18 +1324,18 @@ static int mtk_poll_rx(struct napi_struc
  			netdev->stats.rx_dropped++;
  			goto release_desc;
  		}
@@ -120,7 +120,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				 ring->buf_size, DMA_FROM_DEVICE);
  
  		/* receive data */
-@@ -1593,7 +1594,7 @@ static int mtk_tx_alloc(struct mtk_eth *
+@@ -1607,7 +1608,7 @@ static int mtk_tx_alloc(struct mtk_eth *
  	if (!ring->buf)
  		goto no_tx_mem;
  
@@ -129,7 +129,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				       &ring->phys, GFP_ATOMIC);
  	if (!ring->dma)
  		goto no_tx_mem;
-@@ -1611,7 +1612,7 @@ static int mtk_tx_alloc(struct mtk_eth *
+@@ -1625,7 +1626,7 @@ static int mtk_tx_alloc(struct mtk_eth *
  	 * descriptors in ring->dma_pdma.
  	 */
  	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
@@ -138,7 +138,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  						    &ring->phys_pdma,
  						    GFP_ATOMIC);
  		if (!ring->dma_pdma)
-@@ -1670,7 +1671,7 @@ static void mtk_tx_clean(struct mtk_eth
+@@ -1684,7 +1685,7 @@ static void mtk_tx_clean(struct mtk_eth
  	}
  
  	if (ring->dma) {
@@ -147,7 +147,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				  MTK_DMA_SIZE * sizeof(*ring->dma),
  				  ring->dma,
  				  ring->phys);
-@@ -1678,7 +1679,7 @@ static void mtk_tx_clean(struct mtk_eth
+@@ -1692,7 +1693,7 @@ static void mtk_tx_clean(struct mtk_eth
  	}
  
  	if (ring->dma_pdma) {
@@ -156,7 +156,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				  MTK_DMA_SIZE * sizeof(*ring->dma_pdma),
  				  ring->dma_pdma,
  				  ring->phys_pdma);
-@@ -1723,18 +1724,18 @@ static int mtk_rx_alloc(struct mtk_eth *
+@@ -1740,18 +1741,18 @@ static int mtk_rx_alloc(struct mtk_eth *
  			return -ENOMEM;
  	}
  
@@ -178,7 +178,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  			return -ENOMEM;
  		ring->dma[i].rxd1 = (unsigned int)dma_addr;
  
-@@ -1770,7 +1771,7 @@ static void mtk_rx_clean(struct mtk_eth
+@@ -1787,7 +1788,7 @@ static void mtk_rx_clean(struct mtk_eth
  				continue;
  			if (!ring->dma[i].rxd1)
  				continue;
@@ -187,7 +187,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  					 ring->dma[i].rxd1,
  					 ring->buf_size,
  					 DMA_FROM_DEVICE);
-@@ -1781,7 +1782,7 @@ static void mtk_rx_clean(struct mtk_eth
+@@ -1798,7 +1799,7 @@ static void mtk_rx_clean(struct mtk_eth
  	}
  
  	if (ring->dma) {
@@ -196,7 +196,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				  ring->dma_size * sizeof(*ring->dma),
  				  ring->dma,
  				  ring->phys);
-@@ -2137,7 +2138,7 @@ static void mtk_dma_free(struct mtk_eth
+@@ -2154,7 +2155,7 @@ static void mtk_dma_free(struct mtk_eth
  		if (eth->netdev[i])
  			netdev_reset_queue(eth->netdev[i]);
  	if (eth->scratch_ring) {
@@ -205,7 +205,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  				  MTK_DMA_SIZE * sizeof(struct mtk_tx_dma),
  				  eth->scratch_ring,
  				  eth->phy_scratch_ring);
-@@ -2485,6 +2486,8 @@ static void mtk_dim_tx(struct work_struc
+@@ -2502,6 +2503,8 @@ static void mtk_dim_tx(struct work_struc
  
  static int mtk_hw_init(struct mtk_eth *eth)
  {
@@ -214,7 +214,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	int i, val, ret;
  
  	if (test_and_set_bit(MTK_HW_INIT, &eth->state))
-@@ -2497,6 +2500,10 @@ static int mtk_hw_init(struct mtk_eth *e
+@@ -2514,6 +2517,10 @@ static int mtk_hw_init(struct mtk_eth *e
  	if (ret)
  		goto err_disable_pm;
  
@@ -225,7 +225,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
  		ret = device_reset(eth->dev);
  		if (ret) {
-@@ -3046,6 +3053,35 @@ free_netdev:
+@@ -3063,6 +3070,35 @@ free_netdev:
  	return err;
  }
  
@@ -261,7 +261,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  static int mtk_probe(struct platform_device *pdev)
  {
  	struct device_node *mac_np;
-@@ -3059,6 +3095,7 @@ static int mtk_probe(struct platform_dev
+@@ -3076,6 +3112,7 @@ static int mtk_probe(struct platform_dev
  	eth->soc = of_device_get_match_data(&pdev->dev);
  
  	eth->dev = &pdev->dev;
@@ -269,7 +269,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	eth->base = devm_platform_ioremap_resource(pdev, 0);
  	if (IS_ERR(eth->base))
  		return PTR_ERR(eth->base);
-@@ -3107,6 +3144,16 @@ static int mtk_probe(struct platform_dev
+@@ -3124,6 +3161,16 @@ static int mtk_probe(struct platform_dev
  		}
  	}
  
diff --git a/target/linux/generic/pending-5.10/701-02-net-ethernet-mtk_eth_soc-add-support-for-Wireless-Et.patch b/target/linux/generic/pending-5.10/701-02-net-ethernet-mtk_eth_soc-add-support-for-Wireless-Et.patch
index 34da131340..cebdbd6fee 100644
--- a/target/linux/generic/pending-5.10/701-02-net-ethernet-mtk_eth_soc-add-support-for-Wireless-Et.patch
+++ b/target/linux/generic/pending-5.10/701-02-net-ethernet-mtk_eth_soc-add-support-for-Wireless-Et.patch
@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  static int mtk_msg_level = -1;
  module_param_named(msg_level, mtk_msg_level, int, 0);
-@@ -3176,6 +3177,22 @@ static int mtk_probe(struct platform_dev
+@@ -3193,6 +3194,22 @@ static int mtk_probe(struct platform_dev
  		}
  	}
  
diff --git a/target/linux/generic/pending-5.10/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch b/target/linux/generic/pending-5.10/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch
index cbefd0787e..da5b254914 100644
--- a/target/linux/generic/pending-5.10/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch
+++ b/target/linux/generic/pending-5.10/701-07-net-ethernet-mtk_eth_soc-allocate-struct-mtk_ppe-sep.patch
@@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2308,7 +2308,7 @@ static int mtk_open(struct net_device *d
+@@ -2325,7 +2325,7 @@ static int mtk_open(struct net_device *d
  		if (err)
  			return err;
  
@@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  			gdm_config = MTK_GDMA_TO_PPE;
  
  		mtk_gdm_config(eth, gdm_config);
-@@ -2382,7 +2382,7 @@ static int mtk_stop(struct net_device *d
+@@ -2399,7 +2399,7 @@ static int mtk_stop(struct net_device *d
  	mtk_dma_free(eth);
  
  	if (eth->soc->offload_version)
@@ -28,7 +28,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  	return 0;
  }
-@@ -3268,10 +3268,11 @@ static int mtk_probe(struct platform_dev
+@@ -3285,10 +3285,11 @@ static int mtk_probe(struct platform_dev
  	}
  
  	if (eth->soc->offload_version) {
diff --git a/target/linux/generic/pending-5.10/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch b/target/linux/generic/pending-5.10/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch
index a68f280fd3..5b49513d4c 100644
--- a/target/linux/generic/pending-5.10/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch
+++ b/target/linux/generic/pending-5.10/701-08-net-ethernet-mtk_eth_soc-rework-hardware-flow-table-.patch
@@ -33,7 +33,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  #include <net/dsa.h>
  
  #include "mtk_eth_soc.h"
-@@ -1274,7 +1275,7 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1285,7 +1286,7 @@ static int mtk_poll_rx(struct napi_struc
  		struct net_device *netdev;
  		unsigned int pktlen;
  		dma_addr_t dma_addr;
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		int mac;
  
  		ring = mtk_get_rx_ring(eth);
-@@ -1350,6 +1351,11 @@ static int mtk_poll_rx(struct napi_struc
+@@ -1364,6 +1365,11 @@ static int mtk_poll_rx(struct napi_struc
  			skb_set_hash(skb, hash, PKT_HASH_TYPE_L4);
  		}
  
@@ -54,7 +54,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  		if (netdev->features & NETIF_F_HW_VLAN_CTAG_RX &&
  		    (trxd.rxd2 & RX_DMA_VTAG))
  			__vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
-@@ -3268,7 +3274,7 @@ static int mtk_probe(struct platform_dev
+@@ -3285,7 +3291,7 @@ static int mtk_probe(struct platform_dev
  	}
  
  	if (eth->soc->offload_version) {
diff --git a/target/linux/generic/pending-5.10/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch b/target/linux/generic/pending-5.10/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch
index 5ccabec38c..477c8f1568 100644
--- a/target/linux/generic/pending-5.10/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch
+++ b/target/linux/generic/pending-5.10/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch
@@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2182,8 +2182,8 @@ static irqreturn_t mtk_handle_irq_rx(int
+@@ -2199,8 +2199,8 @@ static irqreturn_t mtk_handle_irq_rx(int
  
  	eth->rx_events++;
  	if (likely(napi_schedule_prep(&eth->rx_napi))) {
@@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	}
  
  	return IRQ_HANDLED;
-@@ -2195,8 +2195,8 @@ static irqreturn_t mtk_handle_irq_tx(int
+@@ -2212,8 +2212,8 @@ static irqreturn_t mtk_handle_irq_tx(int
  
  	eth->tx_events++;
  	if (likely(napi_schedule_prep(&eth->tx_napi))) {
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  	}
  
  	return IRQ_HANDLED;
-@@ -3303,6 +3303,8 @@ static int mtk_probe(struct platform_dev
+@@ -3320,6 +3320,8 @@ static int mtk_probe(struct platform_dev
  	 * for NAPI to work
  	 */
  	init_dummy_netdev(&eth->dummy_dev);
diff --git a/target/linux/ramips/patches-5.10/700-net-ethernet-mediatek-support-net-labels.patch b/target/linux/ramips/patches-5.10/700-net-ethernet-mediatek-support-net-labels.patch
index 8e9429ed18..f86daff7d6 100644
--- a/target/linux/ramips/patches-5.10/700-net-ethernet-mediatek-support-net-labels.patch
+++ b/target/linux/ramips/patches-5.10/700-net-ethernet-mediatek-support-net-labels.patch
@@ -14,7 +14,7 @@ Signed-off-by: René van Dorst <opensource at vdorst.com>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2958,6 +2958,7 @@ static const struct net_device_ops mtk_n
+@@ -2975,6 +2975,7 @@ static const struct net_device_ops mtk_n
  
  static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
  {
@@ -22,7 +22,7 @@ Signed-off-by: René van Dorst <opensource at vdorst.com>
  	const __be32 *_id = of_get_property(np, "reg", NULL);
  	phy_interface_t phy_mode;
  	struct phylink *phylink;
-@@ -3053,6 +3054,9 @@ static int mtk_add_mac(struct mtk_eth *e
+@@ -3070,6 +3071,9 @@ static int mtk_add_mac(struct mtk_eth *e
  	else
  		eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH_2K - MTK_RX_ETH_HLEN;
  




More information about the lede-commits mailing list