From db4f158c0330658e2c8528c28575e82f3dc6ca99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Mon, 10 Apr 2023 11:54:02 +0200 Subject: [PATCH 1/8] bmips: hg556a: switch to kmod-owl-loader MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Stop using custom ath9k fixup and switch to standard kmod-owl-loader Signed-off-by: Álvaro Fernández Rojas --- .../etc/hotplug.d/firmware/10-ath9k-eeprom | 34 ++++++++++++++ .../bmips/dts/bcm6358-huawei-hg556a-b.dts | 44 +++++++++++++------ target/linux/bmips/image/Makefile | 2 +- 3 files changed, 66 insertions(+), 14 deletions(-) create mode 100644 target/linux/bmips/bcm6358/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom diff --git a/target/linux/bmips/bcm6358/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/bmips/bcm6358/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom new file mode 100644 index 00000000000..b12d89f29d9 --- /dev/null +++ b/target/linux/bmips/bcm6358/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom @@ -0,0 +1,34 @@ +#!/bin/sh + +[ -e /lib/firmware/$FIRMWARE ] && exit 0 + +. /lib/functions/caldata.sh + +caldata_extract_swap() { + local part=$1 + local offset=$2 + local count=$3 + local mtd + + mtd=$(find_mtd_chardev $part) + [ -n "$mtd" ] || caldata_die "no mtd device found for partition $part" + + offset=$(($offset / 2)) + count=$(($count / 2)) + + dd if=$mtd of=/lib/firmware/$FIRMWARE bs=2 skip=$offset count=$count conv=swab 2>/dev/null || \ + caldata_die "failed to extract calibration data from $mtd" +} + +case "$FIRMWARE" in + "ath9k-eeprom-pci-0000:00:01.0.bin") + case "$(board_name)" in + huawei,hg556a-b) + caldata_extract_swap "cal_data" 0x1e000 0xeb8 + ;; + *) + caldata_die "board $board is not supported yet" + ;; + esac + ;; +esac diff --git a/target/linux/bmips/dts/bcm6358-huawei-hg556a-b.dts b/target/linux/bmips/dts/bcm6358-huawei-hg556a-b.dts index 273470b1bd3..18adc73b63f 100644 --- a/target/linux/bmips/dts/bcm6358-huawei-hg556a-b.dts +++ b/target/linux/bmips/dts/bcm6358-huawei-hg556a-b.dts @@ -119,20 +119,14 @@ }; }; - ath9k-fixup { - compatible = "brcm,ath9k-fixup"; - reg = <0x30000000 0x8000000>; + ath9k-leds { + compatible = "gpio-leds"; - pci-dev = <1>; - - nvmem-cells = <&macaddr_cfe_6a0>; - nvmem-cell-names = "mac-address"; - mac-address-increment = <1>; - - ath,eeprom = <&cal_data 0x1e000>; - ath,endian-check; - ath,led-pin = <2>; - ath,led-active-high; + wlan { + label = "red:wlan"; + gpios = <&ath9k 2 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "phy0tpt"; + }; }; }; @@ -164,6 +158,20 @@ &pci { status = "okay"; + + ath9k: wifi@1,0 { + compatible = "pci168c,0029"; + reg = <0x0800 0 0 0 0>; + + qca,no-eeprom; + + nvmem-cells = <&macaddr_cfe_6a0>; + nvmem-cell-names = "mac-address"; + mac-address-increment = <1>; + + #gpio-cells = <2>; + gpio-controller; + }; }; &pflash { @@ -207,6 +215,16 @@ status = "okay"; }; +&cal_data { + compatible = "nvmem-cells"; + #address-cells = <1>; + #size-cells = <1>; + + cal_data_1e000: cal@1e000 { + reg = <0x1e000 0xeb8>; + }; +}; + &cfe { compatible = "nvmem-cells"; #address-cells = <1>; diff --git a/target/linux/bmips/image/Makefile b/target/linux/bmips/image/Makefile index 8369a86669c..f86e46e0b95 100644 --- a/target/linux/bmips/image/Makefile +++ b/target/linux/bmips/image/Makefile @@ -324,7 +324,7 @@ define Device/sercomm-nand endef ### Package helpers ### -ATH9K_PACKAGES := kmod-ath9k wpad-basic-mbedtls +ATH9K_PACKAGES := kmod-ath9k kmod-owl-loader wpad-basic-mbedtls B43_PACKAGES := kmod-b43 wpad-basic-mbedtls USB1_PACKAGES := kmod-usb-ohci kmod-usb-ledtrig-usbport USB2_PACKAGES := $(USB1_PACKAGES) kmod-usb2 From 16b0cbbde057e3e2cbb7efd92288520a29649192 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Mon, 10 Apr 2023 12:00:02 +0200 Subject: [PATCH 2/8] bmips: drop unneeded ath9k fixup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We no longer need the custom ath9k fixup now that we're using the standard kmod-owl-loader. Signed-off-by: Álvaro Fernández Rojas --- .../bmips/files/arch/mips/bmips/ath9k-fixup.c | 242 ------------------ .../610-mips-bmips-add-pci-fixups.patch | 2 +- 2 files changed, 1 insertion(+), 243 deletions(-) delete mode 100644 target/linux/bmips/files/arch/mips/bmips/ath9k-fixup.c diff --git a/target/linux/bmips/files/arch/mips/bmips/ath9k-fixup.c b/target/linux/bmips/files/arch/mips/bmips/ath9k-fixup.c deleted file mode 100644 index 03ebd20fa70..00000000000 --- a/target/linux/bmips/files/arch/mips/bmips/ath9k-fixup.c +++ /dev/null @@ -1,242 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * ATH9K Fixup Driver - * - * Copyright (C) 2020 Álvaro Fernández Rojas - * Copyright (C) 2014 Jonas Gorski - * Copyright (C) 2008 Maxime Bizon - * Copyright (C) 2008 Florian Fainelli - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define ATH9K_MAX_FIXUPS 2 - -#define ATH9K_DEF_LED_PIN -1 -#define ATH9K_DEF_PCI_DEV 255 - -struct ath9k_fixup { - struct device *dev; - struct resource *mem_res; - u32 pci_dev; - u8 mac[ETH_ALEN]; - struct ath9k_platform_data pdata; -}; - -static int ath9k_num_fixups; -static struct ath9k_fixup *ath9k_fixups[ATH9K_MAX_FIXUPS]; - -static void ath9k_pci_fixup(struct pci_dev *dev) -{ - void __iomem *mem; - struct ath9k_fixup *priv = NULL; - struct ath9k_platform_data *pdata = NULL; - struct pci_dev *bridge = pci_upstream_bridge(dev); - u16 *cal_data = NULL; - u16 cmd; - u32 bar0; - u32 val; - unsigned i; - int rc; - - for (i = 0; i < ath9k_num_fixups; i++) { - if (ath9k_fixups[i]->pci_dev != PCI_SLOT(dev->devfn)) - continue; - - priv = ath9k_fixups[i]; - cal_data = priv->pdata.eeprom_data; - pdata = &priv->pdata; - break; - } - - if (cal_data == NULL) - return; - - if (*cal_data != 0xa55a) { - pr_err("pci %s: invalid calibration data\n", pci_name(dev)); - return; - } - - pr_info("pci %s: fixup device configuration\n", pci_name(dev)); - - val = priv->mem_res->start; - mem = ioremap(priv->mem_res->start, resource_size(priv->mem_res)); - if (!mem) { - pr_err("pci %s: ioremap error\n", pci_name(dev)); - return; - } - - if (bridge) { - rc = pci_enable_device(bridge); - if (rc < 0) - pr_err("pci %s: bridge enable error\n", pci_name(dev)); - } - - pci_read_config_dword(dev, PCI_BASE_ADDRESS_0, &bar0); - pci_read_config_dword(dev, PCI_BASE_ADDRESS_0, &bar0); - pci_write_config_dword(dev, PCI_BASE_ADDRESS_0, val); - - pci_read_config_word(dev, PCI_COMMAND, &cmd); - cmd |= PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY; - pci_write_config_word(dev, PCI_COMMAND, cmd); - - /* set offset to first reg address */ - cal_data += 3; - while(*cal_data != 0xffff) { - u32 reg; - - reg = *cal_data++; - val = *cal_data++; - val |= (*cal_data++) << 16; - - writel(val, mem + reg); - udelay(100); - } - - pci_read_config_dword(dev, PCI_VENDOR_ID, &val); - dev->vendor = val & 0xffff; - dev->device = (val >> 16) & 0xffff; - - pci_read_config_dword(dev, PCI_CLASS_REVISION, &val); - dev->revision = val & 0xff; - dev->class = val >> 8; /* upper 3 bytes */ - - pci_read_config_word(dev, PCI_COMMAND, &cmd); - cmd &= ~(PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY); - pci_write_config_word(dev, PCI_COMMAND, cmd); - - pci_write_config_dword(dev, PCI_BASE_ADDRESS_0, bar0); - - if (bridge) - pci_disable_device(bridge); - - iounmap(mem); - - dev->dev.platform_data = pdata; -} -DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATHEROS, PCI_ANY_ID, ath9k_pci_fixup); - -static int ath9k_mtd_eeprom(struct ath9k_fixup *priv) -{ - struct device *dev = priv->dev; - struct device_node *node = dev->of_node; - struct device_node *mtd_np = NULL; - struct mtd_info *the_mtd; - phandle phandle; - size_t eeprom_readlen; - const char *part; - const __be32 *list; - int ret, i; - - list = of_get_property(node, "ath,eeprom", &i); - if (!list || (i != (2 * sizeof(*list)))) - return -ENODEV; - - phandle = be32_to_cpup(list++); - if (phandle) - mtd_np = of_find_node_by_phandle(phandle); - if (!mtd_np) - return -ENODEV; - - part = of_get_property(mtd_np, "label", NULL); - if (!part) - part = mtd_np->name; - - the_mtd = get_mtd_device_nm(part); - if (IS_ERR(the_mtd)) - return -ENODEV; - - ret = mtd_read(the_mtd, be32_to_cpup(list), - ATH9K_PLAT_EEP_MAX_WORDS * sizeof(u16), - &eeprom_readlen, (void *) priv->pdata.eeprom_data); - put_mtd_device(the_mtd); - if (ret) - return ret; - - return 0; -} - -static int ath9k_fixup_probe(struct platform_device *pdev) -{ - struct device *dev = &pdev->dev; - struct device_node *node = dev->of_node; - struct ath9k_fixup *priv; - struct resource *res; - int ret; - - if (ath9k_num_fixups >= ATH9K_MAX_FIXUPS) - return -ENOMEM; - - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (!res) - return -EINVAL; - - priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); - if (!priv) - return -ENOMEM; - - priv->dev = dev; - priv->mem_res = res; - - ret = of_property_read_u32(node, "pci-dev", &priv->pci_dev); - if (ret) - priv->pci_dev = ATH9K_DEF_PCI_DEV; - - ret = ath9k_mtd_eeprom(priv); - if (ret) - return ret; - - priv->pdata.endian_check = of_property_read_bool(node, - "ath,endian-check"); - ret = of_property_read_s32(node, "ath,led-pin", &priv->pdata.led_pin); - if (ret) - priv->pdata.led_pin = ATH9K_DEF_LED_PIN; - priv->pdata.led_active_high = of_property_read_bool(node, - "ath,led-active-high"); - - of_get_mac_address(node, priv->mac); - if (is_valid_ether_addr(priv->mac)) { - dev_info(dev, "mtd mac %pM\n", priv->mac); - } else { - random_ether_addr(priv->mac); - dev_info(dev, "random mac %pM\n", priv->mac); - } - - priv->pdata.macaddr = priv->mac; - - ath9k_fixups[ath9k_num_fixups] = priv; - ath9k_num_fixups++; - - return 0; -} - -static const struct of_device_id ath9k_fixup_of_match[] = { - { .compatible = "brcm,ath9k-fixup" }, - { /* sentinel */ } -}; - -static struct platform_driver ath9k_fixup_driver = { - .probe = ath9k_fixup_probe, - .driver = { - .name = "ath9k-fixup", - .of_match_table = ath9k_fixup_of_match, - }, -}; - -int __init ath9k_fixup_init(void) -{ - int ret = platform_driver_register(&ath9k_fixup_driver); - if (ret) - pr_err("ath9k_fixup: Error registering platform driver!\n"); - return ret; -} -late_initcall(ath9k_fixup_init); diff --git a/target/linux/bmips/patches-5.15/610-mips-bmips-add-pci-fixups.patch b/target/linux/bmips/patches-5.15/610-mips-bmips-add-pci-fixups.patch index 5f683089860..cc393c42230 100644 --- a/target/linux/bmips/patches-5.15/610-mips-bmips-add-pci-fixups.patch +++ b/target/linux/bmips/patches-5.15/610-mips-bmips-add-pci-fixups.patch @@ -3,4 +3,4 @@ @@ -1,2 +1,3 @@ # SPDX-License-Identifier: GPL-2.0-only obj-y += setup.o irq.o dma.o -+obj-y += ath9k-fixup.o b43-sprom.o ++obj-y += b43-sprom.o From 5ec781c4448b91a0610dbea1a5f25bbd4bb35b73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Tue, 18 Apr 2023 20:11:28 +0200 Subject: [PATCH 3/8] bmips: pci-bcm6348: load IO resource from DT ranges MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Correctly load IO resource from DT ranges and remove the specific IO resource. Signed-off-by: Álvaro Fernández Rojas --- target/linux/bmips/dts/bcm6358.dtsi | 8 +++--- target/linux/bmips/dts/bcm6368.dtsi | 8 +++--- .../drivers/pci/controller/pci-bcm6348.c | 26 ++++++------------- 3 files changed, 14 insertions(+), 28 deletions(-) diff --git a/target/linux/bmips/dts/bcm6358.dtsi b/target/linux/bmips/dts/bcm6358.dtsi index 606e096d2e6..eb8ca0c10d6 100644 --- a/target/linux/bmips/dts/bcm6358.dtsi +++ b/target/linux/bmips/dts/bcm6358.dtsi @@ -283,16 +283,14 @@ pci: pci@fffe1000 { compatible = "brcm,bcm6348-pci"; - reg = <0xfffe1000 0x200>, - <0x08000000 0x10000>; - reg-names = "pci", - "pci-io"; + reg = <0xfffe1000 0x200>; #address-cells = <3>; #size-cells = <2>; device_type = "pci"; bus-range = <0x00 0x01>; - ranges = <0x2000000 0 0x30000000 0x30000000 0 0x8000000>; + ranges = <0x2000000 0 0x30000000 0x30000000 0 0x8000000>, + <0x1000000 0 0x08000000 0x08000000 0 0x0010000>; linux,pci-probe-only = <1>; interrupt-parent = <&periph_intc>; diff --git a/target/linux/bmips/dts/bcm6368.dtsi b/target/linux/bmips/dts/bcm6368.dtsi index 2d00434186b..baa1c434173 100644 --- a/target/linux/bmips/dts/bcm6368.dtsi +++ b/target/linux/bmips/dts/bcm6368.dtsi @@ -412,16 +412,14 @@ pci: pci@10001000 { compatible = "brcm,bcm6348-pci"; - reg = <0x10001000 0x200>, - <0x08000000 0x10000>; - reg-names = "pci", - "pci-io"; + reg = <0x10001000 0x200>; #address-cells = <3>; #size-cells = <2>; device_type = "pci"; bus-range = <0x00 0x01>; - ranges = <0x2000000 0 0x30000000 0x30000000 0 0x8000000>; + ranges = <0x2000000 0 0x30000000 0x30000000 0 0x8000000>, + <0x1000000 0 0x08000000 0x08000000 0 0x0010000>; linux,pci-probe-only = <1>; interrupt-parent = <&periph_intc>; diff --git a/target/linux/bmips/files/drivers/pci/controller/pci-bcm6348.c b/target/linux/bmips/files/drivers/pci/controller/pci-bcm6348.c index 730068ae794..39050b3de4d 100644 --- a/target/linux/bmips/files/drivers/pci/controller/pci-bcm6348.c +++ b/target/linux/bmips/files/drivers/pci/controller/pci-bcm6348.c @@ -335,10 +335,7 @@ static struct pci_ops bcm6348_pci_ops = { .write = bcm6348_pci_write, }; -static struct resource bcm6348_pci_io_resource = { - .name = "BCM6348 PCI IO space", - .flags = IORESOURCE_IO, -}; +static struct resource bcm6348_pci_io_resource; static struct resource bcm6348_pci_mem_resource; static struct resource bcm6348_pci_busn_resource; @@ -732,26 +729,13 @@ static int bcm6348_pci_probe(struct platform_device *pdev) of_pci_check_probe_only(); - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "pci"); + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); priv->pci = devm_ioremap_resource(dev, res); if (IS_ERR(priv->pci)) return PTR_ERR(priv->pci); priv->pcmcia = priv->pci + PCMCIA_OFFSET; - res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "pci-io"); - if (!res) - return -EINVAL; -#ifdef CONFIG_CARDBUS - bcm6348_pci_io_resource.start = res->start; - bcm6348_pci_io_resource.end = res->end - (resource_size(res) >> 1); - bcm6348_cb_io_resource.start = res->start + (resource_size(res) >> 1); - bcm6348_cb_io_resource.end = res->end; -#else - bcm6348_pci_io_resource.start = res->start; - bcm6348_pci_io_resource.end = res->end; -#endif - priv->irq = platform_get_irq(pdev, 0); if (!priv->irq) return -ENODEV; @@ -773,6 +757,12 @@ static int bcm6348_pci_probe(struct platform_device *pdev) of_pci_parse_bus_range(np, &bcm6348_pci_busn_resource); pci_add_resource(&resources, &bcm6348_pci_busn_resource); +#ifdef CONFIG_CARDBUS + bcm6348_cb_io_resource.start = bcm6348_pci_io_resource.start + (resource_size(&bcm6348_pci_io_resource) >> 1); + bcm6348_cb_io_resource.end = bcm6348_pci_io_resource.end; + bcm6348_pci_io_resource.end = bcm6348_pci_io_resource.end - (resource_size(&bcm6348_pci_io_resource) >> 1); +#endif + /* * Configuration accesses are done through IO space, remap 4 * first bytes to access it from CPU. From ab3f151aa874837ae1ac56d5b1cc31bb6cd68681 Mon Sep 17 00:00:00 2001 From: Kabuli Chana Date: Tue, 11 Apr 2023 16:52:56 -0600 Subject: [PATCH 4/8] mwlwifi: update to version 10.3.9.0-20230311 upstream PR 408 improvements: -Fix AMSDU packets unused -Removed the ASMDU packets queue -Add more info in the iw tool -fix is_hw_crypto_enabled -Optimization AMPDU_TX_OPERATIONAL (avoid a spinlock) change to wongsyrone mod Signed-off-by: Kabuli Chana --- package/kernel/mwlwifi/Makefile | 8 ++-- ...compile-with-mac80211-backports-5_3+.patch | 35 ----------------- ...lwifi-remove-MODULE_SUPPORTED_DEVICE.patch | 32 --------------- ...003-mwlwifi-replace-get-set_fs-calls.patch | 39 ------------------- ...CIe-DT-node-null-pointer-dereference.patch | 2 +- .../mwlwifi/patches/005-mac80211_update.patch | 36 +++++++---------- 6 files changed, 19 insertions(+), 133 deletions(-) delete mode 100644 package/kernel/mwlwifi/patches/001-Fix-compile-with-mac80211-backports-5_3+.patch delete mode 100644 package/kernel/mwlwifi/patches/002-mwlwifi-remove-MODULE_SUPPORTED_DEVICE.patch delete mode 100644 package/kernel/mwlwifi/patches/003-mwlwifi-replace-get-set_fs-calls.patch diff --git a/package/kernel/mwlwifi/Makefile b/package/kernel/mwlwifi/Makefile index c806f917aaa..34dceabf59b 100644 --- a/package/kernel/mwlwifi/Makefile +++ b/package/kernel/mwlwifi/Makefile @@ -8,16 +8,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mwlwifi -PKG_RELEASE=3 +PKG_RELEASE=1 PKG_LICENSE:=ISC PKG_LICENSE_FILES:= PKG_SOURCE_URL:=https://github.com/kaloz/mwlwifi PKG_SOURCE_PROTO:=git -PKG_SOURCE_DATE:=2020-02-06 -PKG_SOURCE_VERSION:=a2fd00bb74c35820dfe233d762690c0433a87ef5 -PKG_MIRROR_HASH:=0eda0e774a87e58e611d6436350e1cf2be3de50fddde334909a07a15b0c9862b +PKG_SOURCE_DATE:=2023-03-11 +PKG_SOURCE_VERSION:=c916ac13376d1b0801f3f787277fa47ce6b694eb +PKG_MIRROR_HASH:=b95001b60fe5c28f08be5a52b65276d99877be57e567ad7afab95860f6aff57d PKG_MAINTAINER:=Imre Kaloz PKG_BUILD_PARALLEL:=1 diff --git a/package/kernel/mwlwifi/patches/001-Fix-compile-with-mac80211-backports-5_3+.patch b/package/kernel/mwlwifi/patches/001-Fix-compile-with-mac80211-backports-5_3+.patch deleted file mode 100644 index fdba575f04b..00000000000 --- a/package/kernel/mwlwifi/patches/001-Fix-compile-with-mac80211-backports-5_3+.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 182391a3c96ff6ad79bbba0758338a16a66abbd8 Mon Sep 17 00:00:00 2001 -From: DENG Qingfang -Date: Wed, 12 Feb 2020 14:18:58 +0800 -Subject: [PATCH] Fix driver loading with backports 5.3+ - -Commit 747796b2f126 did not solve the issue that it crashes when an older kernel -with a newer backport tries loading it, because it only detects kernel version. - -As net/cfg80211.h in 5.3+ defines VENDOR_CMD_RAW_DATA, use it as a condition. - -Signed-off-by: DENG Qingfang ---- - vendor_cmd.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - ---- a/vendor_cmd.c -+++ b/vendor_cmd.c -@@ -92,7 +92,7 @@ static const struct wiphy_vendor_command - .subcmd = MWL_VENDOR_CMD_SET_BF_TYPE}, - .flags = WIPHY_VENDOR_CMD_NEED_NETDEV, - .doit = mwl_vendor_cmd_set_bf_type, --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0)) -+#ifdef VENDOR_CMD_RAW_DATA - .policy = mwl_vendor_attr_policy, - #endif - }, -@@ -101,7 +101,7 @@ static const struct wiphy_vendor_command - .subcmd = MWL_VENDOR_CMD_GET_BF_TYPE}, - .flags = WIPHY_VENDOR_CMD_NEED_NETDEV, - .doit = mwl_vendor_cmd_get_bf_type, --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,3,0)) -+#ifdef VENDOR_CMD_RAW_DATA - .policy = mwl_vendor_attr_policy, - #endif - } diff --git a/package/kernel/mwlwifi/patches/002-mwlwifi-remove-MODULE_SUPPORTED_DEVICE.patch b/package/kernel/mwlwifi/patches/002-mwlwifi-remove-MODULE_SUPPORTED_DEVICE.patch deleted file mode 100644 index 23b4ef7541b..00000000000 --- a/package/kernel/mwlwifi/patches/002-mwlwifi-remove-MODULE_SUPPORTED_DEVICE.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 392f8e9d798acff3079e753dd881e272f6150d74 Mon Sep 17 00:00:00 2001 -From: Robert Marko -Date: Wed, 30 Mar 2022 19:32:38 +0200 -Subject: [PATCH] mwlwifi: remove MODULE_SUPPORTED_DEVICE - -Kernel 5.12 finally removed all MODULE_SUPPORTED_DEVICE references and -support for it as it was never actually implemented and was safe to -drop it completely. - -So, do the same in order to compile in 5.12 and newer. - -Signed-off-by: Robert Marko ---- - hif/pcie/pcie.c | 2 -- - 1 file changed, 2 deletions(-) - ---- a/hif/pcie/pcie.c -+++ b/hif/pcie/pcie.c -@@ -31,7 +31,6 @@ - #include "hif/pcie/rx_ndp.h" - - #define PCIE_DRV_DESC "Marvell Mac80211 Wireless PCIE Network Driver" --#define PCIE_DEV_NAME "Marvell 802.11ac PCIE Adapter" - - #define MAX_WAIT_FW_COMPLETE_ITERATIONS 10000 - #define CHECK_BA_TRAFFIC_TIME 300 /* msec */ -@@ -1641,5 +1640,4 @@ MODULE_DESCRIPTION(PCIE_DRV_DESC); - MODULE_VERSION(PCIE_DRV_VERSION); - MODULE_AUTHOR("Marvell Semiconductor, Inc."); - MODULE_LICENSE("GPL v2"); --MODULE_SUPPORTED_DEVICE(PCIE_DEV_NAME); - MODULE_DEVICE_TABLE(pci, pcie_id_tbl); diff --git a/package/kernel/mwlwifi/patches/003-mwlwifi-replace-get-set_fs-calls.patch b/package/kernel/mwlwifi/patches/003-mwlwifi-replace-get-set_fs-calls.patch deleted file mode 100644 index 725a41c9acc..00000000000 --- a/package/kernel/mwlwifi/patches/003-mwlwifi-replace-get-set_fs-calls.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 16e51cb83f9fa1717383c9d67f5531df7348347c Mon Sep 17 00:00:00 2001 -From: Robert Marko -Date: Wed, 30 Mar 2022 19:51:56 +0200 -Subject: [PATCH] mwlwifi: replace get/set_fs() calls - -Since kernel 5.9 the get/set_fs() call implementation have started to get -dropped from individual architectures, ARM64 one got dropped in 5.11. - -Replace the get/set_fs() calls with force_uaccess_begin/end() to allow -compiling on newer kernels. -There is no need to add kernel version checks as the replacement functions -are available since kernel 5.9. - -Signed-off-by: Robert Marko ---- - hif/pcie/pcie.c | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - ---- a/hif/pcie/pcie.c -+++ b/hif/pcie/pcie.c -@@ -1293,8 +1293,7 @@ static void pcie_bf_mimo_ctrl_decode(str - char *buf = &str_buf[0]; - mm_segment_t oldfs; - -- oldfs = get_fs(); -- set_fs(KERNEL_DS); -+ oldfs = force_uaccess_begin(); - - buf += sprintf(buf, "\nMAC: %pM\n", bf_mimo_ctrl->rec_mac); - buf += sprintf(buf, "SU_0_MU_1: %d\n", bf_mimo_ctrl->type); -@@ -1314,7 +1313,7 @@ static void pcie_bf_mimo_ctrl_decode(str - filename, (unsigned int)fp_data); - } - -- set_fs(oldfs); -+ force_uaccess_end(oldfs); - } - - static void pcie_process_account(struct ieee80211_hw *hw) diff --git a/package/kernel/mwlwifi/patches/004-mwlwifi-fix-PCIe-DT-node-null-pointer-dereference.patch b/package/kernel/mwlwifi/patches/004-mwlwifi-fix-PCIe-DT-node-null-pointer-dereference.patch index 9b9e49b66ab..3d9ec4dcfb3 100644 --- a/package/kernel/mwlwifi/patches/004-mwlwifi-fix-PCIe-DT-node-null-pointer-dereference.patch +++ b/package/kernel/mwlwifi/patches/004-mwlwifi-fix-PCIe-DT-node-null-pointer-dereference.patch @@ -19,7 +19,7 @@ Signed-off-by: Robert Marko --- a/hif/pcie/pcie.c +++ b/hif/pcie/pcie.c -@@ -570,7 +570,8 @@ static struct device_node *pcie_get_devi +@@ -573,7 +573,8 @@ static struct device_node *pcie_get_devi struct device_node *dev_node; dev_node = pci_bus_to_OF_node(pcie_priv->pdev->bus); diff --git a/package/kernel/mwlwifi/patches/005-mac80211_update.patch b/package/kernel/mwlwifi/patches/005-mac80211_update.patch index d0dacabd8af..c11cf8c9469 100644 --- a/package/kernel/mwlwifi/patches/005-mac80211_update.patch +++ b/package/kernel/mwlwifi/patches/005-mac80211_update.patch @@ -1,6 +1,6 @@ --- a/core.c +++ b/core.c -@@ -692,7 +692,7 @@ static void mwl_chnl_switch_event(struct +@@ -706,7 +706,7 @@ static void mwl_chnl_switch_event(struct vif = container_of((void *)mwl_vif, struct ieee80211_vif, drv_priv); @@ -11,7 +11,7 @@ spin_unlock_bh(&priv->vif_lock); --- a/debugfs.c +++ b/debugfs.c -@@ -462,9 +462,9 @@ static ssize_t mwl_debugfs_vif_read(stru +@@ -455,9 +455,9 @@ static ssize_t mwl_debugfs_vif_read(stru switch (vif->type) { case NL80211_IFTYPE_AP: len += scnprintf(p + len, size - len, "type: ap\n"); @@ -24,7 +24,7 @@ len += scnprintf(p + len, size - len, "ssid: %s\n", ssid); len += scnprintf(p + len, size - len, -@@ -486,8 +486,8 @@ static ssize_t mwl_debugfs_vif_read(stru +@@ -479,8 +479,8 @@ static ssize_t mwl_debugfs_vif_read(stru "type: unknown\n"); break; } @@ -35,7 +35,7 @@ len += scnprintf(p + len, size - len, "channel: %d: width: %d\n", chan_def->chan->hw_value, -@@ -573,28 +573,28 @@ static ssize_t mwl_debugfs_sta_read(stru +@@ -564,28 +564,28 @@ static ssize_t mwl_debugfs_sta_read(stru "amsdu cap: 0x%02x\n", sta_info->amsdu_ctrl.cap); } @@ -99,7 +99,7 @@ if (priv->chip_type == MWL8997) ether_addr_copy(pcmd->start_cmd.bssid, mwl_vif->bssid); pcmd->start_cmd.bss_type = 1; -@@ -2085,7 +2086,7 @@ int mwl_fwcmd_set_beacon(struct ieee8021 +@@ -2091,7 +2092,7 @@ int mwl_fwcmd_set_beacon(struct ieee8021 if (mwl_fwcmd_set_wsc_ie(hw, b_inf->ie_wsc_len, b_inf->ie_wsc_ptr)) goto err; @@ -108,7 +108,7 @@ goto err; if (b_inf->cap_info & WLAN_CAPABILITY_SPECTRUM_MGMT) -@@ -2147,38 +2148,38 @@ int mwl_fwcmd_set_new_stn_add(struct iee +@@ -2153,38 +2154,38 @@ int mwl_fwcmd_set_new_stn_add(struct iee ether_addr_copy(pcmd->mac_addr, sta->addr); if (hw->conf.chandef.chan->band == NL80211_BAND_2GHZ) @@ -161,7 +161,7 @@ } pcmd->is_qos_sta = sta->wme; -@@ -2234,38 +2235,38 @@ int mwl_fwcmd_set_new_stn_add_sc4(struct +@@ -2240,38 +2241,38 @@ int mwl_fwcmd_set_new_stn_add_sc4(struct ether_addr_copy(pcmd->mac_addr, sta->addr); if (hw->conf.chandef.chan->band == NL80211_BAND_2GHZ) @@ -214,7 +214,7 @@ } pcmd->is_qos_sta = sta->wme; -@@ -2782,9 +2783,9 @@ int mwl_fwcmd_create_ba(struct ieee80211 +@@ -2788,9 +2789,9 @@ int mwl_fwcmd_create_ba(struct ieee80211 pcmd->ba_info.create_params.flags = cpu_to_le32(ba_flags); pcmd->ba_info.create_params.queue_id = stream->idx; pcmd->ba_info.create_params.param_info = @@ -226,7 +226,7 @@ IEEE80211_HT_AMPDU_PARM_DENSITY); if (direction == BA_FLAG_DIRECTION_UP) { pcmd->ba_info.create_params.reset_seq_no = 0; -@@ -2794,9 +2795,9 @@ int mwl_fwcmd_create_ba(struct ieee80211 +@@ -2800,9 +2801,9 @@ int mwl_fwcmd_create_ba(struct ieee80211 pcmd->ba_info.create_params.current_seq = cpu_to_le16(0); } if (priv->chip_type == MWL8964 && @@ -288,7 +288,7 @@ { switch (vif->type) { case NL80211_IFTYPE_AP: -@@ -583,10 +583,10 @@ static int mwl_mac80211_sta_add(struct i +@@ -584,10 +584,10 @@ static int mwl_mac80211_sta_add(struct i if (vif->type == NL80211_IFTYPE_MESH_POINT) sta_info->is_mesh_node = true; @@ -301,7 +301,7 @@ sta_info->amsdu_ctrl.cap = MWL_AMSDU_SIZE_8K; else sta_info->amsdu_ctrl.cap = MWL_AMSDU_SIZE_4K; -@@ -668,7 +668,7 @@ static int mwl_mac80211_sta_remove(struc +@@ -669,7 +669,7 @@ static int mwl_mac80211_sta_remove(struc static int mwl_mac80211_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, @@ -310,15 +310,7 @@ const struct ieee80211_tx_queue_params *params) { struct mwl_priv *priv = hw->priv; -@@ -768,6 +768,7 @@ static int mwl_mac80211_ampdu_action(str - spin_lock_bh(&priv->stream_lock); - break; - } -+ break; - case IEEE80211_AMPDU_RX_STOP: - if (priv->chip_type == MWL8964) { - struct mwl_ampdu_stream tmp; -@@ -930,4 +931,5 @@ const struct ieee80211_ops mwl_mac80211_ +@@ -928,4 +928,5 @@ const struct ieee80211_ops mwl_mac80211_ .pre_channel_switch = mwl_mac80211_chnl_switch, .sw_scan_start = mwl_mac80211_sw_scan_start, .sw_scan_complete = mwl_mac80211_sw_scan_complete, @@ -370,7 +362,7 @@ case TX_RATE_FORMAT_LEGACY: --- a/hif/pcie/tx.c +++ b/hif/pcie/tx.c -@@ -157,7 +157,7 @@ static int pcie_txbd_ring_create(struct +@@ -153,7 +153,7 @@ static int pcie_txbd_ring_create(struct wiphy_info(priv->hw->wiphy, "TX ring: - base: %p, pbase: 0x%x, len: %d\n", pcie_priv->txbd_ring_vbase, @@ -379,7 +371,7 @@ pcie_priv->txbd_ring_size); for (num = 0; num < PCIE_MAX_TXRX_BD; num++) { -@@ -1153,7 +1153,7 @@ void pcie_tx_xmit(struct ieee80211_hw *h +@@ -1091,7 +1091,7 @@ void pcie_tx_xmit(struct ieee80211_hw *h index = SYSADPT_TX_WMM_QUEUES - index - 1; txpriority = index; From 89f6ac5fd1ad113536cb71cb58f2dc50deadde32 Mon Sep 17 00:00:00 2001 From: Nick Hainke Date: Sun, 16 Apr 2023 23:05:05 +0200 Subject: [PATCH 5/8] tools/cmake: update to 3.26.3 Release Notes: - https://www.kitware.com/cmake-3-26-1-available-for-download/ - https://www.kitware.com/cmake-3-26-2-available-for-download/ - https://www.kitware.com/cmake-3-26-3-available-for-download/ Signed-off-by: Nick Hainke --- tools/cmake/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/cmake/Makefile b/tools/cmake/Makefile index e4d9862c9b2..7fac8718ede 100644 --- a/tools/cmake/Makefile +++ b/tools/cmake/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=cmake -PKG_VERSION:=3.26.0 +PKG_VERSION:=3.26.3 PKG_VERSION_MAJOR:=$(word 1,$(subst ., ,$(PKG_VERSION))).$(word 2,$(subst ., ,$(PKG_VERSION))) PKG_RELEASE:=1 PKG_CPE_ID:=cpe:/a:kitware:cmake @@ -15,7 +15,7 @@ PKG_CPE_ID:=cpe:/a:kitware:cmake PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/Kitware/CMake/releases/download/v$(PKG_VERSION)/ \ https://cmake.org/files/v$(PKG_VERSION_MAJOR)/ -PKG_HASH:=4256613188857e95700621f7cdaaeb954f3546a9249e942bc2f9b3c26e381365 +PKG_HASH:=bbd8d39217509d163cb544a40d6428ac666ddc83e22905d3e52c925781f0f659 HOST_BUILD_PARALLEL:=1 HOST_CONFIGURE_PARALLEL:=1 From f4989239cc91f575a83b0fadc56f1c7259ac8c82 Mon Sep 17 00:00:00 2001 From: John Audia Date: Thu, 13 Apr 2023 13:28:17 -0400 Subject: [PATCH 6/8] kernel: bump 5.15 to 5.15.107 All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod Signed-off-by: John Audia --- include/kernel-5.15 | 4 ++-- ...-implement-xhci_fixup_endpoint-for-interval-adju.patch | 4 ++-- ...-refactor-out-TRBS_PER_SEGMENT-define-in-runtime.patch | 4 ++-- ...sb-xhci-add-support-for-performing-fake-doorbell.patch | 6 +++--- .../020-v6.1-05-mm-multi-gen-LRU-groundwork.patch | 4 ++-- .../020-v6.3-19-mm-add-vma_has_recency.patch | 2 +- ...ethernet-stmicro-stmmac-move-queue-reset-to-dedi.patch | 4 ++-- ...ethernet-stmicro-stmmac-move-dma-conf-to-dedicat.patch | 8 ++++---- ...ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch | 2 +- target/linux/generic/hack-5.15/902-debloat_proc.patch | 2 +- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/include/kernel-5.15 b/include/kernel-5.15 index 28c840bb870..6d79b70eab2 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .106 -LINUX_KERNEL_HASH-5.15.106 = 84e6934f828033570966e2a56fe8b72dc6e1409be296c66f4bf3c8ca6e3c8fe4 +LINUX_VERSION-5.15 = .107 +LINUX_KERNEL_HASH-5.15.107 = 19370e769045681f52cceedb14ecda97e89b1b058133a0c8ad45d35ffbc5afa8 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 bedeb042277..f832fa126c3 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: +@@ -1622,6 +1622,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 */ -@@ -5457,6 +5560,7 @@ static const struct hc_driver xhci_hc_dr +@@ -5461,6 +5564,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 7c1c96fa921..a26619d1cca 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 -@@ -876,8 +876,8 @@ static void xhci_clear_command_ring(stru +@@ -880,8 +880,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); -@@ -888,7 +888,7 @@ static void xhci_clear_command_ring(stru +@@ -892,7 +892,7 @@ static void xhci_clear_command_ring(stru ring->enq_seg = ring->deq_seg; ring->enqueue = ring->dequeue; diff --git a/target/linux/bcm53xx/patches-5.15/180-usb-xhci-add-support-for-performing-fake-doorbell.patch b/target/linux/bcm53xx/patches-5.15/180-usb-xhci-add-support-for-performing-fake-doorbell.patch index 81a9f0c0cbc..bcf4776c12a 100644 --- a/target/linux/bcm53xx/patches-5.15/180-usb-xhci-add-support-for-performing-fake-doorbell.patch +++ b/target/linux/bcm53xx/patches-5.15/180-usb-xhci-add-support-for-performing-fake-doorbell.patch @@ -40,7 +40,7 @@ it on BCM4708 family. /* called during probe() after chip reset completes */ --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -157,6 +157,49 @@ int xhci_start(struct xhci_hcd *xhci) +@@ -158,6 +158,49 @@ int xhci_start(struct xhci_hcd *xhci) return ret; } @@ -90,7 +90,7 @@ it on BCM4708 family. /* * Reset a halted HC. * -@@ -607,10 +650,20 @@ static int xhci_init(struct usb_hcd *hcd +@@ -611,10 +654,20 @@ static int xhci_init(struct usb_hcd *hcd static int xhci_run_finished(struct xhci_hcd *xhci) { @@ -114,7 +114,7 @@ it on BCM4708 family. xhci->shared_hcd->state = HC_STATE_RUNNING; xhci->cmd_ring_state = CMD_RING_STATE_RUNNING; -@@ -620,6 +673,10 @@ static int xhci_run_finished(struct xhci +@@ -624,6 +677,10 @@ static int xhci_run_finished(struct xhci xhci_dbg_trace(xhci, trace_xhci_dbg_init, "Finished xhci_run for USB3 roothub"); return 0; diff --git a/target/linux/generic/backport-5.15/020-v6.1-05-mm-multi-gen-LRU-groundwork.patch b/target/linux/generic/backport-5.15/020-v6.1-05-mm-multi-gen-LRU-groundwork.patch index 577c2817daa..237bd84875d 100644 --- a/target/linux/generic/backport-5.15/020-v6.1-05-mm-multi-gen-LRU-groundwork.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-05-mm-multi-gen-LRU-groundwork.patch @@ -612,7 +612,7 @@ Signed-off-by: Andrew Morton mem_cgroup_id_remove(memcg); --- a/mm/memory.c +++ b/mm/memory.c -@@ -4778,6 +4778,27 @@ static inline void mm_account_fault(stru +@@ -4792,6 +4792,27 @@ static inline void mm_account_fault(stru perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MIN, 1, regs, address); } @@ -640,7 +640,7 @@ Signed-off-by: Andrew Morton /* * By the time we get here, we already hold the mm semaphore * -@@ -4809,11 +4830,15 @@ vm_fault_t handle_mm_fault(struct vm_are +@@ -4823,11 +4844,15 @@ vm_fault_t handle_mm_fault(struct vm_are if (flags & FAULT_FLAG_USER) mem_cgroup_enter_user_fault(); diff --git a/target/linux/generic/backport-5.15/020-v6.3-19-mm-add-vma_has_recency.patch b/target/linux/generic/backport-5.15/020-v6.3-19-mm-add-vma_has_recency.patch index 6154bbe3528..d740c5bd1d5 100644 --- a/target/linux/generic/backport-5.15/020-v6.3-19-mm-add-vma_has_recency.patch +++ b/target/linux/generic/backport-5.15/020-v6.3-19-mm-add-vma_has_recency.patch @@ -92,7 +92,7 @@ Signed-off-by: Andrew Morton mark_page_accessed(page); } rss[mm_counter(page)]--; -@@ -4781,8 +4781,8 @@ static inline void mm_account_fault(stru +@@ -4795,8 +4795,8 @@ static inline void mm_account_fault(stru #ifdef CONFIG_LRU_GEN static void lru_gen_enter_fault(struct vm_area_struct *vma) { diff --git a/target/linux/generic/backport-5.15/775-v6.0-01-net-ethernet-stmicro-stmmac-move-queue-reset-to-dedi.patch b/target/linux/generic/backport-5.15/775-v6.0-01-net-ethernet-stmicro-stmmac-move-queue-reset-to-dedi.patch index c8a3c96f376..7155109cd97 100644 --- a/target/linux/generic/backport-5.15/775-v6.0-01-net-ethernet-stmicro-stmmac-move-queue-reset-to-dedi.patch +++ b/target/linux/generic/backport-5.15/775-v6.0-01-net-ethernet-stmicro-stmmac-move-queue-reset-to-dedi.patch @@ -87,7 +87,7 @@ Signed-off-by: Jakub Kicinski stmmac_clear_tx_descriptors(priv, queue); stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg, -@@ -7407,6 +7402,25 @@ int stmmac_suspend(struct device *dev) +@@ -7411,6 +7406,25 @@ int stmmac_suspend(struct device *dev) } EXPORT_SYMBOL_GPL(stmmac_suspend); @@ -113,7 +113,7 @@ Signed-off-by: Jakub Kicinski /** * stmmac_reset_queues_param - reset queue parameters * @priv: device pointer -@@ -7417,22 +7431,11 @@ static void stmmac_reset_queues_param(st +@@ -7421,22 +7435,11 @@ static void stmmac_reset_queues_param(st u32 tx_cnt = priv->plat->tx_queues_to_use; u32 queue; diff --git a/target/linux/generic/backport-5.15/775-v6.0-03-net-ethernet-stmicro-stmmac-move-dma-conf-to-dedicat.patch b/target/linux/generic/backport-5.15/775-v6.0-03-net-ethernet-stmicro-stmmac-move-dma-conf-to-dedicat.patch index de1add41a50..dd8316c985c 100644 --- a/target/linux/generic/backport-5.15/775-v6.0-03-net-ethernet-stmicro-stmmac-move-dma-conf-to-dedicat.patch +++ b/target/linux/generic/backport-5.15/775-v6.0-03-net-ethernet-stmicro-stmmac-move-dma-conf-to-dedicat.patch @@ -1199,7 +1199,7 @@ Signed-off-by: Jakub Kicinski ch = &priv->channel[queue]; if (!rx_q->xsk_pool && !tx_q->xsk_pool) -@@ -6914,8 +6918,8 @@ int stmmac_reinit_ringparam(struct net_d +@@ -6918,8 +6922,8 @@ int stmmac_reinit_ringparam(struct net_d if (netif_running(dev)) stmmac_release(dev); @@ -1210,7 +1210,7 @@ Signed-off-by: Jakub Kicinski if (netif_running(dev)) ret = stmmac_open(dev); -@@ -7353,7 +7357,7 @@ int stmmac_suspend(struct device *dev) +@@ -7357,7 +7361,7 @@ int stmmac_suspend(struct device *dev) stmmac_disable_all_queues(priv); for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++) @@ -1219,7 +1219,7 @@ Signed-off-by: Jakub Kicinski if (priv->eee_enabled) { priv->tx_path_in_lpi_mode = false; -@@ -7404,7 +7408,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend); +@@ -7408,7 +7412,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend); static void stmmac_reset_rx_queue(struct stmmac_priv *priv, u32 queue) { @@ -1228,7 +1228,7 @@ Signed-off-by: Jakub Kicinski rx_q->cur_rx = 0; rx_q->dirty_rx = 0; -@@ -7412,7 +7416,7 @@ static void stmmac_reset_rx_queue(struct +@@ -7416,7 +7420,7 @@ static void stmmac_reset_rx_queue(struct static void stmmac_reset_tx_queue(struct stmmac_priv *priv, u32 queue) { diff --git a/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch b/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch index a8f7bdb7d15..e50a1f4f077 100644 --- a/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch +++ b/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch @@ -1150,7 +1150,7 @@ Signed-off-by: Jakub Kicinski dma_desc_error: return ret; } -@@ -7499,7 +7615,7 @@ int stmmac_resume(struct device *dev) +@@ -7503,7 +7619,7 @@ int stmmac_resume(struct device *dev) stmmac_reset_queues_param(priv); stmmac_free_tx_skbufs(priv); diff --git a/target/linux/generic/hack-5.15/902-debloat_proc.patch b/target/linux/generic/hack-5.15/902-debloat_proc.patch index a7a73cc885f..12e99280289 100644 --- a/target/linux/generic/hack-5.15/902-debloat_proc.patch +++ b/target/linux/generic/hack-5.15/902-debloat_proc.patch @@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau if (!pe) --- a/mm/vmalloc.c +++ b/mm/vmalloc.c -@@ -3962,6 +3962,8 @@ static const struct seq_operations vmall +@@ -3964,6 +3964,8 @@ static const struct seq_operations vmall static int __init proc_vmalloc_init(void) { From 9931188edcbc34d1b63aa5f8be4b26927906f487 Mon Sep 17 00:00:00 2001 From: Stefan Lippers-Hollmann Date: Sun, 16 Apr 2023 05:57:42 -0400 Subject: [PATCH 7/8] kernel: fix up qrtr packaging after 5.15.107 bump qrtr/ns.ko is now merged into qrtr/qrtr.ko, so drop the individual module packaging. Fixes: f4989239cc91 ("kernel: bump 5.15 to 5.15.107") Signed-off-by: Stefan Lippers-Hollmann Tested-by: Stefan Lippers-Hollmann #ipq807x/ax3600, x86_64/FW-7543B, mt7621/dap-x1860 --- package/kernel/linux/modules/netsupport.mk | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package/kernel/linux/modules/netsupport.mk b/package/kernel/linux/modules/netsupport.mk index 1f4f4363247..d9d6a98ed24 100644 --- a/package/kernel/linux/modules/netsupport.mk +++ b/package/kernel/linux/modules/netsupport.mk @@ -1446,8 +1446,7 @@ define KernelPackage/qrtr DEPENDS:=@!LINUX_5_10 KCONFIG:=CONFIG_QRTR FILES:= \ - $(LINUX_DIR)/net/qrtr/qrtr.ko \ - $(LINUX_DIR)/net/qrtr/ns.ko + $(LINUX_DIR)/net/qrtr/qrtr.ko AUTOLOAD:=$(call AutoProbe,qrtr) endef From 1416b9bbe9d3455c7ab64543a65236fea213a978 Mon Sep 17 00:00:00 2001 From: Nick Hainke Date: Wed, 12 Apr 2023 21:50:29 +0200 Subject: [PATCH 8/8] tools/dwarves: update to 1.25 Remove AUTORELEASE and HOST_BUILD_PARALLEL. Release Notes: https://lore.kernel.org/dwarves/ZDG4qxirpIfmbiip@kernel.org/T/#u Signed-off-by: Nick Hainke --- tools/dwarves/Makefile | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/tools/dwarves/Makefile b/tools/dwarves/Makefile index d9a121aab1d..0e84a1ba9fd 100644 --- a/tools/dwarves/Makefile +++ b/tools/dwarves/Makefile @@ -3,18 +3,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dwarves -PKG_VERSION:=1.24 -PKG_RELEASE:=$(AUTORELEASE) +PKG_VERSION:=1.25 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://fedorapeople.org/~acme/dwarves/ -PKG_HASH:=576bc112b95937dfbcd347c423696ee9e1992a338fdca1acacca736fd95f69c2 +PKG_HASH:=e7d45955f6f4eca25a4c8c3bd6611059b35dc217e45976681d7db170fccdec4a PKG_LICENSE:=GPL-2.0-only PKG_LICENSE_FILES:=COPYING -HOST_BUILD_PARALLEL:=1 - include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/cmake.mk