patches: restructure patches and backports

Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
John Crispin
2022-01-01 15:51:18 +01:00
parent 48a091a3a2
commit bb2b6db088
96 changed files with 414 additions and 457 deletions

View File

@@ -4,5 +4,12 @@ revision: 378769b5551714ccaa821b481bfeecbf362f351e
output_dir: ./output
patch_folders:
- backports/
- patches/
- patches/backports/
- patches/ath79
- patches/base
- patches/ramips
- patches/ipq40xx
- patches/ipq806x
- patches/ipq807x
- patches/wifi
- patches/rest

View File

@@ -1,137 +0,0 @@
From f6f9f9f095bdd05c66f23357228b90a8daeedd14 Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Thu, 25 Mar 2021 08:03:48 +0100
Subject: [PATCH 23/43] ipq40xx: add ath10k-ct fw.cfg stubs
Signed-off-by: John Crispin <john@phrozen.org>
---
.../etc/hotplug.d/firmware/40-ct-fw-cfg | 46 +++++++++++++++++++
.../lib/firmware/ath10k/fwcfg-ipq4019.txt | 15 ++++++
.../lib/firmware/ath10k/fwcfg-qca9888.txt | 16 +++++++
.../lib/firmware/ath10k/fwcfg-qca9984.txt | 16 +++++++
4 files changed, 93 insertions(+)
create mode 100644 target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
create mode 100644 target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt
create mode 100644 target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
create mode 100644 target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
new file mode 100644
index 0000000000..fe8dab3367
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+[ -e /lib/firmware/$FIRMWARE ] && exit 0
+
+
+fwcfg_symlink() {
+ local chip=$1
+ local path=$2
+
+ ln -s /lib/firmware/ath10k/fwcfg-${chip}.txt /lib/firmware/${FIRMWARE}
+}
+
+case "$FIRMWARE" in
+ath10k/fwcfg-ahb-a000000.wifi.txt|\
+ath10k/fwcfg-ahb-a800000.wifi.txt)
+ fwcfg_symlink ipq4019
+
+ ;;
+ath10k/fwcfg-pci-0000:01:00.0.txt)
+ case "$(board_name)" in
+ linksys,ea8300)
+ fwcfg_symlink qca9888
+ ;;
+ tp-link,ap2220|\
+ tp-link,ec420-g1)
+ fwcfg_symlink qca9984
+ ;;
+ esac
+ ;;
+ath10k/fwcfg-pci-0001:01:00.0.txt)
+ case "$(board_name)" in
+ edgecore,ecw5410)
+ fwcfg_symlink qca9984
+ ;;
+ esac
+ ;;
+ath10k/fwcfg-pci-0002:01:00.0.txt)
+ case "$(board_name)" in
+ edgecore,ecw5410)
+ fwcfg_symlink qca9984
+ ;;
+ esac
+ ;;
+esac
+
+exit 0
diff --git a/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt
new file mode 100644
index 0000000000..7943173e51
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt
@@ -0,0 +1,15 @@
+vdevs = 8
+peers = 147
+active_peers = 147
+stations = 147
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2000
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
diff --git a/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
new file mode 100644
index 0000000000..560c8103d7
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
@@ -0,0 +1,16 @@
+# 9888 chip
+vdevs = 8
+peers = 202
+active_peers = 202
+stations = 202
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2200
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
diff --git a/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
new file mode 100644
index 0000000000..924a689000
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
@@ -0,0 +1,16 @@
+# 9984
+vdevs = 8
+peers = 180
+active_peers = 180
+stations = 180
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2400
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
--
2.25.1

View File

@@ -1,148 +0,0 @@
From a0eb587ea9e4d905e1796c4f0d64fff9cd8a88f3 Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Thu, 14 Oct 2021 15:13:56 +0200
Subject: [PATCH] spwlanpoe
Signed-off-by: John Crispin <john@phrozen.org>
---
package/boot/uboot-envtools/files/ipq40xx | 1 +
target/linux/ipq40xx/base-files/etc/board.d/01_leds | 1 +
.../linux/ipq40xx/base-files/etc/board.d/02_network | 1 +
.../etc/hotplug.d/firmware/11-ath10k-caldata | 2 ++
.../ipq40xx/base-files/lib/upgrade/platform.sh | 3 ++-
.../boot/dts/qcom-ipq4018-spw2ac1200-lan-poe.dts | 6 ++++++
target/linux/ipq40xx/image/generic.mk | 13 +++++++++++++
.../patches-5.4/901-arm-boot-add-dts-files.patch | 3 ++-
8 files changed, 28 insertions(+), 2 deletions(-)
create mode 100644 target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-spw2ac1200-lan-poe.dts
diff --git a/package/boot/uboot-envtools/files/ipq40xx b/package/boot/uboot-envtools/files/ipq40xx
index fd7ad69eff..c51b40ab12 100644
--- a/package/boot/uboot-envtools/files/ipq40xx
+++ b/package/boot/uboot-envtools/files/ipq40xx
@@ -35,6 +35,7 @@ alfa-network,ap120c-ac |\
devolo,magic-2-wifi-next |\
edgecore,ecw5211 |\
edgecore,spw2ac1200 |\
+edgecore,spw2ac1200-lan-poe |\
glinet,gl-ap1300 |\
glinet,gl-b1300 |\
luma,wrtq-329acn |\
diff --git a/target/linux/ipq40xx/base-files/etc/board.d/01_leds b/target/linux/ipq40xx/base-files/etc/board.d/01_leds
index d944d72184..5476dd5df6 100755
--- a/target/linux/ipq40xx/base-files/etc/board.d/01_leds
+++ b/target/linux/ipq40xx/base-files/etc/board.d/01_leds
@@ -72,6 +72,7 @@ qxwlan,e2600ac-c2)
;;
edgecore,ecw5211 |\
edgecore,spw2ac1200 |\
+edgecore,spw2ac1200-lan-poe |\
cig,wf610d |\
zyxel,nbg6617 |\
zyxel,wre6606)
diff --git a/target/linux/ipq40xx/base-files/etc/board.d/02_network b/target/linux/ipq40xx/base-files/etc/board.d/02_network
index e4b009bf93..f533c39179 100755
--- a/target/linux/ipq40xx/base-files/etc/board.d/02_network
+++ b/target/linux/ipq40xx/base-files/etc/board.d/02_network
@@ -15,6 +15,7 @@ ipq40xx_setup_interfaces()
8dev,habanero-dvk|\
8dev,jalapeno|\
alfa-network,ap120c-ac|\
+ edgecore,spw2ac1200-lan-poe |\
engenius,emr3500|\
engenius,ens620ext|\
luma,wrtq-329acn|\
diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index 97dd1b4039..e36821a596 100644
--- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -105,6 +105,7 @@ case "$FIRMWARE" in
compex,wpj428 |\
edgecore,ecw5211 |\
edgecore,spw2ac1200 |\
+ edgecore,spw2ac1200-lan-poe |\
edgecore,oap100 |\
engenius,eap1300 |\
engenius,eap2200 |\
@@ -226,6 +227,7 @@ case "$FIRMWARE" in
compex,wpj428 |\
edgecore,ecw5211 |\
edgecore,spw2ac1200 |\
+ edgecore,spw2ac1200-lan-poe |\
edgecore,oap100 |\
engenius,eap1300 |\
engenius,eap2200 |\
diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
index 806b3edb66..d44a57c62a 100644
--- a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
@@ -90,7 +90,8 @@ platform_do_upgrade() {
fi
nand_do_upgrade "$1"
;;
- edgecore,spw2ac1200)
+ edgecore,spw2ac1200|\
+ edgecore,spw2ac1200-lan-poe)
CI_UBIPART="$(awk -F 'ubi.mtd=' '{printf $2}' /proc/cmdline | sed -e 's/ .*$//')"
nand_do_upgrade "$1"
;;
diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-spw2ac1200-lan-poe.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-spw2ac1200-lan-poe.dts
new file mode 100644
index 0000000000..1c2a2a8621
--- /dev/null
+++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4018-spw2ac1200-lan-poe.dts
@@ -0,0 +1,6 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qcom-ipq4018-spw2ac1200.dts"
+/ {
+ compatible = "edgecore,spw2ac1200-lan-poe";
+};
diff --git a/target/linux/ipq40xx/image/generic.mk b/target/linux/ipq40xx/image/generic.mk
index ae1e2e49cf..7e6118e61c 100644
--- a/target/linux/ipq40xx/image/generic.mk
+++ b/target/linux/ipq40xx/image/generic.mk
@@ -387,6 +387,19 @@ define Device/edgecore_spw2ac1200
endef
TARGET_DEVICES += edgecore_spw2ac1200
+define Device/edgecore_spw2ac1200-lan-poe
+ $(call Device/FitImage)
+ $(call Device/UbiFit)
+ DEVICE_VENDOR := Edgecore
+ DEVICE_MODEL := SPW2AC1200
+ SOC := qcom-ipq4018
+ BLOCKSIZE := 128k
+ PAGESIZE := 2048
+ DEVICE_DTS_CONFIG := config@ap.dk01.1-c2
+ DEVICE_PACKAGES := kmod-tpm-i2c-atmel kmod-usb-acm uboot-envtools kmod-usb-net kmod-usb-net-cdc-qmi uqmi
+endef
+TARGET_DEVICES += edgecore_spw2ac1200-lan-poe
+
define Device/edgecore_oap100
$(call Device/FitImage)
$(call Device/UbiFit)
diff --git a/target/linux/ipq40xx/patches-5.4/901-arm-boot-add-dts-files.patch b/target/linux/ipq40xx/patches-5.4/901-arm-boot-add-dts-files.patch
index 826e17b0e9..c4ecf62313 100644
--- a/target/linux/ipq40xx/patches-5.4/901-arm-boot-add-dts-files.patch
+++ b/target/linux/ipq40xx/patches-5.4/901-arm-boot-add-dts-files.patch
@@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
-@@ -837,11 +837,63 @@ dtb-$(CONFIG_ARCH_QCOM) += \
+@@ -837,11 +837,64 @@ dtb-$(CONFIG_ARCH_QCOM) += \
qcom-apq8074-dragonboard.dtb \
qcom-apq8084-ifc6540.dtb \
qcom-apq8084-mtp.dtb \
@@ -23,6 +23,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
+ qcom-ipq4018-eap1300.dtb \
+ qcom-ipq4018-ecw5211.dtb \
+ qcom-ipq4018-spw2ac1200.dtb \
++ qcom-ipq4018-spw2ac1200-lan-poe.dtb \
+ qcom-ipq4018-emd1.dtb \
+ qcom-ipq4018-emr3500.dtb \
+ qcom-ipq4018-ens620ext.dtb \
--
2.25.1

View File

@@ -1,78 +0,0 @@
From b144b80999d1e1facf299b57c5fa3305cdfd9ee8 Mon Sep 17 00:00:00 2001
From: Paul Spooren <mail@aparcar.org>
Date: Thu, 4 Nov 2021 12:48:04 -1000
Subject: [PATCH] scripts: gen_config.py add host_dependencies option
In case a package/image requres specific host dependencies it is
possible to define entries in the `host_dependencies` array. Each entry
is an object containing at least `name` and `which`. The `which` array
contains tools to be checked in the current `PATH`.
Optionally the two options `success_diffconfig` and
`fallback_diffconfig` can be set. The former is optionally added in case
the tool is found. The latter is added if the dependency is not
available.
If the dependecy is not available and no `fallback_diffconfig` is set,
the config generation is considered impossible and stopped.
Signed-off-by: Paul Spooren <mail@aparcar.org>
---
scripts/gen_config.py | 27 +++++++++++++++++++++++++--
1 file changed, 25 insertions(+), 2 deletions(-)
diff --git a/scripts/gen_config.py b/scripts/gen_config.py
index a348386124..5572de80c7 100755
--- a/scripts/gen_config.py
+++ b/scripts/gen_config.py
@@ -2,7 +2,7 @@
from os import getenv
from pathlib import Path
-from shutil import rmtree
+from shutil import rmtree, which
from subprocess import run
import sys
import yaml
@@ -36,7 +36,27 @@ def usage(code: int = 0):
sys.exit(code)
-def load_yaml(fname: str, profile: dict, include = True):
+def process_host_dependency(dependecy: dict, profile: dict):
+ print(f"Checking host dependecy {dependecy['name']}")
+ found = False
+ for w in dependecy["which"]:
+ if which(w):
+ print(f"-> Found {w}")
+ found = True
+ break
+
+ if found:
+ profile["diffconfig"] += dependecy.get("success_diffconfig", "")
+ else:
+ print(f"-> Could not find host dependecy {dependecy['name']}.")
+ print(f" -> Please make sure one of {dependecy['which']} is available")
+ if "fallback_diffconfig" in dependecy:
+ profile["diffconfig"] += dependecy["fallback_diffconfig"]
+ else:
+ die("Can't continue without dependency and no `fallback_diffconfig` set")
+
+
+def load_yaml(fname: str, profile: dict, include=True):
profile_file = (profile_folder / fname).with_suffix(".yml")
if not profile_file.is_file():
@@ -59,6 +79,9 @@ def load_yaml(fname: str, profile: dict, include = True):
if f.get("name", "") == "" or (f.get("uri", "") == "" and f.get("path", "") == ""):
die(f"Found bad feed {f}")
profile["feeds"][f.get("name")] = f
+ elif n in {"host_dependecies"}:
+ for d in new.get(n):
+ process_host_dependency(d, profile)
if "include" in new and include:
for i in range(len(new["include"])):
--
2.30.2

View File

@@ -1,54 +0,0 @@
From bcb6e18b492d4fa055c136729ad85c53c725f241 Mon Sep 17 00:00:00 2001
From: Paul Spooren <mail@aparcar.org>
Date: Fri, 5 Nov 2021 12:12:25 -1000
Subject: [PATCH] scripts: gen_config allow explicit warning message
Instead of generically mentioning a missing dependency the host
dependency can also be explained by defining a `warning`.
Warning messages are collected and printed at the end.
Signed-off-by: Paul Spooren <mail@aparcar.org>
---
scripts/gen_config.py | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/scripts/gen_config.py b/scripts/gen_config.py
index 5572de80c7..071e00bb4d 100755
--- a/scripts/gen_config.py
+++ b/scripts/gen_config.py
@@ -8,6 +8,7 @@ import sys
import yaml
profile_folder = Path(getenv("PROFILES", "./profiles")).absolute()
+warnings = []
def die(msg: str):
@@ -48,8 +49,13 @@ def process_host_dependency(dependecy: dict, profile: dict):
if found:
profile["diffconfig"] += dependecy.get("success_diffconfig", "")
else:
- print(f"-> Could not find host dependecy {dependecy['name']}.")
- print(f" -> Please make sure one of {dependecy['which']} is available")
+ if "warning" in dependecy:
+ warnings.append(f"Dependecy {dependecy['name']}: {dependecy['warning']}")
+ else:
+ warnings.append(
+ f"Dependecy {dependecy['name']}: Please install {dependecy['which']}"
+ )
+
if "fallback_diffconfig" in dependecy:
profile["diffconfig"] += dependecy["fallback_diffconfig"]
else:
@@ -220,3 +226,7 @@ if __name__ == "__main__":
print("Running make defconfig")
if run(["make", "defconfig"]).returncode:
die(f"Error running make defconfig")
+
+ print("#########################\n" * 3)
+ print("\n".join(warnings))
+ print("#########################\n" * 3)
--
2.30.2

View File

@@ -0,0 +1,30 @@
From ee837f028bd7af515d30a8a90cc2b5ee61eecf19 Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Sat, 4 Sep 2021 06:04:54 +0200
Subject: [PATCH 35/43] certificates: add ability to persistently store
certificates
Signed-off-by: John Crispin <john@phrozen.org>
---
target/linux/ath79/dts/qca9563_tplink_cpe710-v1.dts | 7 ++++++-
3 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/target/linux/ath79/dts/qca9563_tplink_cpe710-v1.dts b/target/linux/ath79/dts/qca9563_tplink_cpe710-v1.dts
index 830c3d30b8..71c6381f86 100644
--- a/target/linux/ath79/dts/qca9563_tplink_cpe710-v1.dts
+++ b/target/linux/ath79/dts/qca9563_tplink_cpe710-v1.dts
@@ -86,7 +86,12 @@
partition@70000 {
compatible = "denx,uimage";
label = "firmware";
- reg = <0x070000 0xf50000>;
+ reg = <0x070000 0xf40000>;
+ };
+
+ partition@fb0000 {
+ label = "certificates";
+ reg = <0xfb0000 0x10000>;
};
partition@fc0000 {

View File

@@ -1,32 +1,33 @@
From 4b5a9307be956685ed6bd14a3e2cb8727eae0b08 Mon Sep 17 00:00:00 2001
From 3b8b9898226f49379e34356fd8d2b0abc8947994 Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Fri, 19 Jun 2020 10:45:22 +0200
Subject: [PATCH 03/43] pending: scripts: add gen_config.py
Subject: [PATCH] pending: scripts: add gen_config.py
This script is used to setup the tree based on the profiles/.
Signed-off-by: John Crispin <john@phrozen.org>
---
scripts/gen_config.py | 199 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 199 insertions(+)
scripts/gen_config.py | 236 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 236 insertions(+)
create mode 100755 scripts/gen_config.py
diff --git a/scripts/gen_config.py b/scripts/gen_config.py
new file mode 100755
index 0000000000..a36f244e56
index 0000000000..d39066f44d
--- /dev/null
+++ b/scripts/gen_config.py
@@ -0,0 +1,199 @@
@@ -0,0 +1,236 @@
+#!/usr/bin/env python3
+
+from os import getenv
+from pathlib import Path
+from shutil import rmtree
+from shutil import rmtree, which
+from subprocess import run
+import sys
+import yaml
+
+profile_folder = Path(getenv("PROFILES", "./profiles")).absolute()
+warnings = []
+
+
+def die(msg: str):
@@ -55,7 +56,32 @@ index 0000000000..a36f244e56
+ sys.exit(code)
+
+
+def load_yaml(fname: str, profile: dict, include = True):
+def process_host_dependency(dependecy: dict, profile: dict):
+ print(f"Checking host dependecy {dependecy['name']}")
+ found = False
+ for w in dependecy["which"]:
+ if which(w):
+ print(f"-> Found {w}")
+ found = True
+ break
+
+ if found:
+ profile["diffconfig"] += dependecy.get("success_diffconfig", "")
+ else:
+ if "warning" in dependecy:
+ warnings.append(f"Dependecy {dependecy['name']}: {dependecy['warning']}")
+ else:
+ warnings.append(
+ f"Dependecy {dependecy['name']}: Please install {dependecy['which']}"
+ )
+
+ if "fallback_diffconfig" in dependecy:
+ profile["diffconfig"] += dependecy["fallback_diffconfig"]
+ else:
+ die("Can't continue without dependency and no `fallback_diffconfig` set")
+
+
+def load_yaml(fname: str, profile: dict, include=True):
+ profile_file = (profile_folder / fname).with_suffix(".yml")
+
+ if not profile_file.is_file():
@@ -78,10 +104,13 @@ index 0000000000..a36f244e56
+ if f.get("name", "") == "" or (f.get("uri", "") == "" and f.get("path", "") == ""):
+ die(f"Found bad feed {f}")
+ profile["feeds"][f.get("name")] = f
+ elif n in {"host_dependecies"}:
+ for d in new.get(n):
+ process_host_dependency(d, profile)
+
+ if "include" in new and include:
+ for i in range(len(new["include"])):
+ profile = load_yaml(new["include"][i], profile, False)
+ profile = load_yaml(new["include"][i], profile)
+ return profile
+
+
@@ -149,6 +178,10 @@ index 0000000000..a36f244e56
+ ["./scripts/feeds", "install", "-a", "-f", "-p", f.get("name")]
+ ).returncode:
+ die(f"Error installing {feed}")
+ if run(
+ ["./scripts/feeds", "install", "-f", "-p", f.get("name"), f.get("name")]
+ ).returncode:
+ die(f"Error installing {feed}")
+
+ packages = ["./scripts/feeds", "install" ]
+ for package in profile.get("packages", []):
@@ -216,6 +249,10 @@ index 0000000000..a36f244e56
+ print("Running make defconfig")
+ if run(["make", "defconfig"]).returncode:
+ die(f"Error running make defconfig")
+
+ print("#########################\n" * 3)
+ print("\n".join(warnings))
+ print("#########################\n" * 3)
--
2.25.1

View File

@@ -117,19 +117,6 @@ index 0000000000..4e8f05a700
+--
+2.25.1
+
diff --git a/scripts/gen_config.py b/scripts/gen_config.py
index a36f244e56..a348386124 100755
--- a/scripts/gen_config.py
+++ b/scripts/gen_config.py
@@ -62,7 +62,7 @@ def load_yaml(fname: str, profile: dict, include = True):
if "include" in new and include:
for i in range(len(new["include"])):
- profile = load_yaml(new["include"][i], profile, False)
+ profile = load_yaml(new["include"][i], profile)
return profile
diff --git a/scripts/getver.sh b/scripts/getver.sh
index dc3d1bb1c3..cd4d7aedf4 100755
--- a/scripts/getver.sh

View File

@@ -0,0 +1,282 @@
From bda0e566a474677412cc3097e93b954b628c626b Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Thu, 25 Mar 2021 08:03:48 +0100
Subject: [PATCH 01/31] ipq40xx: add ath10k-ct fw.cfg stubs
Signed-off-by: John Crispin <john@phrozen.org>
---
...the-dst-buffer-to-of_get_mac_address.patch | 29 -----------------
...ss-the-dst-buffer-to-of_get_mac_addr.patch | 26 ---------------
.../etc/hotplug.d/firmware/40-ct-fw-cfg | 32 +++++++++++++++++++
.../lib/firmware/ath10k/fwcfg-ipq4019.txt | 15 +++++++++
.../lib/firmware/ath10k/fwcfg-qca9888.txt | 16 ++++++++++
.../lib/firmware/ath10k/fwcfg-qca9984.txt | 16 ++++++++++
.../etc/hotplug.d/firmware/40-ct-fw-cfg | 32 +++++++++++++++++++
.../lib/firmware/ath10k/fwcfg-qca9888.txt | 16 ++++++++++
.../lib/firmware/ath10k/fwcfg-qca9984.txt | 16 ++++++++++
9 files changed, 143 insertions(+), 55 deletions(-)
delete mode 100644 package/kernel/mac80211/patches/subsys/782-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch
delete mode 100644 package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch
create mode 100644 target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
create mode 100644 target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt
create mode 100644 target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
create mode 100644 target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
create mode 100644 target/linux/ipq806x/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
create mode 100644 target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
create mode 100644 target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
diff --git a/package/kernel/mac80211/patches/subsys/782-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch b/package/kernel/mac80211/patches/subsys/782-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch
deleted file mode 100644
index 26af6a2fb9..0000000000
--- a/package/kernel/mac80211/patches/subsys/782-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/backport-include/linux/of_net.h
-+++ /dev/null
-@@ -1,26 +0,0 @@
--#ifndef _BP_OF_NET_H
--#define _BP_OF_NET_H
--#include_next <linux/of_net.h>
--#include <linux/version.h>
--#include <linux/etherdevice.h>
--
--/* The behavior of of_get_mac_address() changed in kernel 5.2, it now
-- * returns an error code and not NULL in case of an error.
-- */
--#if LINUX_VERSION_IS_LESS(5,13,0)
--static inline int backport_of_get_mac_address(struct device_node *np, u8 *mac_out)
--{
-- const void *mac = of_get_mac_address(np);
--
-- if (!mac)
-- return -ENODEV;
-- if (IS_ERR(mac))
-- return PTR_ERR(mac);
-- ether_addr_copy(mac_out, mac);
--
-- return 0;
--}
--#define of_get_mac_address LINUX_BACKPORT(of_get_mac_address)
--#endif /* < 5.2 */
--
--#endif /* _BP_OF_NET_H */
diff --git a/package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch b/package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch
deleted file mode 100644
index 24b1240548..0000000000
--- a/package/kernel/mt76/patches/100-Revert-of-net-pass-the-dst-buffer-to-of_get_mac_addr.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Tue, 23 Nov 2021 17:01:45 +0100
-Subject: [PATCH] Revert "of: net: pass the dst buffer to of_get_mac_address()"
-
-This reverts commit 4932c5d80153c336c77dbe8d7af9f8fdd879d01f.
----
-
---- a/eeprom.c
-+++ b/eeprom.c
-@@ -105,9 +105,15 @@ mt76_eeprom_override(struct mt76_phy *ph
- {
- struct mt76_dev *dev = phy->dev;
-
-+#ifdef CONFIG_OF
- struct device_node *np = dev->dev->of_node;
-+ const u8 *mac = NULL;
-
-- of_get_mac_address(np, phy->macaddr);
-+ if (np)
-+ mac = of_get_mac_address(np);
-+ if (!IS_ERR_OR_NULL(mac))
-+ ether_addr_copy(phy->macaddr, mac);
-+#endif
-
- if (!is_valid_ether_addr(phy->macaddr)) {
- eth_random_addr(phy->macaddr);
diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
new file mode 100644
index 0000000000..7e22cbd4f5
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+[ -e /lib/firmware/$FIRMWARE ] && exit 0
+
+
+fwcfg_symlink() {
+ local chip=$1
+ local path=$2
+
+ ln -s /lib/firmware/ath10k/fwcfg-${chip}.txt /lib/firmware/${FIRMWARE}
+}
+
+case "$FIRMWARE" in
+ath10k/fwcfg-ahb-a000000.wifi.txt|\
+ath10k/fwcfg-ahb-a800000.wifi.txt)
+ fwcfg_symlink ipq4019
+
+ ;;
+ath10k/fwcfg-pci-0000:01:00.0.txt)
+ case "$(board_name)" in
+ linksys,ea8300)
+ fwcfg_symlink qca9888
+ ;;
+ tp-link,ap2220|\
+ tp-link,ec420-g1)
+ fwcfg_symlink qca9984
+ ;;
+ esac
+ ;;
+esac
+
+exit 0
diff --git a/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt
new file mode 100644
index 0000000000..7943173e51
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-ipq4019.txt
@@ -0,0 +1,15 @@
+vdevs = 8
+peers = 147
+active_peers = 147
+stations = 147
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2000
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
diff --git a/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
new file mode 100644
index 0000000000..560c8103d7
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
@@ -0,0 +1,16 @@
+# 9888 chip
+vdevs = 8
+peers = 202
+active_peers = 202
+stations = 202
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2200
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
diff --git a/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
new file mode 100644
index 0000000000..924a689000
--- /dev/null
+++ b/target/linux/ipq40xx/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
@@ -0,0 +1,16 @@
+# 9984
+vdevs = 8
+peers = 180
+active_peers = 180
+stations = 180
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2400
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
diff --git a/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg b/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
new file mode 100644
index 0000000000..c33bbea506
--- /dev/null
+++ b/target/linux/ipq806x/base-files/etc/hotplug.d/firmware/40-ct-fw-cfg
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+[ -e /lib/firmware/$FIRMWARE ] && exit 0
+
+
+fwcfg_symlink() {
+ local chip=$1
+ local path=$2
+
+ ln -s /lib/firmware/ath10k/fwcfg-${chip}.txt /lib/firmware/${FIRMWARE}
+}
+
+case "$FIRMWARE" in
+ath10k/fwcfg-pci-0001:01:00.0.txt)
+ case "$(board_name)" in
+ edgecore,ssw2ac2600|\
+ edgecore,ecw5410)
+ fwcfg_symlink qca9984
+ ;;
+ esac
+ ;;
+ath10k/fwcfg-pci-0002:01:00.0.txt)
+ case "$(board_name)" in
+ edgecore,ssw2ac2600|\
+ edgecore,ecw5410)
+ fwcfg_symlink qca9984
+ ;;
+ esac
+ ;;
+esac
+
+exit 0
diff --git a/target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt b/target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
new file mode 100644
index 0000000000..560c8103d7
--- /dev/null
+++ b/target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9888.txt
@@ -0,0 +1,16 @@
+# 9888 chip
+vdevs = 8
+peers = 202
+active_peers = 202
+stations = 202
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2200
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
diff --git a/target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt b/target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
new file mode 100644
index 0000000000..924a689000
--- /dev/null
+++ b/target/linux/ipq806x/base-files/lib/firmware/ath10k/fwcfg-qca9984.txt
@@ -0,0 +1,16 @@
+# 9984
+vdevs = 8
+peers = 180
+active_peers = 180
+stations = 180
+rate_ctrl_objs = 7
+#regdom = 840
+#fwname = firmware-5-htt-mgt-b.bin
+#fwver = 5
+nohwcrypt = 0
+ct_sta_mode = 0
+tx_desc = 2400
+#max_nss = 3
+tids = 450
+skid_limit = 360
+max_amsdus = 3
--
2.25.1

View File

@@ -33,6 +33,22 @@ index b24cbf979e..44a8688dbe 100644
zyxel,nbg6617)
ubootenv_add_uci_config "/dev/mtd6" "0x0" "0x10000" "0x10000"
;;
diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index b12c9af9a7..b7ee73b12e 100644
--- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -265,6 +265,11 @@ case "$FIRMWARE" in
caldata_extract "ART" 0x5000 0x2f20
ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -1)
;;
+ tp-link,ap2220 |\
+ tp-link,ec420-g1)
+ ath10kcal_extract "0:ART" 4096 12064
+ ath10kcal_patch_mac_crc $(macaddr_add "$(get_tip mac_address)" 9) #2.4G, wlan1
+ ;;
esac
;;
*)
diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile
index b996ee311f..c9d113ae6a 100644
--- a/package/firmware/ipq-wifi/Makefile

View File

@@ -0,0 +1,31 @@
From ee837f028bd7af515d30a8a90cc2b5ee61eecf19 Mon Sep 17 00:00:00 2001
From: John Crispin <john@phrozen.org>
Date: Sat, 4 Sep 2021 06:04:54 +0200
Subject: [PATCH 35/43] certificates: add ability to persistently store
certificates
Signed-off-by: John Crispin <john@phrozen.org>
---
target/linux/ath79/dts/qca9563_tplink_cpe710-v1.dts | 7 ++++++-
.../files/arch/arm/boot/dts/qcom-ipq4019-xx8300.dtsi | 3 +--
.../linux/ramips/dts/mt7628an_tplink_8m-split-uboot.dtsi | 7 ++++++-
3 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-xx8300.dtsi b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-xx8300.dtsi
index 8f971e505c..0f1f083a5b 100644
--- a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-xx8300.dtsi
+++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-xx8300.dtsi
@@ -229,9 +229,8 @@
};
partition@b880000 {
- label = "syscfg";
+ label = "certificates";
reg = <0xb880000 0x4680000>;
- read-only;
};
};
};
--
2.25.1

View File

@@ -228,22 +228,6 @@ index 0000000000..6c429f1852
+config_foreach ubootenv_add_app_config ubootenv
+
+exit 0
diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index b12c9af9a7..b7ee73b12e 100644
--- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -265,6 +265,11 @@ case "$FIRMWARE" in
caldata_extract "ART" 0x5000 0x2f20
ath10k_patch_mac $(macaddr_add $(cat /sys/class/net/eth0/address) -1)
;;
+ tp-link,ap2220 |\
+ tp-link,ec420-g1)
+ ath10kcal_extract "0:ART" 4096 12064
+ ath10kcal_patch_mac_crc $(macaddr_add "$(get_tip mac_address)" 9) #2.4G, wlan1
+ ;;
esac
;;
*)
diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile
index c33f26d46d..06236b5a47 100644
--- a/toolchain/kernel-headers/Makefile