From bc4342142c7d8f47fc18f09661fd95b78063d2a9 Mon Sep 17 00:00:00 2001 From: Zoltan HERPAI Date: Tue, 16 Apr 2024 16:56:59 +0000 Subject: [PATCH 01/13] sunxi: update a13-olimex-som DTS path In preparation for supporting kernel 6.6, where the DTS files are grouped into vendors - similarly to what arm64 has been doing all along -, update the SUNXI_DTS var of this board to prepend it with SUNXI_DTS_DIR. Signed-off-by: Zoltan HERPAI --- target/linux/sunxi/image/cortexa8.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/linux/sunxi/image/cortexa8.mk b/target/linux/sunxi/image/cortexa8.mk index eafc2187e84..dd8a16763b0 100644 --- a/target/linux/sunxi/image/cortexa8.mk +++ b/target/linux/sunxi/image/cortexa8.mk @@ -43,7 +43,7 @@ define Device/olimex_a13-olimex-som DEVICE_PACKAGES:=kmod-rtl8192cu SUPPORTED_DEVICES:=olimex,a13-olinuxino SOC := sun5i-a13 - SUNXI_DTS := sun5i-a13-olinuxino + SUNXI_DTS := $$(SUNXI_DTS_DIR)sun5i-a13-olinuxino endef TARGET_DEVICES += olimex_a13-olimex-som From 1c32cee348f54e9f64b5928ee1a1efe491eec137 Mon Sep 17 00:00:00 2001 From: Rodrigo Balerdi Date: Wed, 3 Apr 2024 00:30:46 -0300 Subject: [PATCH 02/13] ipq40xx: whw03v2: enable additional 5 GHz channels This device supports channel ranges 36-64 and 100-165, just like others based on the same reference design, but its current DTS is unnecessarily restricting these ranges to 36-48 and 149-165. Signed-off-by: Rodrigo Balerdi --- .../files-6.1/arch/arm/boot/dts/qcom-ipq4019-whw03v2.dts | 5 ++--- .../arch/arm/boot/dts/qcom/qcom-ipq4019-whw03v2.dts | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/target/linux/ipq40xx/files-6.1/arch/arm/boot/dts/qcom-ipq4019-whw03v2.dts b/target/linux/ipq40xx/files-6.1/arch/arm/boot/dts/qcom-ipq4019-whw03v2.dts index 96733d87805..b76c52cd0a7 100644 --- a/target/linux/ipq40xx/files-6.1/arch/arm/boot/dts/qcom-ipq4019-whw03v2.dts +++ b/target/linux/ipq40xx/files-6.1/arch/arm/boot/dts/qcom-ipq4019-whw03v2.dts @@ -487,7 +487,6 @@ qcom,coexist-support = <1>; qcom,coexist-gpio-pin = <0x34>; - ieee80211-freq-limit = <2401000 2473000>; qcom,ath10k-calibration-variant = "linksys-whw03v2"; nvmem-cell-names = "pre-calibration", "mac-address"; @@ -497,7 +496,7 @@ &wifi1 { status = "okay"; - ieee80211-freq-limit = <5170000 5250000>; + ieee80211-freq-limit = <5170000 5330000>; qcom,ath10k-calibration-variant = "linksys-whw03v2"; nvmem-cell-names = "pre-calibration", "mac-address"; @@ -507,7 +506,7 @@ &wifi2 { status = "okay"; - ieee80211-freq-limit = <5735000 5835000>; + ieee80211-freq-limit = <5490000 5835000>; qcom,ath10k-calibration-variant = "linksys-whw03v2"; nvmem-cell-names = "pre-calibration", "mac-address"; diff --git a/target/linux/ipq40xx/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq4019-whw03v2.dts b/target/linux/ipq40xx/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq4019-whw03v2.dts index 96733d87805..b76c52cd0a7 100644 --- a/target/linux/ipq40xx/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq4019-whw03v2.dts +++ b/target/linux/ipq40xx/files-6.6/arch/arm/boot/dts/qcom/qcom-ipq4019-whw03v2.dts @@ -487,7 +487,6 @@ qcom,coexist-support = <1>; qcom,coexist-gpio-pin = <0x34>; - ieee80211-freq-limit = <2401000 2473000>; qcom,ath10k-calibration-variant = "linksys-whw03v2"; nvmem-cell-names = "pre-calibration", "mac-address"; @@ -497,7 +496,7 @@ &wifi1 { status = "okay"; - ieee80211-freq-limit = <5170000 5250000>; + ieee80211-freq-limit = <5170000 5330000>; qcom,ath10k-calibration-variant = "linksys-whw03v2"; nvmem-cell-names = "pre-calibration", "mac-address"; @@ -507,7 +506,7 @@ &wifi2 { status = "okay"; - ieee80211-freq-limit = <5735000 5835000>; + ieee80211-freq-limit = <5490000 5835000>; qcom,ath10k-calibration-variant = "linksys-whw03v2"; nvmem-cell-names = "pre-calibration", "mac-address"; From ac881ce59ab9dfb84ba361d83f1feca91eec0d20 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Mon, 15 Apr 2024 10:59:46 +0200 Subject: [PATCH 03/13] tools: mold: update to 2.30.0 Release Notes: https://github.com/rui314/mold/releases/tag/v2.3.3 https://github.com/rui314/mold/releases/tag/v2.4.0 https://github.com/rui314/mold/releases/tag/v2.4.1 https://github.com/rui314/mold/releases/tag/v2.30.0 Signed-off-by: Robert Marko --- tools/mold/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/mold/Makefile b/tools/mold/Makefile index 418f04fb6b7..b2a3231e675 100644 --- a/tools/mold/Makefile +++ b/tools/mold/Makefile @@ -3,12 +3,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mold -PKG_VERSION:=2.3.2 +PKG_VERSION:=2.30.0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL_FILE:=v$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/rui314/mold/archive/refs/tags -PKG_HASH:=db172c0e97606565a81e37995bf5c911606d3f3b9f3829e92cd26985c9b0ed3b +PKG_HASH:=6e5178ccafe828fdb4ba0dd841d083ff6004d3cb41e56485143eb64c716345fd include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/cmake.mk From 9693ed6a9edb2ec9c9aa5edfa816dda3897cdfc4 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sat, 13 Apr 2024 19:22:41 +0200 Subject: [PATCH 04/13] kernel: bump 5.15 to 5.15.155 Manual adapted the following patches: generic/hack-5.15/221-module_exports.patch octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch Signed-off-by: Hauke Mehrtens --- include/kernel-5.15 | 4 ++-- .../020-v6.1-05-mm-multi-gen-LRU-groundwork.patch | 2 +- ....1-06-mm-multi-gen-LRU-minimal-implementation.patch | 6 +++--- ...-08-mm-multi-gen-LRU-support-page-table-walks.patch | 4 ++-- ...i-gen-LRU-move-lru_gen_add_mm-out-of-IRQ-off-.patch | 4 ++-- ...-mm-multi-gen-LRU-per-node-lru_gen_page-lists.patch | 2 +- ...6.3-net-pcs-add-driver-for-MediaTek-SGMII-PCS.patch | 2 +- ...net-dsa-mt7530-introduce-separate-MDIO-driver.patch | 2 +- ...-mt7530-introduce-driver-for-MT7988-built-in-.patch | 2 +- ...-driver-for-Motorcomm-yt8521-gigabit-ethernet.patch | 2 +- ...-nvmem-Add-driver-for-OCOTP-in-Sunplus-SP7021.patch | 2 +- ...06-v6.0-0001-nvmem-microchip-otpc-add-support.patch | 2 +- ...dd-explicit-config-option-to-read-old-syntax-.patch | 2 +- target/linux/generic/config-5.15 | 1 + .../linux/generic/hack-5.15/221-module_exports.patch | 4 ++-- .../hack-5.15/780-usb-net-MeigLink_modem_support.patch | 4 ++-- target/linux/generic/hack-5.15/902-debloat_proc.patch | 2 +- ...Revert-Revert-driver-core-Set-fw_devlink-on-b.patch | 2 +- ...alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch | 2 +- .../610-netfilter_match_bypass_default_checks.patch | 2 +- ...er-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch | 2 +- ...mix-page-pool-and-page-referenced-frags-in-GR.patch | 2 +- .../pending-5.15/810-pci_disable_common_quirks.patch | 8 ++++---- .../0001-MIPS-lantiq-add-pcie-driver.patch | 2 +- ...-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch | 10 +++++----- ...5.17-watchdog-add-realtek-otto-watchdog-timer.patch | 2 +- 26 files changed, 40 insertions(+), 39 deletions(-) diff --git a/include/kernel-5.15 b/include/kernel-5.15 index 84a0d0a1bff..4a82b9c9b3b 100644 --- a/include/kernel-5.15 +++ b/include/kernel-5.15 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.15 = .153 -LINUX_KERNEL_HASH-5.15.153 = d7ddb1e144a88773b56a5b4a71baea0b241f3996d446be45290537c6997c84bc +LINUX_VERSION-5.15 = .155 +LINUX_KERNEL_HASH-5.15.155 = c85859b86d2e6d1fc91ca1be8b44f24a9b5bb9f86869b04a8665a3a6559126e4 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 969d721da61..85710eb79b8 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 @@ -552,7 +552,7 @@ Signed-off-by: Andrew Morton --- a/kernel/bounds.c +++ b/kernel/bounds.c @@ -22,6 +22,11 @@ int main(void) - DEFINE(NR_CPUS_BITS, ilog2(CONFIG_NR_CPUS)); + DEFINE(NR_CPUS_BITS, bits_per(CONFIG_NR_CPUS)); #endif DEFINE(SPINLOCK_SIZE, sizeof(spinlock_t)); +#ifdef CONFIG_LRU_GEN diff --git a/target/linux/generic/backport-5.15/020-v6.1-06-mm-multi-gen-LRU-minimal-implementation.patch b/target/linux/generic/backport-5.15/020-v6.1-06-mm-multi-gen-LRU-minimal-implementation.patch index f8a7d9bd7f6..14fc73f84de 100644 --- a/target/linux/generic/backport-5.15/020-v6.1-06-mm-multi-gen-LRU-minimal-implementation.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-06-mm-multi-gen-LRU-minimal-implementation.patch @@ -1251,7 +1251,7 @@ Signed-off-by: Andrew Morton get_scan_count(lruvec, sc, nr); /* Record the original scan target for proportional adjustments later */ -@@ -3372,6 +4142,9 @@ static void snapshot_refaults(struct mem +@@ -3375,6 +4145,9 @@ static void snapshot_refaults(struct mem struct lruvec *target_lruvec; unsigned long refaults; @@ -1261,7 +1261,7 @@ Signed-off-by: Andrew Morton target_lruvec = mem_cgroup_lruvec(target_memcg, pgdat); refaults = lruvec_page_state(target_lruvec, WORKINGSET_ACTIVATE_ANON); target_lruvec->refaults[0] = refaults; -@@ -3736,12 +4509,16 @@ unsigned long try_to_free_mem_cgroup_pag +@@ -3739,12 +4512,16 @@ unsigned long try_to_free_mem_cgroup_pag } #endif @@ -1280,7 +1280,7 @@ Signed-off-by: Andrew Morton if (!can_age_anon_pages(pgdat, sc)) return; -@@ -4058,12 +4835,11 @@ restart: +@@ -4061,12 +4838,11 @@ restart: sc.may_swap = !nr_boost_reclaim; /* diff --git a/target/linux/generic/backport-5.15/020-v6.1-08-mm-multi-gen-LRU-support-page-table-walks.patch b/target/linux/generic/backport-5.15/020-v6.1-08-mm-multi-gen-LRU-support-page-table-walks.patch index 234dfd916f0..4cfd2471781 100644 --- a/target/linux/generic/backport-5.15/020-v6.1-08-mm-multi-gen-LRU-support-page-table-walks.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-08-mm-multi-gen-LRU-support-page-table-walks.patch @@ -149,7 +149,7 @@ Signed-off-by: Andrew Morton --- a/fs/exec.c +++ b/fs/exec.c -@@ -1013,6 +1013,7 @@ static int exec_mmap(struct mm_struct *m +@@ -1014,6 +1014,7 @@ static int exec_mmap(struct mm_struct *m active_mm = tsk->active_mm; tsk->active_mm = mm; tsk->mm = mm; @@ -157,7 +157,7 @@ Signed-off-by: Andrew Morton /* * This prevents preemption while active_mm is being loaded and * it and mm are being updated, which could cause problems for -@@ -1028,6 +1029,7 @@ static int exec_mmap(struct mm_struct *m +@@ -1029,6 +1030,7 @@ static int exec_mmap(struct mm_struct *m tsk->mm->vmacache_seqnum = 0; vmacache_flush(tsk); task_unlock(tsk); diff --git a/target/linux/generic/backport-5.15/020-v6.1-15-mm-multi-gen-LRU-move-lru_gen_add_mm-out-of-IRQ-off-.patch b/target/linux/generic/backport-5.15/020-v6.1-15-mm-multi-gen-LRU-move-lru_gen_add_mm-out-of-IRQ-off-.patch index 5b1d378504a..b1319d98a3c 100644 --- a/target/linux/generic/backport-5.15/020-v6.1-15-mm-multi-gen-LRU-move-lru_gen_add_mm-out-of-IRQ-off-.patch +++ b/target/linux/generic/backport-5.15/020-v6.1-15-mm-multi-gen-LRU-move-lru_gen_add_mm-out-of-IRQ-off-.patch @@ -31,7 +31,7 @@ Signed-off-by: Andrew Morton --- a/fs/exec.c +++ b/fs/exec.c -@@ -1013,7 +1013,6 @@ static int exec_mmap(struct mm_struct *m +@@ -1014,7 +1014,6 @@ static int exec_mmap(struct mm_struct *m active_mm = tsk->active_mm; tsk->active_mm = mm; tsk->mm = mm; @@ -39,7 +39,7 @@ Signed-off-by: Andrew Morton /* * This prevents preemption while active_mm is being loaded and * it and mm are being updated, which could cause problems for -@@ -1028,6 +1027,7 @@ static int exec_mmap(struct mm_struct *m +@@ -1029,6 +1028,7 @@ static int exec_mmap(struct mm_struct *m local_irq_enable(); tsk->mm->vmacache_seqnum = 0; vmacache_flush(tsk); diff --git a/target/linux/generic/backport-5.15/020-v6.3-26-mm-multi-gen-LRU-per-node-lru_gen_page-lists.patch b/target/linux/generic/backport-5.15/020-v6.3-26-mm-multi-gen-LRU-per-node-lru_gen_page-lists.patch index 8cc9abd84f0..cfeeaa662a0 100644 --- a/target/linux/generic/backport-5.15/020-v6.3-26-mm-multi-gen-LRU-per-node-lru_gen_page-lists.patch +++ b/target/linux/generic/backport-5.15/020-v6.3-26-mm-multi-gen-LRU-per-node-lru_gen_page-lists.patch @@ -354,7 +354,7 @@ Signed-off-by: Andrew Morton static void mem_cgroup_css_free(struct cgroup_subsys_state *css) --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -7661,6 +7661,7 @@ static void __init free_area_init_node(i +@@ -7663,6 +7663,7 @@ static void __init free_area_init_node(i pgdat_set_deferred_range(pgdat); free_area_init_core(pgdat); diff --git a/target/linux/generic/backport-5.15/707-v6.3-net-pcs-add-driver-for-MediaTek-SGMII-PCS.patch b/target/linux/generic/backport-5.15/707-v6.3-net-pcs-add-driver-for-MediaTek-SGMII-PCS.patch index 1cae648358f..1f2a3ee140f 100644 --- a/target/linux/generic/backport-5.15/707-v6.3-net-pcs-add-driver-for-MediaTek-SGMII-PCS.patch +++ b/target/linux/generic/backport-5.15/707-v6.3-net-pcs-add-driver-for-MediaTek-SGMII-PCS.patch @@ -32,7 +32,7 @@ Signed-off-by: Jakub Kicinski --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -11783,6 +11783,14 @@ L: netdev@vger.kernel.org +@@ -11790,6 +11790,14 @@ L: netdev@vger.kernel.org S: Maintained F: drivers/net/ethernet/mediatek/ diff --git a/target/linux/generic/backport-5.15/790-v6.4-0011-net-dsa-mt7530-introduce-separate-MDIO-driver.patch b/target/linux/generic/backport-5.15/790-v6.4-0011-net-dsa-mt7530-introduce-separate-MDIO-driver.patch index b04ec455517..ee944a6fc57 100644 --- a/target/linux/generic/backport-5.15/790-v6.4-0011-net-dsa-mt7530-introduce-separate-MDIO-driver.patch +++ b/target/linux/generic/backport-5.15/790-v6.4-0011-net-dsa-mt7530-introduce-separate-MDIO-driver.patch @@ -25,7 +25,7 @@ Signed-off-by: David S. Miller --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -11895,6 +11895,7 @@ M: Landen Chao L: netdev@vger.kernel.org S: Maintained diff --git a/target/linux/generic/backport-5.15/790-v6.4-0013-net-dsa-mt7530-introduce-driver-for-MT7988-built-in-.patch b/target/linux/generic/backport-5.15/790-v6.4-0013-net-dsa-mt7530-introduce-driver-for-MT7988-built-in-.patch index 2fad8f2b413..e6c1b941dd9 100644 --- a/target/linux/generic/backport-5.15/790-v6.4-0013-net-dsa-mt7530-introduce-driver-for-MT7988-built-in-.patch +++ b/target/linux/generic/backport-5.15/790-v6.4-0013-net-dsa-mt7530-introduce-driver-for-MT7988-built-in-.patch @@ -28,7 +28,7 @@ Signed-off-by: David S. Miller --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -11893,9 +11893,11 @@ MEDIATEK SWITCH DRIVER +@@ -11900,9 +11900,11 @@ MEDIATEK SWITCH DRIVER M: Sean Wang M: Landen Chao M: DENG Qingfang diff --git a/target/linux/generic/backport-5.15/791-v6.2-01-net-phy-Add-driver-for-Motorcomm-yt8521-gigabit-ethernet.patch b/target/linux/generic/backport-5.15/791-v6.2-01-net-phy-Add-driver-for-Motorcomm-yt8521-gigabit-ethernet.patch index 7c0a4906957..c7f5856e8df 100644 --- a/target/linux/generic/backport-5.15/791-v6.2-01-net-phy-Add-driver-for-Motorcomm-yt8521-gigabit-ethernet.patch +++ b/target/linux/generic/backport-5.15/791-v6.2-01-net-phy-Add-driver-for-Motorcomm-yt8521-gigabit-ethernet.patch @@ -21,7 +21,7 @@ Signed-off-by: David S. Miller --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -12694,6 +12694,7 @@ F: include/uapi/linux/meye.h +@@ -12701,6 +12701,7 @@ F: include/uapi/linux/meye.h MOTORCOMM PHY DRIVER M: Peter Geis diff --git a/target/linux/generic/backport-5.15/804-v5.18-0009-nvmem-Add-driver-for-OCOTP-in-Sunplus-SP7021.patch b/target/linux/generic/backport-5.15/804-v5.18-0009-nvmem-Add-driver-for-OCOTP-in-Sunplus-SP7021.patch index 79fd479054e..ac77fc9b1d2 100644 --- a/target/linux/generic/backport-5.15/804-v5.18-0009-nvmem-Add-driver-for-OCOTP-in-Sunplus-SP7021.patch +++ b/target/linux/generic/backport-5.15/804-v5.18-0009-nvmem-Add-driver-for-OCOTP-in-Sunplus-SP7021.patch @@ -19,7 +19,7 @@ Signed-off-by: Greg Kroah-Hartman --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -17959,6 +17959,11 @@ L: netdev@vger.kernel.org +@@ -17966,6 +17966,11 @@ L: netdev@vger.kernel.org S: Maintained F: drivers/net/ethernet/dlink/sundance.c diff --git a/target/linux/generic/backport-5.15/806-v6.0-0001-nvmem-microchip-otpc-add-support.patch b/target/linux/generic/backport-5.15/806-v6.0-0001-nvmem-microchip-otpc-add-support.patch index 24beeda0d22..f54ba7ebee2 100644 --- a/target/linux/generic/backport-5.15/806-v6.0-0001-nvmem-microchip-otpc-add-support.patch +++ b/target/linux/generic/backport-5.15/806-v6.0-0001-nvmem-microchip-otpc-add-support.patch @@ -57,7 +57,7 @@ Signed-off-by: Greg Kroah-Hartman --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -12358,6 +12358,14 @@ S: Supported +@@ -12365,6 +12365,14 @@ S: Supported F: Documentation/devicetree/bindings/mtd/atmel-nand.txt F: drivers/mtd/nand/raw/atmel/* diff --git a/target/linux/generic/backport-5.15/820-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch b/target/linux/generic/backport-5.15/820-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch index d207ea48728..9ce78e1f09d 100644 --- a/target/linux/generic/backport-5.15/820-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch +++ b/target/linux/generic/backport-5.15/820-v6.7-0002-nvmem-add-explicit-config-option-to-read-old-syntax-.patch @@ -132,7 +132,7 @@ Signed-off-by: Greg Kroah-Hartman imx_ocotp_nvmem_config.priv = priv; --- a/drivers/nvmem/meson-efuse.c +++ b/drivers/nvmem/meson-efuse.c -@@ -93,6 +93,7 @@ static int meson_efuse_probe(struct plat +@@ -74,6 +74,7 @@ static int meson_efuse_probe(struct plat econfig->dev = dev; econfig->name = dev_name(dev); diff --git a/target/linux/generic/config-5.15 b/target/linux/generic/config-5.15 index cf162543a8a..50973e906de 100644 --- a/target/linux/generic/config-5.15 +++ b/target/linux/generic/config-5.15 @@ -4260,6 +4260,7 @@ CONFIG_NEW_LEDS=y # CONFIG_NFC is not set # CONFIG_NFP is not set # CONFIG_NFSD is not set +# CONFIG_NFSD_V2 is not set # CONFIG_NFSD_V2_ACL is not set CONFIG_NFSD_V3=y # CONFIG_NFSD_V3_ACL is not set 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 87f541b46f2..8db0f7dac78 100644 --- a/target/linux/generic/hack-5.15/221-module_exports.patch +++ b/target/linux/generic/hack-5.15/221-module_exports.patch @@ -27,8 +27,8 @@ Signed-off-by: Felix Fietkau +#define SYMTAB_DISCARD_GPL +#endif + - /* Align . to a 8 byte boundary equals to maximum function alignment. */ - #define ALIGN_FUNCTION() . = ALIGN(8) + /* Align . function alignment. */ + #define ALIGN_FUNCTION() . = ALIGN(CONFIG_FUNCTION_ALIGNMENT) @@ -485,14 +495,14 @@ /* Kernel symbol table: Normal symbols */ \ 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 0060fbbd2ad..75c2e41fb65 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 @@ -43,7 +43,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support #define QUECTEL_VENDOR_ID 0x2c7c /* These Quectel products use Quectel's vendor ID */ -@@ -1147,6 +1152,11 @@ static const struct usb_device_id option +@@ -1152,6 +1157,11 @@ static const struct usb_device_id option { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x0023)}, /* ONYX 3G device */ { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x9000), /* SIMCom SIM5218 */ .driver_info = NCTRL(0) | NCTRL(1) | NCTRL(2) | NCTRL(3) | RSVD(4) }, @@ -55,7 +55,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support /* Quectel products using Qualcomm vendor ID */ { USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC15)}, { USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC20), -@@ -1188,6 +1198,11 @@ static const struct usb_device_id option +@@ -1193,6 +1203,11 @@ static const struct usb_device_id option .driver_info = ZLP }, { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), .driver_info = RSVD(4) }, 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 4d82317b707..c7e40dfc6a5 100644 --- a/target/linux/generic/hack-5.15/902-debloat_proc.patch +++ b/target/linux/generic/hack-5.15/902-debloat_proc.patch @@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau --- a/fs/locks.c +++ b/fs/locks.c -@@ -2953,6 +2953,8 @@ static const struct seq_operations locks +@@ -3008,6 +3008,8 @@ static const struct seq_operations locks static int __init proc_locks_init(void) { 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 4f4d6c75091..b4339e82d76 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 -@@ -1562,7 +1562,7 @@ static void device_links_purge(struct de +@@ -1577,7 +1577,7 @@ static void device_links_purge(struct de #define FW_DEVLINK_FLAGS_RPM (FW_DEVLINK_FLAGS_ON | \ DL_FLAG_PM_RUNTIME) diff --git a/target/linux/generic/pending-5.15/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch b/target/linux/generic/pending-5.15/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch index ac5e3a69b80..42f5a8c2467 100644 --- a/target/linux/generic/pending-5.15/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch +++ b/target/linux/generic/pending-5.15/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch @@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -7620,7 +7620,7 @@ static void __init alloc_node_mem_map(st +@@ -7622,7 +7622,7 @@ static void __init alloc_node_mem_map(st if (pgdat == NODE_DATA(0)) { mem_map = NODE_DATA(0)->node_mem_map; if (page_to_pfn(mem_map) != pgdat->node_start_pfn) diff --git a/target/linux/generic/pending-5.15/610-netfilter_match_bypass_default_checks.patch b/target/linux/generic/pending-5.15/610-netfilter_match_bypass_default_checks.patch index c1e050e935e..b17196d3a90 100644 --- a/target/linux/generic/pending-5.15/610-netfilter_match_bypass_default_checks.patch +++ b/target/linux/generic/pending-5.15/610-netfilter_match_bypass_default_checks.patch @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau for (i = sizeof(struct ipt_entry); i < e->target_offset; i += m->u.match_size) { -@@ -1222,12 +1259,15 @@ compat_copy_entry_to_user(struct ipt_ent +@@ -1224,12 +1261,15 @@ compat_copy_entry_to_user(struct ipt_ent compat_uint_t origsize; const struct xt_entry_match *ematch; int ret = 0; diff --git a/target/linux/generic/pending-5.15/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch b/target/linux/generic/pending-5.15/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch index 70aee30eb68..2f1b3ed7931 100644 --- a/target/linux/generic/pending-5.15/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch +++ b/target/linux/generic/pending-5.15/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch @@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau --- a/net/netfilter/nf_tables_api.c +++ b/net/netfilter/nf_tables_api.c -@@ -7770,7 +7770,7 @@ static int nft_register_flowtable_net_ho +@@ -7803,7 +7803,7 @@ static int nft_register_flowtable_net_ho err = flowtable->data.type->setup(&flowtable->data, hook->ops.dev, FLOW_BLOCK_BIND); diff --git a/target/linux/generic/pending-5.15/750-skb-Do-mix-page-pool-and-page-referenced-frags-in-GR.patch b/target/linux/generic/pending-5.15/750-skb-Do-mix-page-pool-and-page-referenced-frags-in-GR.patch index 8e2f3a9475d..54c07f0022a 100644 --- a/target/linux/generic/pending-5.15/750-skb-Do-mix-page-pool-and-page-referenced-frags-in-GR.patch +++ b/target/linux/generic/pending-5.15/750-skb-Do-mix-page-pool-and-page-referenced-frags-in-GR.patch @@ -17,7 +17,7 @@ Signed-off-by: Alexander Duyck --- a/net/core/skbuff.c +++ b/net/core/skbuff.c -@@ -4359,6 +4359,15 @@ int skb_gro_receive(struct sk_buff *p, s +@@ -4360,6 +4360,15 @@ int skb_gro_receive(struct sk_buff *p, s if (unlikely(p->len + len >= 65536 || NAPI_GRO_CB(skb)->flush)) return -E2BIG; diff --git a/target/linux/generic/pending-5.15/810-pci_disable_common_quirks.patch b/target/linux/generic/pending-5.15/810-pci_disable_common_quirks.patch index f7f16ee37d7..302051cc3be 100644 --- a/target/linux/generic/pending-5.15/810-pci_disable_common_quirks.patch +++ b/target/linux/generic/pending-5.15/810-pci_disable_common_quirks.patch @@ -25,7 +25,7 @@ Signed-off-by: Gabor Juhos --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c -@@ -206,6 +206,7 @@ static void quirk_mmio_always_on(struct +@@ -207,6 +207,7 @@ static void quirk_mmio_always_on(struct DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on); @@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos /* * The Mellanox Tavor device gives false positive parity errors. Disable * parity error reporting. -@@ -3368,6 +3369,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I +@@ -3369,6 +3370,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata); @@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos /* * Ivytown NTB BAR sizes are misreported by the hardware due to an erratum. * To work around this, query the size it should be configured to by the -@@ -3393,6 +3396,8 @@ static void quirk_intel_ntb(struct pci_d +@@ -3394,6 +3397,8 @@ static void quirk_intel_ntb(struct pci_d DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb); @@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos /* * Some BIOS implementations leave the Intel GPU interrupts enabled, even * though no one is handling them (e.g., if the i915 driver is never -@@ -3431,6 +3436,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN +@@ -3432,6 +3437,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq); diff --git a/target/linux/lantiq/patches-5.15/0001-MIPS-lantiq-add-pcie-driver.patch b/target/linux/lantiq/patches-5.15/0001-MIPS-lantiq-add-pcie-driver.patch index 1c5f69131e4..6454240014e 100644 --- a/target/linux/lantiq/patches-5.15/0001-MIPS-lantiq-add-pcie-driver.patch +++ b/target/linux/lantiq/patches-5.15/0001-MIPS-lantiq-add-pcie-driver.patch @@ -5524,7 +5524,7 @@ Signed-off-by: John Crispin (transaction layer end-to-end CRC checking). --- a/include/linux/pci.h +++ b/include/linux/pci.h -@@ -1482,6 +1482,8 @@ void pci_walk_bus(struct pci_bus *top, i +@@ -1483,6 +1483,8 @@ void pci_walk_bus(struct pci_bus *top, i void *userdata); int pci_cfg_space_size(struct pci_dev *dev); unsigned char pci_bus_max_busnr(struct pci_bus *bus); diff --git a/target/linux/octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch b/target/linux/octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch index e09ccce0f89..12910b74e47 100644 --- a/target/linux/octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch +++ b/target/linux/octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch @@ -14,7 +14,7 @@ Signed-off-by: Tim Harvey --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c -@@ -25,6 +25,7 @@ +@@ -26,6 +26,7 @@ #include #include #include @@ -22,10 +22,10 @@ Signed-off-by: Tim Harvey #include #include #include -@@ -5900,3 +5901,34 @@ static void nvidia_ion_ahci_fixup(struct - pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING; - } - DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup); +@@ -6000,3 +6001,34 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I + DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0xa73f, dpc_log_size); + DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0xa76e, dpc_log_size); + #endif + +#ifdef CONFIG_PCI_HOST_THUNDER_PEM +/* diff --git a/target/linux/realtek/patches-5.15/008-5.17-watchdog-add-realtek-otto-watchdog-timer.patch b/target/linux/realtek/patches-5.15/008-5.17-watchdog-add-realtek-otto-watchdog-timer.patch index 60db030647d..7df22b07258 100644 --- a/target/linux/realtek/patches-5.15/008-5.17-watchdog-add-realtek-otto-watchdog-timer.patch +++ b/target/linux/realtek/patches-5.15/008-5.17-watchdog-add-realtek-otto-watchdog-timer.patch @@ -32,7 +32,7 @@ Signed-off-by: Guenter Roeck --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -15896,6 +15896,13 @@ S: Maintained +@@ -15903,6 +15903,13 @@ S: Maintained F: include/sound/rt*.h F: sound/soc/codecs/rt* From 3ed8927cf5d7eb78d1427151cfa83bd535634d47 Mon Sep 17 00:00:00 2001 From: Zoltan HERPAI Date: Wed, 17 Apr 2024 00:42:56 +0200 Subject: [PATCH 05/13] sunxi: fix network bringup on Olinuxino Micro boards It's the A13-based Olinuxino Micro which has only wireless interfaces. The A20-based board is a fully-fledged one which has an ethernet interface. Signed-off-by: Zoltan HERPAI --- target/linux/sunxi/base-files/etc/board.d/02_network | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/linux/sunxi/base-files/etc/board.d/02_network b/target/linux/sunxi/base-files/etc/board.d/02_network index b295dc7daa4..073565d4eef 100644 --- a/target/linux/sunxi/base-files/etc/board.d/02_network +++ b/target/linux/sunxi/base-files/etc/board.d/02_network @@ -17,7 +17,7 @@ sunxi_setup_interfaces() lamobo,lamobo-r1) ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" wan ;; - olimex,a20-olinuxino-micro) + olimex,a13-olinuxino-micro) ucidef_set_interface_lan "wlan0" ;; xunlong,orangepi-r1) From c7fb5d4cac7534e63d91bdf5e5ee5b4e5213e488 Mon Sep 17 00:00:00 2001 From: Chuanhong Guo Date: Wed, 17 Apr 2024 12:12:25 +0800 Subject: [PATCH 06/13] ipset: include libgen.h for basename musl dropped the GNU version of basename prototype from string.h in 1.2.5. Signed-off-by: Chuanhong Guo --- .../patches/0001-include-libgen.h-for-basename.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 package/network/utils/ipset/patches/0001-include-libgen.h-for-basename.patch diff --git a/package/network/utils/ipset/patches/0001-include-libgen.h-for-basename.patch b/package/network/utils/ipset/patches/0001-include-libgen.h-for-basename.patch new file mode 100644 index 00000000000..fb86bbab155 --- /dev/null +++ b/package/network/utils/ipset/patches/0001-include-libgen.h-for-basename.patch @@ -0,0 +1,12 @@ +--- a/src/ipset.c ++++ b/src/ipset.c +@@ -6,8 +6,8 @@ + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ +-#define _GNU_SOURCE + #include /* assert */ ++#include /* basename */ + #include /* fprintf */ + #include /* exit */ + #include /* strcmp */ From 9f6a28b91e30de9c6875afbe1493934218dbfb49 Mon Sep 17 00:00:00 2001 From: Chuanhong Guo Date: Wed, 17 Apr 2024 12:09:07 +0800 Subject: [PATCH 07/13] ipset: update to 7.21 release notes: 7.21: https://www.spinics.net/lists/netfilter-devel/msg85299.html 7.20: https://www.spinics.net/lists/netfilter-devel/msg85120.html 7.19: https://www.spinics.net/lists/netfilter-devel/msg82985.html Signed-off-by: Chuanhong Guo --- package/network/utils/ipset/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/network/utils/ipset/Makefile b/package/network/utils/ipset/Makefile index b0aac8fe36e..c62bbd8b68d 100644 --- a/package/network/utils/ipset/Makefile +++ b/package/network/utils/ipset/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=ipset -PKG_VERSION:=7.17 +PKG_VERSION:=7.21 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://ipset.netfilter.org -PKG_HASH:=be49c9ff489dd6610cad6541e743c3384eac96e9f24707da7b3929d8f2ac64d8 +PKG_HASH:=e2c6ce4fcf3acb3893ca5d35c86935f80ad76fc5ccae601185842df760e0bc69 PKG_MAINTAINER:=Jo-Philipp Wich PKG_LICENSE:=GPL-2.0 From 01e8d822e89266696420ab5ec64360ff1ac1fee8 Mon Sep 17 00:00:00 2001 From: Chen Minqiang Date: Mon, 22 Jan 2024 22:59:18 +0800 Subject: [PATCH 08/13] ncm: add sourcefilter option support This make source based IPv6 routing option available for ncm Signed-off-by: Chen Minqiang --- package/network/utils/comgt/files/ncm.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package/network/utils/comgt/files/ncm.sh b/package/network/utils/comgt/files/ncm.sh index dec058712d0..4c829fa930d 100644 --- a/package/network/utils/comgt/files/ncm.sh +++ b/package/network/utils/comgt/files/ncm.sh @@ -19,6 +19,7 @@ proto_ncm_init_config() { proto_config_add_string delay proto_config_add_string mode proto_config_add_string pdptype + proto_config_add_boolean sourcefilter proto_config_add_int profile proto_config_add_defaults } @@ -29,7 +30,7 @@ proto_ncm_setup() { local manufacturer initialize setmode connect finalize devname devpath ifpath local device ifname apn auth username password pincode delay mode pdptype profile $PROTO_DEFAULT_OPTIONS - json_get_vars device ifname apn auth username password pincode delay mode pdptype profile $PROTO_DEFAULT_OPTIONS + json_get_vars device ifname apn auth username password pincode delay mode pdptype sourcefilter profile $PROTO_DEFAULT_OPTIONS local context_type @@ -202,6 +203,7 @@ proto_ncm_setup() { json_add_string ifname "@$interface" json_add_string proto "dhcpv6" json_add_string extendprefix 1 + [ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0" proto_add_dynamic_defaults [ -n "$zone" ] && { json_add_string zone "$zone" From 044fb8fc133cb0bf6ff0e3c723538f0958838a73 Mon Sep 17 00:00:00 2001 From: Chen Minqiang Date: Mon, 22 Jan 2024 22:59:44 +0800 Subject: [PATCH 09/13] mbim: add sourcefilter option support This make source based IPv6 routing option available for mbim Signed-off-by: Chen Minqiang --- package/network/utils/umbim/files/lib/netifd/proto/mbim.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh b/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh index 50913e7fa04..f2d4c436e88 100755 --- a/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh +++ b/package/network/utils/umbim/files/lib/netifd/proto/mbim.sh @@ -22,6 +22,7 @@ proto_mbim_init_config() { [ -e /proc/sys/net/ipv6 ] && proto_config_add_string ipv6 proto_config_add_string dhcp proto_config_add_string dhcpv6 + proto_config_add_boolean sourcefilter proto_config_add_string pdptype proto_config_add_int mtu proto_config_add_defaults @@ -47,7 +48,7 @@ _proto_mbim_setup() { local device apn pincode delay auth username password allow_roaming allow_partner local dhcp dhcpv6 pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS json_get_vars device apn pincode delay auth username password allow_roaming allow_partner - json_get_vars dhcp dhcpv6 pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS + json_get_vars dhcp dhcpv6 sourcefilter pdptype ip4table ip6table mtu $PROTO_DEFAULT_OPTIONS [ ! -e /proc/sys/net/ipv6 ] && ipv6=0 || json_get_var ipv6 ipv6 @@ -263,6 +264,7 @@ _proto_mbim_setup() { echo "mbim[$$]" "Starting DHCPv6 on $ifname" json_add_string proto "dhcpv6" json_add_string extendprefix 1 + [ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0" fi [ "$peerdns" = 0 -a "$dhcpv6" != 1 ] || { From 44a3c18a31a2a40cd502261016dc60433006cae8 Mon Sep 17 00:00:00 2001 From: Chen Minqiang Date: Mon, 22 Jan 2024 23:00:03 +0800 Subject: [PATCH 10/13] qmi: add sourcefilter option support This make source based IPv6 routing option available for qmi Signed-off-by: Chen Minqiang --- package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh index 49fd87ff9d1..bec46325bca 100755 --- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh +++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh @@ -23,6 +23,7 @@ proto_qmi_init_config() { proto_config_add_int v6profile proto_config_add_boolean dhcp proto_config_add_boolean dhcpv6 + proto_config_add_boolean sourcefilter proto_config_add_boolean autoconnect proto_config_add_int plmn proto_config_add_int timeout @@ -41,7 +42,7 @@ proto_qmi_setup() { local profile_pdptype json_get_vars device apn v6apn auth username password pincode delay modes - json_get_vars pdptype profile v6profile dhcp dhcpv6 autoconnect plmn ip4table + json_get_vars pdptype profile v6profile dhcp dhcpv6 sourcefilter autoconnect plmn ip4table json_get_vars ip6table timeout mtu $PROTO_DEFAULT_OPTIONS [ "$timeout" = "" ] && timeout="10" @@ -441,6 +442,7 @@ proto_qmi_setup() { proto_add_dynamic_defaults # RFC 7278: Extend an IPv6 /64 Prefix to LAN json_add_string extendprefix 1 + [ "$sourcefilter" = "0" ] && json_add_boolean sourcefilter "0" [ -n "$zone" ] && json_add_string zone "$zone" json_close_object ubus call network add_dynamic "$(json_dump)" From 2b6923bc7601c732a62d0e169c69106638af0a84 Mon Sep 17 00:00:00 2001 From: Christian Marangi Date: Wed, 17 Apr 2024 11:28:58 +0200 Subject: [PATCH 11/13] tools: zstd: update patch with upstream version Proposed fixup has been replaced and merged with an advanced version. install-pc-mt has been dropped and replaced for intall-pc MT=1 to generate a .pc file with multithread libs. Signed-off-by: Christian Marangi --- tools/zstd/Makefile | 3 +- ...pkg-config-file-for-multi-threaded-s.patch | 126 ++++++++++++++++++ ...pkg-config-file-for-multi-threaded-s.patch | 97 -------------- 3 files changed, 128 insertions(+), 98 deletions(-) create mode 100644 tools/zstd/patches/001-Provide-variant-pkg-config-file-for-multi-threaded-s.patch delete mode 100644 tools/zstd/patches/100-Provide-variant-pkg-config-file-for-multi-threaded-s.patch diff --git a/tools/zstd/Makefile b/tools/zstd/Makefile index 0264ac2422e..f962809f82a 100644 --- a/tools/zstd/Makefile +++ b/tools/zstd/Makefile @@ -31,7 +31,8 @@ define Host/Compile endef define Host/Install - +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR)/lib install-mt-pc install-static install-includes PREFIX=$(HOST_BUILD_PREFIX) + +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR)/lib install-static install-includes PREFIX=$(HOST_BUILD_PREFIX) + +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR)/lib install-pc MT=1 PREFIX=$(HOST_BUILD_PREFIX) +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR)/programs install PREFIX=$(HOST_BUILD_PREFIX) endef diff --git a/tools/zstd/patches/001-Provide-variant-pkg-config-file-for-multi-threaded-s.patch b/tools/zstd/patches/001-Provide-variant-pkg-config-file-for-multi-threaded-s.patch new file mode 100644 index 00000000000..1bbcaf4c8a1 --- /dev/null +++ b/tools/zstd/patches/001-Provide-variant-pkg-config-file-for-multi-threaded-s.patch @@ -0,0 +1,126 @@ +From f1f1ae369a4cefd3474b3528e8d1847b18750605 Mon Sep 17 00:00:00 2001 +From: Christian Marangi +Date: Sat, 6 Apr 2024 14:41:54 +0200 +Subject: [PATCH] Provide variant pkg-config file for multi-threaded static lib + +Multi-threaded static library require -pthread to correctly link and works. +The pkg-config we provide tho only works with dynamic multi-threaded library +and won't provide the correct libs and cflags values if lib-mt is used. + +To handle this, introduce an env variable MT to permit advanced user to +install and generate a correct pkg-config file for lib-mt or detect if +lib-mt target is called. + +With MT env set on calling make install-pc, libzstd.pc.in is a +pkg-config file for a multi-threaded static library. + +On calling make lib-mt, a libzstd.pc is generated for a multi-threaded +static library as it's what asked by the user by forcing it. + +libzstd.pc is changed to PHONY to force regeneration of it on calling +lib targets or install-pc to handle case where the same directory is +used for mixed compilation. + +This was notice while migrating from meson to make build system where +meson generates a correct .pc file while make doesn't. + +Signed-off-by: Christian Marangi +--- + lib/Makefile | 20 +++++++++++++++++++- + lib/README.md | 4 ++++ + lib/libzstd.pc.in | 4 ++-- + 3 files changed, 25 insertions(+), 3 deletions(-) + +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -63,6 +63,8 @@ CPPFLAGS_DYNLIB += -DZSTD_MULTITHREAD # + LDFLAGS_DYNLIB += -pthread + CPPFLAGS_STATICLIB += # static library build defaults to single-threaded + ++# pkg-config Libs.private points to LDFLAGS_DYNLIB ++PCLIB := $(LDFLAGS_DYNLIB) + + ifeq ($(findstring GCC,$(CCVER)),GCC) + decompress/zstd_decompress_block.o : CFLAGS+=-fno-tree-vectorize +@@ -186,12 +188,15 @@ lib : libzstd.a libzstd + %-mt : CPPFLAGS_DYNLIB := -DZSTD_MULTITHREAD + %-mt : CPPFLAGS_STATICLIB := -DZSTD_MULTITHREAD + %-mt : LDFLAGS_DYNLIB := -pthread ++%-mt : PCLIB := ++%-mt : PCMTLIB := $(LDFLAGS_DYNLIB) + %-mt : % + @echo multi-threaded build completed + + %-nomt : CPPFLAGS_DYNLIB := + %-nomt : LDFLAGS_DYNLIB := + %-nomt : CPPFLAGS_STATICLIB := ++%-nomt : PCLIB := + %-nomt : % + @echo single-threaded build completed + +@@ -292,6 +297,14 @@ PCLIBPREFIX := $(if $(findstring $(LIBDI + # to PREFIX, rather than as a resolved value. + PCEXEC_PREFIX := $(if $(HAS_EXPLICIT_EXEC_PREFIX),$(EXEC_PREFIX),$${prefix}) + ++ ++ifneq ($(MT),) ++ PCLIB := ++ PCMTLIB := $(LDFLAGS_DYNLIB) ++else ++ PCLIB := $(LDFLAGS_DYNLIB) ++endif ++ + ifneq (,$(filter $(UNAME),FreeBSD NetBSD DragonFly)) + PKGCONFIGDIR ?= $(PREFIX)/libdata/pkgconfig + else +@@ -308,6 +321,10 @@ INSTALL_PROGRAM ?= $(INSTALL) + INSTALL_DATA ?= $(INSTALL) -m 644 + + ++# pkg-config library define. ++# For static single-threaded library declare -pthread in Libs.private ++# For static multi-threaded library declare -pthread in Libs and Cflags ++.PHONY: libzstd.pc + libzstd.pc: libzstd.pc.in + @echo creating pkgconfig + @sed \ +@@ -316,7 +333,8 @@ libzstd.pc: libzstd.pc.in + -e 's|@INCLUDEDIR@|$(PCINCPREFIX)$(PCINCDIR)|' \ + -e 's|@LIBDIR@|$(PCLIBPREFIX)$(PCLIBDIR)|' \ + -e 's|@VERSION@|$(VERSION)|' \ +- -e 's|@LIBS_PRIVATE@|$(LDFLAGS_DYNLIB)|' \ ++ -e 's|@LIBS_MT@|$(PCMTLIB)|' \ ++ -e 's|@LIBS_PRIVATE@|$(PCLIB)|' \ + $< >$@ + + .PHONY: install +--- a/lib/README.md ++++ b/lib/README.md +@@ -27,12 +27,16 @@ Enabling multithreading requires 2 condi + + For convenience, we provide a build target to generate multi and single threaded libraries: + - Force enable multithreading on both dynamic and static libraries by appending `-mt` to the target, e.g. `make lib-mt`. ++ Note that the `.pc` generated on calling `make lib-mt` will already include the require Libs and Cflags. + - Force disable multithreading on both dynamic and static libraries by appending `-nomt` to the target, e.g. `make lib-nomt`. + - By default, as mentioned before, dynamic library is multithreaded, and static library is single-threaded, e.g. `make lib`. + + When linking a POSIX program with a multithreaded version of `libzstd`, + note that it's necessary to invoke the `-pthread` flag during link stage. + ++The `.pc` generated from `make install` or `make install-pc` always assume a single-threaded static library ++is compiled. To correctly generate a `.pc` for the multi-threaded static library, set `MT=1` as ENV variable. ++ + Multithreading capabilities are exposed + via the [advanced API defined in `lib/zstd.h`](https://github.com/facebook/zstd/blob/v1.4.3/lib/zstd.h#L351). + +--- a/lib/libzstd.pc.in ++++ b/lib/libzstd.pc.in +@@ -11,6 +11,6 @@ Name: zstd + Description: fast lossless compression algorithm library + URL: https://facebook.github.io/zstd/ + Version: @VERSION@ +-Libs: -L${libdir} -lzstd ++Libs: -L${libdir} -lzstd @LIBS_MT@ + Libs.private: @LIBS_PRIVATE@ +-Cflags: -I${includedir} ++Cflags: -I${includedir} @LIBS_MT@ diff --git a/tools/zstd/patches/100-Provide-variant-pkg-config-file-for-multi-threaded-s.patch b/tools/zstd/patches/100-Provide-variant-pkg-config-file-for-multi-threaded-s.patch deleted file mode 100644 index a7b3823e664..00000000000 --- a/tools/zstd/patches/100-Provide-variant-pkg-config-file-for-multi-threaded-s.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 5886e6a45b3c20c8d8f837657d1506b580434136 Mon Sep 17 00:00:00 2001 -From: Christian Marangi -Date: Sat, 6 Apr 2024 14:41:54 +0200 -Subject: [PATCH] Provide variant pkg-config file for multi-threaded static lib - -Multi-threaded static library require -pthread to correctly link and works. -The pkg-config we provide tho only works with dynamic multi-threaded library -and won't provide the correct libs and cflags values if lib-mt is used. - -To handle this, introduce a variant of libzstd.pc.in, mt-libzstd.pc.in -and intoduce a new make target, install-mt-pc to permit advanced user to -install and generate a correct pkg-config file for lib-mt. - -This was notice while migrating from meson to make build system where -meson generates a correct .pc file while make doesn't. - -Signed-off-by: Christian Marangi ---- - lib/Makefile | 16 ++++++++++++++++ - lib/README.md | 4 ++++ - lib/mt-libzstd.pc.in | 15 +++++++++++++++ - 3 files changed, 35 insertions(+) - create mode 100644 lib/mt-libzstd.pc.in - -diff --git a/lib/Makefile b/lib/Makefile -index 8bfdade9..4933f0e9 100644 ---- a/lib/Makefile -+++ b/lib/Makefile -@@ -319,6 +319,17 @@ libzstd.pc: libzstd.pc.in - -e 's|@LIBS_PRIVATE@|$(LDFLAGS_DYNLIB)|' \ - $< >$@ - -+mt-libzstd.pc: mt-libzstd.pc.in -+ @echo creating pkgconfig -+ @sed \ -+ -e 's|@PREFIX@|$(PREFIX)|' \ -+ -e 's|@EXEC_PREFIX@|$(PCEXEC_PREFIX)|' \ -+ -e 's|@INCLUDEDIR@|$(PCINCPREFIX)$(PCINCDIR)|' \ -+ -e 's|@LIBDIR@|$(PCLIBPREFIX)$(PCLIBDIR)|' \ -+ -e 's|@VERSION@|$(VERSION)|' \ -+ -e 's|@LIBS_PRIVATE@|$(LDFLAGS_DYNLIB)|' \ -+ $< >$@ -+ - .PHONY: install - install: install-pc install-static install-shared install-includes - @echo zstd static and shared library installed -@@ -328,6 +339,11 @@ install-pc: libzstd.pc - [ -e $(DESTDIR)$(PKGCONFIGDIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(PKGCONFIGDIR)/ - $(INSTALL_DATA) libzstd.pc $(DESTDIR)$(PKGCONFIGDIR)/ - -+.PHONY: install-mt-pc -+install-mt-pc: mt-libzstd.pc -+ [ -e $(DESTDIR)$(PKGCONFIGDIR) ] || $(INSTALL) -d -m 755 $(DESTDIR)$(PKGCONFIGDIR)/ -+ $(INSTALL_DATA) mt-libzstd.pc $(DESTDIR)$(PKGCONFIGDIR)/libzstd.pc -+ - .PHONY: install-static - install-static: - # only generate libzstd.a if it's not already present -diff --git a/lib/README.md b/lib/README.md -index a560f06c..3038bc7a 100644 ---- a/lib/README.md -+++ b/lib/README.md -@@ -33,6 +33,10 @@ For convenience, we provide a build target to generate multi and single threaded - When linking a POSIX program with a multithreaded version of `libzstd`, - note that it's necessary to invoke the `-pthread` flag during link stage. - -+The `.pc` generated from `make install` or `make install-pc` always assume a single-threaded static library -+is compiled. If `make lib-mt` is used, to correctly generate a `.pc` for the multi-threaded static library, -+`make install-mt-pc` is needed. -+ - Multithreading capabilities are exposed - via the [advanced API defined in `lib/zstd.h`](https://github.com/facebook/zstd/blob/v1.4.3/lib/zstd.h#L351). - -diff --git a/lib/mt-libzstd.pc.in b/lib/mt-libzstd.pc.in -new file mode 100644 -index 00000000..cd93301a ---- /dev/null -+++ b/lib/mt-libzstd.pc.in -@@ -0,0 +1,15 @@ -+# ZSTD - standard compression algorithm -+# Copyright (c) Meta Platforms, Inc. and affiliates. -+# BSD 2-Clause License (https://opensource.org/licenses/bsd-license.php) -+ -+prefix=@PREFIX@ -+exec_prefix=@EXEC_PREFIX@ -+includedir=@INCLUDEDIR@ -+libdir=@LIBDIR@ -+ -+Name: zstd -+Description: fast lossless compression algorithm library -+URL: https://facebook.github.io/zstd/ -+Version: @VERSION@ -+Libs: -L${libdir} -lzstd @LIBS_PRIVATE@ -+Cflags: -I${includedir} @LIBS_PRIVATE@ --- -2.43.0 - From 74eb7188714bdafa5a7b56ffb48ad8474e107449 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Tue, 16 Apr 2024 23:10:02 +0800 Subject: [PATCH 12/13] ipq-wifi: update to version 2024-04-16 Contains following updates: * ipq8074: add Spectrum SAX1V1K BDF * ipq8074: add Zbtlink ZBT-Z800AX BDF * ipq8074: update regdb in Spectrum SAX1V1K BDF * ipq6018: add Linksys MR7350 BDF Signed-off-by: Chukun Pan --- package/firmware/ipq-wifi/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index 6537477d3f5..5d4d4aafb03 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -2,13 +2,13 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/version.mk PKG_NAME:=ipq-wifi -PKG_RELEASE:=2 +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/project/firmware/qca-wireless.git -PKG_SOURCE_DATE:=2024-03-20 -PKG_SOURCE_VERSION:=87717baa8a7c922942f4202a0ec3de3cb5643941 -PKG_MIRROR_HASH:=a88124db0cd9a386d2cbd905e48408e7131f057240bcc7da93f7c5fc10ea4892 +PKG_SOURCE_DATE:=2024-04-16 +PKG_SOURCE_VERSION:=1d51799e6768a304da7840b8346e7487efd77f49 +PKG_MIRROR_HASH:=9cf0917532283c1a1708643022a5ed1ec4af6bb9ebaff57fc2f0f2c229f2469e PKG_FLAGS:=nonshared include $(INCLUDE_DIR)/package.mk From 9cef2bc224b9bda19a8a79df6d1de9560c081ce2 Mon Sep 17 00:00:00 2001 From: Chukun Pan Date: Tue, 26 Mar 2024 23:16:05 +0800 Subject: [PATCH 13/13] ipq807x: add support for Zbtlink ZBT-Z800AX Hardware specifications: SoC: Qualcomm IPQ8072A RAM: 1GB of DDR4 600MHz Flash1: Winbond W25Q64DW 8MB Flash2: MX30UF2G28AD 256MB WiFi1: QCN5024 2.4GHz AX 4x4 WiFi2: QCN5054 5GHz AX 4x4 Ethernet: 5x 1G RJ45 port USB: 2x USB 3.0 (1x M.2) Button: Reset, WPS Flash instructions: Upload factory.bin in stock firmware's upgrade page, do not preserve settings. Signed-off-by: Chukun Pan --- package/firmware/ipq-wifi/Makefile | 2 + .../boot/dts/qcom/ipq8072-zbt-z800ax.dts | 454 ++++++++++++++++++ target/linux/qualcommax/image/ipq807x.mk | 15 + .../ipq807x/base-files/etc/board.d/01_leds | 3 + .../ipq807x/base-files/etc/board.d/02_network | 3 +- .../etc/hotplug.d/firmware/11-ath11k-caldata | 1 + .../etc/hotplug.d/ieee80211/11_fix_wifi_mac | 4 + .../base-files/lib/upgrade/platform.sh | 3 +- 8 files changed, 483 insertions(+), 2 deletions(-) create mode 100644 target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8072-zbt-z800ax.dts diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index 5d4d4aafb03..41c772c9679 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -52,6 +52,7 @@ ALLWIFIBOARDS:= \ yyets_le1 \ yuncore_ax880 \ yuncore_fap650 \ + zbtlink_zbt-z800ax \ zte_mf269 \ zte_mf287 \ zte_mf287plus \ @@ -170,6 +171,7 @@ $(eval $(call generate-ipq-wifi-package,xiaomi_ax9000,Xiaomi AX9000)) $(eval $(call generate-ipq-wifi-package,yyets_le1,YYeTs LE1)) $(eval $(call generate-ipq-wifi-package,yuncore_ax880,Yuncore AX880)) $(eval $(call generate-ipq-wifi-package,yuncore_fap650,Yuncore FAP650)) +$(eval $(call generate-ipq-wifi-package,zbtlink_zbt-z800ax,Zbtlink ZBT-Z800AX)) $(eval $(call generate-ipq-wifi-package,zte_mf269,ZTE MF269)) $(eval $(call generate-ipq-wifi-package,zte_mf287,ZTE MF287)) $(eval $(call generate-ipq-wifi-package,zte_mf287plus,ZTE MF287Plus)) diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8072-zbt-z800ax.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8072-zbt-z800ax.dts new file mode 100644 index 00000000000..c352b725676 --- /dev/null +++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq8072-zbt-z800ax.dts @@ -0,0 +1,454 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +/dts-v1/; + +#include "ipq8074.dtsi" +#include "ipq8074-hk-cpu.dtsi" +#include "ipq8074-ess.dtsi" +#include +#include +#include + +/ { + model = "Zbtlink ZBT-Z800AX"; + compatible = "zbtlink,zbt-z800ax", "qcom,ipq8074"; + + aliases { + led-boot = &led_net; + led-failsafe = &led_net; + led-upgrade = &led_net; + serial0 = &blsp1_uart5; + /* + * Aliases as required by u-boot + * to patch MAC addresses + */ + ethernet0 = &dp1; + ethernet1 = &dp2; + ethernet2 = &dp3; + ethernet3 = &dp4; + ethernet4 = &dp5; + label-mac-device = &dp1; + }; + + chosen { + stdout-path = "serial0:115200n8"; + bootargs-append = " root=/dev/ubiblock0_1"; + }; + + gpio-export { + compatible = "gpio-export"; + + lte-power { + gpio-export,name = "lte_power"; + gpio-export,output = <1>; + gpios = <&tlmm 55 GPIO_ACTIVE_HIGH>; + }; + }; + + keys { + compatible = "gpio-keys"; + pinctrl-0 = <&button_pins>; + pinctrl-names = "default"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; + }; + + wps { + label = "wps"; + linux,code = ; + gpios = <&tlmm 46 GPIO_ACTIVE_LOW>; + }; + }; + + leds { + compatible = "gpio-leds"; + + led_net: net { + color = ; + function = LED_FUNCTION_WAN_ONLINE; + gpios = <&tlmm 22 GPIO_ACTIVE_HIGH>; + }; + + module { + color = ; + function = LED_FUNCTION_MOBILE; + gpios = <&tlmm 30 GPIO_ACTIVE_HIGH>; + }; + + wlan2g { + color = ; + function = LED_FUNCTION_WLAN_2GHZ; + gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "phy1radio"; + }; + + wlan5g { + color = ; + function = LED_FUNCTION_WLAN_5GHZ; + gpios = <&tlmm 43 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "phy0radio"; + }; + }; +}; + +&tlmm { + button_pins: button-pins { + mux { + pins = "gpio34", "gpio46"; + function = "gpio"; + drive-strength = <8>; + bias-pull-up; + }; + }; + + mdio_pins: mdio-pins { + mdc { + pins = "gpio68"; + function = "mdc"; + drive-strength = <8>; + bias-pull-up; + }; + + mdio { + pins = "gpio69"; + function = "mdio"; + drive-strength = <8>; + bias-pull-up; + }; + }; +}; + +&blsp1_spi1 { + pinctrl-0 = <&spi_0_pins>; + pinctrl-names = "default"; + cs-select = <0>; + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + #address-cells = <1>; + #size-cells = <1>; + reg = <0>; + spi-max-frequency = <50000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "0:sbl1"; + reg = <0x0 0x50000>; + read-only; + }; + + partition@50000 { + label = "0:mibib"; + reg = <0x50000 0x10000>; + read-only; + }; + + partition@60000 { + label = "0:bootconfig"; + reg = <0x60000 0x20000>; + read-only; + }; + + partition@80000 { + label = "0:bootconfig1"; + reg = <0x80000 0x20000>; + read-only; + }; + + partition@a0000 { + label = "0:qsee"; + reg = <0xa0000 0x180000>; + read-only; + }; + + partition@220000 { + label = "0:qsee_1"; + reg = <0x220000 0x180000>; + read-only; + }; + + partition@3a0000 { + label = "0:devcfg"; + reg = <0x3a0000 0x10000>; + read-only; + }; + + partition@3b0000 { + label = "0:devcfg_1"; + reg = <0x3b0000 0x10000>; + read-only; + }; + + partition@3c0000 { + label = "0:apdp"; + reg = <0x3c0000 0x10000>; + read-only; + }; + + partition@3d0000 { + label = "0:apdp_1"; + reg = <0x3d0000 0x10000>; + read-only; + }; + + partition@3e0000 { + label = "0:rpm"; + reg = <0x3e0000 0x40000>; + read-only; + }; + + partition@420000 { + label = "0:rpm_1"; + reg = <0x420000 0x40000>; + read-only; + }; + + partition@460000 { + label = "0:cdt"; + reg = <0x460000 0x10000>; + read-only; + }; + + partition@470000 { + label = "0:cdt_1"; + reg = <0x470000 0x10000>; + read-only; + }; + + partition@480000 { + label = "0:appsblenv"; + reg = <0x480000 0x10000>; + }; + + partition@490000 { + label = "0:appsbl"; + reg = <0x490000 0xa0000>; + read-only; + }; + + partition@530000 { + label = "0:appsbl_1"; + reg = <0x530000 0xa0000>; + read-only; + }; + + partition@5d0000 { + label = "0:art"; + reg = <0x5d0000 0x40000>; + read-only; + }; + + partition@610000 { + label = "0:ethphyfw"; + reg = <0x610000 0x80000>; + read-only; + }; + }; + }; +}; + +&blsp1_uart5 { + status = "okay"; +}; + +&cryptobam { + status = "okay"; +}; + +&crypto { + status = "okay"; +}; + +&prng { + status = "okay"; +}; + +&qpic_bam { + status = "okay"; +}; + +&qpic_nand { + status = "okay"; + + partitions { + status = "disabled"; + }; + + nand@0 { + reg = <0>; + nand-ecc-strength = <8>; + nand-ecc-step-size = <512>; + nand-bus-width = <8>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "rootfs"; + reg = <0x0000000 0x3400000>; + }; + + partition@3400000 { + label = "0:wififw"; + reg = <0x3400000 0x0800000>; + read-only; + }; + + partition@3c00000 { + label = "rootfs_1"; + reg = <0x3c00000 0x3400000>; + }; + + partition@7000000 { + label = "0:wififw_1"; + reg = <0x7000000 0x0800000>; + read-only; + }; + }; + }; +}; + +&qusb_phy_0 { + status = "okay"; +}; + +&qusb_phy_1 { + status = "okay"; +}; + +&ssphy_0 { + status = "okay"; +}; + +&ssphy_1 { + status = "okay"; +}; + +&usb_0 { + status = "okay"; +}; + +&usb_1 { + status = "okay"; +}; + +&mdio { + status = "okay"; + + pinctrl-0 = <&mdio_pins>; + pinctrl-names = "default"; + reset-gpios = <&tlmm 37 GPIO_ACTIVE_LOW>; + + ethernet-phy-package@0 { + compatible = "qcom,qca8075-package"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + + qca8075_0: ethernet-phy@0 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <0>; + }; + + qca8075_1: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <1>; + }; + + qca8075_2: ethernet-phy@2 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <2>; + }; + + qca8075_3: ethernet-phy@3 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <3>; + }; + + qca8075_4: ethernet-phy@4 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <4>; + }; + }; +}; + +&switch { + status = "okay"; + + switch_lan_bmp = <(ESS_PORT1 | ESS_PORT2 | ESS_PORT3 | ESS_PORT4)>; + switch_wan_bmp = ; + switch_mac_mode = ; + + qcom,port_phyinfo { + port@1 { + port_id = <1>; + phy_address = <0>; + }; + port@2 { + port_id = <2>; + phy_address = <1>; + }; + port@3 { + port_id = <3>; + phy_address = <2>; + }; + port@4 { + port_id = <4>; + phy_address = <3>; + }; + port@5 { + port_id = <5>; + phy_address = <4>; + }; + }; +}; + +&edma { + status = "okay"; +}; + +&dp1 { + status = "okay"; + phy-handle = <&qca8075_0>; + label = "lan1"; +}; + +&dp2 { + status = "okay"; + phy-handle = <&qca8075_1>; + label = "lan2"; +}; + +&dp3 { + status = "okay"; + phy-handle = <&qca8075_2>; + label = "lan3"; +}; + +&dp4 { + status = "okay"; + phy-handle = <&qca8075_3>; + label = "lan4"; +}; + +&dp5 { + status = "okay"; + phy-handle = <&qca8075_4>; + label = "wan"; +}; + +&wifi { + status = "okay"; + + qcom,ath11k-calibration-variant = "ZBT-Z800AX"; +}; diff --git a/target/linux/qualcommax/image/ipq807x.mk b/target/linux/qualcommax/image/ipq807x.mk index 74fe15a9978..027278b63c0 100644 --- a/target/linux/qualcommax/image/ipq807x.mk +++ b/target/linux/qualcommax/image/ipq807x.mk @@ -299,6 +299,21 @@ define Device/yuncore_ax880 endef TARGET_DEVICES += yuncore_ax880 +define Device/zbtlink_zbt-z800ax + $(call Device/FitImage) + $(call Device/UbiFit) + DEVICE_VENDOR := Zbtlink + DEVICE_MODEL := ZBT-Z800AX + BLOCKSIZE := 128k + PAGESIZE := 2048 + DEVICE_DTS_CONFIG := config@hk09 + SOC := ipq8072 + DEVICE_PACKAGES := ipq-wifi-zbtlink_zbt-z800ax + IMAGES += factory.bin + IMAGE/factory.bin := append-ubi | qsdk-ipq-factory-nand +endef +TARGET_DEVICES += zbtlink_zbt-z800ax + define Device/zte_mf269 $(call Device/FitImage) $(call Device/UbiFit) diff --git a/target/linux/qualcommax/ipq807x/base-files/etc/board.d/01_leds b/target/linux/qualcommax/ipq807x/base-files/etc/board.d/01_leds index 737c64fcecf..23d87f1b2d8 100644 --- a/target/linux/qualcommax/ipq807x/base-files/etc/board.d/01_leds +++ b/target/linux/qualcommax/ipq807x/base-files/etc/board.d/01_leds @@ -62,6 +62,9 @@ yuncore,ax880) ucidef_set_led_netdev "wan-port-link" "WAN-PORT-LINK" "90000.mdio-1:18:green:wan" "wan" "tx rx link_10 link_100 link_1000 link_2500" ucidef_set_led_netdev "lan-port-link" "LAN-PORT-LINK" "90000.mdio-1:1c:green:lan" "lan" "tx rx link_10 link_100 link_1000 link_2500" ;; +zbtlink,zbt-z800ax) + ucidef_set_led_netdev "internet" "Internet" "green:wan-online" "wan" + ;; esac board_config_flush diff --git a/target/linux/qualcommax/ipq807x/base-files/etc/board.d/02_network b/target/linux/qualcommax/ipq807x/base-files/etc/board.d/02_network index fb3fec6fc97..77c84d40faa 100644 --- a/target/linux/qualcommax/ipq807x/base-files/etc/board.d/02_network +++ b/target/linux/qualcommax/ipq807x/base-files/etc/board.d/02_network @@ -15,7 +15,8 @@ ipq807x_setup_interfaces() buffalo,wxr-5950ax12|\ dynalink,dl-wrx36|\ linksys,mx5300|\ - xiaomi,ax9000) + xiaomi,ax9000|\ + zbtlink,zbt-z800ax) ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan" ;; cmcc,rm2-6) diff --git a/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata b/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata index 88ba972407f..f533bac48e9 100644 --- a/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata +++ b/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata @@ -28,6 +28,7 @@ case "$FIRMWARE" in xiaomi,ax3600|\ xiaomi,ax9000|\ yuncore,ax880|\ + zbtlink,zbt-z800ax|\ zte,mf269|\ zyxel,nbg7815) caldata_extract "0:art" 0x1000 0x20000 diff --git a/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac b/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac index 500f01c31f1..dd85dcfe98c 100644 --- a/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac +++ b/target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac @@ -30,4 +30,8 @@ case "$board" in [ "$PHYNBR" = "1" ] && macaddr_add $label_mac 1 > /sys${DEVPATH}/macaddress [ "$PHYNBR" = "2" ] && macaddr_add $label_mac 3 > /sys${DEVPATH}/macaddress ;; + zbtlink,zbt-z800ax) + [ "$PHYNBR" = "0" ] && macaddr_add $(get_mac_label) -1 > /sys${DEVPATH}/macaddress + [ "$PHYNBR" = "1" ] && macaddr_add $(get_mac_label) -2 > /sys${DEVPATH}/macaddress + ;; esac diff --git a/target/linux/qualcommax/ipq807x/base-files/lib/upgrade/platform.sh b/target/linux/qualcommax/ipq807x/base-files/lib/upgrade/platform.sh index bffca41e020..768bf649cec 100644 --- a/target/linux/qualcommax/ipq807x/base-files/lib/upgrade/platform.sh +++ b/target/linux/qualcommax/ipq807x/base-files/lib/upgrade/platform.sh @@ -51,7 +51,8 @@ platform_do_upgrade() { netgear,rax120v2|\ netgear,wax218|\ netgear,wax620|\ - netgear,wax630) + netgear,wax630|\ + zbtlink,zbt-z800ax) nand_do_upgrade "$1" ;; buffalo,wxr-5950ax12)