Răsfoiți Sursa

generic: 6.1: manually refresh pending patches

Refresh pending patches for kernel 6.1.

Changes:
- Refresh mtd patches with new implementation.
- Change 191-rtc-rs5c372-let_the_alarm_to_be_used_as_wakeup_source as
  uie_unsupported got dropped and we now set the bit directly.

Signed-off-by: Christian Marangi <[email protected]>
Christian Marangi 3 ani în urmă
părinte
comite
fcab78c09f
36 a modificat fișierele cu 817 adăugiri și 228 ștergeri
  1. 5 5
      target/linux/generic/pending-6.1/103-kbuild-export-SUBARCH.patch
  2. 4 4
      target/linux/generic/pending-6.1/110-v6.3-0001-spidev-Add-Silicon-Labs-EM3581-device-compatible.patch
  3. 4 4
      target/linux/generic/pending-6.1/110-v6.3-0002-spidev-Add-Silicon-Labs-SI3210-device-compatible.patch
  4. 1 1
      target/linux/generic/pending-6.1/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch
  5. 3 2
      target/linux/generic/pending-6.1/191-rtc-rs5c372-let_the_alarm_to_be_used_as_wakeup_source.patch
  6. 10 11
      target/linux/generic/pending-6.1/203-kallsyms_uncompressed.patch
  7. 2 2
      target/linux/generic/pending-6.1/270-platform-mikrotik-build-bits.patch
  8. 1 1
      target/linux/generic/pending-6.1/400-mtd-mtdsplit-support.patch
  9. 1 1
      target/linux/generic/pending-6.1/420-mtd-redboot_space.patch
  10. 9 8
      target/linux/generic/pending-6.1/476-mtd-spi-nor-add-eon-en25q128.patch
  11. 7 7
      target/linux/generic/pending-6.1/477-mtd-spi-nor-add-eon-en25qx128a.patch
  12. 6 3
      target/linux/generic/pending-6.1/479-mtd-spi-nor-add-xtx-xt25f128b.patch
  13. 9 8
      target/linux/generic/pending-6.1/481-mtd-spi-nor-add-support-for-Gigadevice-GD25D05.patch
  14. 8 6
      target/linux/generic/pending-6.1/482-mtd-spi-nor-add-gd25q512.patch
  15. 7 6
      target/linux/generic/pending-6.1/484-mtd-spi-nor-add-esmt-f25l16pa.patch
  16. 7 6
      target/linux/generic/pending-6.1/485-mtd-spi-nor-add-xmc-xm25qh128c.patch
  17. 5 5
      target/linux/generic/pending-6.1/486-01-mtd-spinand-add-support-for-ESMT-F50x1G41LB.patch
  18. 4 4
      target/linux/generic/pending-6.1/487-mtd-spinand-Add-support-for-Etron-EM73D044VCx.patch
  19. 10 9
      target/linux/generic/pending-6.1/488-mtd-spi-nor-add-xmc-xm25qh64c.patch
  20. 1 1
      target/linux/generic/pending-6.1/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
  21. 9 9
      target/linux/generic/pending-6.1/498-mtd-spi-nor-locking-support-for-MX25L6405D.patch
  22. 618 48
      target/linux/generic/pending-6.1/530-jffs2_make_lzma_available.patch
  23. 5 3
      target/linux/generic/pending-6.1/600-netfilter_conntrack_flush.patch
  24. 1 1
      target/linux/generic/pending-6.1/655-increase_skb_pad.patch
  25. 11 9
      target/linux/generic/pending-6.1/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
  26. 22 12
      target/linux/generic/pending-6.1/700-netfilter-nft_flow_offload-handle-netdevice-events-f.patch
  27. 6 6
      target/linux/generic/pending-6.1/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch
  28. 2 2
      target/linux/generic/pending-6.1/703-phy-add-detach-callback-to-struct-phy_driver.patch
  29. 9 9
      target/linux/generic/pending-6.1/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch
  30. 3 3
      target/linux/generic/pending-6.1/731-net-ethernet-mediatek-ppe-add-support-for-flow-accou.patch
  31. 1 1
      target/linux/generic/pending-6.1/736-04-net-ethernet-mediatek-fix-ppe-flow-accounting-for-L2.patch
  32. 15 20
      target/linux/generic/pending-6.1/760-net-core-add-optional-threading-for-backlog-processi.patch
  33. 1 1
      target/linux/generic/pending-6.1/811-pci_disable_usb_common_quirks.patch
  34. 4 4
      target/linux/generic/pending-6.1/834-ledtrig-libata.patch
  35. 4 4
      target/linux/generic/pending-6.1/850-0023-PCI-aardvark-Make-main-irq_chip-structure-a-static-d.patch
  36. 2 2
      target/linux/generic/pending-6.1/920-mangle_bootargs.patch

+ 5 - 5
target/linux/generic/pending-6.1/103-kbuild-export-SUBARCH.patch

@@ -10,12 +10,12 @@ Signed-off-by: Felix Fietkau <[email protected]>
 
 
 --- a/Makefile
 --- a/Makefile
 +++ b/Makefile
 +++ b/Makefile
-@@ -534,7 +534,7 @@ KBUILD_LDFLAGS_MODULE :=
- KBUILD_LDFLAGS :=
- CLANG_FLAGS :=
+@@ -523,7 +523,7 @@ KBUILD_LDFLAGS_MODULE :=
+ # Allows the usage of unstable features in stable compilers.
+ export RUSTC_BOOTSTRAP := 1
  
  
 -export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC HOSTPKG_CONFIG
 -export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC HOSTPKG_CONFIG
 +export ARCH SRCARCH SUBARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC HOSTPKG_CONFIG
 +export ARCH SRCARCH SUBARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC HOSTPKG_CONFIG
+ export RUSTC RUSTDOC RUSTFMT RUSTC_OR_CLIPPY_QUIET RUSTC_OR_CLIPPY BINDGEN CARGO
+ export HOSTRUSTC KBUILD_HOSTRUSTFLAGS
  export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
  export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
- export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
- export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD

+ 4 - 4
target/linux/generic/pending-6.1/110-v6.3-0001-spidev-Add-Silicon-Labs-EM3581-device-compatible.patch

@@ -23,10 +23,10 @@ Signed-off-by: Vincent Tremblay <[email protected]>
  };
  };
  MODULE_DEVICE_TABLE(spi, spidev_spi_ids);
  MODULE_DEVICE_TABLE(spi, spidev_spi_ids);
 @@ -705,6 +706,7 @@ static const struct of_device_id spidev_
 @@ -705,6 +706,7 @@ static const struct of_device_id spidev_
- 	{ .compatible = "menlo,m53cpld" },
- 	{ .compatible = "cisco,spi-petra" },
- 	{ .compatible = "micron,spi-authenta" },
-+	{ .compatible = "silabs,em3581" },
+ 	{ .compatible = "menlo,m53cpld", .data = &spidev_of_check },
+ 	{ .compatible = "cisco,spi-petra", .data = &spidev_of_check },
+ 	{ .compatible = "micron,spi-authenta", .data = &spidev_of_check },
++	{ .compatible = "silabs,em3581", .data = &spidev_of_check },
  	{},
  	{},
  };
  };
  MODULE_DEVICE_TABLE(of, spidev_dt_ids);
  MODULE_DEVICE_TABLE(of, spidev_dt_ids);

+ 4 - 4
target/linux/generic/pending-6.1/110-v6.3-0002-spidev-Add-Silicon-Labs-SI3210-device-compatible.patch

@@ -23,10 +23,10 @@ Signed-off-by: Vincent Tremblay <[email protected]>
  };
  };
  MODULE_DEVICE_TABLE(spi, spidev_spi_ids);
  MODULE_DEVICE_TABLE(spi, spidev_spi_ids);
 @@ -707,6 +708,7 @@ static const struct of_device_id spidev_
 @@ -707,6 +708,7 @@ static const struct of_device_id spidev_
- 	{ .compatible = "cisco,spi-petra" },
- 	{ .compatible = "micron,spi-authenta" },
- 	{ .compatible = "silabs,em3581" },
-+	{ .compatible = "silabs,si3210" },
+ 	{ .compatible = "cisco,spi-petra", .data = &spidev_of_check },
+ 	{ .compatible = "micron,spi-authenta", .data = &spidev_of_check },
+ 	{ .compatible = "silabs,em3581", .data = &spidev_of_check },
++	{ .compatible = "silabs,si3210", .data = &spidev_of_check },
  	{},
  	{},
  };
  };
  MODULE_DEVICE_TABLE(of, spidev_dt_ids);
  MODULE_DEVICE_TABLE(of, spidev_dt_ids);

+ 1 - 1
target/linux/generic/pending-6.1/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch

@@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <[email protected]>
 
 
 --- a/mm/page_alloc.c
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
 +++ b/mm/page_alloc.c
-@@ -7620,7 +7620,7 @@ static void __init alloc_node_mem_map(st
+@@ -7556,7 +7556,7 @@ static void __init alloc_node_mem_map(st
  	if (pgdat == NODE_DATA(0)) {
  	if (pgdat == NODE_DATA(0)) {
  		mem_map = NODE_DATA(0)->node_mem_map;
  		mem_map = NODE_DATA(0)->node_mem_map;
  		if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
  		if (page_to_pfn(mem_map) != pgdat->node_start_pfn)

+ 3 - 2
target/linux/generic/pending-6.1/191-rtc-rs5c372-let_the_alarm_to_be_used_as_wakeup_source.patch

@@ -58,12 +58,13 @@ Signed-off-by: Daniel González Cabanelas <[email protected]>
  	rs5c372->rtc = devm_rtc_device_register(&client->dev,
  	rs5c372->rtc = devm_rtc_device_register(&client->dev,
  					rs5c372_driver.driver.name,
  					rs5c372_driver.driver.name,
  					&rs5c372_rtc_ops, THIS_MODULE);
  					&rs5c372_rtc_ops, THIS_MODULE);
-@@ -761,6 +774,9 @@ static int rs5c372_probe(struct i2c_clie
+@@ -761,6 +774,10 @@ static int rs5c372_probe(struct i2c_clie
  	if (err)
  	if (err)
  		goto exit;
  		goto exit;
  
  
 +	/* the rs5c372 alarm only supports a minute accuracy */
 +	/* the rs5c372 alarm only supports a minute accuracy */
-+	rs5c372->rtc->uie_unsupported = 1;
++	set_bit(RTC_FEATURE_ALARM_RES_MINUTE, rs5c372->rtc->features);
++	clear_bit(RTC_FEATURE_UPDATE_INTERRUPT, rs5c372->rtc->features);
 +
 +
  	return 0;
  	return 0;
  
  

+ 10 - 11
target/linux/generic/pending-6.1/203-kallsyms_uncompressed.patch

@@ -95,22 +95,21 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	/* using the '\0' symbol last allows compress_symbols to use standard
  	/* using the '\0' symbol last allows compress_symbols to use standard
  	 * fast string functions */
  	 * fast string functions */
  	for (i = 255; i >= 0; i--) {
  	for (i = 255; i >= 0; i--) {
-@@ -773,6 +783,8 @@ int main(int argc, char **argv)
- 				absolute_percpu = 1;
- 			else if (strcmp(argv[i], "--base-relative") == 0)
- 				base_relative = 1;
-+			else if (strcmp(argv[i], "--uncompressed") == 0)
-+				uncompressed = 1;
- 			else
- 				usage();
- 		}
+@@ -773,6 +783,7 @@ int main(int argc, char **argv)
+ 			{"all-symbols",     no_argument, &all_symbols,     1},
+ 			{"absolute-percpu", no_argument, &absolute_percpu, 1},
+ 			{"base-relative",   no_argument, &base_relative,   1},
++			{"uncompressed",   no_argument, &uncompressed,   1},
+ 			{},
+ 		};
+ 
 --- a/scripts/link-vmlinux.sh
 --- a/scripts/link-vmlinux.sh
 +++ b/scripts/link-vmlinux.sh
 +++ b/scripts/link-vmlinux.sh
-@@ -257,6 +257,10 @@ kallsyms()
+@@ -266,6 +266,10 @@ kallsyms()
  		kallsymopt="${kallsymopt} --base-relative"
  		kallsymopt="${kallsymopt} --base-relative"
  	fi
  	fi
  
  
-+	if [ -n "${CONFIG_KALLSYMS_UNCOMPRESSED}" ]; then
++	if is_enabled CONFIG_KALLSYMS_UNCOMPRESSED; then
 +		kallsymopt="${kallsymopt} --uncompressed"
 +		kallsymopt="${kallsymopt} --uncompressed"
 +	fi
 +	fi
 +
 +

+ 2 - 2
target/linux/generic/pending-6.1/270-platform-mikrotik-build-bits.patch

@@ -17,9 +17,9 @@ Signed-off-by: Thibaut VARÈNE <[email protected]>
 --- a/drivers/platform/Kconfig
 --- a/drivers/platform/Kconfig
 +++ b/drivers/platform/Kconfig
 +++ b/drivers/platform/Kconfig
 @@ -15,3 +15,5 @@ source "drivers/platform/mellanox/Kconfi
 @@ -15,3 +15,5 @@ source "drivers/platform/mellanox/Kconfi
- source "drivers/platform/olpc/Kconfig"
- 
  source "drivers/platform/surface/Kconfig"
  source "drivers/platform/surface/Kconfig"
+ 
+ source "drivers/platform/x86/Kconfig"
 +
 +
 +source "drivers/platform/mikrotik/Kconfig"
 +source "drivers/platform/mikrotik/Kconfig"
 --- a/drivers/platform/Makefile
 --- a/drivers/platform/Makefile

+ 1 - 1
target/linux/generic/pending-6.1/400-mtd-mtdsplit-support.patch

@@ -289,7 +289,7 @@ Subject: [PATCH] mtd: mtdsplit support
  static inline uint32_t mtd_div_by_ws(uint64_t sz, struct mtd_info *mtd)
  static inline uint32_t mtd_div_by_ws(uint64_t sz, struct mtd_info *mtd)
  {
  {
  	if (mtd->writesize_shift)
  	if (mtd->writesize_shift)
-@@ -693,6 +711,13 @@ extern struct mtd_info *of_get_mtd_devic
+@@ -685,6 +703,13 @@ extern void __put_mtd_device(struct mtd_
  extern struct mtd_info *get_mtd_device_nm(const char *name);
  extern struct mtd_info *get_mtd_device_nm(const char *name);
  extern void put_mtd_device(struct mtd_info *mtd);
  extern void put_mtd_device(struct mtd_info *mtd);
  
  

+ 1 - 1
target/linux/generic/pending-6.1/420-mtd-redboot_space.patch

@@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 
 
 --- a/drivers/mtd/parsers/redboot.c
 --- a/drivers/mtd/parsers/redboot.c
 +++ b/drivers/mtd/parsers/redboot.c
 +++ b/drivers/mtd/parsers/redboot.c
-@@ -278,14 +278,21 @@ nogood:
+@@ -277,14 +277,21 @@ nogood:
  #endif
  #endif
  		names += strlen(names) + 1;
  		names += strlen(names) + 1;
  
  

+ 9 - 8
target/linux/generic/pending-6.1/476-mtd-spi-nor-add-eon-en25q128.patch

@@ -8,11 +8,12 @@ Signed-off-by: Piotr Dymacz <[email protected]>
 
 
 --- a/drivers/mtd/spi-nor/eon.c
 --- a/drivers/mtd/spi-nor/eon.c
 +++ b/drivers/mtd/spi-nor/eon.c
 +++ b/drivers/mtd/spi-nor/eon.c
-@@ -25,6 +25,7 @@ static const struct flash_info eon_parts
- 	{ "en25q32b",   INFO(0x1c3016, 0, 64 * 1024,   64, 0) },
- 	{ "en25p64",    INFO(0x1c2017, 0, 64 * 1024,  128, 0) },
- 	{ "en25q64",    INFO(0x1c3017, 0, 64 * 1024,  128, SECT_4K) },
-+	{ "en25q128",   INFO(0x1c3018, 0, 64 * 1024,  256, SECT_4K) },
- 	{ "en25q80a",   INFO(0x1c3014, 0, 64 * 1024,   16,
- 			     SECT_4K | SPI_NOR_DUAL_READ) },
- 	{ "en25qh16",   INFO(0x1c7015, 0, 64 * 1024,   32,
+@@ -15,6 +15,8 @@ static const struct flash_info eon_parts
+ 	{ "en25p64",    INFO(0x1c2017, 0, 64 * 1024,  128) },
+ 	{ "en25q64",    INFO(0x1c3017, 0, 64 * 1024,  128)
+ 		NO_SFDP_FLAGS(SECT_4K) },
++	{ "en25q128",   INFO(0x1c3018, 0, 64 * 1024,  256)
++		NO_SFDP_FLAGS(SECT_4K) },
+ 	{ "en25q80a",   INFO(0x1c3014, 0, 64 * 1024,   16)
+ 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ) },
+ 	{ "en25qh16",   INFO(0x1c7015, 0, 64 * 1024,   32)

+ 7 - 7
target/linux/generic/pending-6.1/477-mtd-spi-nor-add-eon-en25qx128a.patch

@@ -12,10 +12,10 @@ Signed-off-by: Christian Marangi <[email protected]>
 --- a/drivers/mtd/spi-nor/eon.c
 --- a/drivers/mtd/spi-nor/eon.c
 +++ b/drivers/mtd/spi-nor/eon.c
 +++ b/drivers/mtd/spi-nor/eon.c
 @@ -26,6 +26,7 @@ static const struct flash_info eon_parts
 @@ -26,6 +26,7 @@ static const struct flash_info eon_parts
- 	{ "en25p64",    INFO(0x1c2017, 0, 64 * 1024,  128, 0) },
- 	{ "en25q64",    INFO(0x1c3017, 0, 64 * 1024,  128, SECT_4K) },
- 	{ "en25q128",   INFO(0x1c3018, 0, 64 * 1024,  256, SECT_4K) },
-+	{ "en25qx128a", INFO(0x1c7118, 0, 64 * 1024, 256, 0) },
- 	{ "en25q80a",   INFO(0x1c3014, 0, 64 * 1024,   16,
- 			     SECT_4K | SPI_NOR_DUAL_READ) },
- 	{ "en25qh16",   INFO(0x1c7015, 0, 64 * 1024,   32,
+ 		NO_SFDP_FLAGS(SECT_4K) },
+ 	{ "en25q128",   INFO(0x1c3018, 0, 64 * 1024,  256)
+ 		NO_SFDP_FLAGS(SECT_4K) },
++	{ "en25qx128a", INFO(0x1c7118, 0, 64 * 1024, 256) },
+ 	{ "en25q80a",   INFO(0x1c3014, 0, 64 * 1024,   16)
+ 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ) },
+ 	{ "en25qh16",   INFO(0x1c7015, 0, 64 * 1024,   32)

+ 6 - 3
target/linux/generic/pending-6.1/479-mtd-spi-nor-add-xtx-xt25f128b.patch

@@ -31,17 +31,18 @@ Signed-off-by: Felix Fietkau <[email protected]>
 
 
 --- a/drivers/mtd/spi-nor/Makefile
 --- a/drivers/mtd/spi-nor/Makefile
 +++ b/drivers/mtd/spi-nor/Makefile
 +++ b/drivers/mtd/spi-nor/Makefile
-@@ -17,6 +17,7 @@ spi-nor-objs			+= sst.o
+@@ -17,7 +17,8 @@ spi-nor-objs			+= sst.o
  spi-nor-objs			+= winbond.o
  spi-nor-objs			+= winbond.o
  spi-nor-objs			+= xilinx.o
  spi-nor-objs			+= xilinx.o
  spi-nor-objs			+= xmc.o
  spi-nor-objs			+= xmc.o
 +spi-nor-objs			+= xtx.o
 +spi-nor-objs			+= xtx.o
+ spi-nor-$(CONFIG_DEBUG_FS)	+= debugfs.o
  obj-$(CONFIG_MTD_SPI_NOR)	+= spi-nor.o
  obj-$(CONFIG_MTD_SPI_NOR)	+= spi-nor.o
  
  
  obj-$(CONFIG_MTD_SPI_NOR)	+= controllers/
  obj-$(CONFIG_MTD_SPI_NOR)	+= controllers/
 --- /dev/null
 --- /dev/null
 +++ b/drivers/mtd/spi-nor/xtx.c
 +++ b/drivers/mtd/spi-nor/xtx.c
-@@ -0,0 +1,15 @@
+@@ -0,0 +1,17 @@
 +// SPDX-License-Identifier: GPL-2.0
 +// SPDX-License-Identifier: GPL-2.0
 +#include <linux/mtd/spi-nor.h>
 +#include <linux/mtd/spi-nor.h>
 +
 +
@@ -49,7 +50,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
 +
 +
 +static const struct flash_info xtx_parts[] = {
 +static const struct flash_info xtx_parts[] = {
 +	/* XTX Technology (Shenzhen) Limited */
 +	/* XTX Technology (Shenzhen) Limited */
-+	{ "xt25f128b", INFO(0x0B4018, 0, 64 * 1024, 256, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
++	{ "xt25f128b", INFO(0x0B4018, 0, 64 * 1024, 256)
++		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
++			      SPI_NOR_QUAD_READ) },
 +};
 +};
 +
 +
 +const struct spi_nor_manufacturer spi_nor_xtx = {
 +const struct spi_nor_manufacturer spi_nor_xtx = {

+ 9 - 8
target/linux/generic/pending-6.1/481-mtd-spi-nor-add-support-for-Gigadevice-GD25D05.patch

@@ -10,13 +10,14 @@ Signed-off-by: Koen Vandeputte <[email protected]>
 
 
 --- a/drivers/mtd/spi-nor/gigadevice.c
 --- a/drivers/mtd/spi-nor/gigadevice.c
 +++ b/drivers/mtd/spi-nor/gigadevice.c
 +++ b/drivers/mtd/spi-nor/gigadevice.c
-@@ -24,6 +24,9 @@ static struct spi_nor_fixups gd25q256_fi
+@@ -24,6 +24,10 @@ static struct spi_nor_fixups gd25q256_fi
  };
  };
  
  
- static const struct flash_info gigadevice_parts[] = {
-+	{ "gd25q05", INFO(0xc84010, 0, 64 * 1024,  1,
-+			  SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
-+			  SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
- 	{ "gd25q16", INFO(0xc84015, 0, 64 * 1024,  32,
- 			  SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
- 			  SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) },
+ static const struct flash_info gigadevice_nor_parts[] = {
++	{ "gd25q05", INFO(0xc84010, 0, 64 * 1024,  1)
++		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) 
++		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
++			      SPI_NOR_QUAD_READ) },
+ 	{ "gd25q16", INFO(0xc84015, 0, 64 * 1024,  32)
+ 		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
+ 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |

+ 8 - 6
target/linux/generic/pending-6.1/482-mtd-spi-nor-add-gd25q512.patch

@@ -9,13 +9,15 @@ Subject: [PATCH] spi-nor/gigadevic: add gd25q512
 
 
 --- a/drivers/mtd/spi-nor/gigadevice.c
 --- a/drivers/mtd/spi-nor/gigadevice.c
 +++ b/drivers/mtd/spi-nor/gigadevice.c
 +++ b/drivers/mtd/spi-nor/gigadevice.c
-@@ -53,6 +53,9 @@ static const struct flash_info gigadevic
- 			   SPI_NOR_4B_OPCODES | SPI_NOR_HAS_LOCK |
- 			   SPI_NOR_HAS_TB | SPI_NOR_TB_SR_BIT6)
+@@ -53,6 +53,11 @@ static const struct flash_info gigadevic
+ 		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB | SPI_NOR_TB_SR_BIT6)
+ 		FIXUP_FLAGS(SPI_NOR_4B_OPCODES)
  		.fixups = &gd25q256_fixups },
  		.fixups = &gd25q256_fixups },
-+	{ "gd25q512", INFO(0xc84020, 0, 64 * 1024, 1024,
-+			   SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ |
-+			   SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB | SPI_NOR_4B_OPCODES) },
++	{ "gd25q512", INFO(0xc84020, 0, 64 * 1024, 1024)
++		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
++		FIXUP_FLAGS(SPI_NOR_4B_OPCODES)
++		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
++			      SPI_NOR_QUAD_READ) },
  };
  };
  
  
  const struct spi_nor_manufacturer spi_nor_gigadevice = {
  const struct spi_nor_manufacturer spi_nor_gigadevice = {

+ 7 - 6
target/linux/generic/pending-6.1/484-mtd-spi-nor-add-esmt-f25l16pa.patch

@@ -12,12 +12,13 @@ flash.
 
 
 --- a/drivers/mtd/spi-nor/esmt.c
 --- a/drivers/mtd/spi-nor/esmt.c
 +++ b/drivers/mtd/spi-nor/esmt.c
 +++ b/drivers/mtd/spi-nor/esmt.c
-@@ -10,6 +10,8 @@
+@@ -10,6 +10,9 @@
  
  
  static const struct flash_info esmt_parts[] = {
  static const struct flash_info esmt_parts[] = {
  	/* ESMT */
  	/* ESMT */
-+	{ "f25l16pa-2s", INFO(0x8c2115, 0, 64 * 1024, 32,
-+			   SECT_4K | SPI_NOR_HAS_LOCK) },
- 	{ "f25l32pa", INFO(0x8c2016, 0, 64 * 1024, 64,
- 			   SECT_4K | SPI_NOR_HAS_LOCK | SPI_NOR_SWP_IS_VOLATILE) },
- 	{ "f25l32qa", INFO(0x8c4116, 0, 64 * 1024, 64,
++	{ "f25l16pa-2s", INFO(0x8c2115, 0, 64 * 1024, 32)
++			FLAGS(SPI_NOR_HAS_LOCK)
++			NO_SFDP_FLAGS(SECT_4K) },
+ 	{ "f25l32pa", INFO(0x8c2016, 0, 64 * 1024, 64)
+ 			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_SWP_IS_VOLATILE)
+ 			NO_SFDP_FLAGS(SECT_4K) },

+ 7 - 6
target/linux/generic/pending-6.1/485-mtd-spi-nor-add-xmc-xm25qh128c.patch

@@ -13,12 +13,13 @@ Datasheet available at https://www.xmcwh.com/uploads/435/XM25QH128C.pdf
 
 
 --- a/drivers/mtd/spi-nor/xmc.c
 --- a/drivers/mtd/spi-nor/xmc.c
 +++ b/drivers/mtd/spi-nor/xmc.c
 +++ b/drivers/mtd/spi-nor/xmc.c
-@@ -14,6 +14,8 @@ static const struct flash_info xmc_parts
- 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
- 	{ "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256,
- 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
-+	{ "XM25QH128C", INFO(0x204018, 0, 64 * 1024, 256,
-+			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
+@@ -14,6 +14,9 @@ static const struct flash_info xmc_parts
+	{ "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256)
+		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
+			      SPI_NOR_QUAD_READ) },
++	{ "XM25QH128C", INFO(0x204018, 0, 64 * 1024, 256)
++		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
++			      SPI_NOR_QUAD_READ) },
  };
  };
  
  
  const struct spi_nor_manufacturer spi_nor_xmc = {
  const struct spi_nor_manufacturer spi_nor_xmc = {

+ 5 - 5
target/linux/generic/pending-6.1/486-01-mtd-spinand-add-support-for-ESMT-F50x1G41LB.patch

@@ -26,15 +26,15 @@ Signed-off-by: Chuanhong Guo <[email protected]>
 +++ b/drivers/mtd/nand/spi/Makefile
 +++ b/drivers/mtd/nand/spi/Makefile
 @@ -1,3 +1,3 @@
 @@ -1,3 +1,3 @@
  # SPDX-License-Identifier: GPL-2.0
  # SPDX-License-Identifier: GPL-2.0
--spinand-objs := core.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
-+spinand-objs := core.o esmt.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
+-spinand-objs := core.o ato.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
++spinand-objs := core.o ato.o esmt.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
  obj-$(CONFIG_MTD_SPI_NAND) += spinand.o
  obj-$(CONFIG_MTD_SPI_NAND) += spinand.o
 --- a/drivers/mtd/nand/spi/core.c
 --- a/drivers/mtd/nand/spi/core.c
 +++ b/drivers/mtd/nand/spi/core.c
 +++ b/drivers/mtd/nand/spi/core.c
-@@ -906,6 +906,7 @@ static const struct nand_ops spinand_ops
- };
+@@ -896,6 +896,7 @@ static const struct nand_ops spinand_ops
  
  
  static const struct spinand_manufacturer *spinand_manufacturers[] = {
  static const struct spinand_manufacturer *spinand_manufacturers[] = {
+ 	&ato_spinand_manufacturer,
 +	&esmt_c8_spinand_manufacturer,
 +	&esmt_c8_spinand_manufacturer,
  	&gigadevice_spinand_manufacturer,
  	&gigadevice_spinand_manufacturer,
  	&macronix_spinand_manufacturer,
  	&macronix_spinand_manufacturer,
@@ -134,9 +134,9 @@ Signed-off-by: Chuanhong Guo <[email protected]>
 --- a/include/linux/mtd/spinand.h
 --- a/include/linux/mtd/spinand.h
 +++ b/include/linux/mtd/spinand.h
 +++ b/include/linux/mtd/spinand.h
 @@ -260,6 +260,7 @@ struct spinand_manufacturer {
 @@ -260,6 +260,7 @@ struct spinand_manufacturer {
- };
  
  
  /* SPI NAND manufacturers */
  /* SPI NAND manufacturers */
+ extern const struct spinand_manufacturer ato_spinand_manufacturer;
 +extern const struct spinand_manufacturer esmt_c8_spinand_manufacturer;
 +extern const struct spinand_manufacturer esmt_c8_spinand_manufacturer;
  extern const struct spinand_manufacturer gigadevice_spinand_manufacturer;
  extern const struct spinand_manufacturer gigadevice_spinand_manufacturer;
  extern const struct spinand_manufacturer macronix_spinand_manufacturer;
  extern const struct spinand_manufacturer macronix_spinand_manufacturer;

+ 4 - 4
target/linux/generic/pending-6.1/487-mtd-spinand-Add-support-for-Etron-EM73D044VCx.patch

@@ -42,19 +42,19 @@ Submitted-by: Daniel Danzberger <[email protected]>
 +++ b/drivers/mtd/nand/spi/Makefile
 +++ b/drivers/mtd/nand/spi/Makefile
 @@ -1,3 +1,3 @@
 @@ -1,3 +1,3 @@
  # SPDX-License-Identifier: GPL-2.0
  # SPDX-License-Identifier: GPL-2.0
--spinand-objs := core.o esmt.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
-+spinand-objs := core.o esmt.o etron.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
+-spinand-objs := core.o ato.o esmt.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
++spinand-objs := core.o ato.o esmt.o etron.o gigadevice.o macronix.o micron.o paragon.o toshiba.o winbond.o xtx.o
  obj-$(CONFIG_MTD_SPI_NAND) += spinand.o
  obj-$(CONFIG_MTD_SPI_NAND) += spinand.o
 --- a/drivers/mtd/nand/spi/core.c
 --- a/drivers/mtd/nand/spi/core.c
 +++ b/drivers/mtd/nand/spi/core.c
 +++ b/drivers/mtd/nand/spi/core.c
 @@ -908,6 +908,7 @@ static const struct nand_ops spinand_ops
 @@ -908,6 +908,7 @@ static const struct nand_ops spinand_ops
  static const struct spinand_manufacturer *spinand_manufacturers[] = {
  static const struct spinand_manufacturer *spinand_manufacturers[] = {
+ 	&ato_spinand_manufacturer,
  	&esmt_c8_spinand_manufacturer,
  	&esmt_c8_spinand_manufacturer,
- 	&gigadevice_spinand_manufacturer,
 +	&etron_spinand_manufacturer,
 +	&etron_spinand_manufacturer,
+ 	&gigadevice_spinand_manufacturer,
  	&macronix_spinand_manufacturer,
  	&macronix_spinand_manufacturer,
  	&micron_spinand_manufacturer,
  	&micron_spinand_manufacturer,
- 	&paragon_spinand_manufacturer,
 --- /dev/null
 --- /dev/null
 +++ b/drivers/mtd/nand/spi/etron.c
 +++ b/drivers/mtd/nand/spi/etron.c
 @@ -0,0 +1,98 @@
 @@ -0,0 +1,98 @@

+ 10 - 9
target/linux/generic/pending-6.1/488-mtd-spi-nor-add-xmc-xm25qh64c.patch

@@ -11,12 +11,13 @@ Signed-off-by: Joe Mullally <[email protected]>
 
 
 --- a/drivers/mtd/spi-nor/xmc.c
 --- a/drivers/mtd/spi-nor/xmc.c
 +++ b/drivers/mtd/spi-nor/xmc.c
 +++ b/drivers/mtd/spi-nor/xmc.c
-@@ -12,6 +12,8 @@ static const struct flash_info xmc_parts
- 	/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */
- 	{ "XM25QH64A", INFO(0x207017, 0, 64 * 1024, 128,
- 			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
-+	{ "XM25QH64C", INFO(0x204017, 0, 64 * 1024, 128,
-+			    SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
- 	{ "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256,
- 			     SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
- 	{ "XM25QH128C", INFO(0x204018, 0, 64 * 1024, 256,
+@@ -12,6 +12,9 @@ static const struct flash_info xmc_parts
+ 	{ "XM25QH64A", INFO(0x207017, 0, 64 * 1024, 128)
+ 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
+ 			      SPI_NOR_QUAD_READ) },
++	{ "XM25QH64C", INFO(0x204017, 0, 64 * 1024, 128)
++		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
++			      SPI_NOR_QUAD_READ) },
+ 	{ "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256)
+ 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
+ 			      SPI_NOR_QUAD_READ) },

+ 1 - 1
target/linux/generic/pending-6.1/490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch

@@ -66,7 +66,7 @@ Signed-off-by: Daniel Golle <[email protected]>
 +
 +
 +	mutex_lock(&ubi_devices_mutex);
 +	mutex_lock(&ubi_devices_mutex);
 +	pr_notice("UBI: auto-attach mtd%d\n", mtd->index);
 +	pr_notice("UBI: auto-attach mtd%d\n", mtd->index);
-+	err = ubi_attach_mtd_dev(mtd, UBI_DEV_NUM_AUTO, 0, 0);
++	err = ubi_attach_mtd_dev(mtd, UBI_DEV_NUM_AUTO, 0, 0, false);
 +	mutex_unlock(&ubi_devices_mutex);
 +	mutex_unlock(&ubi_devices_mutex);
 +	if (err < 0) {
 +	if (err < 0) {
 +		pr_err("UBI error: cannot attach mtd%d\n", mtd->index);
 +		pr_err("UBI error: cannot attach mtd%d\n", mtd->index);

+ 9 - 9
target/linux/generic/pending-6.1/498-mtd-spi-nor-locking-support-for-MX25L6405D.patch

@@ -23,12 +23,12 @@ Signed-off-by: Nick Hainke <[email protected]>
 --- a/drivers/mtd/spi-nor/macronix.c
 --- a/drivers/mtd/spi-nor/macronix.c
 +++ b/drivers/mtd/spi-nor/macronix.c
 +++ b/drivers/mtd/spi-nor/macronix.c
 @@ -41,7 +41,8 @@ static const struct flash_info macronix_
 @@ -41,7 +41,8 @@ static const struct flash_info macronix_
- 	{ "mx25l1606e",  INFO(0xc22015, 0, 64 * 1024,  32, SECT_4K) },
- 	{ "mx25l3205d",  INFO(0xc22016, 0, 64 * 1024,  64, SECT_4K) },
- 	{ "mx25l3255e",  INFO(0xc29e16, 0, 64 * 1024,  64, SECT_4K) },
--	{ "mx25l6405d",  INFO(0xc22017, 0, 64 * 1024, 128, SECT_4K) },
-+	{ "mx25l6405d",  INFO(0xc22017, 0, 64 * 1024, 128, SECT_4K |
-+			      SPI_NOR_HAS_LOCK | SPI_NOR_4BIT_BP) },
- 	{ "mx25u2033e",  INFO(0xc22532, 0, 64 * 1024,   4, SECT_4K) },
- 	{ "mx25u3235f",	 INFO(0xc22536, 0, 64 * 1024,  64,
- 			      SECT_4K | SPI_NOR_DUAL_READ |
+ 	{ "mx25l3255e",  INFO(0xc29e16, 0, 64 * 1024,  64)
+ 		NO_SFDP_FLAGS(SECT_4K) },
+ 	{ "mx25l6405d",  INFO(0xc22017, 0, 64 * 1024, 128)
+-		NO_SFDP_FLAGS(SECT_4K) },
++		FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_4BIT_BP)
++		NO_SFDP_FLAGS(SECT_4K) },
+ 	{ "mx25u2033e",  INFO(0xc22532, 0, 64 * 1024,   4)
+ 		NO_SFDP_FLAGS(SECT_4K) },
+ 	{ "mx25u3235f",	 INFO(0xc22536, 0, 64 * 1024,  64)

Fișier diff suprimat deoarece este prea mare
+ 618 - 48
target/linux/generic/pending-6.1/530-jffs2_make_lzma_available.patch


+ 5 - 3
target/linux/generic/pending-6.1/600-netfilter_conntrack_flush.patch

@@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  #include <net/net_namespace.h>
  #include <net/net_namespace.h>
  #ifdef CONFIG_SYSCTL
  #ifdef CONFIG_SYSCTL
  #include <linux/sysctl.h>
  #include <linux/sysctl.h>
-@@ -462,6 +463,56 @@ static int ct_cpu_seq_show(struct seq_fi
+@@ -462,6 +463,58 @@ static int ct_cpu_seq_show(struct seq_fi
  	return 0;
  	return 0;
  }
  }
  
  
@@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 +static int ct_file_write(struct file *file, char *buf, size_t count)
 +static int ct_file_write(struct file *file, char *buf, size_t count)
 +{
 +{
 +	struct seq_file *seq = file->private_data;
 +	struct seq_file *seq = file->private_data;
-+	struct net *net = seq_file_net(seq);
++	struct nf_ct_iter_data iter_data;
 +	struct kill_request kr = { };
 +	struct kill_request kr = { };
 +
 +
 +	if (count == 0)
 +	if (count == 0)
@@ -66,7 +66,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
 +			return -EINVAL;
 +			return -EINVAL;
 +	}
 +	}
 +
 +
-+	nf_ct_iterate_cleanup_net(net, kill_matching, &kr, 0, 0);
++	iter_data.net = seq_file_net(seq);
++	iter_data.data = &kr;
++	nf_ct_iterate_cleanup_net(kill_matching, &iter_data);
 +
 +
 +	return 0;
 +	return 0;
 +}
 +}

+ 1 - 1
target/linux/generic/pending-6.1/655-increase_skb_pad.patch

@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 
 
 --- a/include/linux/skbuff.h
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -2821,7 +2821,7 @@ static inline int pskb_network_may_pull(
+@@ -2782,7 +2782,7 @@ static inline int pskb_network_may_pull(
   * NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
   * NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
   */
   */
  #ifndef NET_SKB_PAD
  #ifndef NET_SKB_PAD

+ 11 - 9
target/linux/generic/pending-6.1/680-NET-skip-GRO-for-foreign-MAC-addresses.patch

@@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 
 
 --- a/include/linux/netdevice.h
 --- a/include/linux/netdevice.h
 +++ b/include/linux/netdevice.h
 +++ b/include/linux/netdevice.h
-@@ -2098,6 +2098,8 @@ struct net_device {
+@@ -2075,6 +2075,8 @@ struct net_device {
  	struct netdev_hw_addr_list	mc;
  	struct netdev_hw_addr_list	mc;
  	struct netdev_hw_addr_list	dev_addrs;
  	struct netdev_hw_addr_list	dev_addrs;
  
  
@@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  #endif
  #endif
 --- a/include/linux/skbuff.h
 --- a/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
 +++ b/include/linux/skbuff.h
-@@ -893,6 +893,7 @@ struct sk_buff {
+@@ -890,6 +890,7 @@ struct sk_buff {
  #ifdef CONFIG_IPV6_NDISC_NODETYPE
  #ifdef CONFIG_IPV6_NDISC_NODETYPE
  	__u8			ndisc_nodetype:2;
  	__u8			ndisc_nodetype:2;
  #endif
  #endif
@@ -30,9 +30,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
  
  
  	__u8			ipvs_property:1;
  	__u8			ipvs_property:1;
  	__u8			inner_protocol_type:1;
  	__u8			inner_protocol_type:1;
---- a/net/core/dev.c
-+++ b/net/core/dev.c
-@@ -6065,6 +6065,9 @@ static enum gro_result dev_gro_receive(s
+--- a/net/core/gro.c
++++ b/net/core/gro.c
+@@ -6062,6 +6062,9 @@ static enum gro_result dev_gro_receive(s
  	int same_flow;
  	int same_flow;
  	int grow;
  	int grow;
  
  
@@ -42,7 +42,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	if (netif_elide_gro(skb->dev))
  	if (netif_elide_gro(skb->dev))
  		goto normal;
  		goto normal;
  
  
-@@ -8079,6 +8082,48 @@ static void __netdev_adjacent_dev_unlink
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -8076,6 +8079,48 @@ static void __netdev_adjacent_dev_unlink
  					   &upper_dev->adj_list.lower);
  					   &upper_dev->adj_list.lower);
  }
  }
  
  
@@ -91,7 +93,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  static int __netdev_upper_dev_link(struct net_device *dev,
  static int __netdev_upper_dev_link(struct net_device *dev,
  				   struct net_device *upper_dev, bool master,
  				   struct net_device *upper_dev, bool master,
  				   void *upper_priv, void *upper_info,
  				   void *upper_priv, void *upper_info,
-@@ -8130,6 +8175,7 @@ static int __netdev_upper_dev_link(struc
+@@ -8127,6 +8172,7 @@ static int __netdev_upper_dev_link(struc
  	if (ret)
  	if (ret)
  		return ret;
  		return ret;
  
  
@@ -99,7 +101,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
  	ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
  					    &changeupper_info.info);
  					    &changeupper_info.info);
  	ret = notifier_to_errno(ret);
  	ret = notifier_to_errno(ret);
-@@ -8226,6 +8272,7 @@ static void __netdev_upper_dev_unlink(st
+@@ -8223,6 +8269,7 @@ static void __netdev_upper_dev_unlink(st
  
  
  	__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
  	__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
  
  
@@ -107,7 +109,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
  	call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
  				      &changeupper_info.info);
  				      &changeupper_info.info);
  
  
-@@ -9045,6 +9092,7 @@ int dev_set_mac_address(struct net_devic
+@@ -9042,6 +9089,7 @@ int dev_set_mac_address(struct net_devic
  	if (err)
  	if (err)
  		return err;
  		return err;
  	dev->addr_assign_type = NET_ADDR_SET;
  	dev->addr_assign_type = NET_ADDR_SET;

+ 22 - 12
target/linux/generic/pending-6.1/700-netfilter-nft_flow_offload-handle-netdevice-events-f.patch

@@ -10,9 +10,9 @@ Signed-off-by: Pablo Neira Ayuso <[email protected]>
 
 
 --- a/net/netfilter/nf_flow_table_core.c
 --- a/net/netfilter/nf_flow_table_core.c
 +++ b/net/netfilter/nf_flow_table_core.c
 +++ b/net/netfilter/nf_flow_table_core.c
-@@ -613,13 +613,41 @@ void nf_flow_table_free(struct nf_flowta
- }
- EXPORT_SYMBOL_GPL(nf_flow_table_free);
+@@ -608,28 +608,52 @@ void nf_flow_table_free(struct nf_flowta
+ 	.exit_batch = nf_flow_table_pernet_exit,
+ };
  
  
 +static int nf_flow_table_netdev_event(struct notifier_block *this,
 +static int nf_flow_table_netdev_event(struct notifier_block *this,
 +				      unsigned long event, void *ptr)
 +				      unsigned long event, void *ptr)
@@ -33,24 +33,34 @@ Signed-off-by: Pablo Neira Ayuso <[email protected]>
 +
 +
  static int __init nf_flow_table_module_init(void)
  static int __init nf_flow_table_module_init(void)
  {
  {
--	return nf_flow_table_offload_init();
-+	int ret;
-+
-+	ret = nf_flow_table_offload_init();
-+	if (ret)
-+		return ret;
+ 	int ret;
+ 
+ 	ret = register_pernet_subsys(&nf_flow_table_net_ops);
+ 	if (ret < 0)
+ 		return ret;
+ 
+ 	ret = nf_flow_table_offload_init();
+ 	if (ret)
+ 		goto out_offload;
 +
 +
 +	ret = register_netdevice_notifier(&flow_offload_netdev_notifier);
 +	ret = register_netdevice_notifier(&flow_offload_netdev_notifier);
 +	if (ret)
 +	if (ret)
-+		nf_flow_table_offload_exit();
-+
-+	return ret;
++		goto out_offload_init;
+ 
+ 	return 0;
+ 
++out_offload_init:
++	nf_flow_table_offload_exit();
+ out_offload:
+ 	unregister_pernet_subsys(&nf_flow_table_net_ops);
+ 	return ret;
  }
  }
  
  
  static void __exit nf_flow_table_module_exit(void)
  static void __exit nf_flow_table_module_exit(void)
  {
  {
 +	unregister_netdevice_notifier(&flow_offload_netdev_notifier);
 +	unregister_netdevice_notifier(&flow_offload_netdev_notifier);
  	nf_flow_table_offload_exit();
  	nf_flow_table_offload_exit();
+	unregister_pernet_subsys(&nf_flow_table_net_ops);
  }
  }
  
  
 --- a/net/netfilter/nft_flow_offload.c
 --- a/net/netfilter/nft_flow_offload.c

+ 6 - 6
target/linux/generic/pending-6.1/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch

@@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -2992,8 +2992,8 @@ static irqreturn_t mtk_handle_irq_rx(int
+@@ -2443,8 +2443,8 @@ static irqreturn_t mtk_handle_irq_rx(int
  
  
  	eth->rx_events++;
  	eth->rx_events++;
  	if (likely(napi_schedule_prep(&eth->rx_napi))) {
  	if (likely(napi_schedule_prep(&eth->rx_napi))) {
@@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	}
  	}
  
  
  	return IRQ_HANDLED;
  	return IRQ_HANDLED;
-@@ -3005,8 +3005,8 @@ static irqreturn_t mtk_handle_irq_tx(int
+@@ -2456,8 +2456,8 @@ static irqreturn_t mtk_handle_irq_tx(int
  
  
  	eth->tx_events++;
  	eth->tx_events++;
  	if (likely(napi_schedule_prep(&eth->tx_napi))) {
  	if (likely(napi_schedule_prep(&eth->tx_napi))) {
@@ -30,12 +30,12 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	}
  	}
  
  
  	return IRQ_HANDLED;
  	return IRQ_HANDLED;
-@@ -4673,6 +4673,8 @@ static int mtk_probe(struct platform_dev
+@@ -3623,6 +3623,8 @@ static int mtk_probe(struct platform_dev
  	 * for NAPI to work
  	 * for NAPI to work
  	 */
  	 */
  	init_dummy_netdev(&eth->dummy_dev);
  	init_dummy_netdev(&eth->dummy_dev);
 +	eth->dummy_dev.threaded = 1;
 +	eth->dummy_dev.threaded = 1;
 +	strcpy(eth->dummy_dev.name, "mtk_eth");
 +	strcpy(eth->dummy_dev.name, "mtk_eth");
- 	netif_napi_add(&eth->dummy_dev, &eth->tx_napi, mtk_napi_tx,
- 		       NAPI_POLL_WEIGHT);
- 	netif_napi_add(&eth->dummy_dev, &eth->rx_napi, mtk_napi_rx,
+ 	netif_napi_add(&eth->dummy_dev, &eth->tx_napi, mtk_napi_tx);
+ 	netif_napi_add(&eth->dummy_dev, &eth->rx_napi, mtk_napi_rx);
+ 

+ 2 - 2
target/linux/generic/pending-6.1/703-phy-add-detach-callback-to-struct-phy_driver.patch

@@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos <[email protected]>
 
 
 --- a/drivers/net/phy/phy_device.c
 --- a/drivers/net/phy/phy_device.c
 +++ b/drivers/net/phy/phy_device.c
 +++ b/drivers/net/phy/phy_device.c
-@@ -1748,6 +1748,9 @@ void phy_detach(struct phy_device *phyde
+@@ -1738,6 +1738,9 @@ void phy_detach(struct phy_device *phyde
  	struct module *ndev_owner = NULL;
  	struct module *ndev_owner = NULL;
  	struct mii_bus *bus;
  	struct mii_bus *bus;
  
  
@@ -23,7 +23,7 @@ Signed-off-by: Gabor Juhos <[email protected]>
  			sysfs_remove_link(&dev->dev.kobj, "phydev");
  			sysfs_remove_link(&dev->dev.kobj, "phydev");
 --- a/include/linux/phy.h
 --- a/include/linux/phy.h
 +++ b/include/linux/phy.h
 +++ b/include/linux/phy.h
-@@ -823,6 +823,12 @@ struct phy_driver {
+@@ -789,6 +789,12 @@ struct phy_driver {
  	/** @handle_interrupt: Override default interrupt handling */
  	/** @handle_interrupt: Override default interrupt handling */
  	irqreturn_t (*handle_interrupt)(struct phy_device *phydev);
  	irqreturn_t (*handle_interrupt)(struct phy_device *phydev);
  
  

+ 9 - 9
target/linux/generic/pending-6.1/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch

@@ -15,10 +15,10 @@ Signed-off-by: Felix Fietkau <[email protected]>
 --- a/include/linux/if_bridge.h
 --- a/include/linux/if_bridge.h
 +++ b/include/linux/if_bridge.h
 +++ b/include/linux/if_bridge.h
 @@ -58,6 +58,7 @@ struct br_ip_list {
 @@ -58,6 +58,7 @@ struct br_ip_list {
- #define BR_MRP_LOST_CONT	BIT(18)
  #define BR_MRP_LOST_IN_CONT	BIT(19)
  #define BR_MRP_LOST_IN_CONT	BIT(19)
  #define BR_TX_FWD_OFFLOAD	BIT(20)
  #define BR_TX_FWD_OFFLOAD	BIT(20)
-+#define BR_BPDU_FILTER		BIT(21)
+ #define BR_PORT_LOCKED		BIT(21)
++#define BR_BPDU_FILTER		BIT(22)
  
  
  #define BR_DEFAULT_AGEING_TIME	(300 * HZ)
  #define BR_DEFAULT_AGEING_TIME	(300 * HZ)
  
  
@@ -107,9 +107,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
 --- a/include/uapi/linux/if_link.h
 --- a/include/uapi/linux/if_link.h
 +++ b/include/uapi/linux/if_link.h
 +++ b/include/uapi/linux/if_link.h
 @@ -536,6 +536,7 @@ enum {
 @@ -536,6 +536,7 @@ enum {
- 	IFLA_BRPORT_MRP_IN_OPEN,
  	IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT,
  	IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT,
  	IFLA_BRPORT_MCAST_EHT_HOSTS_CNT,
  	IFLA_BRPORT_MCAST_EHT_HOSTS_CNT,
+ 	IFLA_BRPORT_LOCKED,
 +	IFLA_BRPORT_BPDU_FILTER,
 +	IFLA_BRPORT_BPDU_FILTER,
  	__IFLA_BRPORT_MAX
  	__IFLA_BRPORT_MAX
  };
  };
@@ -117,19 +117,19 @@ Signed-off-by: Felix Fietkau <[email protected]>
 --- a/net/bridge/br_netlink.c
 --- a/net/bridge/br_netlink.c
 +++ b/net/bridge/br_netlink.c
 +++ b/net/bridge/br_netlink.c
 @@ -184,6 +184,7 @@ static inline size_t br_port_info_size(v
 @@ -184,6 +184,7 @@ static inline size_t br_port_info_size(v
- 		+ nla_total_size(1)	/* IFLA_BRPORT_VLAN_TUNNEL */
  		+ nla_total_size(1)	/* IFLA_BRPORT_NEIGH_SUPPRESS */
  		+ nla_total_size(1)	/* IFLA_BRPORT_NEIGH_SUPPRESS */
  		+ nla_total_size(1)	/* IFLA_BRPORT_ISOLATED */
  		+ nla_total_size(1)	/* IFLA_BRPORT_ISOLATED */
+ 		+ nla_total_size(1)	/* IFLA_BRPORT_LOCKED */
 +		+ nla_total_size(1)	/* IFLA_BRPORT_BPDU_FILTER */
 +		+ nla_total_size(1)	/* IFLA_BRPORT_BPDU_FILTER */
  		+ nla_total_size(sizeof(struct ifla_bridge_id))	/* IFLA_BRPORT_ROOT_ID */
  		+ nla_total_size(sizeof(struct ifla_bridge_id))	/* IFLA_BRPORT_ROOT_ID */
  		+ nla_total_size(sizeof(struct ifla_bridge_id))	/* IFLA_BRPORT_BRIDGE_ID */
  		+ nla_total_size(sizeof(struct ifla_bridge_id))	/* IFLA_BRPORT_BRIDGE_ID */
  		+ nla_total_size(sizeof(u16))	/* IFLA_BRPORT_DESIGNATED_PORT */
  		+ nla_total_size(sizeof(u16))	/* IFLA_BRPORT_DESIGNATED_PORT */
 @@ -269,7 +270,8 @@ static int br_port_fill_attrs(struct sk_
 @@ -269,7 +270,8 @@ static int br_port_fill_attrs(struct sk_
- 							  BR_MRP_LOST_CONT)) ||
  	    nla_put_u8(skb, IFLA_BRPORT_MRP_IN_OPEN,
  	    nla_put_u8(skb, IFLA_BRPORT_MRP_IN_OPEN,
  		       !!(p->flags & BR_MRP_LOST_IN_CONT)) ||
  		       !!(p->flags & BR_MRP_LOST_IN_CONT)) ||
--	    nla_put_u8(skb, IFLA_BRPORT_ISOLATED, !!(p->flags & BR_ISOLATED)))
-+	    nla_put_u8(skb, IFLA_BRPORT_ISOLATED, !!(p->flags & BR_ISOLATED)) ||
+ 	    nla_put_u8(skb, IFLA_BRPORT_ISOLATED, !!(p->flags & BR_ISOLATED)) ||
+-	    nla_put_u8(skb, IFLA_BRPORT_LOCKED, !!(p->flags & BR_PORT_LOCKED)))
++	    nla_put_u8(skb, IFLA_BRPORT_LOCKED, !!(p->flags & BR_PORT_LOCKED)) ||
 +	    nla_put_u8(skb, IFLA_BRPORT_BPDU_FILTER, !!(p->flags & BR_BPDU_FILTER)))
 +	    nla_put_u8(skb, IFLA_BRPORT_BPDU_FILTER, !!(p->flags & BR_BPDU_FILTER)))
  		return -EMSGSIZE;
  		return -EMSGSIZE;
  
  
@@ -143,9 +143,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
  
  
  /* Change the state of the port and notify spanning tree */
  /* Change the state of the port and notify spanning tree */
 @@ -893,6 +896,7 @@ static int br_setport(struct net_bridge_
 @@ -893,6 +896,7 @@ static int br_setport(struct net_bridge_
- 	br_set_port_flag(p, tb, IFLA_BRPORT_VLAN_TUNNEL, BR_VLAN_TUNNEL);
  	br_set_port_flag(p, tb, IFLA_BRPORT_NEIGH_SUPPRESS, BR_NEIGH_SUPPRESS);
  	br_set_port_flag(p, tb, IFLA_BRPORT_NEIGH_SUPPRESS, BR_NEIGH_SUPPRESS);
  	br_set_port_flag(p, tb, IFLA_BRPORT_ISOLATED, BR_ISOLATED);
  	br_set_port_flag(p, tb, IFLA_BRPORT_ISOLATED, BR_ISOLATED);
+ 	br_set_port_flag(p, tb, IFLA_BRPORT_LOCKED, BR_PORT_LOCKED);
 +	br_set_port_flag(p, tb, IFLA_BRPORT_BPDU_FILTER, BR_BPDU_FILTER);
 +	br_set_port_flag(p, tb, IFLA_BRPORT_BPDU_FILTER, BR_BPDU_FILTER);
  
  
  	changed_mask = old_flags ^ p->flags;
  	changed_mask = old_flags ^ p->flags;
@@ -153,7 +153,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 --- a/net/core/rtnetlink.c
 --- a/net/core/rtnetlink.c
 +++ b/net/core/rtnetlink.c
 +++ b/net/core/rtnetlink.c
 @@ -55,7 +55,7 @@
 @@ -55,7 +55,7 @@
- #include <net/net_namespace.h>
+ #include "dev.h"
  
  
  #define RTNL_MAX_TYPE		50
  #define RTNL_MAX_TYPE		50
 -#define RTNL_SLAVE_MAX_TYPE	40
 -#define RTNL_SLAVE_MAX_TYPE	40

+ 3 - 3
target/linux/generic/pending-6.1/731-net-ethernet-mediatek-ppe-add-support-for-flow-accou.patch

@@ -167,9 +167,9 @@ v2: fix wrong variable name in return value check spotted by Denis Kirjanov
  {
  {
  	ppe_set(ppe, MTK_PPE_CACHE_CTL, MTK_PPE_CACHE_CTL_CLEAR);
  	ppe_set(ppe, MTK_PPE_CACHE_CTL, MTK_PPE_CACHE_CTL_CLEAR);
 @@ -464,6 +506,13 @@ __mtk_foe_entry_clear(struct mtk_ppe *pp
 @@ -464,6 +506,13 @@ __mtk_foe_entry_clear(struct mtk_ppe *pp
- 		hwe->ib1 &= ~MTK_FOE_IB1_STATE;
  		hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_INVALID);
  		hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_INVALID);
  		dma_wmb();
  		dma_wmb();
+ 		mtk_ppe_cache_clear(ppe);
 +		if (ppe->accounting) {
 +		if (ppe->accounting) {
 +			struct mtk_foe_accounting *acct;
 +			struct mtk_foe_accounting *acct;
 +
 +
@@ -335,10 +335,10 @@ v2: fix wrong variable name in return value check spotted by Denis Kirjanov
 -struct mtk_ppe *mtk_ppe_init(struct mtk_eth *eth, void __iomem *base,
 -struct mtk_ppe *mtk_ppe_init(struct mtk_eth *eth, void __iomem *base,
 -			     int version, int index);
 -			     int version, int index);
 +struct mtk_ppe *mtk_ppe_init(struct mtk_eth *eth, void __iomem *base, int index);
 +struct mtk_ppe *mtk_ppe_init(struct mtk_eth *eth, void __iomem *base, int index);
+ void mtk_ppe_deinit(struct mtk_eth *eth);
  void mtk_ppe_start(struct mtk_ppe *ppe);
  void mtk_ppe_start(struct mtk_ppe *ppe);
  int mtk_ppe_stop(struct mtk_ppe *ppe);
  int mtk_ppe_stop(struct mtk_ppe *ppe);
- int mtk_ppe_prepare_reset(struct mtk_ppe *ppe);
-@@ -358,5 +376,7 @@ int mtk_foe_entry_commit(struct mtk_ppe
+@@ -354,5 +373,7 @@ int mtk_foe_entry_commit(struct mtk_ppe
  void mtk_foe_entry_clear(struct mtk_ppe *ppe, struct mtk_flow_entry *entry);
  void mtk_foe_entry_clear(struct mtk_ppe *ppe, struct mtk_flow_entry *entry);
  int mtk_foe_entry_idle_time(struct mtk_ppe *ppe, struct mtk_flow_entry *entry);
  int mtk_foe_entry_idle_time(struct mtk_ppe *ppe, struct mtk_flow_entry *entry);
  int mtk_ppe_debugfs_init(struct mtk_ppe *ppe, int index);
  int mtk_ppe_debugfs_init(struct mtk_ppe *ppe, int index);

+ 1 - 1
target/linux/generic/pending-6.1/736-04-net-ethernet-mediatek-fix-ppe-flow-accounting-for-L2.patch

@@ -78,9 +78,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
  
  
  static void mtk_ppe_cache_clear(struct mtk_ppe *ppe)
  static void mtk_ppe_cache_clear(struct mtk_ppe *ppe)
 @@ -508,13 +523,6 @@ __mtk_foe_entry_clear(struct mtk_ppe *pp
 @@ -508,13 +523,6 @@ __mtk_foe_entry_clear(struct mtk_ppe *pp
- 		hwe->ib1 &= ~MTK_FOE_IB1_STATE;
  		hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_INVALID);
  		hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_INVALID);
  		dma_wmb();
  		dma_wmb();
+ 		mtk_ppe_cache_clear(ppe);
 -		if (ppe->accounting) {
 -		if (ppe->accounting) {
 -			struct mtk_foe_accounting *acct;
 -			struct mtk_foe_accounting *acct;
 -
 -

+ 15 - 20
target/linux/generic/pending-6.1/760-net-core-add-optional-threading-for-backlog-processi.patch

@@ -31,9 +31,9 @@ Signed-off-by: Felix Fietkau <[email protected]>
 --- a/net/core/dev.c
 --- a/net/core/dev.c
 +++ b/net/core/dev.c
 +++ b/net/core/dev.c
 @@ -4574,7 +4574,7 @@ static int rps_ipi_queued(struct softnet
 @@ -4574,7 +4574,7 @@ static int rps_ipi_queued(struct softnet
- #ifdef CONFIG_RPS
  	struct softnet_data *mysd = this_cpu_ptr(&softnet_data);
  	struct softnet_data *mysd = this_cpu_ptr(&softnet_data);
  
  
+ #ifdef CONFIG_RPS
 -	if (sd != mysd) {
 -	if (sd != mysd) {
 +	if (sd != mysd && !test_bit(NAPI_STATE_THREADED, &sd->backlog.state)) {
 +	if (sd != mysd && !test_bit(NAPI_STATE_THREADED, &sd->backlog.state)) {
  		sd->rps_ipi_next = mysd->rps_ipi_list;
  		sd->rps_ipi_next = mysd->rps_ipi_list;
@@ -48,7 +48,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	struct sk_buff *skb, *tmp;
  	struct sk_buff *skb, *tmp;
  	struct softnet_data *sd;
  	struct softnet_data *sd;
  
  
-@@ -5770,9 +5772,18 @@ static void flush_backlog(struct work_st
+@@ -5770,8 +5772,17 @@ static void flush_backlog(struct work_st
  			input_queue_head_incr(sd);
  			input_queue_head_incr(sd);
  		}
  		}
  	}
  	}
@@ -58,8 +58,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
 +			 !skb_queue_empty_lockless(&sd->process_queue);
 +			 !skb_queue_empty_lockless(&sd->process_queue);
 +	if (flush_processq)
 +	if (flush_processq)
 +		process_queue_empty = sd->process_queue_empty;
 +		process_queue_empty = sd->process_queue_empty;
- 	rps_unlock(sd);
- 	local_irq_enable();
+ 	rps_unlock_irq_enable(sd);
  
  
 +	if (threaded)
 +	if (threaded)
 +		goto out;
 +		goto out;
@@ -67,7 +66,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  	skb_queue_walk_safe(&sd->process_queue, skb, tmp) {
  	skb_queue_walk_safe(&sd->process_queue, skb, tmp) {
  		if (skb->dev->reg_state == NETREG_UNREGISTERING) {
  		if (skb->dev->reg_state == NETREG_UNREGISTERING) {
  			__skb_unlink(skb, &sd->process_queue);
  			__skb_unlink(skb, &sd->process_queue);
-@@ -5780,7 +5791,18 @@ static void flush_backlog(struct work_st
+@@ -5780,7 +5791,16 @@ static void flush_backlog(struct work_st
  			input_queue_head_incr(sd);
  			input_queue_head_incr(sd);
  		}
  		}
  	}
  	}
@@ -77,19 +76,17 @@ Signed-off-by: Felix Fietkau <[email protected]>
 +
 +
 +	while (flush_processq) {
 +	while (flush_processq) {
 +		msleep(1);
 +		msleep(1);
-+		local_irq_disable();
-+		rps_lock(sd);
++		rps_lock_irq_disable(sd);
 +		flush_processq = process_queue_empty == sd->process_queue_empty;
 +		flush_processq = process_queue_empty == sd->process_queue_empty;
-+		rps_unlock(sd);
-+		local_irq_enable();
++		rps_unlock_irq_enable(sd);
 +	}
 +	}
  }
  }
  
  
  static bool flush_required(int cpu)
  static bool flush_required(int cpu)
 @@ -6463,6 +6485,7 @@ static int process_backlog(struct napi_s
 @@ -6463,6 +6485,7 @@ static int process_backlog(struct napi_s
- 
- 		local_irq_disable();
- 		rps_lock(sd);
+ 		}
+
+ 		rps_lock_irq_disable(sd);
 +		sd->process_queue_empty++;
 +		sd->process_queue_empty++;
  		if (skb_queue_empty(&sd->input_pkt_queue)) {
  		if (skb_queue_empty(&sd->input_pkt_queue)) {
  			/*
  			/*
@@ -104,7 +101,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  			again = false;
  			again = false;
  		} else {
  		} else {
  			skb_queue_splice_tail_init(&sd->input_pkt_queue,
  			skb_queue_splice_tail_init(&sd->input_pkt_queue,
-@@ -6889,6 +6913,57 @@ int dev_set_threaded(struct net_device *
+@@ -6889,6 +6913,55 @@ int dev_set_threaded(struct net_device *
  }
  }
  EXPORT_SYMBOL(dev_set_threaded);
  EXPORT_SYMBOL(dev_set_threaded);
  
  
@@ -146,20 +143,18 @@ Signed-off-by: Felix Fietkau <[email protected]>
 +		struct napi_struct *n = &sd->backlog;
 +		struct napi_struct *n = &sd->backlog;
 +		unsigned long flags;
 +		unsigned long flags;
 +
 +
-+		local_irq_save(flags);
-+		rps_lock(sd);
++		rps_lock_irqsave(sd, &flags);
 +		if (threaded)
 +		if (threaded)
 +			n->state |= NAPIF_STATE_THREADED;
 +			n->state |= NAPIF_STATE_THREADED;
 +		else
 +		else
 +			n->state &= ~NAPIF_STATE_THREADED;
 +			n->state &= ~NAPIF_STATE_THREADED;
-+		rps_unlock(sd);
-+		local_irq_restore(flags);
++		rps_unlock_irq_restore(sd, &flags);
 +	}
 +	}
 +
 +
 +	return err;
 +	return err;
 +}
 +}
 +
 +
- void netif_napi_add(struct net_device *dev, struct napi_struct *napi,
+ void netif_napi_add_weight(struct net_device *dev, struct napi_struct *napi,
  		    int (*poll)(struct napi_struct *, int), int weight)
  		    int (*poll)(struct napi_struct *, int), int weight)
  {
  {
 @@ -11367,6 +11442,9 @@ static int dev_cpu_dead(unsigned int old
 @@ -11367,6 +11442,9 @@ static int dev_cpu_dead(unsigned int old
@@ -187,8 +182,8 @@ Signed-off-by: Felix Fietkau <[email protected]>
  static int min_rcvbuf = SOCK_MIN_RCVBUF;
  static int min_rcvbuf = SOCK_MIN_RCVBUF;
  static int max_skb_frags = MAX_SKB_FRAGS;
  static int max_skb_frags = MAX_SKB_FRAGS;
 +static int backlog_threaded;
 +static int backlog_threaded;
- static long long_one __maybe_unused = 1;
- static long long_max __maybe_unused = LONG_MAX;
+ 
+ static int net_msg_warn;	/* Unused, but still a sysctl */
  
  
 @@ -114,6 +115,23 @@ static int rps_sock_flow_sysctl(struct c
 @@ -114,6 +115,23 @@ static int rps_sock_flow_sysctl(struct c
  }
  }

+ 1 - 1
target/linux/generic/pending-6.1/811-pci_disable_usb_common_quirks.patch

@@ -98,7 +98,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  #endif  /*  __LINUX_USB_PCI_QUIRKS_H  */
  #endif  /*  __LINUX_USB_PCI_QUIRKS_H  */
 --- a/include/linux/usb/hcd.h
 --- a/include/linux/usb/hcd.h
 +++ b/include/linux/usb/hcd.h
 +++ b/include/linux/usb/hcd.h
-@@ -498,7 +498,14 @@ extern int usb_hcd_pci_probe(struct pci_
+@@ -497,7 +497,14 @@ extern int usb_hcd_pci_probe(struct pci_
  extern void usb_hcd_pci_remove(struct pci_dev *dev);
  extern void usb_hcd_pci_remove(struct pci_dev *dev);
  extern void usb_hcd_pci_shutdown(struct pci_dev *dev);
  extern void usb_hcd_pci_shutdown(struct pci_dev *dev);
  
  

+ 4 - 4
target/linux/generic/pending-6.1/834-ledtrig-libata.patch

@@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <[email protected]>
  /**
  /**
   *	ata_build_rw_tf - Build ATA taskfile for given read/write request
   *	ata_build_rw_tf - Build ATA taskfile for given read/write request
   *	@tf: Target ATA taskfile
   *	@tf: Target ATA taskfile
-@@ -4580,6 +4593,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
+@@ -4576,6 +4589,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
  		if (tag < 0)
  		if (tag < 0)
  			return NULL;
  			return NULL;
  	}
  	}
@@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <[email protected]>
  
  
  	qc = __ata_qc_from_tag(ap, tag);
  	qc = __ata_qc_from_tag(ap, tag);
  	qc->tag = qc->hw_tag = tag;
  	qc->tag = qc->hw_tag = tag;
-@@ -5358,6 +5374,9 @@ struct ata_port *ata_port_alloc(struct a
+@@ -5354,6 +5370,9 @@ struct ata_port *ata_port_alloc(struct a
  	ap->stats.unhandled_irq = 1;
  	ap->stats.unhandled_irq = 1;
  	ap->stats.idle_irq = 1;
  	ap->stats.idle_irq = 1;
  #endif
  #endif
@@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <[email protected]>
  	ata_sff_port_init(ap);
  	ata_sff_port_init(ap);
  
  
  	return ap;
  	return ap;
-@@ -5393,6 +5412,12 @@ static void ata_host_release(struct kref
+@@ -5389,6 +5408,12 @@ static void ata_host_release(struct kref
  
  
  		kfree(ap->pmp_link);
  		kfree(ap->pmp_link);
  		kfree(ap->slave_link);
  		kfree(ap->slave_link);
@@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <[email protected]>
  		kfree(ap);
  		kfree(ap);
  		host->ports[i] = NULL;
  		host->ports[i] = NULL;
  	}
  	}
-@@ -5799,7 +5824,23 @@ int ata_host_register(struct ata_host *h
+@@ -5795,7 +5820,23 @@ int ata_host_register(struct ata_host *h
  		host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
  		host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
  		host->ports[i]->local_port_no = i + 1;
  		host->ports[i]->local_port_no = i + 1;
  	}
  	}

+ 4 - 4
target/linux/generic/pending-6.1/850-0023-PCI-aardvark-Make-main-irq_chip-structure-a-static-d.patch

@@ -33,7 +33,7 @@ Signed-off-by: Marek Behún <[email protected]>
 
 
 --- a/drivers/pci/controller/pci-aardvark.c
 --- a/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
 +++ b/drivers/pci/controller/pci-aardvark.c
-@@ -275,7 +275,6 @@ struct advk_pcie {
+@@ -274,7 +274,6 @@ struct advk_pcie {
  	u8 wins_count;
  	u8 wins_count;
  	struct irq_domain *rp_irq_domain;
  	struct irq_domain *rp_irq_domain;
  	struct irq_domain *irq_domain;
  	struct irq_domain *irq_domain;
@@ -41,7 +41,7 @@ Signed-off-by: Marek Behún <[email protected]>
  	raw_spinlock_t irq_lock;
  	raw_spinlock_t irq_lock;
  	struct irq_domain *msi_domain;
  	struct irq_domain *msi_domain;
  	struct irq_domain *msi_inner_domain;
  	struct irq_domain *msi_inner_domain;
-@@ -1345,14 +1344,19 @@ static void advk_pcie_irq_unmask(struct
+@@ -1330,14 +1329,19 @@ static void advk_pcie_irq_unmask(struct
  	raw_spin_unlock_irqrestore(&pcie->irq_lock, flags);
  	raw_spin_unlock_irqrestore(&pcie->irq_lock, flags);
  }
  }
  
  
@@ -63,7 +63,7 @@ Signed-off-by: Marek Behún <[email protected]>
  	irq_set_chip_data(virq, pcie);
  	irq_set_chip_data(virq, pcie);
  
  
  	return 0;
  	return 0;
-@@ -1411,7 +1415,6 @@ static int advk_pcie_init_irq_domain(str
+@@ -1396,7 +1400,6 @@ static int advk_pcie_init_irq_domain(str
  	struct device *dev = &pcie->pdev->dev;
  	struct device *dev = &pcie->pdev->dev;
  	struct device_node *node = dev->of_node;
  	struct device_node *node = dev->of_node;
  	struct device_node *pcie_intc_node;
  	struct device_node *pcie_intc_node;
@@ -71,7 +71,7 @@ Signed-off-by: Marek Behún <[email protected]>
  	int ret = 0;
  	int ret = 0;
  
  
  	raw_spin_lock_init(&pcie->irq_lock);
  	raw_spin_lock_init(&pcie->irq_lock);
-@@ -1422,28 +1425,14 @@ static int advk_pcie_init_irq_domain(str
+@@ -1407,28 +1410,14 @@ static int advk_pcie_init_irq_domain(str
  		return -ENODEV;
  		return -ENODEV;
  	}
  	}
  
  

+ 2 - 2
target/linux/generic/pending-6.1/920-mangle_bootargs.patch

@@ -31,7 +31,7 @@ Signed-off-by: Imre Kaloz <[email protected]>
  	help
  	help
 --- a/init/main.c
 --- a/init/main.c
 +++ b/init/main.c
 +++ b/init/main.c
-@@ -616,6 +616,29 @@ static inline void setup_nr_cpu_ids(void
+@@ -615,6 +615,29 @@ static inline void setup_nr_cpu_ids(void
  static inline void smp_prepare_cpus(unsigned int maxcpus) { }
  static inline void smp_prepare_cpus(unsigned int maxcpus) { }
  #endif
  #endif
  
  
@@ -61,7 +61,7 @@ Signed-off-by: Imre Kaloz <[email protected]>
  /*
  /*
   * We need to store the untouched command line for future reference.
   * We need to store the untouched command line for future reference.
   * We also need to store the touched command line since the parameter
   * We also need to store the touched command line since the parameter
-@@ -956,6 +979,7 @@ asmlinkage __visible void __init __no_sa
+@@ -955,6 +978,7 @@ asmlinkage __visible void __init __no_sa
  	pr_notice("%s", linux_banner);
  	pr_notice("%s", linux_banner);
  	early_security_init();
  	early_security_init();
  	setup_arch(&command_line);
  	setup_arch(&command_line);

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff