From: John Audia Date: Wed, 22 Jun 2022 15:58:33 +0000 (-0400) Subject: kernel: bump 5.10 to 5.10.124 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=9e5d743422edc4036cda7d96b96ba62705f382de;p=openwrt%2Fstaging%2Fblogic.git 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 --- diff --git a/include/kernel-5.10 b/include/kernel-5.10 index 2b990e7f7a84..284ad99f40b4 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 43c682c45720..8126768f72a4 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 4f20909e3521..4fa61bec35dd 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 #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 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 9abe293dee07..f8ee000eeb20 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 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(ð->dma_refcnt)) { @@ -47,7 +47,7 @@ Signed-off-by: Pablo Neira Ayuso napi_enable(ð->tx_napi); napi_enable(ð->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 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 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 }; 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 c3542d7de3bf..b58eeacd77c0 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 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 }; 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 e99302ecdaac..78197c98a8e2 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 --- 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 /* 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 a82518882afe..12e531cab335 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 --- 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 } 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 5972b9afa775..8913f1255c1b 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 --- 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 { 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 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 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 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 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 56d4a82824d1..ad839297d5a4 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 --- 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 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 netif_err(eth, tx_queued, dev, "Tx Ring full when queue awake!\n"); spin_unlock(ð->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 5c8032414283..1c59f9991186 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 --- 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 2234d2f795e3..ba9e160dd26f 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 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 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 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 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 = ð->tx_ring; @@ -72,7 +72,7 @@ Signed-off-by: David S. Miller 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 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 if (likely(napi_schedule_prep(ð->rx_napi))) { __napi_schedule(ð->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 if (likely(napi_schedule_prep(ð->tx_napi))) { __napi_schedule(ð->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(ð->tx_napi); napi_disable(ð->rx_napi); @@ -113,7 +113,7 @@ Signed-off-by: David S. Miller 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 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 /* 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 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(ð->page_lock); spin_lock_init(ð->tx_irq_lock); spin_lock_init(ð->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 c2252ed72839..c84bfbfd08f4 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 --- 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 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 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 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 09b8b3afb972..8d27d448aa93 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 + 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 411374c2e781..6df02c9a565d 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 --- 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 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 d0926325d91f..a423df0d9a30 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 --- 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 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 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 ab298ec42be3..ed433a577032 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 #include #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 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 7a203d4ef3a5..e7918fb52c8b 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 --- 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 3d33ec0aeb31..b0908cca9a6e 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 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 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 .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 6ed71faa7d0e..80f51e7a2237 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 --- 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 41199dd93e0a..80257c2ea068 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 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 c3344be4fd66..bdb095dc2e69 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 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 055801f09605..8c79eb1b674d 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 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 7a091d971696..11311b8b2bed 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 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 77ac4e7dc9ed..8154cd66f182 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 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 4ada399fbf0e..30b8ee23ea38 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 --- 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 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 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 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 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 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 3e51aa60be24..4d07c1c00e05 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 1eab709c46bb..3ccf67b23ece 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 --- 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 e55f2c00864e..bdbab68ee18d 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 d30d3b756000..bd901efd711c 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 #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 204f888d5112..3678530e9aa5 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 #include #include #include -@@ -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 cnt * sizeof(struct mtk_tx_dma), ð->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 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 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 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 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 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 &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 &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 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 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 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 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 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 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 int i, val, ret; if (test_and_set_bit(MTK_HW_INIT, ð->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 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 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 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 34da1313402f..cebdbd6fee38 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 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 cbefd0787ebd..da5b25491485 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 --- 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 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 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 a68f280fd393..5b49513d4c8c 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 #include #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 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 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 5ccabec38cd1..477c8f156836 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 --- 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(ð->rx_napi))) { @@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau } 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(ð->tx_napi))) { @@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau } 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(ð->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 8e9429ed183f..f86daff7d659 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 --- 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 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;