Compare commits

..

12 Commits

Author SHA1 Message Date
Arif Alam
77518c9760 mediatek-sdk: mt7981: enable ramoops / pstore
Signed-off-by: Arif Alam <arif.alam@netexperience.com>
2025-07-18 12:25:33 -04:00
John Crispin
4a5cf875d9 hostapd: convert to using hostapd_utils package
Signed-off-by: John Crispin <john@phrozen.org>
2025-07-17 07:55:04 +02:00
John Crispin
65bbcbbd6b ucentral-event: ignore vlan_remove on swconfig devices
Signed-off-by: John Crispin <john@phrozen.org>
2025-07-17 07:47:16 +02:00
CarosLiang
fc7750b900 hostapd: 6G CBP Test Will fail Sometimes
Fixes: WIFI-14840
Signed-off-by: CarosLiang <cliang@actiontec.com>
2025-07-16 17:02:35 +02:00
wingate5678
6c4ca10e74 certificates: change Sonicfi RAP7 series certicate type from squashfs to ext4
Fixes: WIFI-14834
Signed-off-by: wingate5678 <wingate.chi@cybertan.com.tw>
2025-07-16 17:00:53 +02:00
Tanya Singh
d71b803708 qca-wifi-7: Edgecore WiFi 7 Product Save crash log into pstore
Fixes: WIFI-14842
Signed-off-by: Tanya Singh <tanya_singh@accton.com>
2025-07-16 16:56:34 +02:00
YenLin Pan
07a8796acb qca-wifi-7: zyxel_nwa130be - fine tune thermal setting
Signed-off-by: YenLin Pan <YenLin.Pan@zyxel.com.tw>
2025-07-16 16:55:20 +02:00
Jimmy Cheng
40d46bf5ce ath12k-wifi: update NWA130BE BDF files
Signed-off-by: Jimmy Cheng <jimmy.cheng@zyxel.com.tw>
2025-07-16 16:55:01 +02:00
John Crispin
70e0942ce2 profiles/ucentral-ap: add hostapd-utils
Signed-off-by: John Crispin <john@phrozen.org>
2025-07-16 16:54:19 +02:00
Tanya Singh
ae1bf679da Add hostapd_cli to hostapd package for EAP111 and EAP112
Signed-off-by: Tanya Singh <tanya_singh@accton.com>
2025-07-16 16:51:38 +02:00
Sebastian Huang
41a3317661 modemmanager: Use AT command to set username password for EAP112 LTE
1. For EAP112 LTE module (Quectel EM60 series), when username and password is configured, it is required to update the context with the QICSGP AT command.
2. Use a handler function to check if the AT command is stuck and retry.

Fixes: WIFI-14545
Signed-off-by: Sebastian Huang <sebastian_huang@accton.com>
2025-07-16 16:50:47 +02:00
Venkat Chimata
a488be045c ipq50xx: Fix missing ';;' in 02_network script
Description:
A missing ;; in the 02_network file for the ipq50xx target caused
improper network configuration across all ipq50xx platforms
(e.g., Edgecore EAP104, Cybertan RAP630C-311G).
This resulted in loss of Internet connectivity.

Fix:
Added the missing ;; in the appropriate case block.

Tests Performed:
Verified on Edgecore EAP104. Network configuration was applied
correctly and Internet connectivity was restored.

Fixes: WIFI-14847

Signed-off-by: Venkat Chimata <venkat@nearhop.com>
2025-07-16 16:49:29 +02:00
22 changed files with 276 additions and 29 deletions

View File

@@ -747,7 +747,6 @@ define Package/wpad/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/wpad $(1)/usr/sbin/
$(LN) wpad $(1)/usr/sbin/hostapd
$(LN) wpad $(1)/usr/sbin/wpa_supplicant
$(INSTALL_BIN) $(PKG_BUILD_DIR)/hostapd/hostapd_cli $(1)/usr/sbin/
endef
Package/wpad-basic/install = $(Package/wpad/install)
Package/wpad-basic-openssl/install = $(Package/wpad/install)

View File

@@ -658,7 +658,6 @@ define Package/wpad/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/wpad $(1)/usr/sbin/
$(LN) wpad $(1)/usr/sbin/hostapd
$(LN) wpad $(1)/usr/sbin/wpa_supplicant
$(INSTALL_BIN) $(PKG_BUILD_DIR)/hostapd/hostapd_cli $(1)/usr/sbin/
endef
Package/wpad-basic/install = $(Package/wpad/install)
Package/wpad-basic-openssl/install = $(Package/wpad/install)

View File

@@ -71,6 +71,7 @@ qcom_setup_interfaces()
sonicfi,rap630e)
ucidef_set_interface_wan "eth1"
ucidef_set_interface_lan "eth0"
;;
emplus,wap581)
ucidef_set_interface_wan "eth0 eth1"
;;

View File

@@ -141,6 +141,14 @@
#size-cells = <2>;
ranges;
ramoops: ramoops@42ff0000 {
compatible = "ramoops";
reg = <0x0 0x42ff0000 0x0 0x10000>;
record-size = <0x2000>;
console-size = <0x2000>;
pmsg-size = <0x2000>;
};
/* 512 KiB reserved for ARM Trusted Firmware (BL31 + BL32) */
secmon_reserved: secmon@43000000 {
reg = <0 0x43000000 0 0x80000>;

View File

@@ -384,6 +384,16 @@ CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_SYSCON=y
CONFIG_POWER_SUPPLY=y
CONFIG_PRINTK_TIME=y
CONFIG_PSTORE=y
# CONFIG_PSTORE_842_COMPRESS is not set
CONFIG_PSTORE_CONSOLE=y
# CONFIG_PSTORE_DEFLATE_COMPRESS is not set
# CONFIG_PSTORE_LZ4HC_COMPRESS is not set
# CONFIG_PSTORE_LZ4_COMPRESS is not set
# CONFIG_PSTORE_LZO_COMPRESS is not set
CONFIG_PSTORE_PMSG=y
CONFIG_PSTORE_RAM=y
# CONFIG_PSTORE_ZSTD_COMPRESS is not set
CONFIG_PWM=y
CONFIG_PWM_MEDIATEK=y
# CONFIG_PWM_GPIO is not set

View File

@@ -0,0 +1,20 @@
[
{
"board": [
{
"names": [
"bus=ahb,qmi-chip-id=0,qmi-board-id=18"
],
"data": "nwa130be-IPQ5332.bin"
}
],
"regdb": [
{
"names": [
"bus=ahb,qmi-chip-id=0,qmi-board-id=18"
],
"data": "ipq5332.regdb"
}
]
}
]

View File

@@ -0,0 +1,20 @@
[
{
"board": [
{
"names": [
"bus=pci,qmi-chip-id=0,qmi-board-id=4121"
],
"data": "nwa130be-QCN92XX.bin"
}
],
"regdb": [
{
"names": [
"bus=pci,qmi-chip-id=0,qmi-board-id=4121"
],
"data": "qcn92xx.regdb"
}
]
}
]

View File

@@ -15,3 +15,6 @@ $encoder -c board-2-ap72tip-QCN92XX.json -o board-2.bin.ap72tip.QCN92XX
$encoder -c board-2-ap72tip-v4-IPQ5332.json -o board-2.bin.ap72tip-v4.IPQ5332
$encoder -c board-2-ap72tip-v4-QCN92XX.json -o board-2.bin.ap72tip-v4.QCN92XX
$encoder -c board-2-nwa130be-IPQ5332.json -o board-2.bin.nwa130be.IPQ5332
$encoder -c board-2-nwa130be-QCN92XX.json -o board-2.bin.nwa130be.QCN92XX

Binary file not shown.

Binary file not shown.

View File

@@ -768,7 +768,6 @@ define Package/wpad/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/wpad $(1)/usr/sbin/
$(LN) wpad $(1)/usr/sbin/hostapd
$(LN) wpad $(1)/usr/sbin/wpa_supplicant
$(INSTALL_BIN) $(PKG_BUILD_DIR)/hostapd/hostapd_cli $(1)/usr/sbin/
endef
Package/wpad-basic/install = $(Package/wpad/install)
Package/wpad-basic-openssl/install = $(Package/wpad/install)

View File

@@ -0,0 +1,14 @@
--- a/src/drivers/driver_nl80211_event.c 2025-07-11 09:37:29.772326959 +0800
+++ b/src/drivers/driver_nl80211_event.c 2025-07-14 15:27:22.079961399 +0800
@@ -4904,6 +4904,11 @@
dl_list_for_each_safe(drv, tmp, &global->interfaces,
struct wpa_driver_nl80211_data, list) {
for (bss = drv->first_bss; bss; bss = bss->next) {
+ /* AWGN event should be delivered to 6G interface only. */
+ if (gnlh->cmd == NL80211_CMD_AWGN_DETECT &&
+ (nla_get_u32(tb[NL80211_ATTR_WIPHY_FREQ])) != bss->flink->freq)
+ continue;
+
if (wiphy_idx_set)
wiphy_idx = nl80211_get_wiphy_index(bss);
if ((ifidx == -1 && !wiphy_idx_set && !wdev_id_set) ||

View File

@@ -18,6 +18,21 @@
model = "EdgeCore eap105";
compatible = "edgecore,eap105", "qcom,ipq5332-ap-mi01.6", "qcom,ipq5332";
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
ramoops@49c00000 {
compatible = "ramoops";
no-map;
reg = <0x0 0x49c00000 0x0 0x50000>;
record-size = <0x20000>;
console-size = <0x8000>;
pmsg-size = <0x8000>;
};
};
aliases {
serial0 = &blsp1_uart0;
serial1 = &blsp1_uart1;

View File

@@ -1,6 +1,6 @@
From f117d369cecadedefd2eb1467d52e9df76c14dc6 Mon Sep 17 00:00:00 2001
From 5f22b2d262ba44ecd0b05b32c6eee6161460718f Mon Sep 17 00:00:00 2001
From: YenLin Pan <yenlin.pan@zyxel.com.tw>
Date: Wed, 9 Jul 2025 14:46:13 +0800
Date: Tue, 15 Jul 2025 16:18:48 +0800
Subject: [PATCH] thermal: thermal setting
lv0 -100 -hi0 105 -off0 0
@@ -10,14 +10,14 @@ lv3 105 -hi3 120 -off3 100
Signed-off-by: YenLin Pan <YenLin.Pan@zyxel.com.tw>
---
drivers/net/wireless/ath/ath12k/thermal.h | 24 +++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
drivers/net/wireless/ath/ath12k/thermal.h | 30 +++++++++++------------
1 file changed, 15 insertions(+), 15 deletions(-)
diff --git a/drivers/net/wireless/ath/ath12k/thermal.h b/drivers/net/wireless/ath/ath12k/thermal.h
index 5c91906..dae4488 100644
index 5c91906..2334901 100644
--- a/drivers/net/wireless/ath/ath12k/thermal.h
+++ b/drivers/net/wireless/ath/ath12k/thermal.h
@@ -13,28 +13,28 @@
@@ -13,34 +13,34 @@
/* Below temperatures are in celsius */
#define ATH12K_THERMAL_LVL0_TEMP_LOW_MARK -100
@@ -58,6 +58,15 @@ index 5c91906..dae4488 100644
#define ATH12K_THERMAL_LVL3_DUTY_CYCLE 100
#define ATH12K_THERMAL_LVL0_V2_DUTY_CYCLE ATH12K_THERMAL_LVL0_DUTY_CYCLE
-#define ATH12K_THERMAL_LVL1_V2_DUTY_CYCLE ATH12K_THERMAL_LVL0_DUTY_CYCLE
-#define ATH12K_THERMAL_LVL2_V2_DUTY_CYCLE ATH12K_THERMAL_LVL1_DUTY_CYCLE
-#define ATH12K_THERMAL_LVL3_V2_DUTY_CYCLE ATH12K_THERMAL_LVL2_DUTY_CYCLE
+#define ATH12K_THERMAL_LVL1_V2_DUTY_CYCLE ATH12K_THERMAL_LVL1_DUTY_CYCLE
+#define ATH12K_THERMAL_LVL2_V2_DUTY_CYCLE ATH12K_THERMAL_LVL2_DUTY_CYCLE
+#define ATH12K_THERMAL_LVL3_V2_DUTY_CYCLE ATH12K_THERMAL_LVL3_DUTY_CYCLE
#define ATH12K_THERMAL_LVL4_V2_DUTY_CYCLE ATH12K_THERMAL_LVL3_DUTY_CYCLE
#define THERMAL_CONFIG_POUT0 0
--
2.34.1

View File

@@ -26,16 +26,20 @@ cig,wf672)
mmc_dev=$(echo $(find_mmc_part "cert") | sed 's/^.\{5\}//')
[ -n "$mmc_dev" ] && mount -t ext4 /dev/$mmc_dev /certificates
;;
sonicfi,rap7110c-341x)
mmc_dev=$(echo $(find_mmc_part "certificates") | sed 's/^.\{5\}//')
[ -n "$mmc_dev" ] && mount -t squashfs /dev/$mmc_dev /mnt
bootconfig=$(bootconfig_lookup)
if [ -n "$bootconfig" ]; then
mmc_dev=$(echo $(find_mmc_part "$bootconfig") | sed 's/^.\{5\}//')
[ -n "$mmc_dev" ] && tar xf /dev/$mmc_dev -C /certificates
sonicfi,rap7*)
if [ "$(board_name)" = "sonicfi,rap7110c-341x" ]; then
mmc_dev=$(echo $(find_mmc_part "certificates") | sed 's/^.\{5\}//')
[ -n "$mmc_dev" ] && mount -t ext4 /dev/$mmc_dev /certificates
else
cp /mnt/* /certificates/
umount /mnt
mtd=$(find_mtd_index certificates)
[ -n "$mtd" ] && mount -t ext4 /dev/mtdblock$mtd /certificates
fi
if [ ! -f /certificates/cert.pem ] || [ ! -f /certificates/key.pem ]; then
bootconfig=$(bootconfig_lookup)
if [ -n "$bootconfig" ]; then
mmc_dev=$(echo $(find_mmc_part "$bootconfig") | sed 's/^.\{5\}//')
[ -n "$mmc_dev" ] && tar xf /dev/$mmc_dev -C /certificates
fi
fi
;;
*)

View File

@@ -36,14 +36,3 @@ start_service() {
procd_set_param pidfile "${MODEMMANAGER_PID_FILE}"
procd_close_instance
}
reload_service()
{
stop
start
}
service_triggers()
{
procd_add_reload_trigger network
}

View File

@@ -403,6 +403,101 @@ modemmanager_set_preferred_mode() {
}
}
exec_at_command() {
local at_command=$1
local serial_dev=$2
local resp_file="/tmp/at_response.txt"
local cmd_timeout=1
local retry_limit=3
local i=0
local socat_pid reader_pid
while [ $i -lt ${retry_limit} ]; do
# Flush old data
> ${resp_file}
echo "${at_command}" | socat - /dev/${serial_dev},crnl &
socat_pid=$!
{
cat /dev/${serial_dev} > ${resp_file} &
reader_pid=$!
sleep ${cmd_timeout}
kill -9 ${reader_pid} 2>/dev/null
}
kill -9 ${socat_pid} 2>/dev/null
case $(cat ${resp_file}) in
*OK*)
echo "AT command executed successfully"
break
;;
*)
echo -n "AT command failed or no response"
[ -n "$i" ] && echo ", retry $i" || echo
;;
esac
let "i++"
done
rm -f ${resp_file}
}
_mm_get_processed_device() {
local mm_rundir="/var/run/modemmanager"
local mm_sysfs_cache="${mm_rundir}/sysfs.cache"
awk -v status="processed" '!/^#/ && $0 ~ status {print $1}' "${mm_sysfs_cache}"
}
proto_modemmanager_quectel_setup() {
local apn username password pdptype
local manufacturer ser_port context_id context_type at_command
json_get_vars apn username password pdptype
local device=$(_mm_get_processed_device)
[ -n "${device}" ] || {
echo "No processed device"
return 1
}
# validate that ModemManager is handling the modem at the sysfs path
modemstatus=$(mmcli --modem="${device}" --output-keyvalue)
modempath=$(modemmanager_get_field "${modemstatus}" "modem.dbus-path")
[ -n "${modempath}" ] || {
echo "Device not managed by ModemManager"
return 1
}
echo "modem available at ${modempath}"
# workaround for Quectel embedded TCP/IP Stack
manufacturer=$(modemmanager_get_field "${modemstatus}" "modem.generic.manufacturer")
ser_port=$(mmcli --modem="${device}" -K | grep modem.generic.ports | grep tty | awk '{print $3}' | head -n 1)
if [ "${manufacturer}" = "Quectel" ]; then
echo "setup TCP/IP Context"
case "${pdptype}" in
ip)
context_type=1
;;
ipv6)
context_type=2
;;
ipv4v6|*)
context_type=3
;;
esac
if [ -n "${username}" ] && [ -n "${password}" ]; then
at_command="at+qicsgp=1,${context_type},\"${apn}\",\"${username}\",\"${password}\",3"
else
at_command="at+qicsgp=1,${context_type},\"${apn}\",\"\",\"\",0"
fi
exec_at_command "${at_command}" "${ser_port}"
fi
}
proto_modemmanager_setup() {
local interface="$1"

View File

@@ -280,6 +280,8 @@ handlers = {
},
vlan_remove: function(notify) {
if (config.config.swconfig)
return;
for (let wan in wan_ports) {
let msg = {
name: wan,

View File

@@ -0,0 +1,59 @@
From cd82a3d73e2a024367d5e1d9f8c19afdd05f1306 Mon Sep 17 00:00:00 2001
From: build7 <build7@4ipnet.com>
Date: Tue, 15 Jul 2025 12:00:58 +0800
Subject: [PATCH] wwan: call modemmanager script to setup Quectel LTE module
---
package/network/utils/wwan/files/wwan.sh | 9 ++++++
1 file changed, 9 insertions(+)
diff --git a/package/network/utils/wwan/files/wwan.sh b/package/network/utils/wwan/files/wwan.sh
index 9907195e6c..47f4531d7b 100755
--- a/package/network/utils/wwan/files/wwan.sh
+++ b/package/network/utils/wwan/files/wwan.sh
@@ -14,12 +14,14 @@ proto_qmi_setup() { echo "wwan[$$] qmi proto is missing"; }
proto_ncm_setup() { echo "wwan[$$] ncm proto is missing"; }
proto_3g_setup() { echo "wwan[$$] 3g proto is missing"; }
proto_directip_setup() { echo "wwan[$$] directip proto is missing"; }
+proto_modemmanager_quectel_setup() { echo "wwan[$$] modemmanager proto is missing"; }
[ -f ./mbim.sh ] && . ./mbim.sh
[ -f ./ncm.sh ] && . ./ncm.sh
[ -f ./qmi.sh ] && . ./qmi.sh
[ -f ./3g.sh ] && { . ./ppp.sh; . ./3g.sh; }
[ -f ./directip.sh ] && . ./directip.sh
+[ -f ./modemmanager.sh ] && . ./modemmanager.sh
proto_wwan_init_config() {
available=1
@@ -37,6 +39,7 @@ proto_wwan_init_config() {
proto_wwan_setup() {
local driver usb devicename desc bus
+ local is_quectel=0
json_get_vars bus
@@ -67,6 +70,7 @@ proto_wwan_setup() {
usb=/lib/network/wwan/$vendor:$product
devicename=$a
}
+ [ "$vendor" = "2c7c" ] && is_quectel=1
done
fi
@@ -119,6 +123,11 @@ proto_wwan_setup() {
uci_set_state network "$interface" ctl_device "$ctl_device"
uci_set_state network "$interface" dat_device "$dat_device"
+ if [ -n "${is_quectel}" ]; then
+ echo "wwan[$$]" "Setup Quectel chip"
+ proto_modemmanager_quectel_setup
+ fi
+
case $driver in
qmi_wwan) proto_qmi_setup $@ ;;
cdc_mbim) proto_mbim_setup $@ ;;
--
2.34.1

View File

@@ -23,6 +23,7 @@ packages:
- firstcontact
- gre
- ethtool
- hostapd-utils
- ieee8021x
- igmpproxy
- ip-bridge