diff --git a/feeds/ipq807x/ipq807x/base-files/etc/board.d/02_network b/feeds/ipq807x/ipq807x/base-files/etc/board.d/02_network index 2f762efa0..67ac6eb32 100755 --- a/feeds/ipq807x/ipq807x/base-files/etc/board.d/02_network +++ b/feeds/ipq807x/ipq807x/base-files/etc/board.d/02_network @@ -133,7 +133,7 @@ qcom_setup_interfaces() ucidef_set_interface_lan "" ;; cybertan,eww631-b1) - ucidef_add_switch "switch1" "5:wan" "2:lan" "3:lan" "4:lan" "6@eth0" + ucidef_add_switch "switch1" "5:wan" "4:lan" "3:lan" "2:lan" "6@eth0" ;; wallys,dr5018) ucidef_set_interface_lan "eth0 eth1" diff --git a/feeds/ipq807x_v5.4/ath11k-wifi/Makefile b/feeds/ipq807x_v5.4/ath11k-wifi/Makefile index 62e4e8b22..828c8e362 100644 --- a/feeds/ipq807x_v5.4/ath11k-wifi/Makefile +++ b/feeds/ipq807x_v5.4/ath11k-wifi/Makefile @@ -134,6 +134,11 @@ $(call Package/ath11k-wifi-default) TITLE:=hfcl-ion4xi bdf endef +define Package/ath11k-wifi-hfcl-ion4xe +$(call Package/ath11k-wifi-default) + TITLE:=hfcl-ion4xe bdf +endef + define Package/ath11k-wifi-hfcl-ion4xi_w $(call Package/ath11k-wifi-default) TITLE:=hfcl-ion4xi_w bdf @@ -315,6 +320,11 @@ define Package/ath11k-wifi-hfcl-ion4xi/install $(INSTALL_DATA) ./board-hfcl-ion4xi.bin.IPQ6018 $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin endef +define Package/ath11k-wifi-hfcl-ion4xe/install + $(INSTALL_DIR) $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/ + $(INSTALL_DATA) ./board-hfcl-ion4xe.bin.IPQ6018 $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin +endef + define Package/ath11k-wifi-hfcl-ion4xi_wp/install $(INSTALL_DIR) $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/ $(INSTALL_DATA) ./board-hfcl-ion4xi_wp.bin.IPQ6018 $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/board.bin @@ -406,6 +416,7 @@ $(eval $(call BuildPackage,ath11k-wifi-motorola-q14)) $(eval $(call BuildPackage,ath11k-wifi-optimcloud-d50)) $(eval $(call BuildPackage,ath11k-wifi-optimcloud-d60)) $(eval $(call BuildPackage,ath11k-wifi-hfcl-ion4xi)) +$(eval $(call BuildPackage,ath11k-wifi-hfcl-ion4xe)) $(eval $(call BuildPackage,ath11k-wifi-hfcl-ion4xi_wp)) $(eval $(call BuildPackage,ath11k-wifi-hfcl-ion4xi_w)) $(eval $(call BuildPackage,ath11k-wifi-hfcl-ion4x_w)) diff --git a/feeds/ipq807x_v5.4/ath11k-wifi/board-hfcl-ion4xe.bin.IPQ6018 b/feeds/ipq807x_v5.4/ath11k-wifi/board-hfcl-ion4xe.bin.IPQ6018 new file mode 100644 index 000000000..800c86432 Binary files /dev/null and b/feeds/ipq807x_v5.4/ath11k-wifi/board-hfcl-ion4xe.bin.IPQ6018 differ diff --git a/feeds/ipq807x_v5.4/hostapd/src/src/ap/ubus.c b/feeds/ipq807x_v5.4/hostapd/src/src/ap/ubus.c index bff01c172..468d210da 100644 --- a/feeds/ipq807x_v5.4/hostapd/src/src/ap/ubus.c +++ b/feeds/ipq807x_v5.4/hostapd/src/src/ap/ubus.c @@ -1958,6 +1958,9 @@ void hostapd_ubus_notify_radar_detected(struct hostapd_iface *iface, int frequen struct hostapd_data *hapd; int i; + if (!ctx) + return; + blob_buf_init(&b, 0); blobmsg_add_u16(&b, "frequency", frequency); blobmsg_add_u16(&b, "width", chan_width); diff --git a/feeds/ipq807x_v5.4/ipq50xx/Makefile b/feeds/ipq807x_v5.4/ipq50xx/Makefile index 309bfd22b..24f72ae0c 100644 --- a/feeds/ipq807x_v5.4/ipq50xx/Makefile +++ b/feeds/ipq807x_v5.4/ipq50xx/Makefile @@ -20,7 +20,7 @@ DEFAULT_PACKAGES += kmod-qca-nss-dp kmod-qca-ssdk swconfig \ kmod-usb-phy-ipq5018 kmod-usb-dwc3-qcom-internal \ kmod-ath11k-ahb ath11k-firmware-ipq5018 \ kmod-gpio-button-hotplug iwinfo \ - qca-ssdk-shell \ + qca-ssdk-shell kmod-bootconfig \ uboot-envtools -procd-ujail $(eval $(call BuildTarget)) diff --git a/feeds/ipq807x_v5.4/ipq50xx/files/arch/arm64/boot/dts/qcom/qcom-ipq5018-yuncore-fap655.dts b/feeds/ipq807x_v5.4/ipq50xx/files/arch/arm64/boot/dts/qcom/qcom-ipq5018-yuncore-fap655.dts index e7abcda2c..4142f2158 100644 --- a/feeds/ipq807x_v5.4/ipq50xx/files/arch/arm64/boot/dts/qcom/qcom-ipq5018-yuncore-fap655.dts +++ b/feeds/ipq807x_v5.4/ipq50xx/files/arch/arm64/boot/dts/qcom/qcom-ipq5018-yuncore-fap655.dts @@ -340,7 +340,7 @@ status = "ok"; pinctrl-0 = <&mdio1_pins>; pinctrl-names = "default"; - phy-reset-gpio = <&tlmm 39 0>; + phy-reset-gpio = <&tlmm 16 0>; ethernet-phy@0 { reg = <0x00>; diff --git a/feeds/ipq807x_v5.4/ipq50xx/modules.mk b/feeds/ipq807x_v5.4/ipq50xx/modules.mk index b62fa5eb1..05c753aba 100644 --- a/feeds/ipq807x_v5.4/ipq50xx/modules.mk +++ b/feeds/ipq807x_v5.4/ipq50xx/modules.mk @@ -51,3 +51,17 @@ define KernelPackage/tpm-tis-i2c/description within Linux. endef $(eval $(call KernelPackage,tpm-tis-i2c)) + +define KernelPackage/bootconfig + SUBMENU:=Other modules + TITLE:=Bootconfig partition for failsafe + KCONFIG:=CONFIG_BOOTCONFIG_PARTITION + FILES:=$(LINUX_DIR)/drivers/platform/ipq/bootconfig.ko@ge4.4 + AUTOLOAD:=$(call AutoLoad,56,bootconfig,1) +endef + +define KernelPackage/bootconfig/description + Bootconfig partition for failsafe +endef + +$(eval $(call KernelPackage,bootconfig)) diff --git a/feeds/ipq807x_v5.4/ipq50xx/patches/300-bootconfig.patch b/feeds/ipq807x_v5.4/ipq50xx/patches/300-bootconfig.patch new file mode 100644 index 000000000..27a62236d --- /dev/null +++ b/feeds/ipq807x_v5.4/ipq50xx/patches/300-bootconfig.patch @@ -0,0 +1,13 @@ +Index: linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d/drivers/platform/ipq/bootconfig.c +=================================================================== +--- linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d.orig/drivers/platform/ipq/bootconfig.c ++++ linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d/drivers/platform/ipq/bootconfig.c +@@ -366,7 +366,7 @@ static int __init bootconfig_partition_i + continue; + + partname_dir[i] = proc_mkdir(part_info[i].name, boot_info_dir); +- if (partname_dir != NULL) { ++ if (partname_dir[i] != NULL) { + proc_create_data("primaryboot", S_IRUGO, + partname_dir[i], + &primaryboot_ops, diff --git a/feeds/ipq807x_v5.4/ipq60xx/Makefile b/feeds/ipq807x_v5.4/ipq60xx/Makefile index 8102863ff..8245f7c1e 100644 --- a/feeds/ipq807x_v5.4/ipq60xx/Makefile +++ b/feeds/ipq807x_v5.4/ipq60xx/Makefile @@ -20,7 +20,7 @@ DEFAULT_PACKAGES += kmod-qca-nss-dp kmod-qca-ssdk swconfig \ kmod-usb-phy-ipq807x kmod-usb-dwc3-qcom-internal \ kmod-ath11k-ahb ath11k-firmware-ipq60xx \ kmod-gpio-button-hotplug iwinfo \ - qca-ssdk-shell \ + qca-ssdk-shell kmod-bootconfig \ uboot-envtools -procd-ujail $(eval $(call BuildTarget)) diff --git a/feeds/ipq807x_v5.4/ipq60xx/image/ipq60xx.mk b/feeds/ipq807x_v5.4/ipq60xx/image/ipq60xx.mk index 98ae38691..c35e6adb8 100644 --- a/feeds/ipq807x_v5.4/ipq60xx/image/ipq60xx.mk +++ b/feeds/ipq807x_v5.4/ipq60xx/image/ipq60xx.mk @@ -25,7 +25,7 @@ define Device/hfcl_ion4xe DEVICE_DTS := qcom-ipq6018-hfcl-ion4xe DEVICE_DTS_CONFIG := config@cp01-c1 SUPPORTED_DEVICES := hfcl,ion4xe - DEVICE_PACKAGES := ath11k-wifi-qcom-ipq6018 uboot-envtools kmod-hwmon-lm75 + DEVICE_PACKAGES := ath11k-wifi-hfcl-ion4xe uboot-envtools kmod-hwmon-lm75 endef TARGET_DEVICES += hfcl_ion4xe diff --git a/feeds/ipq807x_v5.4/ipq60xx/modules.mk b/feeds/ipq807x_v5.4/ipq60xx/modules.mk index cd09369dd..1d51296d6 100644 --- a/feeds/ipq807x_v5.4/ipq60xx/modules.mk +++ b/feeds/ipq807x_v5.4/ipq60xx/modules.mk @@ -76,3 +76,17 @@ define KernelPackage/usb-dwc3-qcom-internal/description endef $(eval $(call KernelPackage,usb-dwc3-qcom-internal)) + +define KernelPackage/bootconfig + SUBMENU:=Other modules + TITLE:=Bootconfig partition for failsafe + KCONFIG:=CONFIG_BOOTCONFIG_PARTITION + FILES:=$(LINUX_DIR)/drivers/platform/ipq/bootconfig.ko@ge4.4 + AUTOLOAD:=$(call AutoLoad,56,bootconfig,1) +endef + +define KernelPackage/bootconfig/description + Bootconfig partition for failsafe +endef + +$(eval $(call KernelPackage,bootconfig)) diff --git a/feeds/ipq807x_v5.4/ipq60xx/patches/300-bootconfig.patch b/feeds/ipq807x_v5.4/ipq60xx/patches/300-bootconfig.patch new file mode 100644 index 000000000..27a62236d --- /dev/null +++ b/feeds/ipq807x_v5.4/ipq60xx/patches/300-bootconfig.patch @@ -0,0 +1,13 @@ +Index: linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d/drivers/platform/ipq/bootconfig.c +=================================================================== +--- linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d.orig/drivers/platform/ipq/bootconfig.c ++++ linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d/drivers/platform/ipq/bootconfig.c +@@ -366,7 +366,7 @@ static int __init bootconfig_partition_i + continue; + + partname_dir[i] = proc_mkdir(part_info[i].name, boot_info_dir); +- if (partname_dir != NULL) { ++ if (partname_dir[i] != NULL) { + proc_create_data("primaryboot", S_IRUGO, + partname_dir[i], + &primaryboot_ops, diff --git a/feeds/ipq807x_v5.4/ipq807x/Makefile b/feeds/ipq807x_v5.4/ipq807x/Makefile index d31991c91..fea2d5700 100644 --- a/feeds/ipq807x_v5.4/ipq807x/Makefile +++ b/feeds/ipq807x_v5.4/ipq807x/Makefile @@ -20,7 +20,7 @@ DEFAULT_PACKAGES += kmod-qca-nss-dp kmod-qca-ssdk swconfig \ kmod-usb-phy-ipq807x kmod-usb-dwc3-qcom-internal \ kmod-ath11k-ahb ath11k-firmware-ipq807x \ kmod-gpio-button-hotplug iwinfo \ - qca-ssdk-shell \ + qca-ssdk-shell kmod-bootconfig \ uboot-envtools -procd-ujail $(eval $(call BuildTarget)) diff --git a/feeds/ipq807x_v5.4/ipq807x/modules.mk b/feeds/ipq807x_v5.4/ipq807x/modules.mk index 1bffce639..52a9ffafc 100644 --- a/feeds/ipq807x_v5.4/ipq807x/modules.mk +++ b/feeds/ipq807x_v5.4/ipq807x/modules.mk @@ -56,4 +56,16 @@ endef $(eval $(call KernelPackage,diag-char)) +define KernelPackage/bootconfig + SUBMENU:=Other modules + TITLE:=Bootconfig partition for failsafe + KCONFIG:=CONFIG_BOOTCONFIG_PARTITION + FILES:=$(LINUX_DIR)/drivers/platform/ipq/bootconfig.ko@ge4.4 + AUTOLOAD:=$(call AutoLoad,56,bootconfig,1) +endef +define KernelPackage/bootconfig/description + Bootconfig partition for failsafe +endef + +$(eval $(call KernelPackage,bootconfig)) diff --git a/feeds/ipq807x_v5.4/ipq807x/patches/300-bootconfig.patch b/feeds/ipq807x_v5.4/ipq807x/patches/300-bootconfig.patch new file mode 100644 index 000000000..27a62236d --- /dev/null +++ b/feeds/ipq807x_v5.4/ipq807x/patches/300-bootconfig.patch @@ -0,0 +1,13 @@ +Index: linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d/drivers/platform/ipq/bootconfig.c +=================================================================== +--- linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d.orig/drivers/platform/ipq/bootconfig.c ++++ linux-5.4.164-qsdk-26349818b464f8c7b52d59ce73579d9f3dd6bd5d/drivers/platform/ipq/bootconfig.c +@@ -366,7 +366,7 @@ static int __init bootconfig_partition_i + continue; + + partname_dir[i] = proc_mkdir(part_info[i].name, boot_info_dir); +- if (partname_dir != NULL) { ++ if (partname_dir[i] != NULL) { + proc_create_data("primaryboot", S_IRUGO, + partname_dir[i], + &primaryboot_ops, diff --git a/feeds/ipq807x_v5.4/mac80211/patches/pending/310-fix_crash_on_invalid_band.patch b/feeds/ipq807x_v5.4/mac80211/patches/pending/310-fix_crash_on_invalid_band.patch new file mode 100644 index 000000000..369400638 --- /dev/null +++ b/feeds/ipq807x_v5.4/mac80211/patches/pending/310-fix_crash_on_invalid_band.patch @@ -0,0 +1,11 @@ +--- a/net/mac80211/sta_info.c ++++ b/net/mac80211/sta_info.c +@@ -2157,7 +2157,7 @@ static void sta_stats_decode_rate(struct + + sband = local->hw.wiphy->bands[band]; + +- if (WARN_ON_ONCE(!sband->bitrates)) ++ if (WARN_ON_ONCE(!sband || !sband->bitrates)) + break; + + brate = sband->bitrates[rate_idx].bitrate; diff --git a/feeds/ipq95xx/hostapd/src/src/ap/ubus.c b/feeds/ipq95xx/hostapd/src/src/ap/ubus.c index 8f0f8a16b..3ef443d43 100644 --- a/feeds/ipq95xx/hostapd/src/src/ap/ubus.c +++ b/feeds/ipq95xx/hostapd/src/src/ap/ubus.c @@ -1892,6 +1892,9 @@ void hostapd_ubus_notify_radar_detected(struct hostapd_iface *iface, int frequen struct hostapd_data *hapd; int i; + if (!ctx) + return; + blob_buf_init(&b, 0); blobmsg_add_u16(&b, "frequency", frequency); blobmsg_add_u16(&b, "width", chan_width); diff --git a/feeds/ucentral/rrmd/files/usr/share/rrmd/station.uc b/feeds/ucentral/rrmd/files/usr/share/rrmd/station.uc index 5d31ff8fb..f104ff16f 100644 --- a/feeds/ucentral/rrmd/files/usr/share/rrmd/station.uc +++ b/feeds/ucentral/rrmd/files/usr/share/rrmd/station.uc @@ -29,8 +29,9 @@ function station_add(device, addr, data, seen, bssid) { beacon_report: {}, }; - if (config.beacon_request_assoc) + /* if (config.beacon_request_assoc) stations[addr].beacon_request_assoc = time(); + */ } /* update device, seen and signal data */ @@ -47,6 +48,7 @@ function station_add(device, addr, data, seen, bssid) { global.event.send('rrm.station.add', { addr, rrm: stations[addr].rrm, bssid }); /* check if a beacon_report should be triggered */ + /* if (stations[addr].beacon_request_assoc && time() - stations[addr].beacon_request_assoc >= 30) { global.station.beacon_request({ addr, channel: stations[addr].channel}); stations[addr].beacon_request_assoc = 0; @@ -56,6 +58,7 @@ function station_add(device, addr, data, seen, bssid) { global.event.send('rrm.beacon.report', { addr, report: stations[addr].beacon_report }); stations[addr].beacon_report_seen = 0; } + */ } function station_del(addr) { diff --git a/feeds/ucentral/ucentral-client/Makefile b/feeds/ucentral/ucentral-client/Makefile index 98e1ea60f..f42572588 100644 --- a/feeds/ucentral/ucentral-client/Makefile +++ b/feeds/ucentral/ucentral-client/Makefile @@ -4,10 +4,10 @@ PKG_NAME:=ucentral-client PKG_RELEASE:=1 PKG_SOURCE_URL=https://github.com/Telecominfraproject/wlan-ucentral-client.git -PKG_MIRROR_HASH:=279c58711c354372d570320651644bf75ce758c6197a7eb8dda481a925c82620 +PKG_MIRROR_HASH:=3fa810edd53a8c08ce3d8090a095fbc1697c70c50e00a78931400df59fe66eaf PKG_SOURCE_PROTO:=git PKG_SOURCE_DATE:=2022-06-22 -PKG_SOURCE_VERSION:=6ca7b2e43c20a92508bf408e586c310dfff38f51 +PKG_SOURCE_VERSION:=f19b1e86b7f36f4adc544e087cadd7907dabb5f0 PKG_LICENSE:=BSD-3-Clause PKG_MAINTAINER:=John Crispin diff --git a/feeds/ucentral/ucentral-event/files/ucentral-event b/feeds/ucentral/ucentral-event/files/ucentral-event index 38993f9ee..b69e46e2f 100755 --- a/feeds/ucentral/ucentral-event/files/ucentral-event +++ b/feeds/ucentral/ucentral-event/files/ucentral-event @@ -126,7 +126,8 @@ handlers = { vlan: [ `${notify.data.vlan_id}:u` ] }; ubus.call('network.interface.up_none', 'add_device', msg); - + if (`${notify.data.vlan_id}` in config.config.swconfig_vlans) + return; msg = { name: 'eth0.' + notify.data.vlan_id, vlan: [ `${notify.data.vlan_id}:u` ] diff --git a/feeds/ucentral/ucentral-schema/Makefile b/feeds/ucentral/ucentral-schema/Makefile index 718219749..913a73e81 100644 --- a/feeds/ucentral/ucentral-schema/Makefile +++ b/feeds/ucentral/ucentral-schema/Makefile @@ -4,10 +4,10 @@ PKG_NAME:=ucentral-schema PKG_RELEASE:=1 PKG_SOURCE_URL=https://github.com/Telecominfraproject/wlan-ucentral-schema.git -PKG_MIRROR_HASH:=8558ddc1b975a9b0bf1832c3277a99de95e9cf3682a671991d3125c04d375e96 +PKG_MIRROR_HASH:=8ab9a9361415e0302c502d1e92273b4b8098bca5e469783b6813d47b284ed965 PKG_SOURCE_PROTO:=git PKG_SOURCE_DATE:=2022-05-29 -PKG_SOURCE_VERSION:=e77cd3fa1ea727cbdfc64f78aff2401a869edc27 +PKG_SOURCE_VERSION:=3093a565c4c28609089ac03a4c206fae0c89cb49 PKG_MAINTAINER:=John Crispin PKG_LICENSE:=BSD-3-Clause diff --git a/feeds/ucentral/ucentral-state/files/ucentral-state b/feeds/ucentral/ucentral-state/files/ucentral-state index 67a6edcbb..8ac90b856 100755 --- a/feeds/ucentral/ucentral-state/files/ucentral-state +++ b/feeds/ucentral/ucentral-state/files/ucentral-state @@ -147,9 +147,8 @@ let state_handler = { led_write(led, 'trigger', 'heartbeat'); if (config.ui.offline_trigger) { if (offline_timer) - offline_timer.set(config.ui.offline_trigger * 1000); - else - offline_timer = uloop.timer(config.ui.offline_trigger * 1000, offline_handler); + offline_timer.cancel(); + offline_timer = uloop.timer(config.ui.offline_trigger * 1000, offline_handler); } return 0; }, diff --git a/feeds/wifi-ax/hostapd/src/src/ap/ubus.c b/feeds/wifi-ax/hostapd/src/src/ap/ubus.c index cd152fd1a..db904f804 100644 --- a/feeds/wifi-ax/hostapd/src/src/ap/ubus.c +++ b/feeds/wifi-ax/hostapd/src/src/ap/ubus.c @@ -1958,6 +1958,9 @@ void hostapd_ubus_notify_radar_detected(struct hostapd_iface *iface, int frequen struct hostapd_data *hapd; int i; + if (!ctx) + return; + blob_buf_init(&b, 0); blobmsg_add_u16(&b, "frequency", frequency); blobmsg_add_u16(&b, "width", chan_width); diff --git a/patches/0073-hostapd-add-missing-NULL-pointer-check-on-radar-noti.patch b/patches/0073-hostapd-add-missing-NULL-pointer-check-on-radar-noti.patch new file mode 100644 index 000000000..8ec0666a0 --- /dev/null +++ b/patches/0073-hostapd-add-missing-NULL-pointer-check-on-radar-noti.patch @@ -0,0 +1,27 @@ +From 20bf17b6bb9c40a14db5ed9744c3362afe4a67d8 Mon Sep 17 00:00:00 2001 +From: John Crispin +Date: Tue, 9 Jan 2024 12:36:01 +0100 +Subject: [PATCH] hostapd: add missing NULL pointer check on radar notification + +Signed-off-by: John Crispin +--- + package/network/services/hostapd/src/src/ap/ubus.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/package/network/services/hostapd/src/src/ap/ubus.c b/package/network/services/hostapd/src/src/ap/ubus.c +index 52f83c50f7..54361ea460 100644 +--- a/package/network/services/hostapd/src/src/ap/ubus.c ++++ b/package/network/services/hostapd/src/src/ap/ubus.c +@@ -2125,6 +2125,9 @@ void hostapd_ubus_notify_radar_detected(struct hostapd_iface *iface, int frequen + struct hostapd_data *hapd; + int i; + ++ if (!ctx) ++ return; ++ + blob_buf_init(&b, 0); + blobmsg_add_u16(&b, "frequency", frequency); + blobmsg_add_u16(&b, "width", chan_width); +-- +2.34.1 + diff --git a/patches/0074-netifd-only-reload-swconfig-if-something-changed.patch b/patches/0074-netifd-only-reload-swconfig-if-something-changed.patch new file mode 100644 index 000000000..429d789d3 --- /dev/null +++ b/patches/0074-netifd-only-reload-swconfig-if-something-changed.patch @@ -0,0 +1,30 @@ +From 66382792778a6647ec8809e3858e030b3bbf5554 Mon Sep 17 00:00:00 2001 +From: John Crispin +Date: Mon, 15 Jan 2024 13:19:24 +0100 +Subject: [PATCH] netifd: only reload swconfig if something changed + +Signed-off-by: John Crispin +--- + package/network/config/netifd/files/etc/init.d/network | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/package/network/config/netifd/files/etc/init.d/network b/package/network/config/netifd/files/etc/init.d/network +index dc208c4ce0..6af668f557 100755 +--- a/package/network/config/netifd/files/etc/init.d/network ++++ b/package/network/config/netifd/files/etc/init.d/network +@@ -9,7 +9,11 @@ init_switch() { + setup_switch() { return 0; } + + include /lib/network +- setup_switch ++ uci show network | grep @switch | sort | md5sum | cut -d" " -f1 > /var/run/swconfig.new ++ [ "$(cat /var/run/swconfig.new)" != "$(cat /var/run/swconfig.applied)" ] && { ++ mv /var/run/swconfig.new /var/run/swconfig.applied ++ setup_switch ++ } + } + + start_service() { +-- +2.34.1 + diff --git a/patches/0075-ramips-reduce-yuncore-ax820-SPI-clock-speed-to-20MHz.patch b/patches/0075-ramips-reduce-yuncore-ax820-SPI-clock-speed-to-20MHz.patch new file mode 100644 index 000000000..bb662aa1f --- /dev/null +++ b/patches/0075-ramips-reduce-yuncore-ax820-SPI-clock-speed-to-20MHz.patch @@ -0,0 +1,26 @@ +From 594261d2f696136b9cb1d63fd4706248b5cd9ffa Mon Sep 17 00:00:00 2001 +From: John Crispin +Date: Wed, 17 Jan 2024 09:58:18 +0100 +Subject: [PATCH] ramips: reduce yuncore ax820 SPI clock speed to 20MHz + +Signed-off-by: John Crispin +--- + target/linux/ramips/dts/mt7621_yuncore_ax820.dts | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/target/linux/ramips/dts/mt7621_yuncore_ax820.dts b/target/linux/ramips/dts/mt7621_yuncore_ax820.dts +index 51fd358095..b2f55b9be0 100644 +--- a/target/linux/ramips/dts/mt7621_yuncore_ax820.dts ++++ b/target/linux/ramips/dts/mt7621_yuncore_ax820.dts +@@ -87,7 +87,7 @@ + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; +- spi-max-frequency = <80000000>; ++ spi-max-frequency = <20000000>; + m25p,fast-read; + + partitions { +-- +2.34.1 + diff --git a/patches/0076-rstrip.sh-do-not-strip-FW-binaries.patch b/patches/0076-rstrip.sh-do-not-strip-FW-binaries.patch new file mode 100644 index 000000000..c590b1cee --- /dev/null +++ b/patches/0076-rstrip.sh-do-not-strip-FW-binaries.patch @@ -0,0 +1,26 @@ +From f8a801dee8bf0706e349f8f9a7ca1e1fb2fcd42a Mon Sep 17 00:00:00 2001 +From: John Crispin +Date: Mon, 22 Jan 2024 12:21:02 +0100 +Subject: [PATCH] rstrip.sh: do not strip FW binaries + +Signed-off-by: John Crispin +--- + scripts/rstrip.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/scripts/rstrip.sh b/scripts/rstrip.sh +index e47960a941..2aa7e96fda 100755 +--- a/scripts/rstrip.sh ++++ b/scripts/rstrip.sh +@@ -20,7 +20,7 @@ TARGETS=$* + exit 1 + } + +-find $TARGETS -type f -a -exec file {} \; | \ ++find $TARGETS -not -path \*/lib/firmware/\* -a -type f -a -exec file {} \; | \ + sed -n -e 's/^\(.*\):.*ELF.*\(executable\|relocatable\|shared object\).*,.*/\1:\2/p' | \ + ( + IFS=":" +-- +2.34.1 +