From 7d3c0928de191b203dd5b27ddf208698d08639e3 Mon Sep 17 00:00:00 2001 From: John Audia Date: Thu, 21 Jul 2022 16:19:32 -0400 Subject: [PATCH 01/33] kernel: bump 5.10 to 5.10.132 All patches automatically rebased. Signed-off-by: John Audia --- include/kernel-5.10 | 4 ++-- .../0003-leds-add-reset-controller-based-driver.patch | 6 +++--- ...18-watchdog-allow-building-BCM7038_WDT-for-BCM4908.patch | 4 ++-- ...tchdog-bcm7038_wdt-Support-BCM6345-compatible-stri.patch | 2 +- ...1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch | 2 +- ...from-spurious-interrupts-due-to-tegra2-silicon-bug.patch | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/include/kernel-5.10 b/include/kernel-5.10 index f517e3b6a7..4b6aaa0087 100644 --- a/include/kernel-5.10 +++ b/include/kernel-5.10 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.10 = .131 -LINUX_KERNEL_HASH-5.10.131 = 8bc441442c16c330a7148fe3cca9edcd98bc0fc9f68304633c7eb641770d21ce +LINUX_VERSION-5.10 = .132 +LINUX_KERNEL_HASH-5.10.132 = 7d05a931eee01dea64fc73849e275ff14664ff98813f95f40588f04fdf1cfa2a diff --git a/target/linux/ath79/patches-5.10/0003-leds-add-reset-controller-based-driver.patch b/target/linux/ath79/patches-5.10/0003-leds-add-reset-controller-based-driver.patch index 68b8310365..4a721f2af2 100644 --- a/target/linux/ath79/patches-5.10/0003-leds-add-reset-controller-based-driver.patch +++ b/target/linux/ath79/patches-5.10/0003-leds-add-reset-controller-based-driver.patch @@ -13,9 +13,9 @@ Signed-off-by: John Crispin --- a/drivers/leds/Kconfig +++ b/drivers/leds/Kconfig -@@ -929,6 +929,17 @@ config LEDS_ACER_A500 - This option enables support for the Power Button LED of - Acer Iconia Tab A500. +@@ -931,6 +931,17 @@ config LEDS_ACER_A500 + + source "drivers/leds/blink/Kconfig" +config LEDS_RESET + tristate "LED support for reset-controller API" diff --git a/target/linux/bcm4908/patches-5.10/089-v5.18-watchdog-allow-building-BCM7038_WDT-for-BCM4908.patch b/target/linux/bcm4908/patches-5.10/089-v5.18-watchdog-allow-building-BCM7038_WDT-for-BCM4908.patch index a03d538db9..ea75181a6e 100644 --- a/target/linux/bcm4908/patches-5.10/089-v5.18-watchdog-allow-building-BCM7038_WDT-for-BCM4908.patch +++ b/target/linux/bcm4908/patches-5.10/089-v5.18-watchdog-allow-building-BCM7038_WDT-for-BCM4908.patch @@ -21,8 +21,8 @@ Signed-off-by: Wim Van Sebroeck --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig -@@ -1779,7 +1779,7 @@ config BCM7038_WDT - tristate "BCM63xx/BCM7038 Watchdog" +@@ -1800,7 +1800,7 @@ config BCM7038_WDT + tristate "BCM7038 Watchdog" select WATCHDOG_CORE depends on HAS_IOMEM - depends on ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST diff --git a/target/linux/bcm4908/patches-5.10/090-v5.20-watchdog-bcm7038_wdt-Support-BCM6345-compatible-stri.patch b/target/linux/bcm4908/patches-5.10/090-v5.20-watchdog-bcm7038_wdt-Support-BCM6345-compatible-stri.patch index 9d11a55ffa..d6d2fd9ab6 100644 --- a/target/linux/bcm4908/patches-5.10/090-v5.20-watchdog-bcm7038_wdt-Support-BCM6345-compatible-stri.patch +++ b/target/linux/bcm4908/patches-5.10/090-v5.20-watchdog-bcm7038_wdt-Support-BCM6345-compatible-stri.patch @@ -24,7 +24,7 @@ Signed-off-by: Wim Van Sebroeck --- a/drivers/watchdog/bcm7038_wdt.c +++ b/drivers/watchdog/bcm7038_wdt.c -@@ -218,6 +218,7 @@ static SIMPLE_DEV_PM_OPS(bcm7038_wdt_pm_ops, bcm7038_wdt_suspend, +@@ -193,6 +193,7 @@ static SIMPLE_DEV_PM_OPS(bcm7038_wdt_pm_ bcm7038_wdt_resume); static const struct of_device_id bcm7038_wdt_match[] = { 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 80f51e7a22..c7a2fa9b11 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 @@ -1162,7 +1162,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c -@@ -444,7 +444,7 @@ static int dwc_eth_dwmac_probe(struct pl +@@ -445,7 +445,7 @@ static int dwc_eth_dwmac_probe(struct pl if (IS_ERR(stmmac_res.addr)) return PTR_ERR(stmmac_res.addr); diff --git a/target/linux/tegra/patches-5.10/100-serial8250-on-tegra-hsuart-recover-from-spurious-interrupts-due-to-tegra2-silicon-bug.patch b/target/linux/tegra/patches-5.10/100-serial8250-on-tegra-hsuart-recover-from-spurious-interrupts-due-to-tegra2-silicon-bug.patch index 08ed9d441c..8f01f73eb2 100644 --- a/target/linux/tegra/patches-5.10/100-serial8250-on-tegra-hsuart-recover-from-spurious-interrupts-due-to-tegra2-silicon-bug.patch +++ b/target/linux/tegra/patches-5.10/100-serial8250-on-tegra-hsuart-recover-from-spurious-interrupts-due-to-tegra2-silicon-bug.patch @@ -36,7 +36,7 @@ David --- a/drivers/tty/serial/8250/8250_core.c +++ b/drivers/tty/serial/8250/8250_core.c -@@ -133,6 +133,38 @@ static irqreturn_t serial8250_interrupt( +@@ -134,6 +134,38 @@ static irqreturn_t serial8250_interrupt( if (l == i->head && pass_counter++ > PASS_LIMIT) break; From 913f160ac6c4dcf69ec0eb805c8a1cee809ace45 Mon Sep 17 00:00:00 2001 From: John Audia Date: Mon, 25 Jul 2022 09:21:12 -0400 Subject: [PATCH 02/33] kernel: bump 5.10 to 5.10.133 All patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Signed-off-by: John Audia --- include/kernel-5.10 | 4 ++-- target/linux/generic/hack-5.10/221-module_exports.patch | 2 +- .../generic/pending-5.10/203-kallsyms_uncompressed.patch | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/kernel-5.10 b/include/kernel-5.10 index 4b6aaa0087..bce261f0ed 100644 --- a/include/kernel-5.10 +++ b/include/kernel-5.10 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.10 = .132 -LINUX_KERNEL_HASH-5.10.132 = 7d05a931eee01dea64fc73849e275ff14664ff98813f95f40588f04fdf1cfa2a +LINUX_VERSION-5.10 = .133 +LINUX_KERNEL_HASH-5.10.133 = 3b5c4c7d5bca720c11f1024c9aa00ac04397b6c7de37fd4170444077c723280e diff --git a/target/linux/generic/hack-5.10/221-module_exports.patch b/target/linux/generic/hack-5.10/221-module_exports.patch index 8ca464e3b2..11f473f09f 100644 --- a/target/linux/generic/hack-5.10/221-module_exports.patch +++ b/target/linux/generic/hack-5.10/221-module_exports.patch @@ -115,7 +115,7 @@ Signed-off-by: Felix Fietkau .previous --- a/scripts/Makefile.build +++ b/scripts/Makefile.build -@@ -367,7 +367,7 @@ targets += $(lib-y) $(always-y) $(MAKECM +@@ -373,7 +373,7 @@ targets += $(lib-y) $(always-y) $(MAKECM # Linker scripts preprocessor (.lds.S -> .lds) # --------------------------------------------------------------------------- quiet_cmd_cpp_lds_S = LDS $@ diff --git a/target/linux/generic/pending-5.10/203-kallsyms_uncompressed.patch b/target/linux/generic/pending-5.10/203-kallsyms_uncompressed.patch index 9392d7ba56..eee4a38657 100644 --- a/target/linux/generic/pending-5.10/203-kallsyms_uncompressed.patch +++ b/target/linux/generic/pending-5.10/203-kallsyms_uncompressed.patch @@ -106,7 +106,7 @@ Signed-off-by: Felix Fietkau } --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh -@@ -186,6 +186,10 @@ kallsyms() +@@ -192,6 +192,10 @@ kallsyms() kallsymopt="${kallsymopt} --base-relative" fi From 56760c0b1316a0e379ff141b895c2929f0dace8d Mon Sep 17 00:00:00 2001 From: John Audia Date: Mon, 25 Jul 2022 10:16:43 -0400 Subject: [PATCH 03/33] x86: update defconfig for 5.10.133 Add some new/missing symbols relating to speculative execution mitigations[1]. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v5.10.133&id2=v5.10.132 Signed-off-by: John Audia --- target/linux/x86/config-5.10 | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/target/linux/x86/config-5.10 b/target/linux/x86/config-5.10 index ec27bb7945..13a698d05d 100644 --- a/target/linux/x86/config-5.10 +++ b/target/linux/x86/config-5.10 @@ -52,6 +52,9 @@ CONFIG_CPU_FREQ_GOV_PERFORMANCE=y # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set # CONFIG_CPU_FREQ_GOV_USERSPACE is not set CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_IBPB_ENTRY=y +CONFIG_CPU_IBRS_ENTRY=y +# CONFIG_SLS is not set CONFIG_CPU_IDLE=y CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_SUP_AMD=y @@ -62,11 +65,13 @@ CONFIG_CPU_SUP_INTEL=y CONFIG_CPU_SUP_TRANSMETA_32=y CONFIG_CPU_SUP_UMC_32=y CONFIG_CPU_SUP_ZHAOXIN=y +CONFIG_CPU_UNRET_ENTRY=y CONFIG_CRASH_CORE=y CONFIG_CRC16=y CONFIG_CRYPTO_CRC32=y CONFIG_CRYPTO_CRC32C=y # CONFIG_CRYPTO_CRC32_PCLMUL is not set +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1 CONFIG_CRYPTO_RNG2=y # CONFIG_CRYPTO_SERPENT_SSE2_586 is not set @@ -168,7 +173,6 @@ CONFIG_INITRAMFS_SOURCE="" CONFIG_INPUT=y CONFIG_INPUT_KEYBOARD=y CONFIG_INSTRUCTION_DECODER=y -# CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_PCH_THERMAL is not set # CONFIG_INTEL_POWERCLAMP is not set # CONFIG_INTEL_SCU_PCI is not set @@ -292,6 +296,7 @@ CONFIG_PROC_PID_ARCH_STATUS=y CONFIG_RATIONAL=y CONFIG_RD_BZIP2=y CONFIG_RD_GZIP=y +CONFIG_RETHUNK=y CONFIG_RETPOLINE=y CONFIG_RTC_CLASS=y CONFIG_RTC_MC146818_LIB=y @@ -317,6 +322,7 @@ CONFIG_SG_POOL=y # CONFIG_SMSC_SCH311X_WDT is not set CONFIG_SPARSEMEM_STATIC=y CONFIG_SPARSE_IRQ=y +CONFIG_SPECULATION_MITIGATIONS=y CONFIG_SRCU=y # CONFIG_STATIC_CALL_SELFTEST is not set CONFIG_SYSCTL_EXCEPTION_TRACE=y From 7be62b1187bb7e21bcdaadfc3d47713a91f05898 Mon Sep 17 00:00:00 2001 From: John Audia Date: Fri, 29 Jul 2022 12:25:26 -0400 Subject: [PATCH 04/33] kernel: bump 5.10 to 5.10.134 All patches automatically rebased. Signed-off-by: John Audia --- include/kernel-5.10 | 4 ++-- .../linux/ath79/patches-5.10/910-unaligned_access_hacks.patch | 2 +- ...t-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch | 2 +- .../710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch | 2 +- ...-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch | 4 ++-- .../804-staging-mt7621-pinctrl-use-ngpios-not-num-gpios.patch | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/kernel-5.10 b/include/kernel-5.10 index bce261f0ed..c2df3cb11a 100644 --- a/include/kernel-5.10 +++ b/include/kernel-5.10 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.10 = .133 -LINUX_KERNEL_HASH-5.10.133 = 3b5c4c7d5bca720c11f1024c9aa00ac04397b6c7de37fd4170444077c723280e +LINUX_VERSION-5.10 = .134 +LINUX_KERNEL_HASH-5.10.134 = ec3513acdf033dd8f8ac2545cd1bb826b0669e151185e5f70408a5c9fe273269 diff --git a/target/linux/ath79/patches-5.10/910-unaligned_access_hacks.patch b/target/linux/ath79/patches-5.10/910-unaligned_access_hacks.patch index 52c497e966..ad19f8eaf9 100644 --- a/target/linux/ath79/patches-5.10/910-unaligned_access_hacks.patch +++ b/target/linux/ath79/patches-5.10/910-unaligned_access_hacks.patch @@ -706,7 +706,7 @@ EXPORT_SYMBOL(xfrm_parse_spi); --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c -@@ -4087,14 +4087,16 @@ static bool tcp_parse_aligned_timestamp( +@@ -4092,14 +4092,16 @@ static bool tcp_parse_aligned_timestamp( { const __be32 *ptr = (const __be32 *)(th + 1); 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 c7a2fa9b11..77b85a232c 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 @@ -1360,7 +1360,7 @@ Signed-off-by: David S. Miller int irq; --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c -@@ -4988,7 +4988,7 @@ int stmmac_dvr_probe(struct device *devi +@@ -4987,7 +4987,7 @@ int stmmac_dvr_probe(struct device *devi priv->wol_irq = res->wol_irq; priv->lpi_irq = res->lpi_irq; diff --git a/target/linux/generic/pending-5.10/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch b/target/linux/generic/pending-5.10/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch index d907006fa4..eb0478e0c6 100644 --- a/target/linux/generic/pending-5.10/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch +++ b/target/linux/generic/pending-5.10/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch @@ -164,7 +164,7 @@ Signed-off-by: Felix Fietkau struct rtnl_link { rtnl_doit_func doit; -@@ -4695,7 +4695,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu +@@ -4684,7 +4684,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu brport_nla_put_flag(skb, flags, mask, IFLA_BRPORT_MCAST_FLOOD, BR_MCAST_FLOOD) || brport_nla_put_flag(skb, flags, mask, diff --git a/target/linux/ipq806x/patches-5.10/108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch b/target/linux/ipq806x/patches-5.10/108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch index 77667b139e..84f5f95841 100644 --- a/target/linux/ipq806x/patches-5.10/108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch +++ b/target/linux/ipq806x/patches-5.10/108-v5.14-net-stmmac-explicitly-deassert-gmac-ahb-reset.patch @@ -29,7 +29,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c -@@ -5021,6 +5021,10 @@ int stmmac_dvr_probe(struct device *devi +@@ -5020,6 +5020,10 @@ int stmmac_dvr_probe(struct device *devi reset_control_reset(priv->plat->stmmac_rst); } @@ -40,7 +40,7 @@ Signed-off-by: David S. Miller /* Init MAC and get the capabilities */ ret = stmmac_hw_init(priv); if (ret) -@@ -5245,6 +5249,7 @@ int stmmac_dvr_remove(struct device *dev +@@ -5244,6 +5248,7 @@ int stmmac_dvr_remove(struct device *dev phylink_destroy(priv->phylink); if (priv->plat->stmmac_rst) reset_control_assert(priv->plat->stmmac_rst); diff --git a/target/linux/ramips/patches-5.10/804-staging-mt7621-pinctrl-use-ngpios-not-num-gpios.patch b/target/linux/ramips/patches-5.10/804-staging-mt7621-pinctrl-use-ngpios-not-num-gpios.patch index 0d62bd8b03..a15bf62b0b 100644 --- a/target/linux/ramips/patches-5.10/804-staging-mt7621-pinctrl-use-ngpios-not-num-gpios.patch +++ b/target/linux/ramips/patches-5.10/804-staging-mt7621-pinctrl-use-ngpios-not-num-gpios.patch @@ -1,6 +1,6 @@ --- a/drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c +++ b/drivers/staging/mt7621-pinctrl/pinctrl-rt2880.c -@@ -354,7 +354,7 @@ static int rt2880_pinmux_probe(struct pl +@@ -356,7 +356,7 @@ static int rt2880_pinmux_probe(struct pl if (!of_device_is_available(np)) continue; From 0063e3421de4575e088bb428e758751931bbe6fd Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sun, 24 Jul 2022 13:23:36 +0200 Subject: [PATCH 05/33] wolfssl: make shared again Disable the usage of target specific CPU crypto instructions by default to allow the package being shared again. Since WolfSSL does not offer a stable ABI or a long term support version suitable for OpenWrt release timeframes, we're forced to frequently update it which is greatly complicated by the package being nonshared. People who want or need CPU crypto instruction support can enable it in menuconfig while building custom images for the few platforms that support them. Signed-off-by: Jo-Philipp Wich --- package/libs/wolfssl/Config.in | 1 - package/libs/wolfssl/Makefile | 1 - 2 files changed, 2 deletions(-) diff --git a/package/libs/wolfssl/Config.in b/package/libs/wolfssl/Config.in index 332a151550..4b9db4d107 100644 --- a/package/libs/wolfssl/Config.in +++ b/package/libs/wolfssl/Config.in @@ -72,7 +72,6 @@ config WOLFSSL_ASM_CAPABLE choice prompt "Hardware Acceleration" - default WOLFSSL_HAS_CPU_CRYPTO if WOLFSSL_ASM_CAPABLE && !TARGET_armvirt default WOLFSSL_HAS_NO_HW config WOLFSSL_HAS_NO_HW diff --git a/package/libs/wolfssl/Makefile b/package/libs/wolfssl/Makefile index 55928f1446..b0e100673c 100644 --- a/package/libs/wolfssl/Makefile +++ b/package/libs/wolfssl/Makefile @@ -61,7 +61,6 @@ endef define Package/libwolfssl $(call Package/libwolfssl/Default) TITLE:=wolfSSL library - PKGFLAGS:=nonshared MENU:=1 PROVIDES:=libcyassl DEPENDS:=+WOLFSSL_HAS_DEVCRYPTO:kmod-cryptodev +WOLFSSL_HAS_AFALG:kmod-crypto-user From 603aaceb4288555e8e9ad6a559288ce1b2e1131d Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 17 Jul 2022 21:41:31 +0100 Subject: [PATCH 06/33] uboot-mediatek: reorder patches Rename/reorder patches to avoid duplicate usage of 300-* prefix. No functional changes. Signed-off-by: Daniel Golle --- ...env.patch => 301-mt7622-generic-reset-button-ignore-env.patch} | 0 ...env.patch => 302-mt7623-generic-reset-button-ignore-env.patch} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename package/boot/uboot-mediatek/patches/{300-mt7622-generic-reset-button-ignore-env.patch => 301-mt7622-generic-reset-button-ignore-env.patch} (100%) rename package/boot/uboot-mediatek/patches/{301-mt7623-generic-reset-button-ignore-env.patch => 302-mt7623-generic-reset-button-ignore-env.patch} (100%) diff --git a/package/boot/uboot-mediatek/patches/300-mt7622-generic-reset-button-ignore-env.patch b/package/boot/uboot-mediatek/patches/301-mt7622-generic-reset-button-ignore-env.patch similarity index 100% rename from package/boot/uboot-mediatek/patches/300-mt7622-generic-reset-button-ignore-env.patch rename to package/boot/uboot-mediatek/patches/301-mt7622-generic-reset-button-ignore-env.patch diff --git a/package/boot/uboot-mediatek/patches/301-mt7623-generic-reset-button-ignore-env.patch b/package/boot/uboot-mediatek/patches/302-mt7623-generic-reset-button-ignore-env.patch similarity index 100% rename from package/boot/uboot-mediatek/patches/301-mt7623-generic-reset-button-ignore-env.patch rename to package/boot/uboot-mediatek/patches/302-mt7623-generic-reset-button-ignore-env.patch From 4a28537e4c858888f918c1b6f1210964da2da160 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 14 Jul 2022 04:25:36 +0100 Subject: [PATCH 07/33] image-commands: fix generating out-of-tree DTO Hack path so DTO generation works also for out-of-tree device tree sources which currently fail. Signed-off-by: Daniel Golle --- include/image-commands.mk | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/include/image-commands.mk b/include/image-commands.mk index 402e3d71ed..6fe2890a1a 100644 --- a/include/image-commands.mk +++ b/include/image-commands.mk @@ -279,9 +279,11 @@ endef define Build/fit $(TOPDIR)/scripts/mkits.sh \ -D $(DEVICE_NAME) -o $@.its -k $@ \ - -C $(word 1,$(1)) $(if $(word 2,$(1)),\ - $(if $(DEVICE_DTS_OVERLAY),-d $(KERNEL_BUILD_DIR)/image-$$(basename $(word 2,$(1))),\ - -d $(word 2,$(1)))) \ + -C $(word 1,$(1)) \ + $(if $(word 2,$(1)),\ + $(if $(findstring 11,$(if $(DEVICE_DTS_OVERLAY),1)$(if $(findstring $(KERNEL_BUILD_DIR)/image-,$(word 2,$(1))),,1)), \ + -d $(KERNEL_BUILD_DIR)/image-$$(basename $(word 2,$(1))), \ + -d $(word 2,$(1)))) \ $(if $(findstring with-rootfs,$(word 3,$(1))),-r $(IMAGE_ROOTFS)) \ $(if $(findstring with-initrd,$(word 3,$(1))), \ $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS_SEPARATE), \ From dbe53352e38d20bb5245158b19d4ff810c209548 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 26 Jul 2022 10:17:07 +0200 Subject: [PATCH 08/33] kernel: add kmod-nvme package Add driver for NVM Express block devices, ie. PCIe connected SSDs. Targets which allow booting from NVMe (x86, maybe some mvebu boards come to mind) should have it built-in, so rootfs can be mounted from there. For targets without NVMe support in bootloader or BIOS/firmware it's sufficient to provide the kernel module package. On targets having the NVMe driver built-in the resulting kmod package is an empty dummy. In any case, depending on or installing kmod-nvme results in driver support being available (either because it was already built-in or because the relevant kernel modules are added and loaded). Signed-off-by: Daniel Golle --- package/kernel/linux/modules/block.mk | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/package/kernel/linux/modules/block.mk b/package/kernel/linux/modules/block.mk index 72f670b603..40a14a9be2 100644 --- a/package/kernel/linux/modules/block.mk +++ b/package/kernel/linux/modules/block.mk @@ -508,6 +508,29 @@ endef $(eval $(call KernelPackage,nbd)) +define KernelPackage/nvme + SUBMENU:=$(BLOCK_MENU) + TITLE:=NVM Express block device + DEPENDS:=@PCI_SUPPORT + KCONFIG:= \ + CONFIG_NVME_CORE \ + CONFIG_BLK_DEV_NVME \ + CONFIG_NVME_MULTIPATH=n \ + CONFIG_NVME_HWMON=n + FILES:= \ + $(LINUX_DIR)/drivers/nvme/host/nvme-core.ko \ + $(LINUX_DIR)/drivers/nvme/host/nvme.ko + AUTOLOAD:=$(call AutoLoad,30,nvme-core nvme) +endef + +define KernelPackage/nvme/description + Kernel module for NVM Express solid state drives directly + connected to the PCI or PCI Express bus. +endef + +$(eval $(call KernelPackage,nvme)) + + define KernelPackage/scsi-core SUBMENU:=$(BLOCK_MENU) TITLE:=SCSI device support From f9209086264a5c5c55f1eb3cbd2399cf47e29f22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=A1vid=20Benko?= Date: Fri, 29 Jul 2022 14:55:21 +0200 Subject: [PATCH 09/33] odhcp6c: update to latest git HEAD MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 9212bfc odhcp6c: fix IA discard when T1 > 0 and T2 = 0 Signed-off-by: Dávid Benko --- package/network/ipv6/odhcp6c/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package/network/ipv6/odhcp6c/Makefile b/package/network/ipv6/odhcp6c/Makefile index 455ef3ae71..c646b85856 100644 --- a/package/network/ipv6/odhcp6c/Makefile +++ b/package/network/ipv6/odhcp6c/Makefile @@ -12,9 +12,9 @@ PKG_RELEASE:=18 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcp6c.git -PKG_SOURCE_DATE:=2021-12-05 -PKG_SOURCE_VERSION:=39b584bcac8770619b545d6ae344758f87028612 -PKG_MIRROR_HASH:=f2092bd3ff3481f842da6735f8e36e237e163e8b7cdec80a17385c31e064c8f0 +PKG_SOURCE_DATE:=2022-07-13 +PKG_SOURCE_VERSION:=9212bfcbab7681cd30186ac7f1ef4c47bf38c89a +PKG_MIRROR_HASH:=85118a9ae084701a00b4dc6a9b2e3279e4fd70eb5b31b539a121ce0a894f9e45 PKG_MAINTAINER:=Hans Dedecker PKG_LICENSE:=GPL-2.0 From 45386380220d31c144c9718edf12c4f88f1ab589 Mon Sep 17 00:00:00 2001 From: Nick Hainke Date: Tue, 26 Jul 2022 16:46:44 +0200 Subject: [PATCH 10/33] mtools: update to 4.0.40 Changes: - Remove libbsd dependency - Better compatibility with legacy platforms such as AT&T UnixPC - Upgraded to autoconf 2.71 Signed-off-by: Nick Hainke --- tools/mtools/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/mtools/Makefile b/tools/mtools/Makefile index db364c9c93..74007a88d0 100644 --- a/tools/mtools/Makefile +++ b/tools/mtools/Makefile @@ -7,11 +7,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mtools -PKG_VERSION:=4.0.39 +PKG_VERSION:=4.0.40 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@GNU/$(PKG_NAME) -PKG_HASH:=397f1e2b7b7a2a270eb7970fa363e445f956926ec51e8170c3869da85b0987bd +PKG_HASH:=a22fca42354011dd2293a7f51f228b46ebbd802e7740b0975912afecb79d5df4 HOST_BUILD_PARALLEL:=1 From 97daddffd01b87c843c324bf44e3f9315222f354 Mon Sep 17 00:00:00 2001 From: Nick Hainke Date: Tue, 26 Jul 2022 16:16:27 +0200 Subject: [PATCH 11/33] libcap: update to 2.64 Changes: 38cfa2e Up the release version to 2.64 7617af6 Avoid a deadlock in forked psx thread exit. fc029cb Include LIBCAP_{MAJOR,MINOR} #define's in sys/capability.h ceaa591 Clarify how the cap_get_pid() argument is interpreted. 15cacf2 Fix prctl return code/errno handling in libcap. aae9374 Be explicit about CGO_ENABLED=1 for compare-cap build. 66a8a14 psx: free allocated memory at exit. Signed-off-by: Nick Hainke --- package/libs/libcap/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/libs/libcap/Makefile b/package/libs/libcap/Makefile index dcd535becd..7a1e36bb70 100644 --- a/package/libs/libcap/Makefile +++ b/package/libs/libcap/Makefile @@ -6,12 +6,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libcap -PKG_VERSION:=2.63 +PKG_VERSION:=2.64 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/linux/libs/security/linux-privs/libcap2 -PKG_HASH:=0c637b8f44fc7d8627787e9cf57f15ac06c1ddccb53e41feec5496be3466f77f +PKG_HASH:=c8465e1f0b068d5fc06199231135ccac7adb56d662b1de93589252e8cd071e13 PKG_MAINTAINER:=Paul Wassi PKG_LICENSE:=GPL-2.0-only From 74554578935f625d0ccfe95cfd9c03cb5031126e Mon Sep 17 00:00:00 2001 From: Nick Hainke Date: Tue, 26 Jul 2022 16:18:51 +0200 Subject: [PATCH 12/33] libcap: update to 2.65 Changes: a47d86d Up the release version to 2.65 fc99e56 Include more signatures in pgp.keys.asc. 52288cc Close out this comment in the go/Makefile eb0f1df Prevent 'capsh --user=xxx --' from generating a bash error. 9a95791 Improve documentation for cap_get_pid and cap_reset_ambient. 21d08b0 Fix syntax error in DEBUG protected setcap.c code. 9425048 More useful captree usage string and man page. Signed-off-by: Nick Hainke --- package/libs/libcap/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/libs/libcap/Makefile b/package/libs/libcap/Makefile index 7a1e36bb70..0e4ffc6e02 100644 --- a/package/libs/libcap/Makefile +++ b/package/libs/libcap/Makefile @@ -6,12 +6,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libcap -PKG_VERSION:=2.64 +PKG_VERSION:=2.65 PKG_RELEASE:=$(AUTORELEASE) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/linux/libs/security/linux-privs/libcap2 -PKG_HASH:=c8465e1f0b068d5fc06199231135ccac7adb56d662b1de93589252e8cd071e13 +PKG_HASH:=73e350020cc31fe15360879d19384ffa3395a825f065fcf6bda3a5cdf965bebd PKG_MAINTAINER:=Paul Wassi PKG_LICENSE:=GPL-2.0-only From c2aa816f28e0fe2f6f77d0c6da4eba19ea8db4ea Mon Sep 17 00:00:00 2001 From: John Audia Date: Thu, 21 Jul 2022 15:59:30 -0400 Subject: [PATCH 13/33] wolfssl: fix math library build Apply upstream patch[1] to fix breakage around math libraries. This can likely be removed when 5.5.0-stable is tagged and released. Build system: x86_64 Build-tested: bcm2711/RPi4B Run-tested: bcm2711/RPi4B 1. https://github.com/wolfSSL/wolfssl/pull/5390 Signed-off-by: John Audia --- ...prime-s-preprocessor-gating-to-match.patch | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 package/libs/wolfssl/patches/101-update-sp_rand_prime-s-preprocessor-gating-to-match.patch diff --git a/package/libs/wolfssl/patches/101-update-sp_rand_prime-s-preprocessor-gating-to-match.patch b/package/libs/wolfssl/patches/101-update-sp_rand_prime-s-preprocessor-gating-to-match.patch new file mode 100644 index 0000000000..4b56c1568a --- /dev/null +++ b/package/libs/wolfssl/patches/101-update-sp_rand_prime-s-preprocessor-gating-to-match.patch @@ -0,0 +1,23 @@ +From dc92ec2aa9cb76b782bdba3fc5203267ebf39994 Mon Sep 17 00:00:00 2001 +From: Kareem +Date: Fri, 22 Jul 2022 11:07:46 -0700 +Subject: [PATCH] Update sp_rand_prime's preprocessor gating to match + wolfSSL_BN_generate_prime_ex's. + +--- + wolfcrypt/src/sp_int.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/wolfcrypt/src/sp_int.c ++++ b/wolfcrypt/src/sp_int.c +@@ -15647,8 +15647,8 @@ int sp_radix_size(sp_int* a, int radix, + * Prime number generation and checking. + ***************************************/ + +-#if defined(WOLFSSL_KEY_GEN) && (!defined(NO_DH) || !defined(NO_DSA)) && \ +- !defined(WC_NO_RNG) ++#if defined(WOLFSSL_KEY_GEN) && (!defined(NO_RSA) || !defined(NO_DH) || \ ++ !defined(NO_DSA)) && !defined(WC_NO_RNG) + /* Generate a random prime for RSA only. + * + * @param [out] r SP integer to hold result. From 00718b9d7a73587152f9330347995bc24ab1d027 Mon Sep 17 00:00:00 2001 From: Boris Krasnovskiy Date: Fri, 22 Jul 2022 11:06:10 -0400 Subject: [PATCH 14/33] hostapd: prevent unused crypto lib dependencies from being compiled Prevented unused crypto lib dependencies from being compiled Signed-off-by: Boris Krasnovskiy --- package/network/services/hostapd/Makefile | 32 +++++++++++------------ 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/package/network/services/hostapd/Makefile b/package/network/services/hostapd/Makefile index c69d2a826b..c4aa6d04f3 100644 --- a/package/network/services/hostapd/Makefile +++ b/package/network/services/hostapd/Makefile @@ -166,7 +166,7 @@ define Package/hostapd-openssl $(call Package/hostapd/Default,$(1)) TITLE+= (OpenSSL full) VARIANT:=full-openssl - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_hostapd-openssl:libopenssl endef Package/hostapd-openssl/description = $(Package/hostapd/description) @@ -175,7 +175,7 @@ define Package/hostapd-wolfssl $(call Package/hostapd/Default,$(1)) TITLE+= (wolfSSL full) VARIANT:=full-wolfssl - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_hostapd-wolfssl:libwolfssl endef Package/hostapd-wolfssl/description = $(Package/hostapd/description) @@ -194,7 +194,7 @@ define Package/hostapd-basic-openssl $(call Package/hostapd/Default,$(1)) TITLE+= (WPA-PSK, 11r and 11w) VARIANT:=basic-openssl - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_hostapd-basic-openssl:libopenssl endef define Package/hostapd-basic-openssl/description @@ -205,7 +205,7 @@ define Package/hostapd-basic-wolfssl $(call Package/hostapd/Default,$(1)) TITLE+= (WPA-PSK, 11r and 11w) VARIANT:=basic-wolfssl - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_hostapd-basic-wolfssl:libwolfssl endef define Package/hostapd-basic-wolfssl/description @@ -253,7 +253,7 @@ define Package/wpad-openssl $(call Package/wpad/Default,$(1)) TITLE+= (OpenSSL full) VARIANT:=wpad-full-openssl - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_wpad-openssl:libopenssl endef Package/wpad-openssl/description = $(Package/wpad/description) @@ -262,7 +262,7 @@ define Package/wpad-wolfssl $(call Package/wpad/Default,$(1)) TITLE+= (wolfSSL full) VARIANT:=wpad-full-wolfssl - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_wpad-wolfssl:libwolfssl endef Package/wpad-wolfssl/description = $(Package/wpad/description) @@ -281,7 +281,7 @@ define Package/wpad-basic-openssl $(call Package/wpad/Default,$(1)) TITLE+= (OpenSSL, 11r, 11w) VARIANT:=wpad-basic-openssl - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_wpad-basic-openssl:libopenssl endef define Package/wpad-basic-openssl/description @@ -292,7 +292,7 @@ define Package/wpad-basic-wolfssl $(call Package/wpad/Default,$(1)) TITLE+= (wolfSSL, 11r, 11w) VARIANT:=wpad-basic-wolfssl - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_wpad-basic-wolfssl:libwolfssl endef define Package/wpad-basic-wolfssl/description @@ -322,7 +322,7 @@ endef define Package/wpad-mesh-openssl $(call Package/wpad-mesh,$(1)) TITLE+= (OpenSSL, 11s, SAE) - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_wpad-mesh-openssl:libopenssl VARIANT:=wpad-mesh-openssl endef @@ -331,7 +331,7 @@ Package/wpad-mesh-openssl/description = $(Package/wpad-mesh/description) define Package/wpad-mesh-wolfssl $(call Package/wpad-mesh,$(1)) TITLE+= (wolfSSL, 11s, SAE) - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_wpad-mesh-wolfssl:libwolfssl VARIANT:=wpad-mesh-wolfssl endef @@ -362,14 +362,14 @@ define Package/wpa-supplicant-openssl $(call Package/wpa-supplicant/Default,$(1)) TITLE+= (OpenSSL full) VARIANT:=supplicant-full-openssl - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_wpa-supplicant-openssl:libopenssl endef define Package/wpa-supplicant-wolfssl $(call Package/wpa-supplicant/Default,$(1)) TITLE+= (wolfSSL full) VARIANT:=supplicant-full-wolfssl - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_wpa-supplicant-wolfssl:libwolfssl endef define Package/wpa-supplicant/config @@ -393,14 +393,14 @@ define Package/wpa-supplicant-mesh-openssl $(call Package/wpa-supplicant-mesh/Default,$(1)) TITLE+= (OpenSSL, 11s, SAE) VARIANT:=supplicant-mesh-openssl - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_wpa-supplicant-mesh-openssl:libopenssl endef define Package/wpa-supplicant-mesh-wolfssl $(call Package/wpa-supplicant-mesh/Default,$(1)) TITLE+= (wolfSSL, 11s, SAE) VARIANT:=supplicant-mesh-wolfssl - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_wpa-supplicant-mesh-wolfssl:libwolfssl endef define Package/wpa-supplicant-basic @@ -466,7 +466,7 @@ define Package/eapol-test-openssl TITLE+= (OpenSSL full) VARIANT:=supplicant-full-openssl CONFLICTS:=$(filter-out eapol-test-openssl ,$(EAPOL_TEST_PROVIDERS)) - DEPENDS+=+libopenssl + DEPENDS+=+PACKAGE_eapol-test-openssl:libopenssl PROVIDES:=eapol-test endef @@ -475,7 +475,7 @@ define Package/eapol-test-wolfssl TITLE+= (wolfSSL full) VARIANT:=supplicant-full-wolfssl CONFLICTS:=$(filter-out eapol-test-openssl ,$(filter-out eapol-test-wolfssl ,$(EAPOL_TEST_PROVIDERS))) - DEPENDS+=+libwolfssl + DEPENDS+=+PACKAGE_eapol-test-wolfssl:libwolfssl PROVIDES:=eapol-test endef From d94c94d79542558d91c5a5de8d5f594dbafcf3c8 Mon Sep 17 00:00:00 2001 From: Boris Krasnovskiy Date: Fri, 22 Jul 2022 11:06:38 -0400 Subject: [PATCH 15/33] ustream-ssl: prevent unused crypto lib dependencies from being compiled Prevented unused crypto lib dependencies from being compiled Signed-off-by: Boris Krasnovskiy --- package/libs/ustream-ssl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/libs/ustream-ssl/Makefile b/package/libs/ustream-ssl/Makefile index 7d9e830381..a5e34a73b4 100644 --- a/package/libs/ustream-ssl/Makefile +++ b/package/libs/ustream-ssl/Makefile @@ -44,7 +44,7 @@ endef define Package/libustream-mbedtls $(Package/libustream/default) TITLE += (mbedtls) - DEPENDS += +libmbedtls + DEPENDS += +PACKAGE_libustream-mbedtls:libmbedtls CONFLICTS := libustream-openssl libustream-wolfssl VARIANT:=mbedtls DEFAULT_VARIANT:=1 From 101190419969d7e0084976847bc0608919c04594 Mon Sep 17 00:00:00 2001 From: Sander Vanheule Date: Sun, 31 Jul 2022 15:19:29 +0200 Subject: [PATCH 16/33] tools: bump 7z package to 22.01 Version 22.00 of 7z causes build failures on systems using GCC 12 with the following error: ../../../../C/LzmaEnc.c: In function 'LzmaEnc_CodeOneMemBlock': ../../../../C/LzmaEnc.c:2996:19: error: storing the address of local variable 'outStream' in '*p.rc.outStream' [-Werror=dangling-pointer=] 2996 | p->rc.outStream = &outStream.vt; | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ ../../../../C/LzmaEnc.c:2979:28: note: 'outStream' declared here 2979 | CLzmaEnc_SeqOutStreamBuf outStream; | ^~~~~~~~~ ../../../../C/LzmaEnc.c:2979:28: note: 'pp' declared here Upgrade to version 22.01 which contains the required fix. Fixes: 5fcc6f0f1942 ("tools: add 7z host package") Suggested-by: Tomasz Maciej Nowak Signed-off-by: Sander Vanheule --- tools/7z/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/7z/Makefile b/tools/7z/Makefile index c94d746c64..90362e7977 100644 --- a/tools/7z/Makefile +++ b/tools/7z/Makefile @@ -1,12 +1,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=7z -PKG_VERSION:=22.00 -PKG_SOURCE_VERSION:=2200 +PKG_VERSION:=22.01 +PKG_SOURCE_VERSION:=2201 PKG_SOURCE:=$(PKG_NAME)$(PKG_SOURCE_VERSION)-src.tar.xz PKG_SOURCE_URL:=https://7-zip.org/a/ -PKG_HASH:=40969f601e86aff49aaa0ba0df5ce6fd397cf7e2683a84b591b0081e461ef675 +PKG_HASH:=393098730c70042392af808917e765945dc2437dee7aae3cfcc4966eb920fbc5 # This builds the 7zr variant which supports only 7z, so no non-LGPL code should be included PKG_LICENSE:=LGPL-2.1-or-later From 3aa18f71f9c8a5447bdd2deda4e681175338164f Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sun, 31 Jul 2022 01:24:00 +0200 Subject: [PATCH 17/33] mac80211: Update to version 5.15.58-1 This updates mac80211 to version 5.15.58-1 which is based on kernel 5.15.58. The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens --- package/kernel/mac80211/Makefile | 6 +- .../patches/ath/402-ath_regd_optional.patch | 2 +- .../patches/ath/404-regd_no_assoc_hints.patch | 4 +- .../ath10k/080-ath10k_thermal_config.patch | 2 +- ...add-encapsulation-offloading-support.patch | 8 +-- .../930-ath10k_add_tpt_led_trigger.patch | 4 +- ...rolling-support-for-various-chipsets.patch | 2 +- ...75-ath10k-use-tpt-trigger-by-default.patch | 2 +- .../ath9k/551-ath9k_ubnt_uap_plus_hsr.patch | 2 +- .../580-ath9k_ar9561_fix_bias_level.patch | 42 ------------- ...d-alternative-firmware-names-from-DT.patch | 31 ++++------ .../patches/build/060-no_local_ssb_bcma.patch | 10 +-- ...crease-the-global-limit-up-to-4-SSID.patch | 13 ++-- ...ringified-name-of-command-in-error-l.patch | 29 +++------ .../602-rt2x00-introduce-rt2x00eeprom.patch | 2 +- ...-the-fwd_skb-dev-for-mesh-forwarding.patch | 2 +- ...211_hwsim-make-6-GHz-channels-usable.patch | 8 +-- ...d-support-for-.ndo_fill_forward_path.patch | 2 +- ...l_ht-reduce-fluctuations-in-rate-pro.patch | 2 +- ...l_ht-rework-rate-downgrade-code-and-.patch | 16 ++--- ...11-MBSSID-and-EMA-support-in-AP-mode.patch | 22 +++---- ...nt-APIs-for-dedicated-radar-detectio.patch | 6 +- ...ontinuous-radar-monitoring-on-offcha.patch | 6 +- ...offchannel_chain-structs-to-backgrou.patch | 4 +- ...l_ht-fix-where-rate-stats-are-stored.patch | 61 ------------------- ...airtime-fairness-back-to-deficit-rou.patch | 10 +-- ...er-PHY-AQL-limit-to-improve-fairness.patch | 2 +- ...ue-selection-for-mesh-OCB-interfaces.patch | 28 --------- .../subsys/350-bss-color-collision.patch | 4 +- .../500-mac80211_configure_antenna_gain.patch | 6 +- 30 files changed, 91 insertions(+), 247 deletions(-) delete mode 100644 package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch delete mode 100644 package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch delete mode 100644 package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile index 3917f48f05..afc10bdb5c 100644 --- a/package/kernel/mac80211/Makefile +++ b/package/kernel/mac80211/Makefile @@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=mac80211 -PKG_VERSION:=5.15.33-1 +PKG_VERSION:=5.15.58-1 PKG_RELEASE:=1 -PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.33/ -PKG_HASH:=1b6b3bded4c81814ebebe2d194c2f8966d2399005b85ebb0557285b6e73f5422 +PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.15.58/ +PKG_HASH:=a3c2a2b7bbaf8943c65fd72f4e7d7ad5e205aeae28b26c835f9d8afa0f9810bf PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION) diff --git a/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch b/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch index 514cfd9e5e..4ea33365d1 100644 --- a/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch +++ b/package/kernel/mac80211/patches/ath/402-ath_regd_optional.patch @@ -82,7 +82,7 @@ help --- a/local-symbols +++ b/local-symbols -@@ -83,6 +83,7 @@ ADM8211= +@@ -106,6 +106,7 @@ ADM8211= ATH_COMMON= WLAN_VENDOR_ATH= ATH_DEBUG= diff --git a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch index c8eef504c6..02281adf4a 100644 --- a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch +++ b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch @@ -1,6 +1,6 @@ --- a/net/wireless/reg.c +++ b/net/wireless/reg.c -@@ -3304,6 +3304,8 @@ void regulatory_hint_country_ie(struct w +@@ -3309,6 +3309,8 @@ void regulatory_hint_country_ie(struct w enum environment_cap env = ENVIRON_ANY; struct regulatory_request *request = NULL, *lr; @@ -9,7 +9,7 @@ /* IE len must be evenly divisible by 2 */ if (country_ie_len & 0x01) return; -@@ -3555,6 +3557,7 @@ static bool is_wiphy_all_set_reg_flag(en +@@ -3560,6 +3562,7 @@ static bool is_wiphy_all_set_reg_flag(en void regulatory_hint_disconnect(void) { diff --git a/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch b/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch index de6f9d9bb0..d9a3cd534c 100644 --- a/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch +++ b/package/kernel/mac80211/patches/ath10k/080-ath10k_thermal_config.patch @@ -37,7 +37,7 @@ void ath10k_thermal_event_temperature(struct ath10k *ar, int temperature); --- a/local-symbols +++ b/local-symbols -@@ -142,6 +142,7 @@ ATH10K_SNOC= +@@ -165,6 +165,7 @@ ATH10K_SNOC= ATH10K_DEBUG= ATH10K_DEBUGFS= ATH10K_SPECTRAL= diff --git a/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch b/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch index cb02dede64..abca7aac9e 100644 --- a/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch +++ b/package/kernel/mac80211/patches/ath10k/081-04-ath10k-add-encapsulation-offloading-support.patch @@ -123,7 +123,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com ret = ath10k_htt_tx_inc_pending(htt); if (ret) { -@@ -5447,6 +5465,30 @@ static int ath10k_mac_set_txbf_conf(stru +@@ -5463,6 +5481,30 @@ static int ath10k_mac_set_txbf_conf(stru ar->wmi.vdev_param->txbf, value); } @@ -154,7 +154,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com /* * TODO: * Figure out how to handle WMI_VDEV_SUBTYPE_P2P_DEVICE, -@@ -5656,15 +5698,7 @@ static int ath10k_add_interface(struct i +@@ -5672,15 +5714,7 @@ static int ath10k_add_interface(struct i arvif->def_wep_key_idx = -1; @@ -171,7 +171,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com /* Configuring number of spatial stream for monitor interface is causing * target assert in qca9888 and qca6174. -@@ -9352,6 +9386,7 @@ static const struct ieee80211_ops ath10k +@@ -9368,6 +9402,7 @@ static const struct ieee80211_ops ath10k .stop = ath10k_stop, .config = ath10k_config, .add_interface = ath10k_add_interface, @@ -179,7 +179,7 @@ Link: https://lore.kernel.org/r/20220516032519.29831-5-ryazanov.s.a@gmail.com .remove_interface = ath10k_remove_interface, .configure_filter = ath10k_configure_filter, .bss_info_changed = ath10k_bss_info_changed, -@@ -10021,6 +10056,12 @@ int ath10k_mac_register(struct ath10k *a +@@ -10037,6 +10072,12 @@ int ath10k_mac_register(struct ath10k *a if (test_bit(WMI_SERVICE_TDLS_UAPSD_BUFFER_STA, ar->wmi.svc_map)) ieee80211_hw_set(ar->hw, SUPPORTS_TDLS_BUFFER_STA); diff --git a/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch b/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch index 9cbc52b88f..9dfde4385e 100644 --- a/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch +++ b/package/kernel/mac80211/patches/ath10k/930-ath10k_add_tpt_led_trigger.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c -@@ -9878,6 +9878,21 @@ static int ath10k_mac_init_rd(struct ath +@@ -9894,6 +9894,21 @@ static int ath10k_mac_init_rd(struct ath return 0; } @@ -22,7 +22,7 @@ int ath10k_mac_register(struct ath10k *ar) { static const u32 cipher_suites[] = { -@@ -10236,6 +10251,12 @@ int ath10k_mac_register(struct ath10k *a +@@ -10252,6 +10267,12 @@ int ath10k_mac_register(struct ath10k *a ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER; diff --git a/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch b/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch index f1e7f5ecc6..47b52416ab 100644 --- a/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch +++ b/package/kernel/mac80211/patches/ath10k/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch @@ -114,7 +114,7 @@ v13: ath10k_core-$(CONFIG_DEV_COREDUMP) += coredump.o --- a/local-symbols +++ b/local-symbols -@@ -143,6 +143,7 @@ ATH10K_DEBUG= +@@ -166,6 +166,7 @@ ATH10K_DEBUG= ATH10K_DEBUGFS= ATH10K_SPECTRAL= ATH10K_THERMAL= diff --git a/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch b/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch index 4c1b73b1c1..842853ddf4 100644 --- a/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch +++ b/package/kernel/mac80211/patches/ath10k/975-ath10k-use-tpt-trigger-by-default.patch @@ -42,7 +42,7 @@ Signed-off-by: Mathias Kresin if (ret) --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c -@@ -10253,7 +10253,7 @@ int ath10k_mac_register(struct ath10k *a +@@ -10269,7 +10269,7 @@ int ath10k_mac_register(struct ath10k *a ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER; #ifdef CPTCFG_MAC80211_LEDS diff --git a/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch b/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch index 291bc6d1e1..6b5c0dc514 100644 --- a/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch +++ b/package/kernel/mac80211/patches/ath9k/551-ath9k_ubnt_uap_plus_hsr.patch @@ -371,7 +371,7 @@ --- a/local-symbols +++ b/local-symbols -@@ -110,6 +110,7 @@ ATH9K_WOW= +@@ -133,6 +133,7 @@ ATH9K_WOW= ATH9K_RFKILL= ATH9K_CHANNEL_CONTEXT= ATH9K_PCOEM= diff --git a/package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch b/package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch deleted file mode 100644 index b883177b9f..0000000000 --- a/package/kernel/mac80211/patches/ath9k/580-ath9k_ar9561_fix_bias_level.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4509e523dba46f789377cfec6f20579adf743416 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Thibaut=20VAR=C3=88NE?= -Date: Sun, 17 Apr 2022 11:31:35 +0200 -Subject: [PATCH v2] ath9k: fix QCA9561 PA bias level -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This patch fixes an invalid TX PA DC bias level on QCA9561, which -results in a very low output power and very low throughput as devices -are further away from the AP (compared to other 2.4GHz APs). - -This patch was suggested by Felix Fietkau, who noted[1]: -"The value written to that register is wrong, because while the mask -definition AR_CH0_TOP2_XPABIASLVL uses a different value for 9561, the -shift definition AR_CH0_TOP2_XPABIASLVL_S is hardcoded to 12, which is -wrong for 9561." - -In real life testing, without this patch the 2.4GHz throughput on -Yuncore XD3200 is around 10Mbps sitting next to the AP, and closer to -practical maximum with the patch applied. - -[1] https://lore.kernel.org/all/91c58969-c60e-2f41-00ac-737786d435ae@nbd.name - -Signed-off-by: Thibaut VARÈNE ---- -v2: Adjust #define per Felix's suggestion ---- - drivers/net/wireless/ath/ath9k/ar9003_phy.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/wireless/ath/ath9k/ar9003_phy.h -+++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.h -@@ -720,7 +720,7 @@ - #define AR_CH0_TOP2 (AR_SREV_9300(ah) ? 0x1628c : \ - (AR_SREV_9462(ah) ? 0x16290 : 0x16284)) - #define AR_CH0_TOP2_XPABIASLVL (AR_SREV_9561(ah) ? 0x1e00 : 0xf000) --#define AR_CH0_TOP2_XPABIASLVL_S 12 -+#define AR_CH0_TOP2_XPABIASLVL_S (AR_SREV_9561(ah) ? 9 : 12) - - #define AR_CH0_XTAL (AR_SREV_9300(ah) ? 0x16294 : \ - ((AR_SREV_9462(ah) || AR_SREV_9565(ah)) ? 0x16298 : \ diff --git a/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch b/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch index 6d9cfe7b14..8adb8c42a1 100644 --- a/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch +++ b/package/kernel/mac80211/patches/brcm/865-brcmfmac-Read-alternative-firmware-names-from-DT.patch @@ -14,11 +14,9 @@ Signed-off-by: Phil Elwell .../broadcom/brcm80211/brcmfmac/sdio.c | 47 +++++++++++++++++-- 3 files changed, 87 insertions(+), 3 deletions(-) -diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c -index 2f7bc3a70c65..c2d6b8a22858 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c -@@ -10,6 +10,7 @@ +@@ -11,6 +11,7 @@ #include "debug.h" #include "core.h" #include "common.h" @@ -26,7 +24,7 @@ index 2f7bc3a70c65..c2d6b8a22858 100644 #include "of.h" static int brcmf_of_get_country_codes(struct device *dev, -@@ -118,3 +119,38 @@ void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, +@@ -153,3 +154,38 @@ void brcmf_of_probe(struct device *dev, sdio->oob_irq_nr = irq; sdio->oob_irq_flags = irqf; } @@ -65,8 +63,6 @@ index 2f7bc3a70c65..c2d6b8a22858 100644 + + return count ? fwnames : NULL; +} -diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h -index 10bf52253337..5b39a39812d0 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h @@ -5,9 +5,16 @@ @@ -86,8 +82,6 @@ index 10bf52253337..5b39a39812d0 100644 + return NULL; +} #endif /* CONFIG_OF */ -diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c -index 89de65d32ed5..88c08fee58f6 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -35,6 +35,7 @@ @@ -98,7 +92,7 @@ index 89de65d32ed5..88c08fee58f6 100644 #define DCMD_RESP_TIMEOUT msecs_to_jiffies(2500) #define CTL_DONE_TIMEOUT msecs_to_jiffies(2500) -@@ -634,7 +635,7 @@ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "brcmfmac*-sdio.*.txt"); +@@ -633,7 +634,7 @@ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "b /* per-board firmware binaries */ MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "brcmfmac*-sdio.*.bin"); @@ -107,7 +101,7 @@ index 89de65d32ed5..88c08fee58f6 100644 BRCMF_FW_ENTRY(BRCM_CC_43143_CHIP_ID, 0xFFFFFFFF, 43143), BRCMF_FW_ENTRY(BRCM_CC_43241_CHIP_ID, 0x0000001F, 43241B0), BRCMF_FW_ENTRY(BRCM_CC_43241_CHIP_ID, 0x00000020, 43241B4), -@@ -660,6 +661,9 @@ static const struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = { +@@ -659,6 +660,9 @@ static const struct brcmf_firmware_mappi BRCMF_FW_ENTRY(CY_CC_43752_CHIP_ID, 0xFFFFFFFF, 43752) }; @@ -117,8 +111,8 @@ index 89de65d32ed5..88c08fee58f6 100644 #define TXCTL_CREDITS 2 static void pkt_align(struct sk_buff *p, int len, int align) -@@ -4151,7 +4155,7 @@ int brcmf_sdio_get_fwname(struct device *dev, const char *ext, u8 *fw_name, - } +@@ -4140,7 +4144,7 @@ int brcmf_sdio_get_fwname(struct device + fwreq = brcmf_fw_alloc_request(bus_if->chip, bus_if->chiprev, brcmf_sdio_fwnames, - ARRAY_SIZE(brcmf_sdio_fwnames), @@ -126,7 +120,7 @@ index 89de65d32ed5..88c08fee58f6 100644 fwnames, ARRAY_SIZE(fwnames)); if (!fwreq) return -ENOMEM; -@@ -4207,6 +4211,9 @@ static const struct brcmf_bus_ops brcmf_sdio_bus_ops = { +@@ -4196,6 +4200,9 @@ static const struct brcmf_bus_ops brcmf_ #define BRCMF_SDIO_FW_CODE 0 #define BRCMF_SDIO_FW_NVRAM 1 @@ -136,7 +130,7 @@ index 89de65d32ed5..88c08fee58f6 100644 static void brcmf_sdio_firmware_callback(struct device *dev, int err, struct brcmf_fw_request *fwreq) { -@@ -4222,6 +4229,22 @@ static void brcmf_sdio_firmware_callback(struct device *dev, int err, +@@ -4211,6 +4218,22 @@ static void brcmf_sdio_firmware_callback brcmf_dbg(TRACE, "Enter: dev=%s, err=%d\n", dev_name(dev), err); @@ -159,7 +153,7 @@ index 89de65d32ed5..88c08fee58f6 100644 if (err) goto fail; -@@ -4430,7 +4453,7 @@ brcmf_sdio_prepare_fw_request(struct brcmf_sdio *bus) +@@ -4419,7 +4442,7 @@ brcmf_sdio_prepare_fw_request(struct brc fwreq = brcmf_fw_alloc_request(bus->ci->chip, bus->ci->chiprev, brcmf_sdio_fwnames, @@ -168,7 +162,7 @@ index 89de65d32ed5..88c08fee58f6 100644 fwnames, ARRAY_SIZE(fwnames)); if (!fwreq) return NULL; -@@ -4448,6 +4471,9 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) +@@ -4437,6 +4460,9 @@ struct brcmf_sdio *brcmf_sdio_probe(stru struct brcmf_sdio *bus; struct workqueue_struct *wq; struct brcmf_fw_request *fwreq; @@ -178,7 +172,7 @@ index 89de65d32ed5..88c08fee58f6 100644 brcmf_dbg(TRACE, "Enter\n"); -@@ -4530,6 +4556,21 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) +@@ -4519,6 +4545,21 @@ struct brcmf_sdio *brcmf_sdio_probe(stru brcmf_dbg(INFO, "completed!!\n"); @@ -200,6 +194,3 @@ index 89de65d32ed5..88c08fee58f6 100644 fwreq = brcmf_sdio_prepare_fw_request(bus); if (!fwreq) { ret = -ENOMEM; --- -2.30.2 - diff --git a/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch b/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch index 19a60d7956..089ff2117b 100644 --- a/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch +++ b/package/kernel/mac80211/patches/build/060-no_local_ssb_bcma.patch @@ -1,6 +1,6 @@ --- a/local-symbols +++ b/local-symbols -@@ -428,43 +428,6 @@ USB_VL600= +@@ -451,43 +451,6 @@ USB_VL600= USB_NET_CH9200= USB_NET_AQC111= USB_RTL8153_ECM= @@ -192,7 +192,7 @@ select BRCMUTIL --- a/Kconfig.local +++ b/Kconfig.local -@@ -1288,117 +1288,6 @@ config BACKPORTED_USB_NET_AQC111 +@@ -1357,117 +1357,6 @@ config BACKPORTED_USB_NET_AQC111 config BACKPORTED_USB_RTL8153_ECM tristate default USB_RTL8153_ECM @@ -312,7 +312,7 @@ default USB_ACM --- a/Kconfig.sources +++ b/Kconfig.sources -@@ -9,9 +9,6 @@ source "$BACKPORT_DIR/drivers/bus/mhi/Kc +@@ -10,9 +10,6 @@ source "$BACKPORT_DIR/drivers/soc/qcom/K source "$BACKPORT_DIR/drivers/net/wireless/Kconfig" source "$BACKPORT_DIR/drivers/net/usb/Kconfig" @@ -324,8 +324,8 @@ source "$BACKPORT_DIR/drivers/staging/Kconfig" --- a/Makefile.kernel +++ b/Makefile.kernel -@@ -42,8 +42,6 @@ obj-$(CPTCFG_MAC80211) += net/mac80211/ - obj-$(CPTCFG_QRTR) += net/qrtr/ +@@ -43,8 +43,6 @@ obj-$(CPTCFG_QRTR) += net/qrtr/ + obj-$(CPTCFG_QCOM_QMI_HELPERS) += drivers/soc/qcom/ obj-$(CPTCFG_MHI_BUS) += drivers/bus/mhi/ obj-$(CPTCFG_WLAN) += drivers/net/wireless/ -obj-$(CPTCFG_SSB) += drivers/ssb/ diff --git a/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch b/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch index 0b9f552f95..4115eeccbb 100644 --- a/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch +++ b/package/kernel/mac80211/patches/mwl/900-mwifiex-increase-the-global-limit-up-to-4-SSID.patch @@ -19,28 +19,23 @@ the card-specific structure. drivers/net/wireless/marvell/mwifiex/decl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -diff --git a/drivers/net/wireless/marvell/mwifiex/decl.h b/drivers/net/wireless/marvell/mwifiex/decl.h -index cdc9972..f9bcbf5 100644 --- a/drivers/net/wireless/marvell/mwifiex/decl.h +++ b/drivers/net/wireless/marvell/mwifiex/decl.h @@ -30,7 +30,7 @@ #include - + #define MWIFIEX_BSS_COEX_COUNT 2 -#define MWIFIEX_MAX_BSS_NUM (3) +#define MWIFIEX_MAX_BSS_NUM (4) - + #define MWIFIEX_DMA_ALIGN_SZ 64 #define MWIFIEX_RX_HEADROOM 64 @@ -112,7 +112,7 @@ #define MWIFIEX_RATE_INDEX_OFDM0 4 - + #define MWIFIEX_MAX_STA_NUM 3 -#define MWIFIEX_MAX_UAP_NUM 3 +#define MWIFIEX_MAX_UAP_NUM 4 #define MWIFIEX_MAX_P2P_NUM 3 - + #define MWIFIEX_A_BAND_START_FREQ 5000 --- -2.30.2 - diff --git a/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch b/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch index 17e7df2722..8fa3924e60 100644 --- a/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch +++ b/package/kernel/mac80211/patches/mwl/950-mwifiex-Print-stringified-name-of-command-in-error-l.patch @@ -17,8 +17,6 @@ Signed-off-by: Pali Rohár .../net/wireless/marvell/mwifiex/uap_cmd.c | 3 +- 4 files changed, 95 insertions(+), 11 deletions(-) -diff --git a/drivers/net/wireless/marvell/mwifiex/cmdevt.c b/drivers/net/wireless/marvell/mwifiex/cmdevt.c -index 5a2788955f1c..1b05002330ff 100644 --- a/drivers/net/wireless/marvell/mwifiex/cmdevt.c +++ b/drivers/net/wireless/marvell/mwifiex/cmdevt.c @@ -28,6 +28,85 @@ @@ -107,7 +105,7 @@ index 5a2788955f1c..1b05002330ff 100644 /* * This function initializes a command node. * -@@ -205,8 +284,8 @@ static int mwifiex_dnld_cmd_to_fw(struct mwifiex_private *priv, +@@ -205,8 +284,8 @@ static int mwifiex_dnld_cmd_to_fw(struct cmd_code != HostCmd_CMD_FUNC_SHUTDOWN && cmd_code != HostCmd_CMD_FUNC_INIT) { mwifiex_dbg(adapter, ERROR, @@ -118,7 +116,7 @@ index 5a2788955f1c..1b05002330ff 100644 mwifiex_recycle_cmd_node(adapter, cmd_node); queue_work(adapter->workqueue, &adapter->main_work); return -1; -@@ -660,8 +739,8 @@ int mwifiex_send_cmd(struct mwifiex_private *priv, u16 cmd_no, +@@ -660,8 +739,8 @@ int mwifiex_send_cmd(struct mwifiex_priv /* Return error, since the command preparation failed */ if (ret) { mwifiex_dbg(adapter, ERROR, @@ -129,7 +127,7 @@ index 5a2788955f1c..1b05002330ff 100644 mwifiex_insert_cmd_to_free_q(adapter, cmd_node); return -1; } -@@ -900,8 +979,9 @@ int mwifiex_process_cmdresp(struct mwifiex_adapter *adapter) +@@ -900,8 +979,9 @@ int mwifiex_process_cmdresp(struct mwifi if (adapter->hw_status == MWIFIEX_HW_STATUS_INITIALIZING) { if (ret) { mwifiex_dbg(adapter, ERROR, @@ -139,9 +137,9 @@ index 5a2788955f1c..1b05002330ff 100644 + "initialization\n", __func__, + mwifiex_cmd_to_str(cmdresp_no), cmdresp_no); mwifiex_init_fw_complete(adapter); - //if (adapter->if_ops.card_reset) - // adapter->if_ops.card_reset(adapter); -@@ -1266,8 +1346,8 @@ mwifiex_process_sleep_confirm_resp(struct mwifiex_adapter *adapter, + return -1; + } else if (adapter->last_init_cmd == cmdresp_no) +@@ -1264,8 +1344,8 @@ mwifiex_process_sleep_confirm_resp(struc if (command != HostCmd_CMD_802_11_PS_MODE_ENH) { mwifiex_dbg(adapter, ERROR, @@ -152,11 +150,9 @@ index 5a2788955f1c..1b05002330ff 100644 return; } -diff --git a/drivers/net/wireless/marvell/mwifiex/main.h b/drivers/net/wireless/marvell/mwifiex/main.h -index 5923c5c14c8d..0d30f61a9d3c 100644 --- a/drivers/net/wireless/marvell/mwifiex/main.h +++ b/drivers/net/wireless/marvell/mwifiex/main.h -@@ -1106,6 +1106,8 @@ void mwifiex_cancel_all_pending_cmd(struct mwifiex_adapter *adapter); +@@ -1106,6 +1106,8 @@ void mwifiex_cancel_all_pending_cmd(stru void mwifiex_cancel_pending_scan_cmd(struct mwifiex_adapter *adapter); void mwifiex_cancel_scan(struct mwifiex_adapter *adapter); @@ -165,11 +161,9 @@ index 5923c5c14c8d..0d30f61a9d3c 100644 void mwifiex_recycle_cmd_node(struct mwifiex_adapter *adapter, struct cmd_ctrl_node *cmd_node); -diff --git a/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c b/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c -index 6b5d35d9e69f..ae6554f7b583 100644 --- a/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c +++ b/drivers/net/wireless/marvell/mwifiex/sta_cmdresp.c -@@ -48,8 +48,9 @@ mwifiex_process_cmdresp_error(struct mwifiex_private *priv, +@@ -48,8 +48,9 @@ mwifiex_process_cmdresp_error(struct mwi struct host_cmd_ds_802_11_ps_mode_enh *pm; mwifiex_dbg(adapter, ERROR, @@ -181,11 +175,9 @@ index 6b5d35d9e69f..ae6554f7b583 100644 if (adapter->curr_cmd->wait_q_enabled) adapter->cmd_wait_q.status = -1; -diff --git a/drivers/net/wireless/marvell/mwifiex/uap_cmd.c b/drivers/net/wireless/marvell/mwifiex/uap_cmd.c -index 18e89777b784..29b8af55f522 100644 --- a/drivers/net/wireless/marvell/mwifiex/uap_cmd.c +++ b/drivers/net/wireless/marvell/mwifiex/uap_cmd.c -@@ -806,7 +806,8 @@ int mwifiex_uap_prepare_cmd(struct mwifiex_private *priv, u16 cmd_no, +@@ -806,7 +806,8 @@ int mwifiex_uap_prepare_cmd(struct mwifi break; default: mwifiex_dbg(priv->adapter, ERROR, @@ -195,6 +187,3 @@ index 18e89777b784..29b8af55f522 100644 return -1; } --- -2.20.1 - diff --git a/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch b/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch index afe8cea205..bd33b2efbd 100644 --- a/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch +++ b/package/kernel/mac80211/patches/rt2x00/602-rt2x00-introduce-rt2x00eeprom.patch @@ -1,6 +1,6 @@ --- a/local-symbols +++ b/local-symbols -@@ -322,6 +322,7 @@ RT2X00_LIB_FIRMWARE= +@@ -345,6 +345,7 @@ RT2X00_LIB_FIRMWARE= RT2X00_LIB_CRYPTO= RT2X00_LIB_LEDS= RT2X00_LIB_DEBUGFS= diff --git a/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch b/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch index 777c93cb90..1ceb2be25c 100644 --- a/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch +++ b/package/kernel/mac80211/patches/subsys/303-mac80211-set-up-the-fwd_skb-dev-for-mesh-forwarding.patch @@ -52,7 +52,7 @@ Signed-off-by: Xing Song --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c -@@ -2949,6 +2949,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80 +@@ -2948,6 +2948,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80 if (!fwd_skb) goto out; diff --git a/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch b/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch index c534d1570a..fba0912e80 100644 --- a/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch +++ b/package/kernel/mac80211/patches/subsys/307-mac80211_hwsim-make-6-GHz-channels-usable.patch @@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c -@@ -3001,15 +3001,19 @@ static void mac80211_hwsim_he_capab(stru +@@ -3004,15 +3004,19 @@ static void mac80211_hwsim_he_capab(stru { u16 n_iftype_data; @@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau return; } -@@ -3299,6 +3303,12 @@ static int mac80211_hwsim_new_radio(stru +@@ -3302,6 +3306,12 @@ static int mac80211_hwsim_new_radio(stru sband->vht_cap.vht_mcs.tx_mcs_map = sband->vht_cap.vht_mcs.rx_mcs_map; break; @@ -47,7 +47,7 @@ Signed-off-by: Felix Fietkau case NL80211_BAND_S1GHZ: memcpy(&sband->s1g_cap, &hwsim_s1g_cap, sizeof(sband->s1g_cap)); -@@ -3309,6 +3319,13 @@ static int mac80211_hwsim_new_radio(stru +@@ -3312,6 +3322,13 @@ static int mac80211_hwsim_new_radio(stru continue; } @@ -61,7 +61,7 @@ Signed-off-by: Felix Fietkau sband->ht_cap.ht_supported = true; sband->ht_cap.cap = IEEE80211_HT_CAP_SUP_WIDTH_20_40 | IEEE80211_HT_CAP_GRN_FLD | -@@ -3322,10 +3339,6 @@ static int mac80211_hwsim_new_radio(stru +@@ -3325,10 +3342,6 @@ static int mac80211_hwsim_new_radio(stru sband->ht_cap.mcs.rx_mask[0] = 0xff; sband->ht_cap.mcs.rx_mask[1] = 0xff; sband->ht_cap.mcs.tx_params = IEEE80211_HT_MCS_TX_DEFINED; diff --git a/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch b/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch index 272d84f35e..4b9d874cfe 100644 --- a/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch +++ b/package/kernel/mac80211/patches/subsys/308-mac80211-add-support-for-.ndo_fill_forward_path.patch @@ -69,7 +69,7 @@ Signed-off-by: Johannes Berg #endif /* __MAC80211_DRIVER_OPS */ --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -1485,7 +1485,7 @@ struct ieee80211_local { +@@ -1490,7 +1490,7 @@ struct ieee80211_local { }; static inline struct ieee80211_sub_if_data * diff --git a/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch b/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch index 16bcbc2ef9..3be43b8782 100644 --- a/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch +++ b/package/kernel/mac80211/patches/subsys/310-mac80211-minstrel_ht-reduce-fluctuations-in-rate-pro.patch @@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -700,7 +700,8 @@ minstrel_ht_calc_rate_stats(struct minst +@@ -703,7 +703,8 @@ minstrel_ht_calc_rate_stats(struct minst unsigned int cur_prob; if (unlikely(mrs->attempts > 0)) { diff --git a/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch b/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch index a6817bd4a6..13bed48ec6 100644 --- a/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch +++ b/package/kernel/mac80211/patches/subsys/311-mac80211-minstrel_ht-rework-rate-downgrade-code-and-.patch @@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -511,6 +511,14 @@ minstrel_ht_set_best_prob_rate(struct mi +@@ -514,6 +514,14 @@ minstrel_ht_set_best_prob_rate(struct mi int cur_tp_avg, cur_group, cur_idx; int max_gpr_group, max_gpr_idx; int max_gpr_tp_avg, max_gpr_prob; @@ -33,7 +33,7 @@ Signed-off-by: Felix Fietkau cur_group = MI_RATE_GROUP(index); cur_idx = MI_RATE_IDX(index); -@@ -532,11 +540,6 @@ minstrel_ht_set_best_prob_rate(struct mi +@@ -535,11 +543,6 @@ minstrel_ht_set_best_prob_rate(struct mi !minstrel_ht_is_legacy_group(max_tp_group)) return; @@ -45,7 +45,7 @@ Signed-off-by: Felix Fietkau max_gpr_group = MI_RATE_GROUP(mg->max_group_prob_rate); max_gpr_idx = MI_RATE_IDX(mg->max_group_prob_rate); max_gpr_prob = mi->groups[max_gpr_group].rates[max_gpr_idx].prob_avg; -@@ -594,40 +597,6 @@ minstrel_ht_assign_best_tp_rates(struct +@@ -597,40 +600,6 @@ minstrel_ht_assign_best_tp_rates(struct } @@ -86,7 +86,7 @@ Signed-off-by: Felix Fietkau static u16 __minstrel_ht_get_sample_rate(struct minstrel_ht_sta *mi, enum minstrel_sample_type type) -@@ -1107,8 +1076,6 @@ minstrel_ht_update_stats(struct minstrel +@@ -1110,8 +1079,6 @@ minstrel_ht_update_stats(struct minstrel mi->max_prob_rate = tmp_max_prob_rate; @@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau minstrel_ht_refill_sample_rates(mi); #ifdef CPTCFG_MAC80211_DEBUGFS -@@ -1153,7 +1120,7 @@ minstrel_ht_txstat_valid(struct minstrel +@@ -1156,7 +1123,7 @@ minstrel_ht_txstat_valid(struct minstrel } static void @@ -104,7 +104,7 @@ Signed-off-by: Felix Fietkau { int group, orig_group; -@@ -1168,11 +1135,7 @@ minstrel_downgrade_rate(struct minstrel_ +@@ -1171,11 +1138,7 @@ minstrel_downgrade_rate(struct minstrel_ minstrel_mcs_groups[orig_group].streams) continue; @@ -117,7 +117,7 @@ Signed-off-by: Felix Fietkau } } -@@ -1183,7 +1146,7 @@ minstrel_ht_tx_status(void *priv, struct +@@ -1186,7 +1149,7 @@ minstrel_ht_tx_status(void *priv, struct struct ieee80211_tx_info *info = st->info; struct minstrel_ht_sta *mi = priv_sta; struct ieee80211_tx_rate *ar = info->status.rates; @@ -126,7 +126,7 @@ Signed-off-by: Felix Fietkau struct minstrel_priv *mp = priv; u32 update_interval = mp->update_interval; bool last, update = false; -@@ -1233,18 +1196,13 @@ minstrel_ht_tx_status(void *priv, struct +@@ -1236,18 +1199,13 @@ minstrel_ht_tx_status(void *priv, struct /* * check for sudden death of spatial multiplexing, * downgrade to a lower number of streams if necessary. diff --git a/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch b/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch index 4fc8b592c2..429886d701 100644 --- a/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch +++ b/package/kernel/mac80211/patches/subsys/313-nl80211-MBSSID-and-EMA-support-in-AP-mode.patch @@ -238,7 +238,7 @@ Signed-off-by: Johannes Berg static const struct nla_policy nl80211_policy[NUM_NL80211_ATTR] = { [0] = { .strict_start_type = NL80211_ATTR_HE_OBSS_PD }, [NL80211_ATTR_WIPHY] = { .type = NLA_U32 }, -@@ -783,6 +793,9 @@ static const struct nla_policy nl80211_p +@@ -788,6 +798,9 @@ static const struct nla_policy nl80211_p [NL80211_ATTR_COLOR_CHANGE_COUNT] = { .type = NLA_U8 }, [NL80211_ATTR_COLOR_CHANGE_COLOR] = { .type = NLA_U8 }, [NL80211_ATTR_COLOR_CHANGE_ELEMS] = NLA_POLICY_NESTED(nl80211_policy), @@ -248,7 +248,7 @@ Signed-off-by: Johannes Berg }; /* policy for the key attributes */ -@@ -2231,6 +2244,35 @@ fail: +@@ -2236,6 +2249,35 @@ fail: return -ENOBUFS; } @@ -284,7 +284,7 @@ Signed-off-by: Johannes Berg struct nl80211_dump_wiphy_state { s64 filter_wiphy; long start; -@@ -2816,6 +2858,9 @@ static int nl80211_send_wiphy(struct cfg +@@ -2821,6 +2863,9 @@ static int nl80211_send_wiphy(struct cfg if (nl80211_put_sar_specs(rdev, msg)) goto nla_put_failure; @@ -294,7 +294,7 @@ Signed-off-by: Johannes Berg /* done */ state->split_start = 0; break; -@@ -5005,6 +5050,96 @@ static int validate_beacon_tx_rate(struc +@@ -5020,6 +5065,96 @@ static int validate_beacon_tx_rate(struc return 0; } @@ -391,7 +391,7 @@ Signed-off-by: Johannes Berg static int nl80211_parse_beacon(struct cfg80211_registered_device *rdev, struct nlattr *attrs[], struct cfg80211_beacon_data *bcn) -@@ -5085,6 +5220,17 @@ static int nl80211_parse_beacon(struct c +@@ -5100,6 +5235,17 @@ static int nl80211_parse_beacon(struct c bcn->ftm_responder = -1; } @@ -409,7 +409,7 @@ Signed-off-by: Johannes Berg return 0; } -@@ -5541,6 +5687,17 @@ static int nl80211_start_ap(struct sk_bu +@@ -5556,6 +5702,17 @@ static int nl80211_start_ap(struct sk_bu goto out; } @@ -427,7 +427,7 @@ Signed-off-by: Johannes Berg nl80211_calculate_ap_params(¶ms); if (info->attrs[NL80211_ATTR_EXTERNAL_AUTH_SUPPORT]) -@@ -5562,6 +5719,11 @@ static int nl80211_start_ap(struct sk_bu +@@ -5577,6 +5734,11 @@ static int nl80211_start_ap(struct sk_bu out: kfree(params.acl); @@ -439,7 +439,7 @@ Signed-off-by: Johannes Berg return err; } -@@ -5586,12 +5748,14 @@ static int nl80211_set_beacon(struct sk_ +@@ -5601,12 +5763,14 @@ static int nl80211_set_beacon(struct sk_ err = nl80211_parse_beacon(rdev, info->attrs, ¶ms); if (err) @@ -455,7 +455,7 @@ Signed-off-by: Johannes Berg return err; } -@@ -9268,12 +9432,14 @@ static int nl80211_channel_switch(struct +@@ -9283,12 +9447,14 @@ static int nl80211_channel_switch(struct err = nl80211_parse_beacon(rdev, info->attrs, ¶ms.beacon_after); if (err) @@ -473,7 +473,7 @@ Signed-off-by: Johannes Berg err = nla_parse_nested_deprecated(csa_attrs, NL80211_ATTR_MAX, info->attrs[NL80211_ATTR_CSA_IES], -@@ -9392,6 +9558,8 @@ skip_beacons: +@@ -9407,6 +9573,8 @@ skip_beacons: wdev_unlock(wdev); free: @@ -482,7 +482,7 @@ Signed-off-by: Johannes Berg kfree(csa_attrs); return err; } -@@ -14939,6 +15107,8 @@ static int nl80211_color_change(struct s +@@ -14959,6 +15127,8 @@ static int nl80211_color_change(struct s wdev_unlock(wdev); out: diff --git a/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch b/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch index 90c56b4e43..2038ee69db 100644 --- a/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch +++ b/package/kernel/mac80211/patches/subsys/314-cfg80211-implement-APIs-for-dedicated-radar-detectio.patch @@ -286,7 +286,7 @@ Signed-off-by: Johannes Berg +} --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -796,6 +796,7 @@ static const struct nla_policy nl80211_p +@@ -801,6 +801,7 @@ static const struct nla_policy nl80211_p [NL80211_ATTR_MBSSID_CONFIG] = NLA_POLICY_NESTED(nl80211_mbssid_config_policy), [NL80211_ATTR_MBSSID_ELEMS] = { .type = NLA_NESTED }, @@ -294,7 +294,7 @@ Signed-off-by: Johannes Berg }; /* policy for the key attributes */ -@@ -9272,12 +9273,6 @@ static int nl80211_start_radar_detection +@@ -9287,12 +9288,6 @@ static int nl80211_start_radar_detection if (err) return err; @@ -307,7 +307,7 @@ Signed-off-by: Johannes Berg err = cfg80211_chandef_dfs_required(wiphy, &chandef, wdev->iftype); if (err < 0) return err; -@@ -9288,6 +9283,16 @@ static int nl80211_start_radar_detection +@@ -9303,6 +9298,16 @@ static int nl80211_start_radar_detection if (!cfg80211_chandef_dfs_usable(wiphy, &chandef)) return -EINVAL; diff --git a/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch b/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch index 567743d84d..a1b6e3c80d 100644 --- a/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch +++ b/package/kernel/mac80211/patches/subsys/318-cfg80211-allow-continuous-radar-monitoring-on-offcha.patch @@ -118,7 +118,7 @@ Signed-off-by: Johannes Berg NL80211_RADAR_CAC_ABORTED); --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -9263,42 +9263,60 @@ static int nl80211_start_radar_detection +@@ -9278,42 +9278,60 @@ static int nl80211_start_radar_detection struct cfg80211_chan_def chandef; enum nl80211_dfs_regions dfs_region; unsigned int cac_time_ms; @@ -198,7 +198,7 @@ Signed-off-by: Johannes Berg cac_time_ms = cfg80211_chandef_dfs_cac_time(&rdev->wiphy, &chandef); if (WARN_ON(!cac_time_ms)) -@@ -9311,6 +9329,9 @@ static int nl80211_start_radar_detection +@@ -9326,6 +9344,9 @@ static int nl80211_start_radar_detection wdev->cac_start_time = jiffies; wdev->cac_time_ms = cac_time_ms; } @@ -208,7 +208,7 @@ Signed-off-by: Johannes Berg return err; } -@@ -15941,7 +15962,8 @@ static const struct genl_small_ops nl802 +@@ -15961,7 +15982,8 @@ static const struct genl_small_ops nl802 .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP, .doit = nl80211_start_radar_detection, .flags = GENL_UNS_ADMIN_PERM, diff --git a/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch b/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch index c3a4c0db25..483b87cd88 100644 --- a/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch +++ b/package/kernel/mac80211/patches/subsys/320-cfg80211-rename-offchannel_chain-structs-to-backgrou.patch @@ -472,7 +472,7 @@ Signed-off-by: Johannes Berg } --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -796,7 +796,7 @@ static const struct nla_policy nl80211_p +@@ -801,7 +801,7 @@ static const struct nla_policy nl80211_p [NL80211_ATTR_MBSSID_CONFIG] = NLA_POLICY_NESTED(nl80211_mbssid_config_policy), [NL80211_ATTR_MBSSID_ELEMS] = { .type = NLA_NESTED }, @@ -481,7 +481,7 @@ Signed-off-by: Johannes Berg }; /* policy for the key attributes */ -@@ -9291,9 +9291,9 @@ static int nl80211_start_radar_detection +@@ -9306,9 +9306,9 @@ static int nl80211_start_radar_detection goto unlock; } diff --git a/package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch b/package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch deleted file mode 100644 index d7832acce5..0000000000 --- a/package/kernel/mac80211/patches/subsys/329-mac80211-minstrel_ht-fix-where-rate-stats-are-stored.patch +++ /dev/null @@ -1,61 +0,0 @@ -From: Peter Seiderer -Date: Mon, 4 Apr 2022 18:54:14 +0200 -Subject: [PATCH] mac80211: minstrel_ht: fix where rate stats are stored (fixes - debugfs output) - -Using an ath9k card the debugfs output of minstrel_ht looks like the following -(note the zero values for the first four rates sum-of success/attempts): - - best ____________rate__________ ____statistics___ _____last____ ______sum-of________ -mode guard # rate [name idx airtime max_tp] [avg(tp) avg(prob)] [retry|suc|att] [#success | #attempts] -OFDM 1 DP 6.0M 272 1640 5.2 3.1 53.8 3 0 0 0 0 -OFDM 1 C 9.0M 273 1104 7.7 4.6 53.8 4 0 0 0 0 -OFDM 1 B 12.0M 274 836 10.0 6.0 53.8 4 0 0 0 0 -OFDM 1 A S 18.0M 275 568 14.3 8.5 53.8 5 0 0 0 0 -OFDM 1 S 24.0M 276 436 18.1 0.0 0.0 5 0 1 80 1778 -OFDM 1 36.0M 277 300 24.9 0.0 0.0 0 0 1 0 107 -OFDM 1 S 48.0M 278 236 30.4 0.0 0.0 0 0 0 0 75 -OFDM 1 54.0M 279 212 33.0 0.0 0.0 0 0 0 0 72 - -Total packet count:: ideal 16582 lookaround 885 -Average # of aggregated frames per A-MPDU: 1.0 - -Debugging showed that the rate statistics for the first four rates where -stored in the MINSTREL_CCK_GROUP instead of the MINSTREL_OFDM_GROUP because -in minstrel_ht_get_stats() the supported check was not honoured as done in -various other places, e.g net/mac80211/rc80211_minstrel_ht_debugfs.c: - - 74 if (!(mi->supported[i] & BIT(j))) - 75 continue; - -With the patch applied the output looks good: - - best ____________rate__________ ____statistics___ _____last____ ______sum-of________ -mode guard # rate [name idx airtime max_tp] [avg(tp) avg(prob)] [retry|suc|att] [#success | #attempts] -OFDM 1 D 6.0M 272 1640 5.2 5.2 100.0 3 0 0 1 1 -OFDM 1 C 9.0M 273 1104 7.7 7.7 100.0 4 0 0 38 38 -OFDM 1 B 12.0M 274 836 10.0 9.9 89.5 4 2 2 372 395 -OFDM 1 A P 18.0M 275 568 14.3 14.3 97.2 5 52 53 6956 7181 -OFDM 1 S 24.0M 276 436 18.1 0.0 0.0 0 0 1 6 163 -OFDM 1 36.0M 277 300 24.9 0.0 0.0 0 0 1 0 35 -OFDM 1 S 48.0M 278 236 30.4 0.0 0.0 0 0 0 0 38 -OFDM 1 S 54.0M 279 212 33.0 0.0 0.0 0 0 0 0 38 - -Total packet count:: ideal 7097 lookaround 287 -Average # of aggregated frames per A-MPDU: 1.0 - -Signed-off-by: Peter Seiderer ---- - ---- a/net/mac80211/rc80211_minstrel_ht.c -+++ b/net/mac80211/rc80211_minstrel_ht.c -@@ -364,6 +364,9 @@ minstrel_ht_get_stats(struct minstrel_pr - - group = MINSTREL_CCK_GROUP; - for (idx = 0; idx < ARRAY_SIZE(mp->cck_rates); idx++) { -+ if (!(mi->supported[group] & BIT(idx))) -+ continue; -+ - if (rate->idx != mp->cck_rates[idx]) - continue; - diff --git a/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch b/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch index 1a66aa8c00..0ca53860a5 100644 --- a/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch +++ b/package/kernel/mac80211/patches/subsys/330-mac80211-switch-airtime-fairness-back-to-deficit-rou.patch @@ -359,7 +359,7 @@ Signed-off-by: Felix Fietkau struct work_struct csa_finalize_work; bool csa_block_tx; /* write-protected by sdata_lock and local->mtx */ struct cfg80211_chan_def csa_chandef; -@@ -1180,44 +1182,6 @@ enum mac80211_scan_state { +@@ -1185,44 +1187,6 @@ enum mac80211_scan_state { SCAN_ABORT, }; @@ -404,7 +404,7 @@ Signed-off-by: Felix Fietkau DECLARE_STATIC_KEY_FALSE(aql_disable); struct ieee80211_local { -@@ -1231,8 +1195,13 @@ struct ieee80211_local { +@@ -1236,8 +1200,13 @@ struct ieee80211_local { struct codel_params cparams; /* protects active_txqs and txqi->schedule_order */ @@ -419,7 +419,7 @@ Signed-off-by: Felix Fietkau u32 aql_threshold; atomic_t aql_total_pending_airtime; -@@ -1649,125 +1618,6 @@ static inline bool txq_has_queue(struct +@@ -1654,125 +1623,6 @@ static inline bool txq_has_queue(struct return !(skb_queue_empty(&txqi->frags) && !txqi->tin.backlog_packets); } @@ -545,7 +545,7 @@ Signed-off-by: Felix Fietkau static inline int ieee80211_bssid_match(const u8 *raddr, const u8 *addr) { return ether_addr_equal(raddr, addr) || -@@ -2013,14 +1863,6 @@ int ieee80211_tx_control_port(struct wip +@@ -2018,14 +1868,6 @@ int ieee80211_tx_control_port(struct wip u64 *cookie); int ieee80211_probe_mesh_link(struct wiphy *wiphy, struct net_device *dev, const u8 *buf, size_t len); @@ -594,7 +594,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c -@@ -1584,8 +1584,12 @@ static void sta_ps_start(struct sta_info +@@ -1583,8 +1583,12 @@ static void sta_ps_start(struct sta_info for (tid = 0; tid < IEEE80211_NUM_TIDS; tid++) { struct ieee80211_txq *txq = sta->sta.txq[tid]; diff --git a/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch b/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch index 89718a8273..42e1671ed6 100644 --- a/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch +++ b/package/kernel/mac80211/patches/subsys/334-mac80211-add-a-per-PHY-AQL-limit-to-improve-fairness.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -1211,6 +1211,7 @@ struct ieee80211_local { +@@ -1216,6 +1216,7 @@ struct ieee80211_local { u32 aql_txq_limit_high[IEEE80211_NUM_ACS]; u32 aql_threshold; atomic_t aql_total_pending_airtime; diff --git a/package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch b/package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch deleted file mode 100644 index 9547db03d1..0000000000 --- a/package/kernel/mac80211/patches/subsys/338-mac80211-fix-queue-selection-for-mesh-OCB-interfaces.patch +++ /dev/null @@ -1,28 +0,0 @@ -From: Felix Fietkau -Date: Sat, 2 Jul 2022 16:41:32 +0200 -Subject: [PATCH] mac80211: fix queue selection for mesh/OCB interfaces - -When using iTXQ, the code assumes that there is only one vif queue for -broadcast packets, using the BE queue. Allowing non-BE queue marking -violates that assumption and txq->ac == skb_queue_mapping is no longer -guaranteed. This can cause issues with queue handling in the driver and -also causes issues with the recent ATF change, resulting in an AQL -underflow warning. - -Cc: stable@vger.kernel.org -Signed-off-by: Felix Fietkau ---- - ---- a/net/mac80211/wme.c -+++ b/net/mac80211/wme.c -@@ -147,8 +147,8 @@ u16 __ieee80211_select_queue(struct ieee - bool qos; - - /* all mesh/ocb stations are required to support WME */ -- if (sdata->vif.type == NL80211_IFTYPE_MESH_POINT || -- sdata->vif.type == NL80211_IFTYPE_OCB) -+ if (sta && (sdata->vif.type == NL80211_IFTYPE_MESH_POINT || -+ sdata->vif.type == NL80211_IFTYPE_OCB)) - qos = true; - else if (sta) - qos = sta->sta.wme; diff --git a/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch b/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch index d2a43304bd..1e3486accd 100644 --- a/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch +++ b/package/kernel/mac80211/patches/subsys/350-bss-color-collision.patch @@ -56,7 +56,7 @@ Signed-off-by: Johannes Berg --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c -@@ -3181,6 +3181,49 @@ static void ieee80211_process_sa_query_r +@@ -3180,6 +3180,49 @@ static void ieee80211_process_sa_query_r ieee80211_tx_skb(sdata, skb); } @@ -106,7 +106,7 @@ Signed-off-by: Johannes Berg static ieee80211_rx_result debug_noinline ieee80211_rx_h_mgmt_check(struct ieee80211_rx_data *rx) { -@@ -3206,6 +3249,9 @@ ieee80211_rx_h_mgmt_check(struct ieee802 +@@ -3205,6 +3248,9 @@ ieee80211_rx_h_mgmt_check(struct ieee802 !(rx->flags & IEEE80211_RX_BEACON_REPORTED)) { int sig = 0; diff --git a/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch b/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch index 171af5ee56..50c24a7746 100644 --- a/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch +++ b/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch @@ -87,7 +87,7 @@ CFG80211_TESTMODE_DUMP(ieee80211_testmode_dump) --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h -@@ -1441,6 +1441,7 @@ struct ieee80211_local { +@@ -1448,6 +1448,7 @@ struct ieee80211_local { int dynamic_ps_forced_timeout; int user_power_level; /* in dBm, for all interfaces */ @@ -129,7 +129,7 @@ local->hw.max_mtu = IEEE80211_MAX_DATA_LEN; --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c -@@ -797,6 +797,7 @@ static const struct nla_policy nl80211_p +@@ -802,6 +802,7 @@ static const struct nla_policy nl80211_p NLA_POLICY_NESTED(nl80211_mbssid_config_policy), [NL80211_ATTR_MBSSID_ELEMS] = { .type = NLA_NESTED }, [NL80211_ATTR_RADAR_BACKGROUND] = { .type = NLA_FLAG }, @@ -137,7 +137,7 @@ }; /* policy for the key attributes */ -@@ -3377,6 +3378,22 @@ static int nl80211_set_wiphy(struct sk_b +@@ -3391,6 +3392,22 @@ static int nl80211_set_wiphy(struct sk_b if (result) goto out; } From b2e2deeb8dfa3c1a620cb5d1d0d54eccff85d2c0 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Wed, 20 Jul 2022 19:14:10 -0400 Subject: [PATCH 18/33] tools/libressl: ensure PIC-only object compilation Line up configure arguments for cleaner git diff and editing and grepping. LibreSSL must be built with PIC, and has the flags for it already in CFLAGS. Add the configure option native to LibreSSL to use only PIC in objects, which further enforces that each object in the library has the PIC flag to prevent a mixture of PIC / non-PIC objects within it. Ref: 96a940308 ("tools: libressl: always build as PIC") Signed-off-by: Michael Pratt --- tools/libressl/Makefile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tools/libressl/Makefile b/tools/libressl/Makefile index 236a7c2c30..aecc788972 100644 --- a/tools/libressl/Makefile +++ b/tools/libressl/Makefile @@ -24,9 +24,15 @@ HOST_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/host-build.mk HOSTCC := $(HOSTCC_NOCACHE) -HOST_CONFIGURE_ARGS += --enable-static --disable-shared --disable-tests + HOST_CFLAGS += $(HOST_FPIC) +HOST_CONFIGURE_ARGS += \ + --enable-static \ + --disable-shared \ + --with-pic \ + --disable-tests + ifeq ($(GNU_HOST_NAME),x86_64-linux-gnux32) HOST_CONFIGURE_ARGS += --disable-asm endif From 7012f2e18fb857d6c01211f8cc6217ac5b2933fe Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Wed, 20 Jul 2022 19:17:22 -0400 Subject: [PATCH 19/33] tools/libressl: disable assembly code for all hosts This SSL library is for hosts only and not shipped as a build product, therefore its performance quality (speed) is not critical. Assembly code is broken in LibreSSL for some x86_64 hosts (part of git history) and for some RISC host archs like armv7l, aarch64, powerpc, ppc64, etc... so let's just disable it for all hosts. For example, this fixes an instance on ARM hosts where the host Python 3 builds broken modules which link to LibreSSL, even with patches that enable LibreSSL support with the import error "unexpected reloc type 3". Ref: a395563f6 ("build: fix libressl build on x32 (amd64ilp32) host ") Suggested-by: Andre Heider Signed-off-by: Michael Pratt --- tools/libressl/Makefile | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tools/libressl/Makefile b/tools/libressl/Makefile index aecc788972..bf2bd4e999 100644 --- a/tools/libressl/Makefile +++ b/tools/libressl/Makefile @@ -30,11 +30,8 @@ HOST_CFLAGS += $(HOST_FPIC) HOST_CONFIGURE_ARGS += \ --enable-static \ --disable-shared \ + --disable-asm \ --with-pic \ --disable-tests -ifeq ($(GNU_HOST_NAME),x86_64-linux-gnux32) -HOST_CONFIGURE_ARGS += --disable-asm -endif - $(eval $(call HostBuild)) From a2122b518e0e7e88e29753f9343e8d04e00c5ac7 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Mon, 11 Jul 2022 19:49:21 +0200 Subject: [PATCH 20/33] uboot-mvebu: update to v2022.07 Remove one merged patch. Signed-off-by: Andre Heider Tested-by: Josef Schlehofer [Turris Omnia] --- package/boot/uboot-mvebu/Makefile | 4 +-- ...fog_defconfig-enable-setexpr-command.patch | 31 ------------------- 2 files changed, 2 insertions(+), 33 deletions(-) delete mode 100644 package/boot/uboot-mvebu/patches/103-arm-mvebu-clearfog_defconfig-enable-setexpr-command.patch diff --git a/package/boot/uboot-mvebu/Makefile b/package/boot/uboot-mvebu/Makefile index 25abcbeb4f..5bf5d59b02 100644 --- a/package/boot/uboot-mvebu/Makefile +++ b/package/boot/uboot-mvebu/Makefile @@ -8,10 +8,10 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk -PKG_VERSION:=2022.04 +PKG_VERSION:=2022.07 PKG_RELEASE:=$(AUTORELEASE) -PKG_HASH:=68e065413926778e276ec3abd28bb32fa82abaa4a6898d570c1f48fbdb08bcd0 +PKG_HASH:=92b08eb49c24da14c1adbf70a71ae8f37cc53eeb4230e859ad8b6733d13dcf5e include $(INCLUDE_DIR)/u-boot.mk include $(INCLUDE_DIR)/package.mk diff --git a/package/boot/uboot-mvebu/patches/103-arm-mvebu-clearfog_defconfig-enable-setexpr-command.patch b/package/boot/uboot-mvebu/patches/103-arm-mvebu-clearfog_defconfig-enable-setexpr-command.patch deleted file mode 100644 index dae43ea942..0000000000 --- a/package/boot/uboot-mvebu/patches/103-arm-mvebu-clearfog_defconfig-enable-setexpr-command.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 40a67a9403deafdac05564b7350af49a71e12373 Mon Sep 17 00:00:00 2001 -From: Josef Schlehofer -Date: Fri, 29 Apr 2022 17:34:53 +0200 -Subject: [PATCH] arm: mvebu: clearfog_defconfig: enable setexpr command - -This command is useful in U-boot scripts and it is being used by -OpenWrt bootscript for this board [1]. Otherwise shell scripting -commands are enabled by default in cmd/Kconfig. - -[1] https://github.com/openwrt/openwrt/blob/852126680e21edc71c0c66561ae5a6d7479dcc67/target/linux/mvebu/image/clearfog.bootscript#L7 - -[2] https://source.denx.de/u-boot/u-boot/-/blob/e95afa56753cebcd20a5114b6d121f281b789006/cmd/Kconfig#L1504 - -Fixes: 0299c90f396c5b2971a4bac596339f4b03661c27 ("arm: mvebu: Add -SolidRun ClearFog Armada 38x initial support") - -Signed-off-by: Josef Schlehofer ---- - configs/clearfog_defconfig | 1 - - 1 file changed, 1 deletion(-) - ---- a/configs/clearfog_defconfig -+++ b/configs/clearfog_defconfig -@@ -35,7 +35,6 @@ CONFIG_CMD_MMC=y - CONFIG_CMD_PCI=y - CONFIG_CMD_SPI=y - CONFIG_CMD_USB=y --# CONFIG_CMD_SETEXPR is not set - CONFIG_CMD_TFTPPUT=y - CONFIG_CMD_CACHE=y - CONFIG_CMD_TIME=y From a547cb97c350ed9751f8642f322c65919d935470 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Tue, 21 Jun 2022 14:08:55 +0200 Subject: [PATCH 21/33] arm-trusted-firmware-mvebu: bump a3700-utils to current version 1d97715 wtmi: Discard ELF symbols from firmware binary 2d2a21c wtmi: Allow access to the 43th OTP row e733e9f Fix boot from SATA build 4392eaf wtmi: Fix sending status code of cmd execution 14b3c61 Wtpdownloader: Remove out-of-dated x86-64 ELF binary WtpDownload_linux e345b95 Wtpdownloader: Fix setting tty c_cflag options 0c502d5 Wtpdownloader: Call HandlePendingMessages() after Port->WtpCmd is freed d91761a Wtpdownloader: Fix memory leaks bc11d18 Wtpdownloader: Check for number of read bytes prior touching read buffer 58db335 Wtpdownloader: Add missing check in SendContinuousForceConsoleMode() if byte was really read a4029c0 Wtpdownloader: Fix 32/64-bit host detection 3679034 Wtpdownloader: Print missing newline at the end of output Signed-off-by: Andre Heider --- package/boot/arm-trusted-firmware-mvebu/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile index 18b663768f..67fd536edf 100644 --- a/package/boot/arm-trusted-firmware-mvebu/Makefile +++ b/package/boot/arm-trusted-firmware-mvebu/Makefile @@ -124,15 +124,15 @@ TFA_MAKE_FLAGS += \ mrvl_uart A3700_UTILS_NAME:=a3700-utils -A3700_UTILS_RELEASE:=97f01f5f +A3700_UTILS_RELEASE:=1d977157 A3700_UTILS_SOURCE=$(A3700_UTILS_NAME)-$(A3700_UTILS_RELEASE).tar.bz2 define Download/a3700-utils FILE:=$(A3700_UTILS_SOURCE) PROTO:=git URL:=https://github.com/MarvellEmbeddedProcessors/A3700-utils-marvell.git - VERSION:=97f01f5feaf9ef6168e2a2096abaf56371939e58 - MIRROR_HASH:=1e391c4dafb7b3363a17282e229d056a95575c0f4fb2f71e21db8044668aea78 + VERSION:=1d977157e37151b272f88f2406a245c833fb2d8c + MIRROR_HASH:=322821ec8c04afea260254e927c59cd1ec0bd84e7ec6507cc1f155f18afb8eb9 SUBDIR:=$(A3700_UTILS_NAME) endef From b0bbd273df319fc9c76e570ca747fe11798cbeb2 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Tue, 21 Jun 2022 14:09:21 +0200 Subject: [PATCH 22/33] arm-trusted-firmware-mvebu: bump mv-ddr-marvell to current version 6ff988f mv_ddr: a3700: Use the right size for memset to not overflow 0f3e893 mv_ddr: a38x: fix BYTE_HOMOGENEOUS_SPLIT_OUT decision 4bae770 mv_ddr: a38x: fix SPLIT_OUT_MIX state decision cdefd8b mv_ddr: a38x: Fix Synchronous vs Asynchronous mode determination 8c42ad9 mv_ddr_4_training: cast uint64_t to unsigned long long Signed-off-by: Andre Heider --- package/boot/arm-trusted-firmware-mvebu/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile index 67fd536edf..52c31da5a1 100644 --- a/package/boot/arm-trusted-firmware-mvebu/Makefile +++ b/package/boot/arm-trusted-firmware-mvebu/Makefile @@ -150,15 +150,15 @@ define Download/cryptopp endef MV_DDR_NAME:=mv-ddr-marvell -MV_DDR_RELEASE:=efcad0e2 +MV_DDR_RELEASE:=d5acc10c MV_DDR_SOURCE:=$(MV_DDR_NAME)-$(MV_DDR_RELEASE).tar.bz2 define Download/mv-ddr-marvell FILE:=$(MV_DDR_SOURCE) PROTO:=git URL:=https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git - VERSION:=efcad0e2fae66a8b6f84a4dd2326f5add67569d5 - MIRROR_HASH:=99363f928ee1239fd42d651b495d163a60cdab00c24770a3c5e192efa7169d62 + VERSION:=d5acc10c287e40cc2feeb28710b92e45c93c702c + MIRROR_HASH:=c149ab737935b5fb822f48da8e2d7fba4388f48e645f9f6da857bee20f0333ea SUBDIR:=$(MV_DDR_NAME) endef From 0fbe36f945e0f754b5d70617d10c374b8538ae84 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Tue, 21 Jun 2022 14:09:40 +0200 Subject: [PATCH 23/33] arm-trusted-firmware-mvebu: bump mox-boot-builder to v2022.06.11 Remove the gold patch, since upstream doesn't hardcode it anymore. 406454d wtmi: Don't print another newline on standalone build ec97868 Bump mox-imager commit e4c4b9d wtmi: Call main from C code in startup 4c1d3ff wtmi: Move startup assmebly to C file as inline assmebly ee570ea wtmi: Indent Makefiles 18a7c0b wtmi: Use -f{function,data}-sections and --gc-sections 47ad100 wtmi: Use bfd linker instead of gold 5e34aa1 wtmi: Keep .data* and .bss* sections in linker scripts 7a4e3d2 wtmi: compressed, reload_helper: Discard .ARM* section d943726 wtmi: compressed: Keep main function in linker script d4f0fc6 wtmi: Keep main function in linker script 092148c wtmi: Fix -Warray-bounds warning 469e1b6 wtmi: Add do_div() implementation from Linux 90f46a0 Bump mox-imager commit 8bc6254 wtmi: Always use gold and link with --rosegment and --gc-sections flags 0b68a33 wtmi: Implement Marvell's OTP write commands 53d2a1c Bump mox-imager commit b4c34b4 Rename arm-trusted-firmware to trusted-firmware-a 5f79ace Sync mox-imager submodule URL a1cdd32 Sync TF-A submodule URL 58ef1af Sync u-boot submodule URL 90d28e1 wtmi: Check argument validity in Marvell's CMD_OTP_READ_1B command more 3a48cf1 Bump mox-imager commit 807a3e1 wtmi: Implement Marvell's OTP read commands 77b1232 wtmi: Enable OTP read/write mailbox commands 9724d41 wtmi: Add is_secure_boot() 03de0c1 Bump mox-imager commit 2133601 wtmi: Fix efuse_write_row_with_ecc_lock() for masked ECC rows 545a89f wtmi: Don't allow masked rows in efuse_write_row_with_ecc_lock() 94ebc98 wtmi: Don't program already programmed bits in efuse_raw_write() 2369750 wtmi: Remove inline specifier from is_row_masked() 53e2636 wtmi: Use ARRAY_SIZE() cc3e23b wtmi: Remove duplicate checks 89d24be Makefile: ignore clean target errors 9ee8b8d Bump mox-imager commit 489262b Bump mox-imager commit 79d2f32 deploy: Print board type in deploy output 78f15b0 deploy: Print board version without board type bits in deploy output e69fdfa deploy: Always determine 512 MiB RAM when deploying RIPE Atlas Probe d1f7d07 deploy: Write eMMC Boot Mode into OTP when deploying RIPE Atlas Probe d43a089 Bump mox-imager commit 49ac21d deploy: Use get_ram_size() from ddr.c 1e7705d Print DDR type and size when initializing 6f85e72 Move get_ram_size() to ddr.c edb1079 wtmi: Rename Atlas_RIPE to RIPE_Atlas e6a3aee wtmi: Inform about board type in CMD_BOARD_INFO 50aeae5 wtmi: Read only bits 53:48 of row eFuse 42 as board version b882398 wtmi: Add README.md (document OTP content) c068431 wtmi: Add ARRAY_SIZE() macro 4af2317 wtmi: Use 50 MHz as SPI clock rate 226fc5c wtmi: Add fast spi_write() function 518c914 wtmi: clock: Check for zero loops, not argument, in ndelay() / udelay() 89a21c5 wtmi: Fix comment 7b3e11a wtmi: Add clk command to print xtal and TBG clock rates 5127638 wtmi: Use the signed keyword when defining signed types fb31ed2 wtmi: Fix DDR training failure check 1b1b938 wtmi: clock: Check for zero in ndelay() / udelay() c0ee09a wtmi: Print correct DDR version in debug message edfb875 Bump mox-imager commit 85cb5e3 Bump mox-imager commit c4e9334 wtmi: debug: interpret char 127 as backspace a778fd9 Bump mox-imager commit Signed-off-by: Andre Heider --- package/boot/arm-trusted-firmware-mvebu/Makefile | 4 ++-- .../patches-mox-boot-builder/002-no-gold.patch | 13 ------------- 2 files changed, 2 insertions(+), 15 deletions(-) delete mode 100644 package/boot/arm-trusted-firmware-mvebu/patches-mox-boot-builder/002-no-gold.patch diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile index 52c31da5a1..fe9756a590 100644 --- a/package/boot/arm-trusted-firmware-mvebu/Makefile +++ b/package/boot/arm-trusted-firmware-mvebu/Makefile @@ -163,13 +163,13 @@ define Download/mv-ddr-marvell endef MOX_BB_NAME:=mox-boot-builder -MOX_BB_RELEASE:=v2021.09.07 +MOX_BB_RELEASE:=v2022.06.11 MOX_BB_SOURCE:=$(MOX_BB_NAME)-$(MOX_BB_RELEASE).tar.bz2 define Download/mox-boot-builder FILE:=$(MOX_BB_SOURCE) URL:=https://gitlab.nic.cz/turris/mox-boot-builder/-/archive/$(MOX_BB_RELEASE) - HASH:=fd5fe276a3b0dee3177d61c017907a8eb23cd2169478fa78e9a3a836cfe3a4a8 + HASH:=75e7661c38f4f5e6d8910dd789d6d9ffd8652455548b68c98e5bf45eaab5b6eb endef CM3_GCC_NAME:=gcc-arm diff --git a/package/boot/arm-trusted-firmware-mvebu/patches-mox-boot-builder/002-no-gold.patch b/package/boot/arm-trusted-firmware-mvebu/patches-mox-boot-builder/002-no-gold.patch deleted file mode 100644 index 943a6e2f4d..0000000000 --- a/package/boot/arm-trusted-firmware-mvebu/patches-mox-boot-builder/002-no-gold.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/wtmi/Makefile b/wtmi/Makefile -index 75754dc..0c6238f 100644 ---- a/wtmi/Makefile -+++ b/wtmi/Makefile -@@ -36,7 +36,7 @@ LDSCRIPT = wtmi.ld - INCLUDE = -I. - - ifeq ($(LTO), 1) -- LTO_FLAGS = -flto -flto-partition=none -Wl,-fuse-ld=gold -+ LTO_FLAGS = -flto -flto-partition=none - else - LTO_FLAGS = - endif From 794cefd3e38a5e95e641747e423bba53f8e7590f Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Tue, 21 Jun 2022 14:09:56 +0200 Subject: [PATCH 24/33] arm-trusted-firmware-mvebu: update to v2.7 Remove the backported patches and add another to allow building with the OpenWrt build system. Signed-off-by: Andre Heider --- .../boot/arm-trusted-firmware-mvebu/Makefile | 6 +- .../patches/001-no-git.patch | 21 +++ ...-a3720-uart-fix-UART-clock-rate-valu.patch | 60 ------ ...-a3720-uart-fix-configuring-UART-clo.patch | 53 ------ ...rvell-uart-de-duplicate-PLAT_MARVELL.patch | 122 ------------ ...-a3720-uart-fix-UART-parent-clock-ra.patch | 177 ------------------ .../patches/200-hostssl.patch | 20 -- 7 files changed, 23 insertions(+), 436 deletions(-) create mode 100644 package/boot/arm-trusted-firmware-mvebu/patches/001-no-git.patch delete mode 100644 package/boot/arm-trusted-firmware-mvebu/patches/100-fix-plat-marvell-a3720-uart-fix-UART-clock-rate-valu.patch delete mode 100644 package/boot/arm-trusted-firmware-mvebu/patches/101-fix-plat-marvell-a3720-uart-fix-configuring-UART-clo.patch delete mode 100644 package/boot/arm-trusted-firmware-mvebu/patches/102-refactor-plat-marvell-uart-de-duplicate-PLAT_MARVELL.patch delete mode 100644 package/boot/arm-trusted-firmware-mvebu/patches/103-fix-plat-marvell-a3720-uart-fix-UART-parent-clock-ra.patch delete mode 100644 package/boot/arm-trusted-firmware-mvebu/patches/200-hostssl.patch diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile index fe9756a590..57f3d0b79b 100644 --- a/package/boot/arm-trusted-firmware-mvebu/Makefile +++ b/package/boot/arm-trusted-firmware-mvebu/Makefile @@ -7,9 +7,9 @@ include $(TOPDIR)/rules.mk -PKG_VERSION:=2.5 +PKG_VERSION:=2.7 PKG_RELEASE:=$(AUTORELEASE) -PKG_HASH:=ad8a2ffcbcd12d919723da07630fc0840c3c2fba7656d1462e45488e42995d7c +PKG_HASH:=53422dc649153838e03820330ba17cb10afe3e330ecde0db11e4d5f1361a33e6 PKG_MAINTAINER:=Vladimir Vid @@ -209,10 +209,8 @@ define Build/Prepare mkdir -p $(STAGING_DIR_IMAGE) $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(CRYPTOPP_SOURCE) $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(A3700_UTILS_SOURCE) - echo "master" > $(STAGING_DIR_IMAGE)/$(A3700_UTILS_NAME)/branch.txt $(call PatchDir/Default,$(STAGING_DIR_IMAGE)/$(A3700_UTILS_NAME),./patches-a3700-utils) $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(MV_DDR_SOURCE) - echo "master" > $(STAGING_DIR_IMAGE)/$(MV_DDR_NAME)/branch.txt $(call PatchDir/Default,$(STAGING_DIR_IMAGE)/$(MV_DDR_NAME),./patches-mv-ddr-marvell) $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(MOX_BB_SOURCE) $(call PatchDir/Default,$(STAGING_DIR_IMAGE)/$(MOX_BB_NAME)-$(MOX_BB_RELEASE),./patches-mox-boot-builder) diff --git a/package/boot/arm-trusted-firmware-mvebu/patches/001-no-git.patch b/package/boot/arm-trusted-firmware-mvebu/patches/001-no-git.patch new file mode 100644 index 0000000000..71cd0f8ef9 --- /dev/null +++ b/package/boot/arm-trusted-firmware-mvebu/patches/001-no-git.patch @@ -0,0 +1,21 @@ +We're not building with full fledged git checkouts here, get rid of the +overzealous checks. + +--- a/plat/marvell/armada/a3k/common/a3700_common.mk ++++ b/plat/marvell/armada/a3k/common/a3700_common.mk +@@ -78,7 +78,6 @@ ifdef WTP + + # Do not remove! Following checks are required to ensure correct TF-A builds, removing these checks leads to broken TF-A builds + $(if $(wildcard $(value WTP)/*),,$(error "'WTP=$(value WTP)' was specified, but '$(value WTP)' directory does not exist")) +-$(if $(shell git -C $(value WTP) rev-parse --show-cdup 2>&1),$(error "'WTP=$(value WTP)' was specified, but '$(value WTP)' does not contain valid A3700-utils-marvell git repository")) + + TBB := $(WTP)/wtptp/src/TBB_Linux/release/TBB_linux + +@@ -164,7 +163,6 @@ $(TIMDDRTOOL): FORCE + # Do not remove! Following checks are required to ensure correct TF-A builds, removing these checks leads to broken TF-A builds + $(if $(value MV_DDR_PATH),,$(error "Platform '${PLAT}' for ddr tool requires MV_DDR_PATH. Please set MV_DDR_PATH to point to the right directory")) + $(if $(wildcard $(value MV_DDR_PATH)/*),,$(error "'MV_DDR_PATH=$(value MV_DDR_PATH)' was specified, but '$(value MV_DDR_PATH)' directory does not exist")) +- $(if $(shell git -C $(value MV_DDR_PATH) rev-parse --show-cdup 2>&1),$(error "'MV_DDR_PATH=$(value MV_DDR_PATH)' was specified, but '$(value MV_DDR_PATH)' does not contain valid mv-ddr-marvell git repository")) + $(Q)$(MAKE) --no-print-directory -C $(WTP) MV_DDR_PATH=$(MV_DDR_PATH) DDR_TOPOLOGY=$(DDR_TOPOLOGY) mv_ddr + + $(BUILD_PLAT)/$(UART_IMAGE): $(BUILD_PLAT)/$(BOOT_IMAGE) $(BUILD_PLAT)/wtmi.bin $(TBB) $(TIMBUILD) $(TIMDDRTOOL) diff --git a/package/boot/arm-trusted-firmware-mvebu/patches/100-fix-plat-marvell-a3720-uart-fix-UART-clock-rate-valu.patch b/package/boot/arm-trusted-firmware-mvebu/patches/100-fix-plat-marvell-a3720-uart-fix-UART-clock-rate-valu.patch deleted file mode 100644 index 6f887411b4..0000000000 --- a/package/boot/arm-trusted-firmware-mvebu/patches/100-fix-plat-marvell-a3720-uart-fix-UART-clock-rate-valu.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 66a7752834382595d26214783ae4698fd1f00bd6 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Pali=20Roh=C3=A1r?= -Date: Thu, 13 May 2021 14:53:44 +0200 -Subject: [PATCH] fix(plat/marvell/a3720/uart): fix UART clock rate value and - divisor calculation -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -UART parent clock is by default the platform's xtal clock, which is -25 MHz. - -The value defined in the driver, though, is 25.8048 MHz. This is a hack -for the suboptimal divisor calculation - Divisor = UART clock / (16 * baudrate) -which does not use rounding division, resulting in a suboptimal value -for divisor if the correct parent clock rate was used. - -Change the code for divisor calculation to - Divisor = Round(UART clock / (16 * baudrate)) -and change the parent clock rate value to 25 MHz. - -The final UART divisor for default baudrate 115200 is not affected by -this change. - -(Note that the parent clock rate should not be defined via a macro, -since the xtal clock can also be 40 MHz. This is outside of the scope of -this fix, though.) - -Signed-off-by: Pali Rohár -Change-Id: Iaa401173df87aec94f2dd1b38a90fb6ed0bf0ec6 ---- - drivers/marvell/uart/a3700_console.S | 3 ++- - plat/marvell/armada/a3k/common/include/platform_def.h | 2 +- - 2 files changed, 3 insertions(+), 2 deletions(-) - ---- a/drivers/marvell/uart/a3700_console.S -+++ b/drivers/marvell/uart/a3700_console.S -@@ -45,8 +45,9 @@ func console_a3700_core_init - cbz w2, init_fail - - /* Program the baudrate */ -- /* Divisor = Uart clock / (16 * baudrate) */ -+ /* Divisor = Round(Uartclock / (16 * baudrate)) */ - lsl w2, w2, #4 -+ add w1, w1, w2, lsr #1 - udiv w2, w1, w2 - and w2, w2, #0x3ff - ---- a/plat/marvell/armada/a3k/common/include/platform_def.h -+++ b/plat/marvell/armada/a3k/common/include/platform_def.h -@@ -164,7 +164,7 @@ - * PL011 related constants - */ - #define PLAT_MARVELL_BOOT_UART_BASE (MVEBU_REGS_BASE + 0x12000) --#define PLAT_MARVELL_BOOT_UART_CLK_IN_HZ 25804800 -+#define PLAT_MARVELL_BOOT_UART_CLK_IN_HZ 25000000 - - #define PLAT_MARVELL_CRASH_UART_BASE PLAT_MARVELL_BOOT_UART_BASE - #define PLAT_MARVELL_CRASH_UART_CLK_IN_HZ PLAT_MARVELL_BOOT_UART_CLK_IN_HZ diff --git a/package/boot/arm-trusted-firmware-mvebu/patches/101-fix-plat-marvell-a3720-uart-fix-configuring-UART-clo.patch b/package/boot/arm-trusted-firmware-mvebu/patches/101-fix-plat-marvell-a3720-uart-fix-configuring-UART-clo.patch deleted file mode 100644 index dee4c63d3c..0000000000 --- a/package/boot/arm-trusted-firmware-mvebu/patches/101-fix-plat-marvell-a3720-uart-fix-configuring-UART-clo.patch +++ /dev/null @@ -1,53 +0,0 @@ -From b9185c75f7ec2b600ebe0d49281e216a2456b764 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Pali=20Roh=C3=A1r?= -Date: Thu, 13 May 2021 15:11:06 +0200 -Subject: [PATCH] fix(plat/marvell/a3720/uart): fix configuring UART clock -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -When configuring the UART_BAUD_REG register, the function -console_a3700_core_init() currently only changes the baud divisor field, -leaving other fields to their previous value. - -This is incorrect, because the baud divisor is computed with the -assumption that the parent clock rate is 25 MHz, and since the other -fields in this register configure the parent clock, which could have -been changed by U-Boot or Linux. - -Fix this function to also configure the other fields so that the UART -parent clock is selected to be the xtal clock. - -For example without this change TF-A prints only - - ERROR: a3700_system_off needs to be implemented - -followed by garbage after plat_crash_console_init() is called. - -After applying this change instead of garbage it also print crash info: - - PANIC at PC : 0x0000000004023800 - -Signed-off-by: Pali Rohár -Change-Id: I72f338355cc60d939b8bb978d9c7fdd576416b81 ---- - drivers/marvell/uart/a3700_console.S | 7 ++----- - 1 file changed, 2 insertions(+), 5 deletions(-) - ---- a/drivers/marvell/uart/a3700_console.S -+++ b/drivers/marvell/uart/a3700_console.S -@@ -49,12 +49,9 @@ func console_a3700_core_init - lsl w2, w2, #4 - add w1, w1, w2, lsr #1 - udiv w2, w1, w2 -- and w2, w2, #0x3ff -+ and w2, w2, #0x3ff /* clear all other bits to use default clock */ - -- ldr w3, [x0, #UART_BAUD_REG] -- bic w3, w3, 0x3ff -- orr w3, w3, w2 -- str w3, [x0, #UART_BAUD_REG]/* set baud rate divisor */ -+ str w2, [x0, #UART_BAUD_REG]/* set baud rate divisor */ - - /* Set UART to default 16X scheme */ - mov w3, #0 diff --git a/package/boot/arm-trusted-firmware-mvebu/patches/102-refactor-plat-marvell-uart-de-duplicate-PLAT_MARVELL.patch b/package/boot/arm-trusted-firmware-mvebu/patches/102-refactor-plat-marvell-uart-de-duplicate-PLAT_MARVELL.patch deleted file mode 100644 index 7a1f19a002..0000000000 --- a/package/boot/arm-trusted-firmware-mvebu/patches/102-refactor-plat-marvell-uart-de-duplicate-PLAT_MARVELL.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 3133625859b74df42deddd80b705578af6fc2fea Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Pali=20Roh=C3=A1r?= -Date: Fri, 14 May 2021 13:21:56 +0200 -Subject: [PATCH] refactor(plat/marvell/uart): de-duplicate PLAT_MARVELL_UART - macros -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Macros PLAT_MARVELL_BOOT_UART* and PLAT_MARVELL_CRASH_UART* are defined -to same values. De-duplicate them into PLAT_MARVELL_UART* macros. - -Signed-off-by: Pali Rohár -Change-Id: Iae5daf7cad6a971e6f3dbe561df3d0174106ca7f ---- - plat/marvell/armada/a3k/common/include/platform_def.h | 7 ++----- - plat/marvell/armada/a8k/a80x0_puzzle/board/system_power.c | 4 ++-- - plat/marvell/armada/a8k/common/include/platform_def.h | 7 ++----- - plat/marvell/armada/common/aarch64/marvell_helpers.S | 8 ++++---- - plat/marvell/armada/common/marvell_console.c | 8 ++++---- - 5 files changed, 14 insertions(+), 20 deletions(-) - ---- a/plat/marvell/armada/a3k/common/include/platform_def.h -+++ b/plat/marvell/armada/a3k/common/include/platform_def.h -@@ -163,11 +163,8 @@ - /* - * PL011 related constants - */ --#define PLAT_MARVELL_BOOT_UART_BASE (MVEBU_REGS_BASE + 0x12000) --#define PLAT_MARVELL_BOOT_UART_CLK_IN_HZ 25000000 -- --#define PLAT_MARVELL_CRASH_UART_BASE PLAT_MARVELL_BOOT_UART_BASE --#define PLAT_MARVELL_CRASH_UART_CLK_IN_HZ PLAT_MARVELL_BOOT_UART_CLK_IN_HZ -+#define PLAT_MARVELL_UART_BASE (MVEBU_REGS_BASE + 0x12000) -+#define PLAT_MARVELL_UART_CLK_IN_HZ 25000000 - - #define PLAT_MARVELL_BL31_RUN_UART_BASE PLAT_MARVELL_BOOT_UART_BASE - #define PLAT_MARVELL_BL31_RUN_UART_CLK_IN_HZ PLAT_MARVELL_BOOT_UART_CLK_IN_HZ ---- a/plat/marvell/armada/a8k/a80x0_puzzle/board/system_power.c -+++ b/plat/marvell/armada/a8k/a80x0_puzzle/board/system_power.c -@@ -41,8 +41,8 @@ int system_power_off(void) - len = sizeof(system_off_now); - system_off_now[len - 1] = add_xor_checksum(system_off_now, len); - -- console_16550_register(PLAT_MARVELL_BOOT_UART_BASE + 0x100, -- PLAT_MARVELL_BOOT_UART_CLK_IN_HZ, 115200, &console); -+ console_16550_register(PLAT_MARVELL_UART_BASE + 0x100, -+ PLAT_MARVELL_UART_CLK_IN_HZ, 115200, &console); - - /* Send system_off_now to console */ - for (i = 0; i < len; i++) { ---- a/plat/marvell/armada/a8k/common/include/platform_def.h -+++ b/plat/marvell/armada/a8k/common/include/platform_def.h -@@ -168,11 +168,8 @@ - /* - * PL011 related constants - */ --#define PLAT_MARVELL_BOOT_UART_BASE (MVEBU_REGS_BASE + 0x512000) --#define PLAT_MARVELL_BOOT_UART_CLK_IN_HZ 200000000 -- --#define PLAT_MARVELL_CRASH_UART_BASE PLAT_MARVELL_BOOT_UART_BASE --#define PLAT_MARVELL_CRASH_UART_CLK_IN_HZ PLAT_MARVELL_BOOT_UART_CLK_IN_HZ -+#define PLAT_MARVELL_UART_BASE (MVEBU_REGS_BASE + 0x512000) -+#define PLAT_MARVELL_UART_CLK_IN_HZ 200000000 - - #define PLAT_MARVELL_BL31_RUN_UART_BASE PLAT_MARVELL_BOOT_UART_BASE - #define PLAT_MARVELL_BL31_RUN_UART_CLK_IN_HZ PLAT_MARVELL_BOOT_UART_CLK_IN_HZ ---- a/plat/marvell/armada/common/aarch64/marvell_helpers.S -+++ b/plat/marvell/armada/common/aarch64/marvell_helpers.S -@@ -63,8 +63,8 @@ endfunc plat_marvell_calc_core_pos - * --------------------------------------------- - */ - func plat_crash_console_init -- mov_imm x0, PLAT_MARVELL_CRASH_UART_BASE -- mov_imm x1, PLAT_MARVELL_CRASH_UART_CLK_IN_HZ -+ mov_imm x0, PLAT_MARVELL_UART_BASE -+ mov_imm x1, PLAT_MARVELL_UART_CLK_IN_HZ - mov_imm x2, MARVELL_CONSOLE_BAUDRATE - #ifdef PLAT_a3700 - b console_a3700_core_init -@@ -81,7 +81,7 @@ endfunc plat_crash_console_init - * --------------------------------------------- - */ - func plat_crash_console_putc -- mov_imm x1, PLAT_MARVELL_CRASH_UART_BASE -+ mov_imm x1, PLAT_MARVELL_UART_BASE - #ifdef PLAT_a3700 - - b console_a3700_core_putc -@@ -99,7 +99,7 @@ endfunc plat_crash_console_putc - * --------------------------------------------- - */ - func plat_crash_console_flush -- mov_imm x0, PLAT_MARVELL_CRASH_UART_BASE -+ mov_imm x0, PLAT_MARVELL_UART_BASE - #ifdef PLAT_a3700 - b console_a3700_core_flush - #else ---- a/plat/marvell/armada/common/marvell_console.c -+++ b/plat/marvell/armada/common/marvell_console.c -@@ -31,8 +31,8 @@ static console_t marvell_runtime_console - void marvell_console_boot_init(void) - { - int rc = -- console_marvell_register(PLAT_MARVELL_BOOT_UART_BASE, -- PLAT_MARVELL_BOOT_UART_CLK_IN_HZ, -+ console_marvell_register(PLAT_MARVELL_UART_BASE, -+ PLAT_MARVELL_UART_CLK_IN_HZ, - MARVELL_CONSOLE_BAUDRATE, - &marvell_boot_console); - if (rc == 0) { -@@ -58,8 +58,8 @@ void marvell_console_boot_end(void) - void marvell_console_runtime_init(void) - { - int rc = -- console_marvell_register(PLAT_MARVELL_BOOT_UART_BASE, -- PLAT_MARVELL_BOOT_UART_CLK_IN_HZ, -+ console_marvell_register(PLAT_MARVELL_UART_BASE, -+ PLAT_MARVELL_UART_CLK_IN_HZ, - MARVELL_CONSOLE_BAUDRATE, - &marvell_runtime_console); - if (rc == 0) diff --git a/package/boot/arm-trusted-firmware-mvebu/patches/103-fix-plat-marvell-a3720-uart-fix-UART-parent-clock-ra.patch b/package/boot/arm-trusted-firmware-mvebu/patches/103-fix-plat-marvell-a3720-uart-fix-UART-parent-clock-ra.patch deleted file mode 100644 index ab958a097a..0000000000 --- a/package/boot/arm-trusted-firmware-mvebu/patches/103-fix-plat-marvell-a3720-uart-fix-UART-parent-clock-ra.patch +++ /dev/null @@ -1,177 +0,0 @@ -From 5a91c439cbeb1f64b8b9830de91efad5113d3c89 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Pali=20Roh=C3=A1r?= -Date: Fri, 14 May 2021 15:52:11 +0200 -Subject: [PATCH] fix(plat/marvell/a3720/uart): fix UART parent clock rate - determination -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The UART code for the A3K platform assumes that UART parent clock rate -is always 25 MHz. This is incorrect, because the xtal clock can also run -at 40 MHz (this is board specific). - -The frequency of the xtal clock is determined by a value on a strapping -pin during SOC reset. The code to determine this frequency is already in -A3K's comphy driver. - -Move the get_ref_clk() function from the comphy driver to a separate -file and use it for UART parent clock rate determination. - -Signed-off-by: Pali Rohár -Change-Id: I8bb18a2d020ef18fe65aa06ffa4ab205c71be92e ---- - drivers/marvell/comphy/phy-comphy-3700.c | 24 +------------ - .../marvell/armada/a3k/common/plat_marvell.h | 2 ++ - .../marvell/armada/a3k/common/a3700_common.mk | 1 + - .../armada/a3k/common/aarch64/a3700_clock.S | 35 +++++++++++++++++++ - .../armada/a3k/common/include/platform_def.h | 1 - - .../armada/common/aarch64/marvell_helpers.S | 10 +++++- - plat/marvell/armada/common/marvell_console.c | 1 + - 7 files changed, 49 insertions(+), 25 deletions(-) - create mode 100644 plat/marvell/armada/a3k/common/aarch64/a3700_clock.S - ---- a/drivers/marvell/comphy/phy-comphy-3700.c -+++ b/drivers/marvell/comphy/phy-comphy-3700.c -@@ -14,6 +14,7 @@ - - #include - #include -+#include - - #include "phy-comphy-3700.h" - #include "phy-comphy-common.h" -@@ -29,15 +30,6 @@ - #define USB3_GBE1_PHY (MVEBU_REGS_BASE + 0x5C000) - #define COMPHY_SD_ADDR (MVEBU_REGS_BASE + 0x1F000) - --/* -- * Below address in used only for reading, therefore no problem with concurrent -- * Linux access. -- */ --#define MVEBU_TEST_PIN_LATCH_N (MVEBU_NB_GPIO_REG_BASE + 0x8) -- #define MVEBU_XTAL_MODE_MASK BIT(9) -- #define MVEBU_XTAL_MODE_OFFS 9 -- #define MVEBU_XTAL_CLOCK_25MHZ 0x0 -- - struct sgmii_phy_init_data_fix { - uint16_t addr; - uint16_t value; -@@ -125,20 +117,6 @@ static uint16_t sgmii_phy_init[512] = { - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 /*1F8 */ - }; - --/* returns reference clock in MHz (25 or 40) */ --static uint32_t get_ref_clk(void) --{ -- uint32_t val; -- -- val = (mmio_read_32(MVEBU_TEST_PIN_LATCH_N) & MVEBU_XTAL_MODE_MASK) >> -- MVEBU_XTAL_MODE_OFFS; -- -- if (val == MVEBU_XTAL_CLOCK_25MHZ) -- return 25; -- else -- return 40; --} -- - /* PHY selector configures with corresponding modes */ - static void mvebu_a3700_comphy_set_phy_selector(uint8_t comphy_index, - uint32_t comphy_mode) ---- a/include/plat/marvell/armada/a3k/common/plat_marvell.h -+++ b/include/plat/marvell/armada/a3k/common/plat_marvell.h -@@ -100,4 +100,6 @@ void plat_marvell_interconnect_enter_coh - - const mmap_region_t *plat_marvell_get_mmap(void); - -+uint32_t get_ref_clk(void); -+ - #endif /* PLAT_MARVELL_H */ ---- a/plat/marvell/armada/a3k/common/a3700_common.mk -+++ b/plat/marvell/armada/a3k/common/a3700_common.mk -@@ -38,6 +38,7 @@ PLAT_INCLUDES := -I$(PLAT_FAMILY_BASE)/ - -I$/drivers/arm/gic/common/ - - PLAT_BL_COMMON_SOURCES := $(PLAT_COMMON_BASE)/aarch64/a3700_common.c \ -+ $(PLAT_COMMON_BASE)/aarch64/a3700_clock.S \ - $(MARVELL_DRV_BASE)/uart/a3700_console.S - - BL1_SOURCES += $(PLAT_COMMON_BASE)/aarch64/plat_helpers.S \ ---- /dev/null -+++ b/plat/marvell/armada/a3k/common/aarch64/a3700_clock.S -@@ -0,0 +1,35 @@ -+/* -+ * Copyright (C) 2018 Marvell International Ltd. -+ * -+ * SPDX-License-Identifier: BSD-3-Clause -+ * https://spdx.org/licenses -+ */ -+ -+#include -+#include -+ -+/* -+ * Below address in used only for reading, therefore no problem with concurrent -+ * Linux access. -+ */ -+#define MVEBU_TEST_PIN_LATCH_N (MVEBU_NB_GPIO_REG_BASE + 0x8) -+ #define MVEBU_XTAL_MODE_MASK BIT(9) -+ -+ /* ----------------------------------------------------- -+ * uint32_t get_ref_clk (void); -+ * -+ * returns reference clock in MHz (25 or 40) -+ * ----------------------------------------------------- -+ */ -+.globl get_ref_clk -+func get_ref_clk -+ mov_imm x0, MVEBU_TEST_PIN_LATCH_N -+ ldr w0, [x0] -+ tst w0, #MVEBU_XTAL_MODE_MASK -+ bne 40 -+ mov w0, #25 -+ ret -+40: -+ mov w0, #40 -+ ret -+endfunc get_ref_clk ---- a/plat/marvell/armada/a3k/common/include/platform_def.h -+++ b/plat/marvell/armada/a3k/common/include/platform_def.h -@@ -164,7 +164,6 @@ - * PL011 related constants - */ - #define PLAT_MARVELL_UART_BASE (MVEBU_REGS_BASE + 0x12000) --#define PLAT_MARVELL_UART_CLK_IN_HZ 25000000 - - #define PLAT_MARVELL_BL31_RUN_UART_BASE PLAT_MARVELL_BOOT_UART_BASE - #define PLAT_MARVELL_BL31_RUN_UART_CLK_IN_HZ PLAT_MARVELL_BOOT_UART_CLK_IN_HZ ---- a/plat/marvell/armada/common/aarch64/marvell_helpers.S -+++ b/plat/marvell/armada/common/aarch64/marvell_helpers.S -@@ -63,8 +63,16 @@ endfunc plat_marvell_calc_core_pos - * --------------------------------------------- - */ - func plat_crash_console_init -- mov_imm x0, PLAT_MARVELL_UART_BASE -+#ifdef PLAT_a3700 -+ mov x1, x30 -+ bl get_ref_clk -+ mov x30, x1 -+ mov_imm x1, 1000000 -+ mul x1, x0, x1 -+#else - mov_imm x1, PLAT_MARVELL_UART_CLK_IN_HZ -+#endif -+ mov_imm x0, PLAT_MARVELL_UART_BASE - mov_imm x2, MARVELL_CONSOLE_BAUDRATE - #ifdef PLAT_a3700 - b console_a3700_core_init ---- a/plat/marvell/armada/common/marvell_console.c -+++ b/plat/marvell/armada/common/marvell_console.c -@@ -14,6 +14,7 @@ - - #ifdef PLAT_a3700 - #include -+#define PLAT_MARVELL_UART_CLK_IN_HZ (get_ref_clk() * 1000000) - #define console_marvell_register console_a3700_register - #else - #include diff --git a/package/boot/arm-trusted-firmware-mvebu/patches/200-hostssl.patch b/package/boot/arm-trusted-firmware-mvebu/patches/200-hostssl.patch deleted file mode 100644 index ad4e1e9f71..0000000000 --- a/package/boot/arm-trusted-firmware-mvebu/patches/200-hostssl.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/tools/fiptool/Makefile -+++ b/tools/fiptool/Makefile -@@ -20,7 +20,7 @@ ifeq (${DEBUG},1) - else - HOSTCCFLAGS += -O2 - endif --LDLIBS := -lcrypto -+LDLIBS := -L${OPENSSL_DIR}/lib -lcrypto - - ifeq (${V},0) - Q := @ -@@ -28,7 +28,7 @@ else - Q := - endif - --INCLUDE_PATHS := -I../../include/tools_share -+INCLUDE_PATHS := -I../../include/tools_share -I${OPENSSL_DIR}/include - - HOSTCC ?= gcc - From 81bc733c33ddba9bc75d902267593ddbb177b8c5 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Tue, 21 Jun 2022 14:32:50 +0200 Subject: [PATCH 25/33] arm-trusted-firmware-mvebu: update cm3 gcc to 11.2 https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads Signed-off-by: Andre Heider --- package/boot/arm-trusted-firmware-mvebu/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile index 57f3d0b79b..9a7e1340a9 100644 --- a/package/boot/arm-trusted-firmware-mvebu/Makefile +++ b/package/boot/arm-trusted-firmware-mvebu/Makefile @@ -173,17 +173,17 @@ define Download/mox-boot-builder endef CM3_GCC_NAME:=gcc-arm -CM3_GCC_RELEASE:=10.2-2020.11 +CM3_GCC_RELEASE:=11.2-2022.02 CM3_GCC_VERSION:=$(HOST_ARCH)-arm-none-eabi CM3_GCC_SOURCE=$(CM3_GCC_NAME)-$(CM3_GCC_RELEASE)-$(CM3_GCC_VERSION).tar.xz define Download/cm3-gcc FILE:=$(CM3_GCC_SOURCE) - URL:=https://developer.arm.com/-/media/Files/downloads/gnu-a/$(CM3_GCC_RELEASE)/binrel + URL:=https://developer.arm.com/-/media/Files/downloads/gnu/$(CM3_GCC_RELEASE)/binrel ifeq ($(HOST_ARCH),aarch64) - HASH:=1a42eecafa03dc6f32b8ae49ffcd15114dc818efbd72292fa6bab58233940bb9 + HASH:=ef1d82e5894e3908cb7ed49c5485b5b95deefa32872f79c2b5f6f5447cabf55f else - HASH:=bf7ee185936d22d787b80c8da573f72ead5675695331fb8b590f0133ef1f6bb9 + HASH:=8c5acd5ae567c0100245b0556941c237369f210bceb196edfe5a2e7532c60326 endif endef From e4af991220638d4bb32e4668435d140afe232b25 Mon Sep 17 00:00:00 2001 From: John Audia Date: Tue, 12 Jul 2022 11:52:59 -0400 Subject: [PATCH 26/33] kernel: bump 5.15 to 5.15.54 All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Signed-off-by: John Audia --- include/kernel-5.15 | 4 ++-- .../950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch | 8 ++++---- ...0281-media-i2c-Add-driver-for-Sony-IMX477-sensor.patch | 2 +- ...mentation-devicetree-Add-documentation-for-imx37.patch | 2 +- ...d-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch | 2 +- ...indings-media-i2c-Add-IMX519-CMOS-sensor-binding.patch | 2 +- ...rt-fbdev-Fix-unregistering-of-framebuffers-witho.patch | 2 +- ...rt-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch | 4 ++-- ...7-v5.16-12-net-dsa-qca8k-add-support-for-QCA8328.patch | 4 ++-- ...sa-qca8k-convert-to-GENMASK_FIELD_PREP_FIELD_GET.patch | 8 ++++---- ...t-dsa-qca8k-move-regmap-init-in-probe-and-set-it.patch | 2 +- ...xt-net-dsa-qca8k-add-additional-MIB-counter-and-.patch | 2 +- ...xt-net-dsa-qca8k-add-support-for-port-fast-aging.patch | 2 +- ...t-next-net-dsa-qca8k-add-set_ageing_time-support.patch | 2 +- ...t-next-net-dsa-qca8k-add-support-for-mdb_add-del.patch | 4 ++-- ...t-next-net-dsa-qca8k-add-support-for-mirror-mode.patch | 4 ++-- .../763-net-next-net-dsa-qca8k-add-LAG-support.patch | 4 ++-- ...et-next-net-dsa-qca8k-fix-warning-in-LAG-feature.patch | 4 ++-- ...-net-dsa-qca8k-add-tracking-state-of-master-port.patch | 4 ++-- ...dsa-qca8k-add-support-for-mgmt-read-write-in-Eth.patch | 6 +++--- ...dsa-qca8k-add-support-for-mib-autocast-in-Ethern.patch | 6 +++--- ...-13-net-dsa-qca8k-move-page-cache-to-driver-priv.patch | 2 +- ...-14-net-dsa-qca8k-cache-lo-and-hi-for-mdio-write.patch | 2 +- target/linux/generic/hack-5.15/204-module_strip.patch | 4 ++-- target/linux/generic/hack-5.15/904-debloat_dma_buf.patch | 2 +- ...-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch | 2 +- 26 files changed, 45 insertions(+), 45 deletions(-) diff --git a/include/kernel-5.15 b/include/kernel-5.15 index 6f4d3057fb..3b3f0df3d8 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .53 -LINUX_KERNEL_HASH-5.15.53 = f3aa717243051f3fcca90ebfe26fe5c3a596c2f6047846e8d1724ea90df77b07 +LINUX_VERSION-5.15 = .54 +LINUX_KERNEL_HASH-5.15.54 = 594f548bb0a73e9c08deef838836c984666709687257a624c5ccaf9ae056ce4d diff --git a/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch b/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch index 5f2a237e2b..2b2a5f50ff 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch @@ -244,7 +244,7 @@ Signed-off-by: Dave Stevenson static int bcm2708_fb_register(struct bcm2708_fb *fb) --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -1086,6 +1086,30 @@ fb_blank(struct fb_info *info, int blank +@@ -1096,6 +1096,30 @@ fb_blank(struct fb_info *info, int blank } EXPORT_SYMBOL(fb_blank); @@ -275,7 +275,7 @@ Signed-off-by: Dave Stevenson static long do_fb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) { -@@ -1094,6 +1118,7 @@ static long do_fb_ioctl(struct fb_info * +@@ -1104,6 +1128,7 @@ static long do_fb_ioctl(struct fb_info * struct fb_fix_screeninfo fix; struct fb_cmap cmap_from; struct fb_cmap_user cmap; @@ -283,7 +283,7 @@ Signed-off-by: Dave Stevenson void __user *argp = (void __user *)arg; long ret = 0; -@@ -1169,6 +1194,15 @@ static long do_fb_ioctl(struct fb_info * +@@ -1181,6 +1206,15 @@ static long do_fb_ioctl(struct fb_info * unlock_fb_info(info); console_unlock(); break; @@ -299,7 +299,7 @@ Signed-off-by: Dave Stevenson default: lock_fb_info(info); fb = info->fbops; -@@ -1308,6 +1342,7 @@ static long fb_compat_ioctl(struct file +@@ -1320,6 +1354,7 @@ static long fb_compat_ioctl(struct file case FBIOPAN_DISPLAY: case FBIOGET_CON2FBMAP: case FBIOPUT_CON2FBMAP: diff --git a/target/linux/bcm27xx/patches-5.15/950-0281-media-i2c-Add-driver-for-Sony-IMX477-sensor.patch b/target/linux/bcm27xx/patches-5.15/950-0281-media-i2c-Add-driver-for-Sony-IMX477-sensor.patch index 67e8731f67..4f94a9f11d 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0281-media-i2c-Add-driver-for-Sony-IMX477-sensor.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0281-media-i2c-Add-driver-for-Sony-IMX477-sensor.patch @@ -25,7 +25,7 @@ Signed-off-by: Naushir Patuck --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -17525,6 +17525,14 @@ T: git git://linuxtv.org/media_tree.git +@@ -17526,6 +17526,14 @@ T: git git://linuxtv.org/media_tree.git F: Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml F: drivers/media/i2c/imx412.c diff --git a/target/linux/bcm27xx/patches-5.15/950-0413-Documentation-devicetree-Add-documentation-for-imx37.patch b/target/linux/bcm27xx/patches-5.15/950-0413-Documentation-devicetree-Add-documentation-for-imx37.patch index a62b97f70d..8c75f80baa 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0413-Documentation-devicetree-Add-documentation-for-imx37.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0413-Documentation-devicetree-Add-documentation-for-imx37.patch @@ -132,7 +132,7 @@ Signed-off-by: David Plowman +... --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -17539,6 +17539,7 @@ M: Raspberry Pi Kernel Maintenance --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c -@@ -1908,6 +1908,8 @@ static const struct usb_audio_quirk_flag +@@ -1912,6 +1912,8 @@ static const struct usb_audio_quirk_flag QUIRK_FLAG_ALIGN_TRANSFER), DEVICE_FLG(0x1224, 0x2a25, /* Jieli Technology USB PHY 2.0 */ QUIRK_FLAG_GET_SAMPLE_RATE), diff --git a/target/linux/bcm27xx/patches-5.15/950-0520-dt-bindings-media-i2c-Add-IMX519-CMOS-sensor-binding.patch b/target/linux/bcm27xx/patches-5.15/950-0520-dt-bindings-media-i2c-Add-IMX519-CMOS-sensor-binding.patch index 54a751c654..53c6646cab 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0520-dt-bindings-media-i2c-Add-IMX519-CMOS-sensor-binding.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0520-dt-bindings-media-i2c-Add-IMX519-CMOS-sensor-binding.patch @@ -132,7 +132,7 @@ Signed-off-by: Lee Jackson +... --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -17543,6 +17543,14 @@ F: Documentation/devicetree/bindings/med +@@ -17544,6 +17544,14 @@ F: Documentation/devicetree/bindings/med F: Documentation/devicetree/bindings/media/i2c/imx477.yaml F: drivers/media/i2c/imx477.c diff --git a/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch b/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch index 66412360bf..b609b65246 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch @@ -11,7 +11,7 @@ This reverts commit 2388f826cdc9af2651991adc0feb79de9bdf2232. --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -1616,14 +1616,7 @@ static void do_remove_conflicting_frameb +@@ -1628,14 +1628,7 @@ static void do_remove_conflicting_frameb * If it's not a platform device, at least print a warning. A * fix would add code to remove the device from the system. */ diff --git a/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch b/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch index b28d29cc89..870e59a6a5 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch @@ -20,7 +20,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. #include #include #include -@@ -1593,36 +1592,18 @@ static void do_remove_conflicting_frameb +@@ -1605,36 +1604,18 @@ static void do_remove_conflicting_frameb /* check all firmware fbs and kick off if the base addr overlaps */ for_each_registered_fb(i) { struct apertures_struct *gen_aper; @@ -58,7 +58,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. } } } -@@ -1949,13 +1930,9 @@ EXPORT_SYMBOL(register_framebuffer); +@@ -1961,13 +1942,9 @@ EXPORT_SYMBOL(register_framebuffer); void unregister_framebuffer(struct fb_info *fb_info) { diff --git a/target/linux/generic/backport-5.15/747-v5.16-12-net-dsa-qca8k-add-support-for-QCA8328.patch b/target/linux/generic/backport-5.15/747-v5.16-12-net-dsa-qca8k-add-support-for-QCA8328.patch index 70f227fb69..b300621e63 100644 --- a/target/linux/generic/backport-5.15/747-v5.16-12-net-dsa-qca8k-add-support-for-QCA8328.patch +++ b/target/linux/generic/backport-5.15/747-v5.16-12-net-dsa-qca8k-add-support-for-QCA8328.patch @@ -42,7 +42,7 @@ Signed-off-by: David S. Miller if (ret) return ret; } -@@ -2105,7 +2112,12 @@ static int qca8k_resume(struct device *d +@@ -2124,7 +2131,12 @@ static int qca8k_resume(struct device *d static SIMPLE_DEV_PM_OPS(qca8k_pm_ops, qca8k_suspend, qca8k_resume); @@ -56,7 +56,7 @@ Signed-off-by: David S. Miller .id = QCA8K_ID_QCA8327, }; -@@ -2114,7 +2126,8 @@ static const struct qca8k_match_data qca +@@ -2133,7 +2145,8 @@ static const struct qca8k_match_data qca }; static const struct of_device_id qca8k_of_match[] = { diff --git a/target/linux/generic/backport-5.15/754-net-next-net-dsa-qca8k-convert-to-GENMASK_FIELD_PREP_FIELD_GET.patch b/target/linux/generic/backport-5.15/754-net-next-net-dsa-qca8k-convert-to-GENMASK_FIELD_PREP_FIELD_GET.patch index 408a59df85..2cea88089d 100644 --- a/target/linux/generic/backport-5.15/754-net-next-net-dsa-qca8k-convert-to-GENMASK_FIELD_PREP_FIELD_GET.patch +++ b/target/linux/generic/backport-5.15/754-net-next-net-dsa-qca8k-convert-to-GENMASK_FIELD_PREP_FIELD_GET.patch @@ -218,7 +218,7 @@ Signed-off-by: David S. Miller mask); } -@@ -1916,11 +1911,11 @@ qca8k_port_vlan_filtering(struct dsa_swi +@@ -1935,11 +1930,11 @@ qca8k_port_vlan_filtering(struct dsa_swi if (vlan_filtering) { ret = qca8k_rmw(priv, QCA8K_PORT_LOOKUP_CTRL(port), @@ -232,7 +232,7 @@ Signed-off-by: David S. Miller QCA8K_PORT_LOOKUP_VLAN_MODE_NONE); } -@@ -1944,10 +1939,9 @@ qca8k_port_vlan_add(struct dsa_switch *d +@@ -1963,10 +1958,9 @@ qca8k_port_vlan_add(struct dsa_switch *d } if (pvid) { @@ -245,7 +245,7 @@ Signed-off-by: David S. Miller if (ret) return ret; -@@ -2041,7 +2035,7 @@ static int qca8k_read_switch_id(struct q +@@ -2060,7 +2054,7 @@ static int qca8k_read_switch_id(struct q if (ret < 0) return -ENODEV; @@ -254,7 +254,7 @@ Signed-off-by: David S. Miller if (id != data->id) { dev_err(priv->dev, "Switch id detected %x but expected %x", id, data->id); return -ENODEV; -@@ -2050,7 +2044,7 @@ static int qca8k_read_switch_id(struct q +@@ -2069,7 +2063,7 @@ static int qca8k_read_switch_id(struct q priv->switch_id = id; /* Save revision to communicate to the internal PHY driver */ diff --git a/target/linux/generic/backport-5.15/756-net-next-net-dsa-qca8k-move-regmap-init-in-probe-and-set-it.patch b/target/linux/generic/backport-5.15/756-net-next-net-dsa-qca8k-move-regmap-init-in-probe-and-set-it.patch index f873b70d0f..44d938c53e 100644 --- a/target/linux/generic/backport-5.15/756-net-next-net-dsa-qca8k-move-regmap-init-in-probe-and-set-it.patch +++ b/target/linux/generic/backport-5.15/756-net-next-net-dsa-qca8k-move-regmap-init-in-probe-and-set-it.patch @@ -29,7 +29,7 @@ Signed-off-by: David S. Miller ret = qca8k_setup_mdio_bus(priv); if (ret) return ret; -@@ -2077,6 +2071,14 @@ qca8k_sw_probe(struct mdio_device *mdiod +@@ -2096,6 +2090,14 @@ qca8k_sw_probe(struct mdio_device *mdiod gpiod_set_value_cansleep(priv->reset_gpio, 0); } diff --git a/target/linux/generic/backport-5.15/758-net-next-net-dsa-qca8k-add-additional-MIB-counter-and-.patch b/target/linux/generic/backport-5.15/758-net-next-net-dsa-qca8k-add-additional-MIB-counter-and-.patch index 1465d1f35d..c8c050933b 100644 --- a/target/linux/generic/backport-5.15/758-net-next-net-dsa-qca8k-add-additional-MIB-counter-and-.patch +++ b/target/linux/generic/backport-5.15/758-net-next-net-dsa-qca8k-add-additional-MIB-counter-and-.patch @@ -80,7 +80,7 @@ Signed-off-by: David S. Miller } static int -@@ -2154,14 +2168,17 @@ static SIMPLE_DEV_PM_OPS(qca8k_pm_ops, +@@ -2173,14 +2187,17 @@ static SIMPLE_DEV_PM_OPS(qca8k_pm_ops, static const struct qca8k_match_data qca8327 = { .id = QCA8K_ID_QCA8327, .reduced_package = true, diff --git a/target/linux/generic/backport-5.15/759-net-next-net-dsa-qca8k-add-support-for-port-fast-aging.patch b/target/linux/generic/backport-5.15/759-net-next-net-dsa-qca8k-add-support-for-port-fast-aging.patch index 973446ec57..8ad7ab472d 100644 --- a/target/linux/generic/backport-5.15/759-net-next-net-dsa-qca8k-add-support-for-port-fast-aging.patch +++ b/target/linux/generic/backport-5.15/759-net-next-net-dsa-qca8k-add-support-for-port-fast-aging.patch @@ -33,7 +33,7 @@ Signed-off-by: David S. Miller static int qca8k_port_enable(struct dsa_switch *ds, int port, struct phy_device *phy) -@@ -1998,6 +2008,7 @@ static const struct dsa_switch_ops qca8k +@@ -2017,6 +2027,7 @@ static const struct dsa_switch_ops qca8k .port_stp_state_set = qca8k_port_stp_state_set, .port_bridge_join = qca8k_port_bridge_join, .port_bridge_leave = qca8k_port_bridge_leave, diff --git a/target/linux/generic/backport-5.15/760-net-next-net-dsa-qca8k-add-set_ageing_time-support.patch b/target/linux/generic/backport-5.15/760-net-next-net-dsa-qca8k-add-set_ageing_time-support.patch index 29530065a1..659e482405 100644 --- a/target/linux/generic/backport-5.15/760-net-next-net-dsa-qca8k-add-set_ageing_time-support.patch +++ b/target/linux/generic/backport-5.15/760-net-next-net-dsa-qca8k-add-set_ageing_time-support.patch @@ -56,7 +56,7 @@ Signed-off-by: David S. Miller qca8k_port_enable(struct dsa_switch *ds, int port, struct phy_device *phy) { -@@ -1999,6 +2023,7 @@ static const struct dsa_switch_ops qca8k +@@ -2018,6 +2042,7 @@ static const struct dsa_switch_ops qca8k .get_strings = qca8k_get_strings, .get_ethtool_stats = qca8k_get_ethtool_stats, .get_sset_count = qca8k_get_sset_count, diff --git a/target/linux/generic/backport-5.15/761-net-next-net-dsa-qca8k-add-support-for-mdb_add-del.patch b/target/linux/generic/backport-5.15/761-net-next-net-dsa-qca8k-add-support-for-mdb_add-del.patch index fa022d7ae6..8b97939ecb 100644 --- a/target/linux/generic/backport-5.15/761-net-next-net-dsa-qca8k-add-support-for-mdb_add-del.patch +++ b/target/linux/generic/backport-5.15/761-net-next-net-dsa-qca8k-add-support-for-mdb_add-del.patch @@ -102,7 +102,7 @@ Signed-off-by: David S. Miller qca8k_vlan_access(struct qca8k_priv *priv, enum qca8k_vlan_cmd cmd, u16 vid) { u32 reg; -@@ -1930,6 +2005,28 @@ qca8k_port_fdb_dump(struct dsa_switch *d +@@ -1949,6 +2024,28 @@ qca8k_port_fdb_dump(struct dsa_switch *d } static int @@ -131,7 +131,7 @@ Signed-off-by: David S. Miller qca8k_port_vlan_filtering(struct dsa_switch *ds, int port, bool vlan_filtering, struct netlink_ext_ack *extack) { -@@ -2037,6 +2134,8 @@ static const struct dsa_switch_ops qca8k +@@ -2056,6 +2153,8 @@ static const struct dsa_switch_ops qca8k .port_fdb_add = qca8k_port_fdb_add, .port_fdb_del = qca8k_port_fdb_del, .port_fdb_dump = qca8k_port_fdb_dump, diff --git a/target/linux/generic/backport-5.15/762-net-next-net-dsa-qca8k-add-support-for-mirror-mode.patch b/target/linux/generic/backport-5.15/762-net-next-net-dsa-qca8k-add-support-for-mirror-mode.patch index 69e9b381c2..dc5a22935f 100644 --- a/target/linux/generic/backport-5.15/762-net-next-net-dsa-qca8k-add-support-for-mirror-mode.patch +++ b/target/linux/generic/backport-5.15/762-net-next-net-dsa-qca8k-add-support-for-mirror-mode.patch @@ -17,7 +17,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/dsa/qca8k.c +++ b/drivers/net/dsa/qca8k.c -@@ -2027,6 +2027,99 @@ qca8k_port_mdb_del(struct dsa_switch *ds +@@ -2046,6 +2046,99 @@ qca8k_port_mdb_del(struct dsa_switch *ds } static int @@ -117,7 +117,7 @@ Signed-off-by: David S. Miller qca8k_port_vlan_filtering(struct dsa_switch *ds, int port, bool vlan_filtering, struct netlink_ext_ack *extack) { -@@ -2136,6 +2229,8 @@ static const struct dsa_switch_ops qca8k +@@ -2155,6 +2248,8 @@ static const struct dsa_switch_ops qca8k .port_fdb_dump = qca8k_port_fdb_dump, .port_mdb_add = qca8k_port_mdb_add, .port_mdb_del = qca8k_port_mdb_del, diff --git a/target/linux/generic/backport-5.15/763-net-next-net-dsa-qca8k-add-LAG-support.patch b/target/linux/generic/backport-5.15/763-net-next-net-dsa-qca8k-add-LAG-support.patch index bfc77db184..b53f1288d5 100644 --- a/target/linux/generic/backport-5.15/763-net-next-net-dsa-qca8k-add-LAG-support.patch +++ b/target/linux/generic/backport-5.15/763-net-next-net-dsa-qca8k-add-LAG-support.patch @@ -35,7 +35,7 @@ Signed-off-by: David S. Miller return 0; } -@@ -2207,6 +2210,178 @@ qca8k_get_tag_protocol(struct dsa_switch +@@ -2226,6 +2229,178 @@ qca8k_get_tag_protocol(struct dsa_switch return DSA_TAG_PROTO_QCA; } @@ -214,7 +214,7 @@ Signed-off-by: David S. Miller static const struct dsa_switch_ops qca8k_switch_ops = { .get_tag_protocol = qca8k_get_tag_protocol, .setup = qca8k_setup, -@@ -2240,6 +2415,8 @@ static const struct dsa_switch_ops qca8k +@@ -2259,6 +2434,8 @@ static const struct dsa_switch_ops qca8k .phylink_mac_link_down = qca8k_phylink_mac_link_down, .phylink_mac_link_up = qca8k_phylink_mac_link_up, .get_phy_flags = qca8k_get_phy_flags, diff --git a/target/linux/generic/backport-5.15/764-net-next-net-dsa-qca8k-fix-warning-in-LAG-feature.patch b/target/linux/generic/backport-5.15/764-net-next-net-dsa-qca8k-fix-warning-in-LAG-feature.patch index 8c0a990b0d..7d811be11c 100644 --- a/target/linux/generic/backport-5.15/764-net-next-net-dsa-qca8k-fix-warning-in-LAG-feature.patch +++ b/target/linux/generic/backport-5.15/764-net-next-net-dsa-qca8k-fix-warning-in-LAG-feature.patch @@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski --- a/drivers/net/dsa/qca8k.c +++ b/drivers/net/dsa/qca8k.c -@@ -2232,7 +2232,7 @@ qca8k_lag_can_offload(struct dsa_switch +@@ -2251,7 +2251,7 @@ qca8k_lag_can_offload(struct dsa_switch if (info->tx_type != NETDEV_LAG_TX_TYPE_HASH) return false; @@ -28,7 +28,7 @@ Signed-off-by: Jakub Kicinski info->hash_type != NETDEV_LAG_HASH_L23) return false; -@@ -2246,8 +2246,8 @@ qca8k_lag_setup_hash(struct dsa_switch * +@@ -2265,8 +2265,8 @@ qca8k_lag_setup_hash(struct dsa_switch * { struct qca8k_priv *priv = ds->priv; bool unique_lag = true; diff --git a/target/linux/generic/backport-5.15/766-09-net-dsa-qca8k-add-tracking-state-of-master-port.patch b/target/linux/generic/backport-5.15/766-09-net-dsa-qca8k-add-tracking-state-of-master-port.patch index ff8fdca512..eb21cc3912 100644 --- a/target/linux/generic/backport-5.15/766-09-net-dsa-qca8k-add-tracking-state-of-master-port.patch +++ b/target/linux/generic/backport-5.15/766-09-net-dsa-qca8k-add-tracking-state-of-master-port.patch @@ -26,7 +26,7 @@ Signed-off-by: David S. Miller --- a/drivers/net/dsa/qca8k.c +++ b/drivers/net/dsa/qca8k.c -@@ -2382,6 +2382,20 @@ qca8k_port_lag_leave(struct dsa_switch * +@@ -2401,6 +2401,20 @@ qca8k_port_lag_leave(struct dsa_switch * return qca8k_lag_refresh_portmap(ds, port, lag, true); } @@ -47,7 +47,7 @@ Signed-off-by: David S. Miller static const struct dsa_switch_ops qca8k_switch_ops = { .get_tag_protocol = qca8k_get_tag_protocol, .setup = qca8k_setup, -@@ -2417,6 +2431,7 @@ static const struct dsa_switch_ops qca8k +@@ -2436,6 +2450,7 @@ static const struct dsa_switch_ops qca8k .get_phy_flags = qca8k_get_phy_flags, .port_lag_join = qca8k_port_lag_join, .port_lag_leave = qca8k_port_lag_leave, diff --git a/target/linux/generic/backport-5.15/766-10-net-dsa-qca8k-add-support-for-mgmt-read-write-in-Eth.patch b/target/linux/generic/backport-5.15/766-10-net-dsa-qca8k-add-support-for-mgmt-read-write-in-Eth.patch index 43656ad79d..07c5ba4621 100644 --- a/target/linux/generic/backport-5.15/766-10-net-dsa-qca8k-add-support-for-mgmt-read-write-in-Eth.patch +++ b/target/linux/generic/backport-5.15/766-10-net-dsa-qca8k-add-support-for-mgmt-read-write-in-Eth.patch @@ -276,7 +276,7 @@ Signed-off-by: David S. Miller qca8k_split_addr(reg, &r1, &r2, &page); mutex_lock_nested(&bus->mdio_lock, MDIO_MUTEX_NESTED); -@@ -2393,7 +2591,30 @@ qca8k_master_change(struct dsa_switch *d +@@ -2412,7 +2610,30 @@ qca8k_master_change(struct dsa_switch *d if (dp->index != 0) return; @@ -307,7 +307,7 @@ Signed-off-by: David S. Miller } static const struct dsa_switch_ops qca8k_switch_ops = { -@@ -2432,6 +2653,7 @@ static const struct dsa_switch_ops qca8k +@@ -2451,6 +2672,7 @@ static const struct dsa_switch_ops qca8k .port_lag_join = qca8k_port_lag_join, .port_lag_leave = qca8k_port_lag_leave, .master_state_change = qca8k_master_change, @@ -315,7 +315,7 @@ Signed-off-by: David S. Miller }; static int qca8k_read_switch_id(struct qca8k_priv *priv) -@@ -2511,6 +2733,9 @@ qca8k_sw_probe(struct mdio_device *mdiod +@@ -2530,6 +2752,9 @@ qca8k_sw_probe(struct mdio_device *mdiod if (!priv->ds) return -ENOMEM; diff --git a/target/linux/generic/backport-5.15/766-11-net-dsa-qca8k-add-support-for-mib-autocast-in-Ethern.patch b/target/linux/generic/backport-5.15/766-11-net-dsa-qca8k-add-support-for-mib-autocast-in-Ethern.patch index c4bc2b3646..0dcf279433 100644 --- a/target/linux/generic/backport-5.15/766-11-net-dsa-qca8k-add-support-for-mib-autocast-in-Ethern.patch +++ b/target/linux/generic/backport-5.15/766-11-net-dsa-qca8k-add-support-for-mib-autocast-in-Ethern.patch @@ -147,7 +147,7 @@ Signed-off-by: David S. Miller match_data = of_device_get_match_data(priv->dev); for (i = 0; i < match_data->mib_count; i++) { -@@ -2592,9 +2690,11 @@ qca8k_master_change(struct dsa_switch *d +@@ -2611,9 +2709,11 @@ qca8k_master_change(struct dsa_switch *d return; mutex_lock(&priv->mgmt_eth_data.mutex); @@ -159,7 +159,7 @@ Signed-off-by: David S. Miller mutex_unlock(&priv->mgmt_eth_data.mutex); } -@@ -2608,6 +2708,7 @@ static int qca8k_connect_tag_protocol(st +@@ -2627,6 +2727,7 @@ static int qca8k_connect_tag_protocol(st tagger_data = ds->tagger_data; tagger_data->rw_reg_ack_handler = qca8k_rw_reg_ack_handler; @@ -167,7 +167,7 @@ Signed-off-by: David S. Miller break; default: -@@ -2736,6 +2837,9 @@ qca8k_sw_probe(struct mdio_device *mdiod +@@ -2755,6 +2856,9 @@ qca8k_sw_probe(struct mdio_device *mdiod mutex_init(&priv->mgmt_eth_data.mutex); init_completion(&priv->mgmt_eth_data.rw_done); diff --git a/target/linux/generic/backport-5.15/766-13-net-dsa-qca8k-move-page-cache-to-driver-priv.patch b/target/linux/generic/backport-5.15/766-13-net-dsa-qca8k-move-page-cache-to-driver-priv.patch index dc8160966c..4ac0bc32fd 100644 --- a/target/linux/generic/backport-5.15/766-13-net-dsa-qca8k-move-page-cache-to-driver-priv.patch +++ b/target/linux/generic/backport-5.15/766-13-net-dsa-qca8k-move-page-cache-to-driver-priv.patch @@ -172,7 +172,7 @@ Signed-off-by: David S. Miller if (ret < 0) return 0xffff; -@@ -3041,6 +3037,8 @@ qca8k_sw_probe(struct mdio_device *mdiod +@@ -3060,6 +3056,8 @@ qca8k_sw_probe(struct mdio_device *mdiod return PTR_ERR(priv->regmap); } diff --git a/target/linux/generic/backport-5.15/766-14-net-dsa-qca8k-cache-lo-and-hi-for-mdio-write.patch b/target/linux/generic/backport-5.15/766-14-net-dsa-qca8k-cache-lo-and-hi-for-mdio-write.patch index 2d483730c9..e2cb2721ce 100644 --- a/target/linux/generic/backport-5.15/766-14-net-dsa-qca8k-cache-lo-and-hi-for-mdio-write.patch +++ b/target/linux/generic/backport-5.15/766-14-net-dsa-qca8k-cache-lo-and-hi-for-mdio-write.patch @@ -139,7 +139,7 @@ Signed-off-by: David S. Miller mutex_unlock(&bus->mdio_lock); -@@ -3038,6 +3073,8 @@ qca8k_sw_probe(struct mdio_device *mdiod +@@ -3057,6 +3092,8 @@ qca8k_sw_probe(struct mdio_device *mdiod } priv->mdio_cache.page = 0xffff; diff --git a/target/linux/generic/hack-5.15/204-module_strip.patch b/target/linux/generic/hack-5.15/204-module_strip.patch index bd7fc71060..dee240d9f9 100644 --- a/target/linux/generic/hack-5.15/204-module_strip.patch +++ b/target/linux/generic/hack-5.15/204-module_strip.patch @@ -120,7 +120,7 @@ Signed-off-by: Felix Fietkau #ifdef CONFIG_MODVERSIONS -@@ -3227,9 +3229,11 @@ static int setup_load_info(struct load_i +@@ -3266,9 +3268,11 @@ static int setup_load_info(struct load_i static int check_modinfo(struct module *mod, struct load_info *info, int flags) { @@ -133,7 +133,7 @@ Signed-off-by: Felix Fietkau if (flags & MODULE_INIT_IGNORE_VERMAGIC) modmagic = NULL; -@@ -3250,6 +3254,7 @@ static int check_modinfo(struct module * +@@ -3289,6 +3293,7 @@ static int check_modinfo(struct module * mod->name); add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK); } diff --git a/target/linux/generic/hack-5.15/904-debloat_dma_buf.patch b/target/linux/generic/hack-5.15/904-debloat_dma_buf.patch index 1f4d2fd394..a685c429c4 100644 --- a/target/linux/generic/hack-5.15/904-debloat_dma_buf.patch +++ b/target/linux/generic/hack-5.15/904-debloat_dma_buf.patch @@ -63,7 +63,7 @@ Signed-off-by: Felix Fietkau +dma-shared-buffer-objs := $(dma-buf-objs-y) --- a/drivers/dma-buf/dma-buf.c +++ b/drivers/dma-buf/dma-buf.c -@@ -1506,4 +1506,5 @@ static void __exit dma_buf_deinit(void) +@@ -1513,4 +1513,5 @@ static void __exit dma_buf_deinit(void) kern_unmount(dma_buf_mnt); dma_buf_uninit_sysfs_statistics(); } diff --git a/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch b/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch index 673c66ae84..e0c195f1ab 100644 --- a/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch +++ b/target/linux/ipq806x/patches-5.15/102-mtd-rootfs-conflicts-with-OpenWrt-auto-mounting.patch @@ -10,7 +10,7 @@ Signed-off-by: John Crispin --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c -@@ -50,7 +50,11 @@ static struct mtd_info *allocate_partiti +@@ -51,7 +51,11 @@ static struct mtd_info *allocate_partiti /* allocate the partition structure */ child = kzalloc(sizeof(*child), GFP_KERNEL); From ce014b1e3903887d47bede8128f2c698418ac5f1 Mon Sep 17 00:00:00 2001 From: John Audia Date: Fri, 15 Jul 2022 08:20:36 -0400 Subject: [PATCH 27/33] kernel: bump 5.15 to 5.15.55 All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Signed-off-by: John Audia --- include/kernel-5.15 | 4 +- .../generic/hack-5.15/205-kconfig-exit.patch | 4 -- .../hack-5.15/221-module_exports.patch | 4 +- .../hack-5.15/249-udp-tunnel-selection.patch | 4 -- .../generic/hack-5.15/253-ksmbd-config.patch | 6 -- .../hack-5.15/261-lib-arc4-unhide.patch | 4 -- .../410-block-fit-partition-parser.patch | 46 ++++--------- .../hack-5.15/430-mtk-bmt-support.patch | 6 -- .../hack-5.15/600-bridge_offload.patch | 66 +++++-------------- ...-dsa-mv88e6xxx-disable-ATU-violation.patch | 6 +- .../780-usb-net-MeigLink_modem_support.patch | 12 +--- .../hack-5.15/920-device_tree_cmdline.patch | 6 +- ...-Use-stddefs.h-instead-of-compiler.h.patch | 4 -- .../400-mtd-mtdsplit-support.patch | 26 ++------ .../482-mtd-spi-nor-add-gd25q512.patch | 6 +- .../484-mtd-spi-nor-add-esmt-f25l16pa.patch | 4 -- .../485-mtd-spi-nor-add-xmc-xm25qh128c.patch | 6 +- .../500-fs_cdrom_dependencies.patch | 10 --- ...83-of_net-add-mac-address-to-of-tree.patch | 8 +-- 19 files changed, 47 insertions(+), 185 deletions(-) diff --git a/include/kernel-5.15 b/include/kernel-5.15 index 3b3f0df3d8..8045799cc7 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .54 -LINUX_KERNEL_HASH-5.15.54 = 594f548bb0a73e9c08deef838836c984666709687257a624c5ccaf9ae056ce4d +LINUX_VERSION-5.15 = .55 +LINUX_KERNEL_HASH-5.15.55 = 1ef6bd508b6c3af3bef2d5b337e4477254dba284c79e329aa38f9763ae3bfdcc diff --git a/target/linux/generic/hack-5.15/205-kconfig-exit.patch b/target/linux/generic/hack-5.15/205-kconfig-exit.patch index 9f98c16b07..9f3bb8f311 100644 --- a/target/linux/generic/hack-5.15/205-kconfig-exit.patch +++ b/target/linux/generic/hack-5.15/205-kconfig-exit.patch @@ -7,8 +7,6 @@ Subject: [PATCH] scripts/Kconfig: Kconfig exit scripts/kconfig/conf.c | 2 ++ 1 file changed, 2 insertions(+) -diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c -index 5d84b44a2a2a..d279d95aac92 100644 --- a/scripts/kconfig/conf.c +++ b/scripts/kconfig/conf.c @@ -435,6 +435,8 @@ static int conf_sym(struct menu *menu) @@ -20,5 +18,3 @@ index 5d84b44a2a2a..d279d95aac92 100644 newval = oldval; break; case '?': --- - diff --git a/target/linux/generic/hack-5.15/221-module_exports.patch b/target/linux/generic/hack-5.15/221-module_exports.patch index 47f013de4f..f620e87126 100644 --- a/target/linux/generic/hack-5.15/221-module_exports.patch +++ b/target/linux/generic/hack-5.15/221-module_exports.patch @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau "__kstrtabns_" #sym ": \n" \ --- a/include/asm-generic/export.h +++ b/include/asm-generic/export.h -@@ -26,6 +26,12 @@ struct kernel_symbol { +@@ -26,6 +26,12 @@ #endif .endm @@ -104,7 +104,7 @@ Signed-off-by: Felix Fietkau /* * note on .section use: we specify progbits since usage of the "M" (SHF_MERGE) * section flag requires it. Use '%progbits' instead of '@progbits' since the -@@ -42,7 +42,7 @@ struct kernel_symbol { +@@ -39,7 +45,7 @@ __ksymtab_\name: __put \val, __kstrtab_\name .previous diff --git a/target/linux/generic/hack-5.15/249-udp-tunnel-selection.patch b/target/linux/generic/hack-5.15/249-udp-tunnel-selection.patch index 6a5d3b3f86..5e154004d0 100644 --- a/target/linux/generic/hack-5.15/249-udp-tunnel-selection.patch +++ b/target/linux/generic/hack-5.15/249-udp-tunnel-selection.patch @@ -7,8 +7,6 @@ Subject: [PATCH] net/ipv4: add udp tunnel tristate string net/ipv4/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/net/ipv4/Kconfig b/net/ipv4/Kconfig -index 87983e70f03f..426b44d39277 100644 --- a/net/ipv4/Kconfig +++ b/net/ipv4/Kconfig @@ -315,7 +315,7 @@ config NET_IPVTI @@ -20,5 +18,3 @@ index 87983e70f03f..426b44d39277 100644 select NET_IP_TUNNEL default n --- - diff --git a/target/linux/generic/hack-5.15/253-ksmbd-config.patch b/target/linux/generic/hack-5.15/253-ksmbd-config.patch index 820197bb2b..a29cf3bf61 100644 --- a/target/linux/generic/hack-5.15/253-ksmbd-config.patch +++ b/target/linux/generic/hack-5.15/253-ksmbd-config.patch @@ -8,8 +8,6 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string lib/Kconfig | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -diff --git a/init/Kconfig b/init/Kconfig -index 5a2514bbb11d..32ba9490a6e4 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -2384,7 +2384,7 @@ config PADATA @@ -21,8 +19,6 @@ index 5a2514bbb11d..32ba9490a6e4 100644 help Build a simple ASN.1 grammar compiler that produces a bytecode output that can be interpreted by the ASN.1 stream decoder and used to -diff --git a/lib/Kconfig b/lib/Kconfig -index d6c6cfd1fac9..6595c53abd3c 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -614,7 +614,7 @@ config LIBFDT @@ -34,5 +30,3 @@ index d6c6cfd1fac9..6595c53abd3c 100644 help Enable fast lookup object identifier registry. --- - diff --git a/target/linux/generic/hack-5.15/261-lib-arc4-unhide.patch b/target/linux/generic/hack-5.15/261-lib-arc4-unhide.patch index 65dd7ff126..ee923c73f7 100644 --- a/target/linux/generic/hack-5.15/261-lib-arc4-unhide.patch +++ b/target/linux/generic/hack-5.15/261-lib-arc4-unhide.patch @@ -11,8 +11,6 @@ from backports. lib/crypto/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/lib/crypto/Kconfig b/lib/crypto/Kconfig -index 5056663c2aff..8a4d4e5bcd7a 100644 --- a/lib/crypto/Kconfig +++ b/lib/crypto/Kconfig @@ -6,7 +6,7 @@ config CRYPTO_LIB_AES @@ -24,5 +22,3 @@ index 5056663c2aff..8a4d4e5bcd7a 100644 config CRYPTO_ARCH_HAVE_LIB_BLAKE2S bool --- - diff --git a/target/linux/generic/hack-5.15/410-block-fit-partition-parser.patch b/target/linux/generic/hack-5.15/410-block-fit-partition-parser.patch index b31479e5ac..96c89f41c4 100644 --- a/target/linux/generic/hack-5.15/410-block-fit-partition-parser.patch +++ b/target/linux/generic/hack-5.15/410-block-fit-partition-parser.patch @@ -17,11 +17,9 @@ Subject: [PATCH] kernel: add block fit partition parser include/linux/msdos_partition.h | 1 + 11 files changed, 57 insertions(+) -diff --git a/block/blk.h b/block/blk.h -index aab72194d226..ed23a4fac950 100644 --- a/block/blk.h +++ b/block/blk.h -@@ -354,6 +354,8 @@ void blk_free_ext_minor(unsigned int minor); +@@ -354,6 +354,8 @@ void blk_free_ext_minor(unsigned int min #define ADDPART_FLAG_NONE 0 #define ADDPART_FLAG_RAID 1 #define ADDPART_FLAG_WHOLEDISK 2 @@ -30,8 +28,6 @@ index aab72194d226..ed23a4fac950 100644 int bdev_add_partition(struct gendisk *disk, int partno, sector_t start, sector_t length); int bdev_del_partition(struct gendisk *disk, int partno); -diff --git a/block/partitions/Kconfig b/block/partitions/Kconfig -index 278593b8e4e9..d4cd2f36ea95 100644 --- a/block/partitions/Kconfig +++ b/block/partitions/Kconfig @@ -101,6 +101,13 @@ config ATARI_PARTITION @@ -48,8 +44,6 @@ index 278593b8e4e9..d4cd2f36ea95 100644 config IBM_PARTITION bool "IBM disk label and partition support" depends on PARTITION_ADVANCED && S390 -diff --git a/block/partitions/Makefile b/block/partitions/Makefile -index a7f05cdb02a8..d319eb1deba9 100644 --- a/block/partitions/Makefile +++ b/block/partitions/Makefile @@ -8,6 +8,7 @@ obj-$(CONFIG_ACORN_PARTITION) += acorn.o @@ -60,11 +54,9 @@ index a7f05cdb02a8..d319eb1deba9 100644 obj-$(CONFIG_CMDLINE_PARTITION) += cmdline.o obj-$(CONFIG_MAC_PARTITION) += mac.o obj-$(CONFIG_LDM_PARTITION) += ldm.o -diff --git a/block/partitions/check.h b/block/partitions/check.h -index d5b28e309d64..1b2fd18b2480 100644 --- a/block/partitions/check.h +++ b/block/partitions/check.h -@@ -58,6 +58,7 @@ int amiga_partition(struct parsed_partitions *state); +@@ -58,6 +58,7 @@ int amiga_partition(struct parsed_partit int atari_partition(struct parsed_partitions *state); int cmdline_partition(struct parsed_partitions *state); int efi_partition(struct parsed_partitions *state); @@ -72,14 +64,12 @@ index d5b28e309d64..1b2fd18b2480 100644 int ibm_partition(struct parsed_partitions *); int karma_partition(struct parsed_partitions *state); int ldm_partition(struct parsed_partitions *state); -@@ -68,3 +69,5 @@ int sgi_partition(struct parsed_partitions *state); +@@ -68,3 +69,5 @@ int sgi_partition(struct parsed_partitio int sun_partition(struct parsed_partitions *state); int sysv68_partition(struct parsed_partitions *state); int ultrix_partition(struct parsed_partitions *state); + +int parse_fit_partitions(struct parsed_partitions *state, u64 start_sector, u64 nr_sectors, int *slot, int add_remain); -diff --git a/block/partitions/core.c b/block/partitions/core.c -index b9e9af84f518..176f7fe79c56 100644 --- a/block/partitions/core.c +++ b/block/partitions/core.c @@ -12,6 +12,10 @@ @@ -93,7 +83,7 @@ index b9e9af84f518..176f7fe79c56 100644 #include "check.h" static int (*check_part[])(struct parsed_partitions *) = { -@@ -48,6 +52,9 @@ static int (*check_part[])(struct parsed_partitions *) = { +@@ -48,6 +52,9 @@ static int (*check_part[])(struct parsed #ifdef CONFIG_EFI_PARTITION efi_partition, /* this must come before msdos */ #endif @@ -103,7 +93,7 @@ index b9e9af84f518..176f7fe79c56 100644 #ifdef CONFIG_SGI_PARTITION sgi_partition, #endif -@@ -408,6 +415,11 @@ static struct block_device *add_partition(struct gendisk *disk, int partno, +@@ -408,6 +415,11 @@ static struct block_device *add_partitio goto out_del; } @@ -115,7 +105,7 @@ index b9e9af84f518..176f7fe79c56 100644 /* everything is up and running, commence */ err = xa_insert(&disk->part_tbl, partno, bdev, GFP_KERNEL); if (err) -@@ -598,6 +610,11 @@ static bool blk_add_partition(struct gendisk *disk, +@@ -598,6 +610,11 @@ static bool blk_add_partition(struct gen (state->parts[p].flags & ADDPART_FLAG_RAID)) md_autodetect_dev(part->bd_dev); @@ -127,11 +117,9 @@ index b9e9af84f518..176f7fe79c56 100644 return true; } -diff --git a/block/partitions/efi.c b/block/partitions/efi.c -index 7ca5c4c374d4..9ecd2b3d5674 100644 --- a/block/partitions/efi.c +++ b/block/partitions/efi.c -@@ -716,6 +716,9 @@ int efi_partition(struct parsed_partitions *state) +@@ -716,6 +716,9 @@ int efi_partition(struct parsed_partitio gpt_entry *ptes = NULL; u32 i; unsigned ssz = queue_logical_block_size(state->disk->queue) / 512; @@ -141,7 +129,7 @@ index 7ca5c4c374d4..9ecd2b3d5674 100644 if (!find_valid_gpt(state, &gpt, &ptes) || !gpt || !ptes) { kfree(gpt); -@@ -749,6 +752,11 @@ int efi_partition(struct parsed_partitions *state) +@@ -749,6 +752,11 @@ int efi_partition(struct parsed_partitio ARRAY_SIZE(ptes[i].partition_name)); utf16_le_to_7bit(ptes[i].partition_name, label_max, info->volname); state->parts[i + 1].has_info = true; @@ -153,8 +141,6 @@ index 7ca5c4c374d4..9ecd2b3d5674 100644 } kfree(ptes); kfree(gpt); -diff --git a/block/partitions/efi.h b/block/partitions/efi.h -index 8cc2b88d0aa8..b5807e35bafc 100644 --- a/block/partitions/efi.h +++ b/block/partitions/efi.h @@ -52,6 +52,9 @@ @@ -167,11 +153,9 @@ index 8cc2b88d0aa8..b5807e35bafc 100644 typedef struct _gpt_header { __le64 signature; -diff --git a/block/partitions/msdos.c b/block/partitions/msdos.c -index b5d5c229cc3b..ff7e74911359 100644 --- a/block/partitions/msdos.c +++ b/block/partitions/msdos.c -@@ -564,6 +564,15 @@ static void parse_minix(struct parsed_partitions *state, +@@ -564,6 +564,15 @@ static void parse_minix(struct parsed_pa #endif /* CONFIG_MINIX_SUBPARTITION */ } @@ -195,11 +179,9 @@ index b5d5c229cc3b..ff7e74911359 100644 {0, NULL}, }; -diff --git a/drivers/mtd/mtd_blkdevs.c b/drivers/mtd/mtd_blkdevs.c -index 65470d1b8fc8..5dd9b54d6555 100644 --- a/drivers/mtd/mtd_blkdevs.c +++ b/drivers/mtd/mtd_blkdevs.c -@@ -345,6 +345,8 @@ int add_mtd_blktrans_dev(struct mtd_blktrans_dev *new) +@@ -345,6 +345,8 @@ int add_mtd_blktrans_dev(struct mtd_blkt gd->first_minor = (new->devnum) << tr->part_bits; gd->minors = 1 << tr->part_bits; gd->fops = &mtd_block_ops; @@ -208,11 +190,9 @@ index 65470d1b8fc8..5dd9b54d6555 100644 if (tr->part_bits) if (new->devnum < 26) -diff --git a/drivers/mtd/ubi/block.c b/drivers/mtd/ubi/block.c -index 57b984dd73b4..5982070e470b 100644 --- a/drivers/mtd/ubi/block.c +++ b/drivers/mtd/ubi/block.c -@@ -428,6 +428,9 @@ int ubiblock_create(struct ubi_volume_info *vi) +@@ -428,6 +428,9 @@ int ubiblock_create(struct ubi_volume_in goto out_cleanup_disk; } gd->private_data = dev; @@ -222,8 +202,6 @@ index 57b984dd73b4..5982070e470b 100644 sprintf(gd->disk_name, "ubiblock%d_%d", dev->ubi_num, dev->vol_id); set_capacity(gd, disk_capacity); dev->gd = gd; -diff --git a/include/linux/msdos_partition.h b/include/linux/msdos_partition.h -index 2cb82db2a43c..c15b6c759aca 100644 --- a/include/linux/msdos_partition.h +++ b/include/linux/msdos_partition.h @@ -31,6 +31,7 @@ enum msdos_sys_ind { @@ -234,5 +212,3 @@ index 2cb82db2a43c..c15b6c759aca 100644 SOLARIS_X86_PARTITION = 0x82, /* also Linux swap partitions */ NEW_SOLARIS_X86_PARTITION = 0xbf, --- - diff --git a/target/linux/generic/hack-5.15/430-mtk-bmt-support.patch b/target/linux/generic/hack-5.15/430-mtk-bmt-support.patch index 48181950b7..2a83f46e0e 100644 --- a/target/linux/generic/hack-5.15/430-mtk-bmt-support.patch +++ b/target/linux/generic/hack-5.15/430-mtk-bmt-support.patch @@ -8,8 +8,6 @@ Subject: [PATCH] mtd/nand: add MediaTek NAND bad block managment table drivers/mtd/nand/Makefile | 1 + 2 files changed, 5 insertions(+) -diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig -index b40455234cbd..72ef18c59cee 100644 --- a/drivers/mtd/nand/Kconfig +++ b/drivers/mtd/nand/Kconfig @@ -46,6 +46,10 @@ config MTD_NAND_ECC_SW_BCH @@ -23,8 +21,6 @@ index b40455234cbd..72ef18c59cee 100644 endmenu endmenu -diff --git a/drivers/mtd/nand/Makefile b/drivers/mtd/nand/Makefile -index 1c0b46960eb1..b9d97626bb47 100644 --- a/drivers/mtd/nand/Makefile +++ b/drivers/mtd/nand/Makefile @@ -2,6 +2,7 @@ @@ -35,5 +31,3 @@ index 1c0b46960eb1..b9d97626bb47 100644 obj-y += onenand/ obj-y += raw/ --- - diff --git a/target/linux/generic/hack-5.15/600-bridge_offload.patch b/target/linux/generic/hack-5.15/600-bridge_offload.patch index 7e87d9a3fd..9d71a741b2 100644 --- a/target/linux/generic/hack-5.15/600-bridge_offload.patch +++ b/target/linux/generic/hack-5.15/600-bridge_offload.patch @@ -23,8 +23,6 @@ Subject: [PATCH] net/bridge: add bridge offload create mode 100644 net/bridge/br_offload.c create mode 100644 net/bridge/br_private_offload.h -diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h -index 18d3b264b754..944630df0ec3 100644 --- a/include/linux/if_bridge.h +++ b/include/linux/if_bridge.h @@ -59,6 +59,7 @@ struct br_ip_list { @@ -35,8 +33,6 @@ index 18d3b264b754..944630df0ec3 100644 #define BR_DEFAULT_AGEING_TIME (300 * HZ) -diff --git a/net/bridge/Makefile b/net/bridge/Makefile -index 7fb9a021873b..0ebf3665c216 100644 --- a/net/bridge/Makefile +++ b/net/bridge/Makefile @@ -5,7 +5,7 @@ @@ -48,8 +44,6 @@ index 7fb9a021873b..0ebf3665c216 100644 br_ioctl.o br_stp.o br_stp_bpdu.o \ br_stp_if.o br_stp_timer.o br_netlink.o \ br_netlink_tunnel.o br_arp_nd_proxy.o -diff --git a/net/bridge/br.c b/net/bridge/br.c -index d3a32c6813e0..42e4d4fec604 100644 --- a/net/bridge/br.c +++ b/net/bridge/br.c @@ -18,6 +18,7 @@ @@ -71,7 +65,7 @@ index d3a32c6813e0..42e4d4fec604 100644 err = register_pernet_subsys(&br_net_ops); if (err) goto err_out1; -@@ -430,6 +435,8 @@ static int __init br_init(void) +@@ -430,6 +435,8 @@ err_out3: err_out2: unregister_pernet_subsys(&br_net_ops); err_out1: @@ -88,11 +82,9 @@ index d3a32c6813e0..42e4d4fec604 100644 br_fdb_fini(); } -diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c -index 8d6bab244c4a..d69d8e9ed7aa 100644 --- a/net/bridge/br_device.c +++ b/net/bridge/br_device.c -@@ -524,6 +524,8 @@ void br_dev_setup(struct net_device *dev) +@@ -524,6 +524,8 @@ void br_dev_setup(struct net_device *dev br->bridge_hello_time = br->hello_time = 2 * HZ; br->bridge_forward_delay = br->forward_delay = 15 * HZ; br->bridge_ageing_time = br->ageing_time = BR_DEFAULT_AGEING_TIME; @@ -101,8 +93,6 @@ index 8d6bab244c4a..d69d8e9ed7aa 100644 dev->max_mtu = ETH_MAX_MTU; br_netfilter_rtable_init(br); -diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c -index 46812b659710..20ea8f75d140 100644 --- a/net/bridge/br_fdb.c +++ b/net/bridge/br_fdb.c @@ -23,6 +23,7 @@ @@ -113,7 +103,7 @@ index 46812b659710..20ea8f75d140 100644 static const struct rhashtable_params br_fdb_rht_params = { .head_offset = offsetof(struct net_bridge_fdb_entry, rhnode), -@@ -518,6 +519,8 @@ static struct net_bridge_fdb_entry *fdb_create(struct net_bridge *br, +@@ -518,6 +519,8 @@ static struct net_bridge_fdb_entry *fdb_ fdb->key.vlan_id = vid; fdb->flags = flags; fdb->updated = fdb->used = jiffies; @@ -122,7 +112,7 @@ index 46812b659710..20ea8f75d140 100644 if (rhashtable_lookup_insert_fast(&br->fdb_hash_tbl, &fdb->rhnode, br_fdb_rht_params)) { -@@ -794,6 +797,8 @@ static void fdb_notify(struct net_bridge *br, +@@ -794,6 +797,8 @@ static void fdb_notify(struct net_bridge struct sk_buff *skb; int err = -ENOBUFS; @@ -131,8 +121,6 @@ index 46812b659710..20ea8f75d140 100644 if (swdev_notify) br_switchdev_fdb_notify(br, fdb, type); -diff --git a/net/bridge/br_forward.c b/net/bridge/br_forward.c -index 9fe5c888f27d..6d9025106d9d 100644 --- a/net/bridge/br_forward.c +++ b/net/bridge/br_forward.c @@ -16,6 +16,7 @@ @@ -143,7 +131,7 @@ index 9fe5c888f27d..6d9025106d9d 100644 /* Don't forward packets to originating port or forwarding disabled */ static inline int should_deliver(const struct net_bridge_port *p, -@@ -32,6 +33,8 @@ static inline int should_deliver(const struct net_bridge_port *p, +@@ -32,6 +33,8 @@ static inline int should_deliver(const s int br_dev_queue_push_xmit(struct net *net, struct sock *sk, struct sk_buff *skb) { @@ -152,8 +140,6 @@ index 9fe5c888f27d..6d9025106d9d 100644 skb_push(skb, ETH_HLEN); if (!is_skb_forwardable(skb->dev, skb)) goto drop; -diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c -index 4a02f8bb278a..b1d3295b861c 100644 --- a/net/bridge/br_if.c +++ b/net/bridge/br_if.c @@ -25,6 +25,7 @@ @@ -164,7 +150,7 @@ index 4a02f8bb278a..b1d3295b861c 100644 /* * Determine initial path cost based on speed. -@@ -428,7 +429,7 @@ static struct net_bridge_port *new_nbp(struct net_bridge *br, +@@ -428,7 +429,7 @@ static struct net_bridge_port *new_nbp(s p->path_cost = port_cost(dev); p->priority = 0x8000 >> BR_PORT_BITS; p->port_no = index; @@ -173,7 +159,7 @@ index 4a02f8bb278a..b1d3295b861c 100644 br_init_port(p); br_set_state(p, BR_STATE_DISABLED); br_stp_port_timer_init(p); -@@ -771,6 +772,9 @@ void br_port_flags_change(struct net_bridge_port *p, unsigned long mask) +@@ -771,6 +772,9 @@ void br_port_flags_change(struct net_bri if (mask & BR_NEIGH_SUPPRESS) br_recalculate_neigh_suppress_enabled(br); @@ -183,8 +169,6 @@ index 4a02f8bb278a..b1d3295b861c 100644 } bool br_port_flag_is_set(const struct net_device *dev, unsigned long flag) -diff --git a/net/bridge/br_input.c b/net/bridge/br_input.c -index 65416af73714..b0601e6aed8c 100644 --- a/net/bridge/br_input.c +++ b/net/bridge/br_input.c @@ -22,6 +22,7 @@ @@ -195,7 +179,7 @@ index 65416af73714..b0601e6aed8c 100644 static int br_netif_receive_skb(struct net *net, struct sock *sk, struct sk_buff *skb) -@@ -171,6 +172,7 @@ int br_handle_frame_finish(struct net *net, struct sock *sk, struct sk_buff *skb +@@ -171,6 +172,7 @@ int br_handle_frame_finish(struct net *n dst->used = now; br_forward(dst->dst, skb, local_rcv, false); } else { @@ -203,7 +187,7 @@ index 65416af73714..b0601e6aed8c 100644 if (!mcast_hit) br_flood(br, skb, pkt_type, local_rcv, false); else -@@ -304,6 +306,9 @@ static rx_handler_result_t br_handle_frame(struct sk_buff **pskb) +@@ -304,6 +306,9 @@ static rx_handler_result_t br_handle_fra memset(skb->cb, 0, sizeof(struct br_input_skb_cb)); p = br_port_get_rcu(skb->dev); @@ -213,9 +197,6 @@ index 65416af73714..b0601e6aed8c 100644 if (p->flags & BR_VLAN_TUNNEL) br_handle_ingress_vlan_tunnel(skb, p, nbp_vlan_group_rcu(p)); -diff --git a/net/bridge/br_offload.c b/net/bridge/br_offload.c -new file mode 100644 -index 000000000000..88173ed11093 --- /dev/null +++ b/net/bridge/br_offload.c @@ -0,0 +1,438 @@ @@ -657,8 +638,6 @@ index 000000000000..88173ed11093 +{ + kmem_cache_destroy(offload_cache); +} -diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h -index bd218c2b2cd9..951ba1d993ca 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h @@ -268,7 +268,13 @@ struct net_bridge_fdb_entry { @@ -718,9 +697,6 @@ index bd218c2b2cd9..951ba1d993ca 100644 #ifdef CONFIG_NET_SWITCHDEV /* Set if TX data plane offloading is used towards at least one -diff --git a/net/bridge/br_private_offload.h b/net/bridge/br_private_offload.h -new file mode 100644 -index 000000000000..97c13af2866b --- /dev/null +++ b/net/bridge/br_private_offload.h @@ -0,0 +1,23 @@ @@ -747,8 +723,6 @@ index 000000000000..97c13af2866b +} + +#endif -diff --git a/net/bridge/br_stp.c b/net/bridge/br_stp.c -index 1d80f34a139c..b57788b53d24 100644 --- a/net/bridge/br_stp.c +++ b/net/bridge/br_stp.c @@ -12,6 +12,7 @@ @@ -759,7 +733,7 @@ index 1d80f34a139c..b57788b53d24 100644 /* since time values in bpdu are in jiffies and then scaled (1/256) * before sending, make sure that is at least one STP tick. -@@ -52,6 +53,8 @@ void br_set_state(struct net_bridge_port *p, unsigned int state) +@@ -52,6 +53,8 @@ void br_set_state(struct net_bridge_port (unsigned int) p->port_no, p->dev->name, br_port_state_names[p->state]); @@ -768,8 +742,6 @@ index 1d80f34a139c..b57788b53d24 100644 if (p->br->stp_enabled == BR_KERNEL_STP) { switch (p->state) { case BR_STATE_BLOCKING: -diff --git a/net/bridge/br_sysfs_br.c b/net/bridge/br_sysfs_br.c -index 7b0c19772111..814cbfb77d25 100644 --- a/net/bridge/br_sysfs_br.c +++ b/net/bridge/br_sysfs_br.c @@ -18,6 +18,7 @@ @@ -780,7 +752,7 @@ index 7b0c19772111..814cbfb77d25 100644 /* IMPORTANT: new bridge options must be added with netlink support only * please do not add new sysfs entries -@@ -930,6 +931,38 @@ static ssize_t vlan_stats_per_port_store(struct device *d, +@@ -930,6 +931,38 @@ static ssize_t vlan_stats_per_port_store static DEVICE_ATTR_RW(vlan_stats_per_port); #endif @@ -819,7 +791,7 @@ index 7b0c19772111..814cbfb77d25 100644 static struct attribute *bridge_attrs[] = { &dev_attr_forward_delay.attr, &dev_attr_hello_time.attr, -@@ -984,6 +1017,8 @@ static struct attribute *bridge_attrs[] = { +@@ -984,6 +1017,8 @@ static struct attribute *bridge_attrs[] &dev_attr_vlan_stats_enabled.attr, &dev_attr_vlan_stats_per_port.attr, #endif @@ -828,11 +800,9 @@ index 7b0c19772111..814cbfb77d25 100644 NULL }; -diff --git a/net/bridge/br_sysfs_if.c b/net/bridge/br_sysfs_if.c -index 9ee9c60738e2..2b44e5fb19e4 100644 --- a/net/bridge/br_sysfs_if.c +++ b/net/bridge/br_sysfs_if.c -@@ -241,6 +241,7 @@ BRPORT_ATTR_FLAG(broadcast_flood, BR_BCAST_FLOOD); +@@ -241,6 +241,7 @@ BRPORT_ATTR_FLAG(broadcast_flood, BR_BCA BRPORT_ATTR_FLAG(neigh_suppress, BR_NEIGH_SUPPRESS); BRPORT_ATTR_FLAG(isolated, BR_ISOLATED); BRPORT_ATTR_FLAG(bpdu_filter, BR_BPDU_FILTER); @@ -840,7 +810,7 @@ index 9ee9c60738e2..2b44e5fb19e4 100644 #ifdef CONFIG_BRIDGE_IGMP_SNOOPING static ssize_t show_multicast_router(struct net_bridge_port *p, char *buf) -@@ -295,6 +296,7 @@ static const struct brport_attribute *brport_attrs[] = { +@@ -295,6 +296,7 @@ static const struct brport_attribute *br &brport_attr_isolated, &brport_attr_bpdu_filter, &brport_attr_backup_port, @@ -848,8 +818,6 @@ index 9ee9c60738e2..2b44e5fb19e4 100644 NULL }; -diff --git a/net/bridge/br_vlan_tunnel.c b/net/bridge/br_vlan_tunnel.c -index 6399a8a69d07..ffc65dc4eea8 100644 --- a/net/bridge/br_vlan_tunnel.c +++ b/net/bridge/br_vlan_tunnel.c @@ -15,6 +15,7 @@ @@ -860,7 +828,7 @@ index 6399a8a69d07..ffc65dc4eea8 100644 static inline int br_vlan_tunid_cmp(struct rhashtable_compare_arg *arg, const void *ptr) -@@ -180,6 +181,7 @@ void br_handle_ingress_vlan_tunnel(struct sk_buff *skb, +@@ -180,6 +181,7 @@ void br_handle_ingress_vlan_tunnel(struc skb_dst_drop(skb); __vlan_hwaccel_put_tag(skb, p->br->vlan_proto, vlan->vid); @@ -868,7 +836,7 @@ index 6399a8a69d07..ffc65dc4eea8 100644 } int br_handle_egress_vlan_tunnel(struct sk_buff *skb, -@@ -201,6 +203,7 @@ int br_handle_egress_vlan_tunnel(struct sk_buff *skb, +@@ -201,6 +203,7 @@ int br_handle_egress_vlan_tunnel(struct if (err) return err; @@ -876,5 +844,3 @@ index 6399a8a69d07..ffc65dc4eea8 100644 tunnel_dst = rcu_dereference(vlan->tinfo.tunnel_dst); if (tunnel_dst && dst_hold_safe(&tunnel_dst->dst)) skb_dst_set(skb, &tunnel_dst->dst); --- - diff --git a/target/linux/generic/hack-5.15/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch b/target/linux/generic/hack-5.15/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch index 8d7919a6e4..8f2e6e0e0e 100644 --- a/target/linux/generic/hack-5.15/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch +++ b/target/linux/generic/hack-5.15/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch @@ -7,11 +7,9 @@ Subject: [PATCH] net/dsa/mv88e6xxx: disable ATU violation drivers/net/dsa/mv88e6xxx/chip.c | 3 +++ 1 file changed, 3 insertions(+) -diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c -index cad98ab421d7..790e1887d73b 100644 --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c -@@ -2981,6 +2981,9 @@ static int mv88e6xxx_setup_port(struct mv88e6xxx_chip *chip, int port) +@@ -2981,6 +2981,9 @@ static int mv88e6xxx_setup_port(struct m else reg = 1 << port; @@ -21,5 +19,3 @@ index cad98ab421d7..790e1887d73b 100644 err = mv88e6xxx_port_write(chip, port, MV88E6XXX_PORT_ASSOC_VECTOR, reg); if (err) --- - diff --git a/target/linux/generic/hack-5.15/780-usb-net-MeigLink_modem_support.patch b/target/linux/generic/hack-5.15/780-usb-net-MeigLink_modem_support.patch index fcf0a412ae..2cae49bb1f 100644 --- a/target/linux/generic/hack-5.15/780-usb-net-MeigLink_modem_support.patch +++ b/target/linux/generic/hack-5.15/780-usb-net-MeigLink_modem_support.patch @@ -8,11 +8,9 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support drivers/usb/serial/option.c | 7 +++++++ 2 files changed, 8 insertions(+) -diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c -index 8f1487f41085..d992985d599e 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c -@@ -1085,6 +1085,7 @@ static const struct usb_device_id products[] = { +@@ -1085,6 +1085,7 @@ static const struct usb_device_id produc {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0512)}, /* Quectel EG12/EM12 */ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0620)}, /* Quectel EM160R-GL */ {QMI_MATCH_FF_FF_FF(0x2c7c, 0x0800)}, /* Quectel RM500Q-GL */ @@ -20,11 +18,9 @@ index 8f1487f41085..d992985d599e 100644 /* 3. Combined interface devices matching on interface number */ {QMI_FIXED_INTF(0x0408, 0xea42, 4)}, /* Yota / Megafon M100-1 */ -diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c -index de59fa919540..9f00d047f5e9 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c -@@ -243,6 +243,8 @@ static void option_instat_callback(struct urb *urb); +@@ -243,6 +243,8 @@ static void option_instat_callback(struc #define UBLOX_PRODUCT_R6XX 0x90fa /* These Yuga products use Qualcomm's vendor ID */ #define YUGA_PRODUCT_CLM920_NC5 0x9625 @@ -33,7 +29,7 @@ index de59fa919540..9f00d047f5e9 100644 #define QUECTEL_VENDOR_ID 0x2c7c /* These Quectel products use Quectel's vendor ID */ -@@ -1133,6 +1135,11 @@ static const struct usb_device_id option_ids[] = { +@@ -1133,6 +1135,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) }, @@ -45,5 +41,3 @@ index de59fa919540..9f00d047f5e9 100644 { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0xff, 0xff), .driver_info = RSVD(1) | RSVD(2) | RSVD(3) | RSVD(4) | NUMEP2 }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0, 0) }, --- - diff --git a/target/linux/generic/hack-5.15/920-device_tree_cmdline.patch b/target/linux/generic/hack-5.15/920-device_tree_cmdline.patch index 0051edc25e..d1f36e716e 100644 --- a/target/linux/generic/hack-5.15/920-device_tree_cmdline.patch +++ b/target/linux/generic/hack-5.15/920-device_tree_cmdline.patch @@ -7,11 +7,9 @@ Subject: [PATCH] of/ftd: add device tree cmdline drivers/of/fdt.c | 3 +++ 1 file changed, 3 insertions(+) -diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c -index 59a7a9ee58ef..3b0b62b410dd 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c -@@ -1158,6 +1158,9 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname, +@@ -1158,6 +1158,9 @@ int __init early_init_dt_scan_chosen(uns p = of_get_flat_dt_prop(node, "bootargs", &l); if (p != NULL && l > 0) strlcpy(data, p, min(l, COMMAND_LINE_SIZE)); @@ -21,5 +19,3 @@ index 59a7a9ee58ef..3b0b62b410dd 100644 /* * CONFIG_CMDLINE is meant to be a default in case nothing else --- - diff --git a/target/linux/generic/pending-5.15/101-Use-stddefs.h-instead-of-compiler.h.patch b/target/linux/generic/pending-5.15/101-Use-stddefs.h-instead-of-compiler.h.patch index eefbe4b543..55388fb58a 100644 --- a/target/linux/generic/pending-5.15/101-Use-stddefs.h-instead-of-compiler.h.patch +++ b/target/linux/generic/pending-5.15/101-Use-stddefs.h-instead-of-compiler.h.patch @@ -9,8 +9,6 @@ Fix an issue with kernel headers that broke perf. include/uapi/linux/swab.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/include/uapi/linux/swab.h b/include/uapi/linux/swab.h -index 7272f85d6d6a..3736f2fe1541 100644 --- a/include/uapi/linux/swab.h +++ b/include/uapi/linux/swab.h @@ -3,7 +3,7 @@ @@ -22,5 +20,3 @@ index 7272f85d6d6a..3736f2fe1541 100644 #include #include --- - diff --git a/target/linux/generic/pending-5.15/400-mtd-mtdsplit-support.patch b/target/linux/generic/pending-5.15/400-mtd-mtdsplit-support.patch index 63df1d070d..8b34f4f467 100644 --- a/target/linux/generic/pending-5.15/400-mtd-mtdsplit-support.patch +++ b/target/linux/generic/pending-5.15/400-mtd-mtdsplit-support.patch @@ -11,8 +11,6 @@ Subject: [PATCH] mtd: mtdsplit support include/linux/mtd/partitions.h | 7 ++ 5 files changed, 197 insertions(+), 25 deletions(-) -diff --git a/drivers/mtd/Kconfig b/drivers/mtd/Kconfig -index 796a2eccbef0..f9ed93c4cf0f 100644 --- a/drivers/mtd/Kconfig +++ b/drivers/mtd/Kconfig @@ -12,6 +12,25 @@ menuconfig MTD @@ -41,11 +39,9 @@ index 796a2eccbef0..f9ed93c4cf0f 100644 config MTD_TESTS tristate "MTD tests support (DANGEROUS)" depends on m -diff --git a/drivers/mtd/Makefile b/drivers/mtd/Makefile -index 593d0593a038..b14b7fe0f597 100644 --- a/drivers/mtd/Makefile +++ b/drivers/mtd/Makefile -@@ -9,6 +9,8 @@ mtd-y := mtdcore.o mtdsuper.o mtdconcat.o mtdpart.o mtdchar.o +@@ -9,6 +9,8 @@ mtd-y := mtdcore.o mtdsuper.o mtdconc obj-y += parsers/ @@ -54,8 +50,6 @@ index 593d0593a038..b14b7fe0f597 100644 # 'Users' - code which presents functionality to userspace. obj-$(CONFIG_MTD_BLKDEVS) += mtd_blkdevs.o obj-$(CONFIG_MTD_BLOCK) += mtdblock.o -diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c -index d442fa94c872..f1ed12aae1fe 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -15,11 +15,13 @@ @@ -72,7 +66,7 @@ index d442fa94c872..f1ed12aae1fe 100644 /* * MTD methods which simply translate the effective address and pass through -@@ -236,6 +238,146 @@ static int mtd_add_partition_attrs(struct mtd_info *new) +@@ -236,6 +238,146 @@ static int mtd_add_partition_attrs(struc return ret; } @@ -219,7 +213,7 @@ index d442fa94c872..f1ed12aae1fe 100644 int mtd_add_partition(struct mtd_info *parent, const char *name, long long offset, long long length) { -@@ -274,6 +416,7 @@ int mtd_add_partition(struct mtd_info *parent, const char *name, +@@ -274,6 +416,7 @@ int mtd_add_partition(struct mtd_info *p if (ret) goto err_remove_part; @@ -227,7 +221,7 @@ index d442fa94c872..f1ed12aae1fe 100644 mtd_add_partition_attrs(child); return 0; -@@ -422,6 +565,7 @@ int add_mtd_partitions(struct mtd_info *parent, +@@ -422,6 +565,7 @@ int add_mtd_partitions(struct mtd_info * goto err_del_partitions; } @@ -235,7 +229,7 @@ index d442fa94c872..f1ed12aae1fe 100644 mtd_add_partition_attrs(child); /* Look for subpartitions */ -@@ -438,31 +582,6 @@ int add_mtd_partitions(struct mtd_info *parent, +@@ -438,31 +582,6 @@ err_del_partitions: return ret; } @@ -267,11 +261,9 @@ index d442fa94c872..f1ed12aae1fe 100644 /* * Many partition parsers just expected the core to kfree() all their data in * one chunk. Do that by default. -diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h -index 8a2c60235ebb..b092bf6ff97d 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h -@@ -613,6 +613,24 @@ static inline void mtd_align_erase_req(struct mtd_info *mtd, +@@ -613,6 +613,24 @@ static inline void mtd_align_erase_req(s req->len += mtd->erasesize - mod; } @@ -296,7 +288,7 @@ index 8a2c60235ebb..b092bf6ff97d 100644 static inline uint32_t mtd_div_by_ws(uint64_t sz, struct mtd_info *mtd) { if (mtd->writesize_shift) -@@ -685,6 +703,13 @@ extern void __put_mtd_device(struct mtd_info *mtd); +@@ -685,6 +703,13 @@ extern void __put_mtd_device(struct mtd_ extern struct mtd_info *get_mtd_device_nm(const char *name); extern void put_mtd_device(struct mtd_info *mtd); @@ -310,8 +302,6 @@ index 8a2c60235ebb..b092bf6ff97d 100644 struct mtd_notifier { void (*add)(struct mtd_info *mtd); -diff --git a/include/linux/mtd/partitions.h b/include/linux/mtd/partitions.h -index b74a539ec581..65ba0dbf961d 100644 --- a/include/linux/mtd/partitions.h +++ b/include/linux/mtd/partitions.h @@ -75,6 +75,12 @@ struct mtd_part_parser_data { @@ -335,5 +325,3 @@ index b74a539ec581..65ba0dbf961d 100644 }; /* Container for passing around a set of parsed partitions */ --- - diff --git a/target/linux/generic/pending-5.15/482-mtd-spi-nor-add-gd25q512.patch b/target/linux/generic/pending-5.15/482-mtd-spi-nor-add-gd25q512.patch index 96848e103f..7c8b686277 100644 --- a/target/linux/generic/pending-5.15/482-mtd-spi-nor-add-gd25q512.patch +++ b/target/linux/generic/pending-5.15/482-mtd-spi-nor-add-gd25q512.patch @@ -7,11 +7,9 @@ Subject: [PATCH] spi-nor/gigadevic: add gd25q512 drivers/mtd/spi-nor/gigadevice.c | 3 +++ 1 file changed, 3 insertions(+) -diff --git a/drivers/mtd/spi-nor/gigadevice.c b/drivers/mtd/spi-nor/gigadevice.c -index e52ed19d864f..d25292ec1eb9 100644 --- a/drivers/mtd/spi-nor/gigadevice.c +++ b/drivers/mtd/spi-nor/gigadevice.c -@@ -53,6 +53,9 @@ static const struct flash_info gigadevice_parts[] = { +@@ -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) .fixups = &gd25q256_fixups }, @@ -21,5 +19,3 @@ index e52ed19d864f..d25292ec1eb9 100644 }; const struct spi_nor_manufacturer spi_nor_gigadevice = { --- - diff --git a/target/linux/generic/pending-5.15/484-mtd-spi-nor-add-esmt-f25l16pa.patch b/target/linux/generic/pending-5.15/484-mtd-spi-nor-add-esmt-f25l16pa.patch index d5b7259351..ab402e622a 100644 --- a/target/linux/generic/pending-5.15/484-mtd-spi-nor-add-esmt-f25l16pa.patch +++ b/target/linux/generic/pending-5.15/484-mtd-spi-nor-add-esmt-f25l16pa.patch @@ -10,8 +10,6 @@ flash. drivers/mtd/spi-nor/esmt.c | 2 ++ 1 file changed, 2 insertions(+) -diff --git a/drivers/mtd/spi-nor/esmt.c b/drivers/mtd/spi-nor/esmt.c -index cfc9218c1053..d1750807f005 100644 --- a/drivers/mtd/spi-nor/esmt.c +++ b/drivers/mtd/spi-nor/esmt.c @@ -10,6 +10,8 @@ @@ -23,5 +21,3 @@ index cfc9218c1053..d1750807f005 100644 { "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, --- - diff --git a/target/linux/generic/pending-5.15/485-mtd-spi-nor-add-xmc-xm25qh128c.patch b/target/linux/generic/pending-5.15/485-mtd-spi-nor-add-xmc-xm25qh128c.patch index 2823464a60..68e373ea23 100644 --- a/target/linux/generic/pending-5.15/485-mtd-spi-nor-add-xmc-xm25qh128c.patch +++ b/target/linux/generic/pending-5.15/485-mtd-spi-nor-add-xmc-xm25qh128c.patch @@ -11,11 +11,9 @@ Datasheet available at https://www.xmcwh.com/uploads/435/XM25QH128C.pdf drivers/mtd/spi-nor/xmc.c | 2 ++ 1 file changed, 2 insertions(+) -diff --git a/drivers/mtd/spi-nor/xmc.c b/drivers/mtd/spi-nor/xmc.c -index 2c7773b68993..99ee43a654c4 100644 --- a/drivers/mtd/spi-nor/xmc.c +++ b/drivers/mtd/spi-nor/xmc.c -@@ -14,6 +14,8 @@ static const struct flash_info xmc_parts[] = { +@@ -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) }, @@ -24,5 +22,3 @@ index 2c7773b68993..99ee43a654c4 100644 }; const struct spi_nor_manufacturer spi_nor_xmc = { --- - diff --git a/target/linux/generic/pending-5.15/500-fs_cdrom_dependencies.patch b/target/linux/generic/pending-5.15/500-fs_cdrom_dependencies.patch index b46865fb55..2053c0fbe2 100644 --- a/target/linux/generic/pending-5.15/500-fs_cdrom_dependencies.patch +++ b/target/linux/generic/pending-5.15/500-fs_cdrom_dependencies.patch @@ -10,8 +10,6 @@ Subject: [PATCH] fs: add cdrom dependency fs/udf/Kconfig | 1 + 4 files changed, 4 insertions(+) -diff --git a/fs/hfs/Kconfig b/fs/hfs/Kconfig -index 129926b5142d..e0d2c647aa07 100644 --- a/fs/hfs/Kconfig +++ b/fs/hfs/Kconfig @@ -2,6 +2,7 @@ @@ -22,8 +20,6 @@ index 129926b5142d..e0d2c647aa07 100644 select NLS help If you say Y here, you will be able to mount Macintosh-formatted -diff --git a/fs/hfsplus/Kconfig b/fs/hfsplus/Kconfig -index 7d4229aecec0..648d91d1881f 100644 --- a/fs/hfsplus/Kconfig +++ b/fs/hfsplus/Kconfig @@ -2,6 +2,7 @@ @@ -34,8 +30,6 @@ index 7d4229aecec0..648d91d1881f 100644 select NLS select NLS_UTF8 help -diff --git a/fs/isofs/Kconfig b/fs/isofs/Kconfig -index 08ffd37b9bb8..f74680379207 100644 --- a/fs/isofs/Kconfig +++ b/fs/isofs/Kconfig @@ -1,6 +1,7 @@ @@ -46,8 +40,6 @@ index 08ffd37b9bb8..f74680379207 100644 help This is the standard file system used on CD-ROMs. It was previously known as "High Sierra File System" and is called "hsfs" on other -diff --git a/fs/udf/Kconfig b/fs/udf/Kconfig -index 26e1a49f3ba7..3f85a084d2b5 100644 --- a/fs/udf/Kconfig +++ b/fs/udf/Kconfig @@ -1,6 +1,7 @@ @@ -58,5 +50,3 @@ index 26e1a49f3ba7..3f85a084d2b5 100644 select CRC_ITU_T select NLS help --- - diff --git a/target/linux/generic/pending-5.15/683-of_net-add-mac-address-to-of-tree.patch b/target/linux/generic/pending-5.15/683-of_net-add-mac-address-to-of-tree.patch index 742d58b708..f7ef06a14a 100644 --- a/target/linux/generic/pending-5.15/683-of_net-add-mac-address-to-of-tree.patch +++ b/target/linux/generic/pending-5.15/683-of_net-add-mac-address-to-of-tree.patch @@ -15,11 +15,9 @@ property. This way, the MAC address can be accessed using procfs. net/core/of_net.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) -diff --git a/net/core/of_net.c b/net/core/of_net.c -index 71c38b532f72..43b28c8ddff9 100644 --- a/net/core/of_net.c +++ b/net/core/of_net.c -@@ -95,6 +95,27 @@ static int of_get_mac_addr_nvmem(struct device_node *np, u8 *addr) +@@ -95,6 +95,27 @@ static int of_get_mac_addr_nvmem(struct return 0; } @@ -47,7 +45,7 @@ index 71c38b532f72..43b28c8ddff9 100644 /** * of_get_mac_address() * @np: Caller's Device Node -@@ -175,6 +196,7 @@ int of_get_mac_address(struct device_node *np, u8 *addr) +@@ -175,6 +196,7 @@ found: addr[5] = (mac_val >> 0) & 0xff; } @@ -55,5 +53,3 @@ index 71c38b532f72..43b28c8ddff9 100644 return ret; } EXPORT_SYMBOL(of_get_mac_address); --- - From 4921ab0be462aa0336e3a100e0bf77ffbcc6c09a Mon Sep 17 00:00:00 2001 From: John Audia Date: Thu, 21 Jul 2022 16:12:42 -0400 Subject: [PATCH 28/33] kernel: bump 5.15 to 5.15.56 Manually rebased: bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch Remove upstreamed: bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch[1] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.56&id=2db3b95166f72e6481a79b82b1d6f94f4b18fcc1 Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Signed-off-by: John Audia --- include/kernel-5.15 | 4 +- ...oup-Disable-cgroup-memory-by-default.patch | 8 +-- ...1-Don-t-use-DT-aliases-for-numbering.patch | 2 +- ...0057-amba_pl011-Round-input-clock-up.patch | 10 +-- ...-Insert-mb-for-correct-FIFO-handling.patch | 2 +- ...Add-cts-event-workaround-DT-property.patch | 2 +- ...y-amba-pl011-Add-un-throttle-support.patch | 61 ------------------- ...011-Avoid-rare-write-when-full-error.patch | 2 +- ...50-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch | 8 +-- ...vice-quirks-for-A4Tech-FHD-1080p-web.patch | 8 +-- ...-unregistering-of-framebuffers-witho.patch | 2 +- ...-unplug-firmware-fb-devices-on-force.patch | 6 +- .../072-next-ARM_dts_BCM53015-add-mr26.patch | 2 +- ...vert-driver-core-Set-fw_devlink-on-b.patch | 2 +- 14 files changed, 29 insertions(+), 90 deletions(-) delete mode 100644 target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch diff --git a/include/kernel-5.15 b/include/kernel-5.15 index 8045799cc7..a8540b3d82 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .55 -LINUX_KERNEL_HASH-5.15.55 = 1ef6bd508b6c3af3bef2d5b337e4477254dba284c79e329aa38f9763ae3bfdcc +LINUX_VERSION-5.15 = .56 +LINUX_KERNEL_HASH-5.15.56 = e9a6bb3437f1497b1c74841ebf70d5b96f915d6ac767b5ba3d8d820dd89b8223 diff --git a/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch index 6ea14aba94..85f909847b 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0035-cgroup-Disable-cgroup-memory-by-default.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c -@@ -5824,6 +5824,9 @@ int __init cgroup_init_early(void) +@@ -5833,6 +5833,9 @@ int __init cgroup_init_early(void) return 0; } @@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell /** * cgroup_init - cgroup initialization * -@@ -5862,6 +5865,12 @@ int __init cgroup_init(void) +@@ -5871,6 +5874,12 @@ int __init cgroup_init(void) mutex_unlock(&cgroup_mutex); @@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell for_each_subsys(ss, ssid) { if (ss->early_init) { struct cgroup_subsys_state *css = -@@ -6446,6 +6455,10 @@ static int __init cgroup_disable(char *s +@@ -6455,6 +6464,10 @@ static int __init cgroup_disable(char *s strcmp(token, ss->legacy_name)) continue; @@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell static_branch_disable(cgroup_subsys_enabled_key[i]); pr_info("Disabling %s control group subsystem\n", ss->name); -@@ -6464,6 +6477,31 @@ static int __init cgroup_disable(char *s +@@ -6473,6 +6486,31 @@ static int __init cgroup_disable(char *s } __setup("cgroup_disable=", cgroup_disable); diff --git a/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch b/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch index 0fa06335aa..fe2b83dd42 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0056-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch @@ -14,7 +14,7 @@ use the same logic. --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -2725,7 +2725,12 @@ static int pl011_setup_port(struct devic +@@ -2744,7 +2744,12 @@ static int pl011_setup_port(struct devic if (IS_ERR(base)) return PTR_ERR(base); diff --git a/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch b/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch index 96435fe809..8fb5c393b6 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0057-amba_pl011-Round-input-clock-up.patch @@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1718,6 +1718,23 @@ static void pl011_put_poll_char(struct u +@@ -1727,6 +1727,23 @@ static void pl011_put_poll_char(struct u #endif /* CONFIG_CONSOLE_POLL */ @@ -50,7 +50,7 @@ Signed-off-by: Phil Elwell static int pl011_hwinit(struct uart_port *port) { struct uart_amba_port *uap = -@@ -1734,7 +1751,7 @@ static int pl011_hwinit(struct uart_port +@@ -1743,7 +1760,7 @@ static int pl011_hwinit(struct uart_port if (retval) return retval; @@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell /* Clear pending error and receive interrupts */ pl011_write(UART011_OEIS | UART011_BEIS | UART011_PEIS | -@@ -2421,7 +2438,7 @@ static int pl011_console_setup(struct co +@@ -2440,7 +2457,7 @@ static int pl011_console_setup(struct co plat->init(); } @@ -68,7 +68,7 @@ Signed-off-by: Phil Elwell if (uap->vendor->fixed_options) { baud = uap->fixed_baud; -@@ -2638,6 +2655,7 @@ static struct uart_driver amba_reg = { +@@ -2657,6 +2674,7 @@ static struct uart_driver amba_reg = { .cons = AMBA_CONSOLE, }; @@ -76,7 +76,7 @@ Signed-off-by: Phil Elwell static int pl011_probe_dt_alias(int index, struct device *dev) { struct device_node *np; -@@ -2669,6 +2687,7 @@ static int pl011_probe_dt_alias(int inde +@@ -2688,6 +2706,7 @@ static int pl011_probe_dt_alias(int inde return ret; } diff --git a/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch b/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch index adb5e0073f..88388f4259 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0058-amba_pl011-Insert-mb-for-correct-FIFO-handling.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1423,6 +1423,7 @@ static bool pl011_tx_char(struct uart_am +@@ -1432,6 +1432,7 @@ static bool pl011_tx_char(struct uart_am return false; /* unable to transmit character */ pl011_write(c, uap, REG_DR); diff --git a/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch b/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch index 5dfe214100..02d86cfc61 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0059-amba_pl011-Add-cts-event-workaround-DT-property.patch @@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell - reg --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -2816,6 +2816,11 @@ static int pl011_probe(struct amba_devic +@@ -2835,6 +2835,11 @@ static int pl011_probe(struct amba_devic if (IS_ERR(uap->clk)) return PTR_ERR(uap->clk); diff --git a/target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch b/target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch deleted file mode 100644 index 3b0bca7adb..0000000000 --- a/target/linux/bcm27xx/patches-5.15/950-0060-tty-amba-pl011-Add-un-throttle-support.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 48cb6ac7067b412c56a0a6aca43f5c964dfb7dec Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 24 Jan 2020 11:38:28 +0000 -Subject: [PATCH] tty: amba-pl011: Add un/throttle support - -The PL011 driver lacks throttle and unthrottle methods. As a result, -sending more data to the Pi than it can immediately sink while CRTSCTS -is enabled causes a NULL pointer to be followed. - -Add a throttle handler that disables the RX interrupts, and an -unthrottle handler that reenables them. - -Signed-off-by: Phil Elwell ---- - drivers/tty/serial/amba-pl011.c | 28 ++++++++++++++++++++++++++++ - 1 file changed, 28 insertions(+) - ---- a/drivers/tty/serial/amba-pl011.c -+++ b/drivers/tty/serial/amba-pl011.c -@@ -1360,6 +1360,32 @@ static void pl011_start_tx(struct uart_p - pl011_start_tx_pio(uap); - } - -+static void pl011_throttle(struct uart_port *port) -+{ -+ struct uart_amba_port *uap = -+ container_of(port, struct uart_amba_port, port); -+ unsigned long flags; -+ -+ spin_lock_irqsave(&uap->port.lock, flags); -+ uap->im &= ~(UART011_RTIM | UART011_RXIM); -+ pl011_write(uap->im, uap, REG_IMSC); -+ spin_unlock_irqrestore(&uap->port.lock, flags); -+} -+ -+static void pl011_unthrottle(struct uart_port *port) -+{ -+ struct uart_amba_port *uap = -+ container_of(port, struct uart_amba_port, port); -+ unsigned long flags; -+ -+ spin_lock_irqsave(&uap->port.lock, flags); -+ uap->im |= UART011_RTIM; -+ if (!pl011_dma_rx_running(uap)) -+ uap->im |= UART011_RXIM; -+ pl011_write(uap->im, uap, REG_IMSC); -+ spin_unlock_irqrestore(&uap->port.lock, flags); -+} -+ - static void pl011_stop_rx(struct uart_port *port) - { - struct uart_amba_port *uap = -@@ -2263,6 +2289,8 @@ static const struct uart_ops amba_pl011_ - .stop_tx = pl011_stop_tx, - .start_tx = pl011_start_tx, - .stop_rx = pl011_stop_rx, -+ .throttle = pl011_throttle, -+ .unthrottle = pl011_unthrottle, - .enable_ms = pl011_enable_ms, - .break_ctl = pl011_break_ctl, - .startup = pl011_startup, diff --git a/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch b/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch index c72eeb470e..7607714a20 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0061-tty-amba-pl011-Avoid-rare-write-when-full-error.patch @@ -29,7 +29,7 @@ Signed-off-by: Phil Elwell --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c -@@ -1510,6 +1510,10 @@ static bool pl011_tx_chars(struct uart_a +@@ -1493,6 +1493,10 @@ static bool pl011_tx_chars(struct uart_a if (likely(from_irq) && count-- == 0) break; diff --git a/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch b/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch index 2b2a5f50ff..b2286f8f80 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0067-fbdev-add-FBIOCOPYAREA-ioctl.patch @@ -244,7 +244,7 @@ Signed-off-by: Dave Stevenson static int bcm2708_fb_register(struct bcm2708_fb *fb) --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -1096,6 +1096,30 @@ fb_blank(struct fb_info *info, int blank +@@ -1097,6 +1097,30 @@ fb_blank(struct fb_info *info, int blank } EXPORT_SYMBOL(fb_blank); @@ -275,7 +275,7 @@ Signed-off-by: Dave Stevenson static long do_fb_ioctl(struct fb_info *info, unsigned int cmd, unsigned long arg) { -@@ -1104,6 +1128,7 @@ static long do_fb_ioctl(struct fb_info * +@@ -1105,6 +1129,7 @@ static long do_fb_ioctl(struct fb_info * struct fb_fix_screeninfo fix; struct fb_cmap cmap_from; struct fb_cmap_user cmap; @@ -283,7 +283,7 @@ Signed-off-by: Dave Stevenson void __user *argp = (void __user *)arg; long ret = 0; -@@ -1181,6 +1206,15 @@ static long do_fb_ioctl(struct fb_info * +@@ -1182,6 +1207,15 @@ static long do_fb_ioctl(struct fb_info * unlock_fb_info(info); console_unlock(); break; @@ -299,7 +299,7 @@ Signed-off-by: Dave Stevenson default: lock_fb_info(info); fb = info->fbops; -@@ -1320,6 +1354,7 @@ static long fb_compat_ioctl(struct file +@@ -1321,6 +1355,7 @@ static long fb_compat_ioctl(struct file case FBIOPAN_DISPLAY: case FBIOGET_CON2FBMAP: case FBIOPUT_CON2FBMAP: diff --git a/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch b/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch index d0c6a88542..8a3ab3e46e 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0470-sound-usb-add-device-quirks-for-A4Tech-FHD-1080p-web.patch @@ -16,10 +16,10 @@ Signed-off-by: Jonathan Bell --- a/sound/usb/quirks.c +++ b/sound/usb/quirks.c -@@ -1912,6 +1912,8 @@ static const struct usb_audio_quirk_flag - QUIRK_FLAG_ALIGN_TRANSFER), - DEVICE_FLG(0x1224, 0x2a25, /* Jieli Technology USB PHY 2.0 */ - QUIRK_FLAG_GET_SAMPLE_RATE), +@@ -1921,6 +1921,8 @@ static const struct usb_audio_quirk_flag + QUIRK_FLAG_GENERIC_IMPLICIT_FB), + DEVICE_FLG(0x2b53, 0x0031, /* Fiero SC-01 (firmware v1.1.0) */ + QUIRK_FLAG_GENERIC_IMPLICIT_FB), + DEVICE_FLG(0x09da, 0x2695, /* A4Tech FHD 1080p webcam */ + QUIRK_FLAG_DISABLE_AUTOSUSPEND | QUIRK_FLAG_GET_SAMPLE_RATE), diff --git a/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch b/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch index b609b65246..69fa9a44de 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0880-Revert-fbdev-Fix-unregistering-of-framebuffers-witho.patch @@ -11,7 +11,7 @@ This reverts commit 2388f826cdc9af2651991adc0feb79de9bdf2232. --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -1628,14 +1628,7 @@ static void do_remove_conflicting_frameb +@@ -1629,14 +1629,7 @@ static void do_remove_conflicting_frameb * If it's not a platform device, at least print a warning. A * fix would add code to remove the device from the system. */ diff --git a/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch b/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch index 870e59a6a5..b2fc4d8ffc 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0881-Revert-fbdev-Hot-unplug-firmware-fb-devices-on-force.patch @@ -12,7 +12,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c -@@ -25,7 +25,6 @@ +@@ -26,7 +26,6 @@ #include #include #include @@ -20,7 +20,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. #include #include #include -@@ -1605,36 +1604,18 @@ static void do_remove_conflicting_frameb +@@ -1606,36 +1605,18 @@ static void do_remove_conflicting_frameb /* check all firmware fbs and kick off if the base addr overlaps */ for_each_registered_fb(i) { struct apertures_struct *gen_aper; @@ -58,7 +58,7 @@ This reverts commit c894ac44786cfed383a6c6b20c1bfb12eb96018a. } } } -@@ -1961,13 +1942,9 @@ EXPORT_SYMBOL(register_framebuffer); +@@ -1973,13 +1954,9 @@ EXPORT_SYMBOL(register_framebuffer); void unregister_framebuffer(struct fb_info *fb_info) { diff --git a/target/linux/bcm53xx/patches-5.15/072-next-ARM_dts_BCM53015-add-mr26.patch b/target/linux/bcm53xx/patches-5.15/072-next-ARM_dts_BCM53015-add-mr26.patch index 4517b23f8b..c85f27282d 100644 --- a/target/linux/bcm53xx/patches-5.15/072-next-ARM_dts_BCM53015-add-mr26.patch +++ b/target/linux/bcm53xx/patches-5.15/072-next-ARM_dts_BCM53015-add-mr26.patch @@ -232,7 +232,7 @@ Signed-off-by: Florian Fainelli +}; --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile -@@ -129,6 +129,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \ +@@ -128,6 +128,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \ bcm47094-luxul-xwr-3150-v1.dtb \ bcm47094-netgear-r8500.dtb \ bcm47094-phicomm-k3.dtb \ diff --git a/target/linux/generic/hack-5.15/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch b/target/linux/generic/hack-5.15/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch index 5dd0554edb..4f4d6c7509 100644 --- a/target/linux/generic/hack-5.15/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch +++ b/target/linux/generic/hack-5.15/930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch @@ -19,7 +19,7 @@ Signed-off-by: Rafał Miłecki --- a/drivers/base/core.c +++ b/drivers/base/core.c -@@ -1561,7 +1561,7 @@ static void device_links_purge(struct de +@@ -1562,7 +1562,7 @@ static void device_links_purge(struct de #define FW_DEVLINK_FLAGS_RPM (FW_DEVLINK_FLAGS_ON | \ DL_FLAG_PM_RUNTIME) From 317f59a0ee33b0deb0be4cedb7da20b302c7f6b9 Mon Sep 17 00:00:00 2001 From: John Audia Date: Sat, 23 Jul 2022 15:21:20 -0400 Subject: [PATCH 29/33] kernel: bump 5.15 to 5.15.57 All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Signed-off-by: John Audia --- include/kernel-5.15 | 4 ++-- target/linux/generic/hack-5.15/221-module_exports.patch | 2 +- .../generic/pending-5.15/203-kallsyms_uncompressed.patch | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/kernel-5.15 b/include/kernel-5.15 index a8540b3d82..a15a5f667b 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .56 -LINUX_KERNEL_HASH-5.15.56 = e9a6bb3437f1497b1c74841ebf70d5b96f915d6ac767b5ba3d8d820dd89b8223 +LINUX_VERSION-5.15 = .57 +LINUX_KERNEL_HASH-5.15.57 = 62e3095a1fc876315150c93aad1546cc198e3ba5863b3d7ff7da21fbee20f0fd diff --git a/target/linux/generic/hack-5.15/221-module_exports.patch b/target/linux/generic/hack-5.15/221-module_exports.patch index f620e87126..204027d769 100644 --- a/target/linux/generic/hack-5.15/221-module_exports.patch +++ b/target/linux/generic/hack-5.15/221-module_exports.patch @@ -115,7 +115,7 @@ Signed-off-by: Felix Fietkau .previous --- a/scripts/Makefile.build +++ b/scripts/Makefile.build -@@ -396,7 +396,7 @@ targets += $(real-dtb-y) $(lib-y) $(alwa +@@ -397,7 +397,7 @@ targets += $(real-dtb-y) $(lib-y) $(alwa # Linker scripts preprocessor (.lds.S -> .lds) # --------------------------------------------------------------------------- quiet_cmd_cpp_lds_S = LDS $@ diff --git a/target/linux/generic/pending-5.15/203-kallsyms_uncompressed.patch b/target/linux/generic/pending-5.15/203-kallsyms_uncompressed.patch index ea407d6db9..4f51e524c3 100644 --- a/target/linux/generic/pending-5.15/203-kallsyms_uncompressed.patch +++ b/target/linux/generic/pending-5.15/203-kallsyms_uncompressed.patch @@ -106,7 +106,7 @@ Signed-off-by: Felix Fietkau } --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh -@@ -263,6 +263,10 @@ kallsyms() +@@ -266,6 +266,10 @@ kallsyms() kallsymopt="${kallsymopt} --base-relative" fi From 9d2ffe8cb895b8fd3f8f30389a50201babd213d9 Mon Sep 17 00:00:00 2001 From: John Audia Date: Mon, 25 Jul 2022 08:27:13 -0400 Subject: [PATCH 30/33] x86: update defconfig for 5.15.57 Add some new/missing symbols relating to speculative execution mitigations[1]. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v5.15.57&id2=v5.15.56 Signed-off-by: John Audia --- target/linux/x86/config-5.15 | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/target/linux/x86/config-5.15 b/target/linux/x86/config-5.15 index b10640dda3..fba8dbac29 100644 --- a/target/linux/x86/config-5.15 +++ b/target/linux/x86/config-5.15 @@ -53,6 +53,9 @@ CONFIG_CPU_FREQ_GOV_PERFORMANCE=y # CONFIG_CPU_FREQ_GOV_POWERSAVE is not set # CONFIG_CPU_FREQ_GOV_USERSPACE is not set CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_IBPB_ENTRY=y +CONFIG_CPU_IBRS_ENTRY=y +# CONFIG_SLS is not set CONFIG_CPU_IDLE=y CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_SUP_AMD=y @@ -63,11 +66,13 @@ CONFIG_CPU_SUP_INTEL=y CONFIG_CPU_SUP_TRANSMETA_32=y CONFIG_CPU_SUP_UMC_32=y CONFIG_CPU_SUP_ZHAOXIN=y +CONFIG_CPU_UNRET_ENTRY=y CONFIG_CRASH_CORE=y CONFIG_CRC16=y CONFIG_CRYPTO_CRC32=y CONFIG_CRYPTO_CRC32C=y # CONFIG_CRYPTO_CRC32_PCLMUL is not set +CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1 CONFIG_CRYPTO_RNG2=y # CONFIG_CRYPTO_SERPENT_SSE2_586 is not set @@ -82,6 +87,7 @@ CONFIG_DEBUG_MISC=y # CONFIG_DEBUG_TLBFLUSH is not set CONFIG_DECOMPRESS_BZIP2=y CONFIG_DECOMPRESS_GZIP=y +CONFIG_RETHUNK=y CONFIG_DMADEVICES=y CONFIG_DMI=y CONFIG_DMIID=y @@ -320,6 +326,7 @@ CONFIG_SG_POOL=y # CONFIG_SMSC_SCH311X_WDT is not set CONFIG_SPARSEMEM_STATIC=y CONFIG_SPARSE_IRQ=y +CONFIG_SPECULATION_MITIGATIONS=y CONFIG_SRCU=y # CONFIG_STATIC_CALL_SELFTEST is not set CONFIG_SYSCTL_EXCEPTION_TRACE=y From 364575e3a31e2e4e775a802fc8453b2d5a520e04 Mon Sep 17 00:00:00 2001 From: John Audia Date: Fri, 29 Jul 2022 12:07:55 -0400 Subject: [PATCH 31/33] kernel: bump 5.15 to 5.15.58 All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Signed-off-by: John Audia --- include/kernel-5.15 | 4 ++-- .../patches-5.15/910-unaligned_access_hacks.patch | 2 +- ...spi-bcm2835-enable-shared-interrupt-support.patch | 2 +- ...ement-xhci_fixup_endpoint-for-interval-adju.patch | 4 ++-- ...ctor-out-TRBS_PER_SEGMENT-define-in-runtime.patch | 4 ++-- .../hack-5.15/721-net-add-packet-mangeling.patch | 4 ++-- ...net-usb-r8152-add-LED-configuration-from-OF.patch | 8 ++++---- .../generic/pending-5.15/655-increase_skb_pad.patch | 2 +- .../680-NET-skip-GRO-for-foreign-MAC-addresses.patch | 12 ++++++------ 9 files changed, 21 insertions(+), 21 deletions(-) diff --git a/include/kernel-5.15 b/include/kernel-5.15 index a15a5f667b..5bbf12d6f4 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .57 -LINUX_KERNEL_HASH-5.15.57 = 62e3095a1fc876315150c93aad1546cc198e3ba5863b3d7ff7da21fbee20f0fd +LINUX_VERSION-5.15 = .58 +LINUX_KERNEL_HASH-5.15.58 = d75bd9579c4b318e6162e21c591878fd37efda0f79c5cdd0dc4eb9ea9dfc4fa8 diff --git a/target/linux/ath79/patches-5.15/910-unaligned_access_hacks.patch b/target/linux/ath79/patches-5.15/910-unaligned_access_hacks.patch index bafbcd3b5a..ef9dab5508 100644 --- a/target/linux/ath79/patches-5.15/910-unaligned_access_hacks.patch +++ b/target/linux/ath79/patches-5.15/910-unaligned_access_hacks.patch @@ -706,7 +706,7 @@ EXPORT_SYMBOL(xfrm_parse_spi); --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c -@@ -4133,14 +4133,16 @@ static bool tcp_parse_aligned_timestamp( +@@ -4138,14 +4138,16 @@ static bool tcp_parse_aligned_timestamp( { const __be32 *ptr = (const __be32 *)(th + 1); diff --git a/target/linux/bcm27xx/patches-5.15/950-0146-spi-bcm2835-enable-shared-interrupt-support.patch b/target/linux/bcm27xx/patches-5.15/950-0146-spi-bcm2835-enable-shared-interrupt-support.patch index 2aca884b36..723e44f0eb 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0146-spi-bcm2835-enable-shared-interrupt-support.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0146-spi-bcm2835-enable-shared-interrupt-support.patch @@ -23,7 +23,7 @@ Signed-off-by: Martin Sperl /* Read as many bytes as possible from FIFO */ bcm2835_rd_fifo(bs); /* Write as many bytes as possible to FIFO */ -@@ -1365,7 +1369,8 @@ static int bcm2835_spi_probe(struct plat +@@ -1369,7 +1373,8 @@ static int bcm2835_spi_probe(struct plat bcm2835_wr(bs, BCM2835_SPI_CS, BCM2835_SPI_CS_CLEAR_RX | BCM2835_SPI_CS_CLEAR_TX); diff --git a/target/linux/bcm27xx/patches-5.15/950-0152-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch b/target/linux/bcm27xx/patches-5.15/950-0152-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch index aa12dae1fc..166ca54512 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0152-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0152-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch @@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -1618,6 +1618,109 @@ command_cleanup: +@@ -1620,6 +1620,109 @@ command_cleanup: } /* @@ -125,7 +125,7 @@ Signed-off-by: Jonathan Bell * non-error returns are a promise to giveback() the urb later * we drop ownership so next owner (or urb unlink) can get it */ -@@ -5443,6 +5546,7 @@ static const struct hc_driver xhci_hc_dr +@@ -5445,6 +5548,7 @@ static const struct hc_driver xhci_hc_dr .endpoint_reset = xhci_endpoint_reset, .check_bandwidth = xhci_check_bandwidth, .reset_bandwidth = xhci_reset_bandwidth, diff --git a/target/linux/bcm27xx/patches-5.15/950-0605-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch b/target/linux/bcm27xx/patches-5.15/950-0605-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch index a18a9525e2..4387b4eed9 100644 --- a/target/linux/bcm27xx/patches-5.15/950-0605-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch +++ b/target/linux/bcm27xx/patches-5.15/950-0605-xhci-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch @@ -226,7 +226,7 @@ Signed-off-by: Jonathan Bell } --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -877,8 +877,8 @@ static void xhci_clear_command_ring(stru +@@ -879,8 +879,8 @@ static void xhci_clear_command_ring(stru seg = ring->deq_seg; do { memset(seg->trbs, 0, @@ -237,7 +237,7 @@ Signed-off-by: Jonathan Bell cpu_to_le32(~TRB_CYCLE); seg = seg->next; } while (seg != ring->deq_seg); -@@ -889,7 +889,7 @@ static void xhci_clear_command_ring(stru +@@ -891,7 +891,7 @@ static void xhci_clear_command_ring(stru ring->enq_seg = ring->deq_seg; ring->enqueue = ring->dequeue; diff --git a/target/linux/generic/hack-5.15/721-net-add-packet-mangeling.patch b/target/linux/generic/hack-5.15/721-net-add-packet-mangeling.patch index 256fdf5757..d7c7c20fee 100644 --- a/target/linux/generic/hack-5.15/721-net-add-packet-mangeling.patch +++ b/target/linux/generic/hack-5.15/721-net-add-packet-mangeling.patch @@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau */ --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h -@@ -2771,6 +2771,10 @@ static inline int pskb_trim(struct sk_bu +@@ -2816,6 +2816,10 @@ static inline int pskb_trim(struct sk_bu return (len < skb->len) ? __pskb_trim(skb, len) : 0; } @@ -82,7 +82,7 @@ Signed-off-by: Felix Fietkau /** * pskb_trim_unique - remove end from a paged unique (not cloned) buffer * @skb: buffer to alter -@@ -2921,16 +2925,6 @@ static inline struct sk_buff *dev_alloc_ +@@ -2966,16 +2970,6 @@ static inline struct sk_buff *dev_alloc_ } diff --git a/target/linux/generic/hack-5.15/760-net-usb-r8152-add-LED-configuration-from-OF.patch b/target/linux/generic/hack-5.15/760-net-usb-r8152-add-LED-configuration-from-OF.patch index b71e1df06f..c315dcf8ff 100644 --- a/target/linux/generic/hack-5.15/760-net-usb-r8152-add-LED-configuration-from-OF.patch +++ b/target/linux/generic/hack-5.15/760-net-usb-r8152-add-LED-configuration-from-OF.patch @@ -22,7 +22,7 @@ Signed-off-by: David Bauer #include #include #include -@@ -6852,6 +6853,22 @@ static void rtl_tally_reset(struct r8152 +@@ -6864,6 +6865,22 @@ static void rtl_tally_reset(struct r8152 ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data); } @@ -45,7 +45,7 @@ Signed-off-by: David Bauer static void r8152b_init(struct r8152 *tp) { u32 ocp_data; -@@ -6893,6 +6910,8 @@ static void r8152b_init(struct r8152 *tp +@@ -6905,6 +6922,8 @@ static void r8152b_init(struct r8152 *tp ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL); ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN); ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data); @@ -54,7 +54,7 @@ Signed-off-by: David Bauer } static void r8153_init(struct r8152 *tp) -@@ -7033,6 +7052,8 @@ static void r8153_init(struct r8152 *tp) +@@ -7045,6 +7064,8 @@ static void r8153_init(struct r8152 *tp) tp->coalesce = COALESCE_SLOW; break; } @@ -63,7 +63,7 @@ Signed-off-by: David Bauer } static void r8153b_init(struct r8152 *tp) -@@ -7115,6 +7136,8 @@ static void r8153b_init(struct r8152 *tp +@@ -7127,6 +7148,8 @@ static void r8153b_init(struct r8152 *tp rtl_tally_reset(tp); tp->coalesce = 15000; /* 15 us */ diff --git a/target/linux/generic/pending-5.15/655-increase_skb_pad.patch b/target/linux/generic/pending-5.15/655-increase_skb_pad.patch index 9d03fe5c31..f89ee0b8d2 100644 --- a/target/linux/generic/pending-5.15/655-increase_skb_pad.patch +++ b/target/linux/generic/pending-5.15/655-increase_skb_pad.patch @@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h -@@ -2737,7 +2737,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) */ #ifndef NET_SKB_PAD diff --git a/target/linux/generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch index 8b4cd10488..1910174b42 100644 --- a/target/linux/generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +++ b/target/linux/generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch @@ -22,7 +22,7 @@ Signed-off-by: Felix Fietkau #endif --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h -@@ -855,6 +855,7 @@ struct sk_buff { +@@ -890,6 +890,7 @@ struct sk_buff { #ifdef CONFIG_IPV6_NDISC_NODETYPE __u8 ndisc_nodetype:2; #endif @@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau __u8 inner_protocol_type:1; --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -6061,6 +6061,9 @@ static enum gro_result dev_gro_receive(s +@@ -6062,6 +6062,9 @@ static enum gro_result dev_gro_receive(s int same_flow; int grow; @@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau if (netif_elide_gro(skb->dev)) goto normal; -@@ -8075,6 +8078,48 @@ static void __netdev_adjacent_dev_unlink +@@ -8076,6 +8079,48 @@ static void __netdev_adjacent_dev_unlink &upper_dev->adj_list.lower); } @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau static int __netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, bool master, void *upper_priv, void *upper_info, -@@ -8126,6 +8171,7 @@ static int __netdev_upper_dev_link(struc +@@ -8127,6 +8172,7 @@ static int __netdev_upper_dev_link(struc if (ret) return ret; @@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, &changeupper_info.info); ret = notifier_to_errno(ret); -@@ -8222,6 +8268,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); @@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, &changeupper_info.info); -@@ -9041,6 +9088,7 @@ int dev_set_mac_address(struct net_devic +@@ -9042,6 +9089,7 @@ int dev_set_mac_address(struct net_devic if (err) return err; dev->addr_assign_type = NET_ADDR_SET; From 13308161788c98ae6cd48c22b13339fdb8c77130 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Sun, 20 Mar 2022 23:42:37 +0800 Subject: [PATCH 32/33] ramips: add support for H3C TX1800 Plus / TX1801 Plus / TX1806 H3C TX180x series WiFi6 routers are customized by different carrier. While these three devices look different, they use the same motherboard inside. Another minor difference comes from the model name definition in the u-boot environment variable. Specifications: SOC: MT7621 + MT7915 ROM: 128 MiB RAM: 256 MiB LED: status *2 Button: reset *1 + wps/mesh *1 Ethernet: lan *3 + wan *1 (10/100/1000Mbps) TTL Baudrate: 115200 TFTP server IP: 192.168.124.99 MAC Address: use address(sample 1) address(sample 2) source label 88:xx:xx:98:xx:12 88:xx:xx:a2:xx:a5 u-boot-env@ethaddr lan 88:xx:xx:98:xx:13 88:xx:xx:a2:xx:a6 $label +1 wan 88:xx:xx:98:xx:12 88:xx:xx:a2:xx:a5 $label WiFi4_2G 8a:xx:xx:58:xx:14 8a:xx:xx:52:xx:a7 (Compatibility mode) WiFi5_5G 8a:xx:xx:b8:xx:14 8a:xx:xx:b2:xx:a7 (Compatibility mode) WiFi6_2G 8a:xx:xx:18:xx:14 8a:xx:xx:12:xx:a7 WiFi6_5G 8a:xx:xx:78:xx:14 8a:xx:xx:72:xx:a7 Compatibility mode is used to guarantee the connection of old devices that only support WiFi4 or WiFi5. TFTP + TTL Installation: Although a TTL connection is required for installation, we do not need to tear down it. We can find the TTL port from the cooling hole at the bottom. It is located below LAN3 and the pins are defined as follows: |LAN1|LAN2|LAN3|----|WAN| -------------------- |GND|TX|RX|VCC| 1. Set tftp server IP to 192.168.124.99 and put initramfs firmware in server's root directory, rename it to a simple name "initramfs.bin". 2. Plug in the power supply and wait for power on, connect the TTL cable and open a TTL session, enter "reboot", then enter "Y" to confirm. Finally push "0" to interruput boot while booting. 3. Execute command to install a initramfs system: # tftp 0x80010000 192.168.124.99:initramfs.bin # bootm 0x80010000 4. Backup nand flash by OpenWrt LuCI or dd instruction. We need those partitions if we want to back to stock firmwre due to official website does not provide download link. # dd if=/dev/mtd1 of=/tmp/u-boot-env.bin # dd if=/dev/mtd4 of=/tmp/firmware.bin 5. Edit u-boot env to ensure use default bootargs and first image slot: # fw_setenv bootargs # fw_setenv bootflag 0 6. Upgrade sysupgrade firmware. 7. About restore stock firmware: flash the "firmware" and "u-boot-env" partitions that we backed up in step 4. # mtd write /tmp/u-boot-env.bin u-boot-env # mtd write /tmp/firmware.bin firmware Additional Info: The H3C stock firmware has a 160-byte firmware header that appears to use a non-standard CRC32 verification algorithm. For this part of the data, the u-boot does not check it so we can just directly replace it with a placeholder. Signed-off-by: Shiji Yang --- package/boot/uboot-envtools/files/ramips | 9 +- .../ramips/dts/mt7621_h3c_tx1800-plus.dts | 8 + .../ramips/dts/mt7621_h3c_tx1801-plus.dts | 8 + target/linux/ramips/dts/mt7621_h3c_tx1806.dts | 8 + .../linux/ramips/dts/mt7621_h3c_tx180x.dtsi | 165 ++++++++++++++++++ target/linux/ramips/image/mt7621.mk | 40 +++++ .../mt7621/base-files/etc/board.d/02_network | 10 ++ .../etc/hotplug.d/ieee80211/10_fix_wifi_mac | 7 + .../mt7621/base-files/lib/upgrade/platform.sh | 3 + 9 files changed, 255 insertions(+), 3 deletions(-) create mode 100644 target/linux/ramips/dts/mt7621_h3c_tx1800-plus.dts create mode 100644 target/linux/ramips/dts/mt7621_h3c_tx1801-plus.dts create mode 100644 target/linux/ramips/dts/mt7621_h3c_tx1806.dts create mode 100644 target/linux/ramips/dts/mt7621_h3c_tx180x.dtsi diff --git a/package/boot/uboot-envtools/files/ramips b/package/boot/uboot-envtools/files/ramips index 7514bf65fb..738d983af2 100644 --- a/package/boot/uboot-envtools/files/ramips +++ b/package/boot/uboot-envtools/files/ramips @@ -44,15 +44,18 @@ zbtlink,zbt-wg2626|\ zte,mf283plus) ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000" ;; +h3c,tx1800-plus|\ +h3c,tx1801-plus|\ +h3c,tx1806|\ +jcg,q20) + ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000" + ;; hootoo,ht-tm05|\ ravpower,rp-wd03) idx="$(find_mtd_index u-boot-env)" [ -n "$idx" ] && \ ubootenv_add_uci_config "/dev/mtd$idx" "0x4000" "0x1000" "0x1000" ;; -jcg,q20) - ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000" - ;; beeline,smartbox-flash|\ linksys,ea6350-v4|\ linksys,ea7300-v1|\ diff --git a/target/linux/ramips/dts/mt7621_h3c_tx1800-plus.dts b/target/linux/ramips/dts/mt7621_h3c_tx1800-plus.dts new file mode 100644 index 0000000000..f763dd14dd --- /dev/null +++ b/target/linux/ramips/dts/mt7621_h3c_tx1800-plus.dts @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "mt7621_h3c_tx180x.dtsi" + +/ { + compatible = "h3c,tx1800-plus", "mediatek,mt7621-soc"; + model = "H3C TX1800 Plus"; +}; diff --git a/target/linux/ramips/dts/mt7621_h3c_tx1801-plus.dts b/target/linux/ramips/dts/mt7621_h3c_tx1801-plus.dts new file mode 100644 index 0000000000..4588b142c4 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_h3c_tx1801-plus.dts @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "mt7621_h3c_tx180x.dtsi" + +/ { + compatible = "h3c,tx1801-plus", "mediatek,mt7621-soc"; + model = "H3C TX1801 Plus"; +}; diff --git a/target/linux/ramips/dts/mt7621_h3c_tx1806.dts b/target/linux/ramips/dts/mt7621_h3c_tx1806.dts new file mode 100644 index 0000000000..1e9b6456ee --- /dev/null +++ b/target/linux/ramips/dts/mt7621_h3c_tx1806.dts @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "mt7621_h3c_tx180x.dtsi" + +/ { + compatible = "h3c,tx1806", "mediatek,mt7621-soc"; + model = "H3C TX1806"; +}; diff --git a/target/linux/ramips/dts/mt7621_h3c_tx180x.dtsi b/target/linux/ramips/dts/mt7621_h3c_tx180x.dtsi new file mode 100644 index 0000000000..61f2f8cc98 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_h3c_tx180x.dtsi @@ -0,0 +1,165 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "mt7621.dtsi" + +#include +#include +#include + +/ { + aliases { + led-boot = &led_status_amber; + led-failsafe = &led_status_green; + led-running = &led_status_green; + led-upgrade = &led_status_amber; + }; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + + wps { + label = "wps"; + gpios = <&gpio 14 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; + + leds { + compatible = "gpio-leds"; + + led_status_amber: led-0 { + label = "amber:status"; + color = ; + function = LED_FUNCTION_STATUS; + gpios = <&gpio 15 GPIO_ACTIVE_LOW>; + }; + + led_status_green: led-1 { + label = "green:status"; + color = ; + function = LED_FUNCTION_STATUS; + gpios = <&gpio 16 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&gmac1 { + status = "okay"; + label = "wan"; + phy-handle = <ðphy4>; +}; + +&mdio { + ethphy4: ethernet-phy@4 { + reg = <4>; + }; +}; + +&nand { + status = "okay"; + + mediatek,nmbm; + mediatek,bmt-max-ratio = <1>; + mediatek,bmt-max-reserved-blocks = <64>; + mediatek,bmt-remap-range = <0x0000000 0x0a00000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0000000 0x0080000>; + read-only; + }; + + partition@80000 { + label = "u-boot-env"; + reg = <0x0080000 0x0080000>; + }; + + partition@100000 { + label = "exp"; + reg = <0x0100000 0x0080000>; + read-only; + }; + + factory: partition@180000 { + label = "factory"; + reg = <0x0180000 0x0080000>; + read-only; + }; + + partition@200000 { + label = "firmware"; + reg = <0x0200000 0x7600000>; + + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "kernel"; + reg = <0x0000000 0x0800000>; + }; + + partition@800000 { + label = "ubi"; + reg = <0x0800000 0x6e00000>; + }; + }; + + /* last 8 MiB is reserved for NMBM bad block table */ + }; +}; + +&pcie { + status = "okay"; +}; + +&pcie1 { + wifi@0,0 { + compatible = "mediatek,mt76"; + reg = <0x0000 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x0>; + mediatek,disable-radar-background; + }; +}; + +&pcie2 { + status = "disabled"; +}; + +&switch0 { + ports { + port@1 { + status = "okay"; + label = "lan1"; + }; + + port@2 { + status = "okay"; + label = "lan2"; + }; + + port@3 { + status = "okay"; + label = "lan3"; + }; + }; +}; + +&xhci { + status = "disabled"; +}; diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 34eac32112..b560ce3d95 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -31,6 +31,12 @@ define Build/gemtek-trailer printf "%s%08X" ".GEMTEK." "$$(cksum $@ | cut -d ' ' -f1)" >> $@ endef +define Build/h3c-blank-header + dd if=/dev/zero of=$@.blank bs=160 count=1 + cat $@ >> $@.blank + mv $@.blank $@ +endef + define Build/iodata-factory $(eval fw_size=$(word 1,$(1))) $(eval fw_type=$(word 2,$(1))) @@ -752,6 +758,40 @@ define Device/gnubee_gb-pc2 endef TARGET_DEVICES += gnubee_gb-pc2 +define Device/h3c_tx180x + $(Device/dsa-migration) + BLOCKSIZE := 128k + PAGESIZE := 2048 + KERNEL_SIZE := 8192k + IMAGE_SIZE := 120832k + UBINIZE_OPTS := -E 5 + KERNEL_LOADADDR := 0x82000000 + KERNEL_INITRAMFS := kernel-bin | relocate-kernel 0x80001000 | lzma | \ + fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb + KERNEL := $$(KERNEL_INITRAMFS) | h3c-blank-header + IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata + DEVICE_VENDOR := H3C + DEVICE_PACKAGES := kmod-mt7915e uboot-envtools +endef + +define Device/h3c_tx1800-plus + $(Device/h3c_tx180x) + DEVICE_MODEL := TX1800 Plus +endef +TARGET_DEVICES += h3c_tx1800-plus + +define Device/h3c_tx1801-plus + $(Device/h3c_tx180x) + DEVICE_MODEL := TX1801 Plus +endef +TARGET_DEVICES += h3c_tx1801-plus + +define Device/h3c_tx1806 + $(Device/h3c_tx180x) + DEVICE_MODEL := TX1806 +endef +TARGET_DEVICES += h3c_tx1806 + define Device/hilink_hlk-7621a-evb $(Device/dsa-migration) $(Device/uimage-lzma-loader) diff --git a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network index 320325f487..400b03133e 100644 --- a/target/linux/ramips/mt7621/base-files/etc/board.d/02_network +++ b/target/linux/ramips/mt7621/base-files/etc/board.d/02_network @@ -28,6 +28,9 @@ ramips_setup_interfaces() ;; ampedwireless,ally-r1900k|\ gehua,ghl-r-001|\ + h3c,tx1800-plus|\ + h3c,tx1801-plus|\ + h3c,tx1806|\ hiwifi,hc5962|\ netgear,wax202|\ xiaomi,mi-router-3-pro|\ @@ -158,6 +161,13 @@ ramips_setup_macs() wan_mac=$(mtd_get_mac_ascii u-boot-env wanaddr) label_mac=$wan_mac ;; + h3c,tx1800-plus|\ + h3c,tx1801-plus|\ + h3c,tx1806) + label_mac=$(mtd_get_mac_ascii u-boot-env ethaddr) + lan_mac=$(macaddr_add "$label_mac" 1) + wan_mac=$label_mac + ;; hiwifi,hc5962) lan_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ") label_mac=$lan_mac diff --git a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac index bced044234..0ace1933e3 100644 --- a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac +++ b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac @@ -37,6 +37,13 @@ case "$board" in [ "$PHYNBR" = "1" ] && \ macaddr_add "$(mtd_get_mac_binary factory 0x4)" 1 > /sys${DEVPATH}/macaddress ;; + h3c,tx1800-plus|\ + h3c,tx1801-plus|\ + h3c,tx1806) + addr=$(macaddr_setbit $(macaddr_add $(mtd_get_mac_ascii u-boot-env ethaddr) 2) 7) + [ "$PHYNBR" = "0" ] && echo -n ${addr:0:9}'1'${addr:10:7} > /sys${DEVPATH}/macaddress + [ "$PHYNBR" = "1" ] && echo -n ${addr:0:9}'7'${addr:10:7} > /sys${DEVPATH}/macaddress + ;; hiwifi,hc5962) label_mac=$(mtd_get_mac_ascii bdinfo "Vfac_mac ") [ "$PHYNBR" = "0" ] && [ -n "$label_mac" ] && \ diff --git a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh index 8a84130ab5..9af46202ba 100755 --- a/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh @@ -60,6 +60,9 @@ platform_do_upgrade() { dlink,dir-2640-a1|\ dlink,dir-2660-a1|\ dlink,dir-853-a3|\ + h3c,tx1800-plus|\ + h3c,tx1801-plus|\ + h3c,tx1806|\ hiwifi,hc5962|\ iptime,a3004t|\ iptime,ax2004m|\ From beeb49740bb4f68aadf92095984a2d1f9a488956 Mon Sep 17 00:00:00 2001 From: Mark Mentovai Date: Sun, 10 Jul 2022 19:43:05 -0400 Subject: [PATCH 33/33] libmnl: fix build when bash is not located at /bin/bash This fixes the libmnl build on macOS, which ships with an outdated bash at /bin/bash. During the OpenWrt build, a modern host bash is built and made available at staging_dir/host/bin/bash, which is present before /bin/bash in the build's PATH. This is similar to 8f7ce3aa6dda, presently appearing at package/kernel/mac80211/patches/build/001-fix_build.patch. Signed-off-by: Mark Mentovai --- package/libs/libmnl/patches/001-fix_build.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 package/libs/libmnl/patches/001-fix_build.patch diff --git a/package/libs/libmnl/patches/001-fix_build.patch b/package/libs/libmnl/patches/001-fix_build.patch new file mode 100644 index 0000000000..d095ec89d0 --- /dev/null +++ b/package/libs/libmnl/patches/001-fix_build.patch @@ -0,0 +1,11 @@ +--- a/doxygen/Makefile.am ++++ b/doxygen/Makefile.am +@@ -21,7 +21,7 @@ doxyfile.stamp: $(doc_srcs) Makefile.am + # The command has to be a single line so the functions work + # and so `make` gives all lines to `bash -c` + # (hence ";\" at the end of every line but the last). +- /bin/bash -p -c 'declare -A renamed_page;\ ++ bash -p -c 'declare -A renamed_page;\ + main(){ set -e; cd man/man3; rm -f _*;\ + count_real_pages;\ + rename_real_pages;\