* Add BDFs for Linksys MR7500 * ipq5018: add Wallys DR5018 * ipq5018: add BDF for Linksys MR5500 * qcn9074: add BDF for Linksys MR5500 * ipq5018: add BDF for Linksys SPNMX56 * qcn9074: add BDF for Linksys SPNMX56 * ipq8074: add Aliyun AP8220 BDF
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Link: https://github.com/openwrt/openwrt/pull/17970 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: f138507)
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Link: https://github.com/openwrt/openwrt/pull/17970 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: b6fa124)
Aliyun AP8220 is an AP manufactured by Edgecore. (Very similar to Edgecore EAP102)
Hardware specifications: SoC: Qualcomm IPQ8071A RAM: 1GB of DDR4 600MHz Flash1: MX25U3235F 4MB Flash2: MX30UF1G18AC 128MB Ethernet: 2x 2.5G RJ45 port USB: 2x USB-A 2.0 port WiFi1: QCN5024 2.4GHz WiFi2: QCN5054 5GHz Power: DC 12V / PoE
Flash instructions: 1. Connect the router via serial port 2. Keep pressing @ until uboot is interrupted 3. Download the initramfs image, rename it to initramfs.bin, host it with tftp server 4. Run these commands: tftpboot initramfs.bin bootm 5. After openwrt boots up, use scp or luci to upload sysupgrade.bin to upgrade.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn> Link: https://github.com/openwrt/openwrt/pull/17970 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 51d485e)
The proposed detection method was based on reading the LAUNCH_FREADY core flag. However, this method only works before the cores are launched. For this reason, the core number detection method has been changed to a simpler one. For mt6721s the 17th revision bit is zero, hence we know that it is this chip, so the number of cores is 1.
Fixes: https://github.com/openwrt/openwrt/issues/17764 Tested-by: Enrico Mioso <mrkiko.rs@gmail.com> Tested-by: Simon Etzlstorfer <simon@etzi.at> Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi> Co-authored-by: Shiji Yang <yangshiji66@qq.com> Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com> Link: https://github.com/openwrt/openwrt/pull/17834 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (commit: bb84c25)
generic: mtk_eth_soc: dump registers on forced reset
Import patch from MediaTek's SDK to hack-6.6 which dumps all relevant registers of the Ethernet controller in case of a forced reset. This can help to debug and find the cause for sporadic resets seen on Filogic SoCs when used with OpenWrt's Linux 6.6.
Link: https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/73d44392b8556c5fdd13728c1b56ce2abfe280df Signed-off-by: Daniel Golle <daniel@makrotopia.org> (commit: 31dc43d)
qualcommax: ipq50xx: add support for Linksys SPNMX56
The SPNMX56 is an ISP-branded and distributed device similar to the MX5500 with the same Wifi chips (IPQ5018 for 2.4G and QCN9074 for 5G) but has an additional QCA8081 PHY providing a 2.5gbps ethernet WAN port.
Speficiations: * SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz) * Memory: Winbond W634GU6NB-11 (512 MiB DDR3-933) * Serial Port: 3v3 TTL 115200n8 * Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax) QCN9024 (4x4:4 5 Ghz 802.11an/ac/ax) * Ethernet: IPQ5018 integrated virtual switch connected to an external QCA8337 switch (3 Ports 10/100/1000 GBASE-T) and a QCA8081 phy (up to 2.5 Gbps) * Flash: Gigadevice GD5F2GM7RExxG (256 MiB) * LEDs: 1x multi-color PWM LED * Buttons: 1x WPS (GPIO 27 Active Low) 1x Reset (GPIO 28 Acive Low)
Flash instructions: 1. On OEM firmware, login to the device (typically at http://192.168.1.1) and click 'CA' in the bottom right corner -> Connectivity -> Manual Upgrade. Alternatively, browse to http://<router IP>/fwupdate.html Upload openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin Optionally flash 2nd partition, after first boot check actual partition: fw_printenv -n boot_part and install firmware on second partition using command in case of 2: mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin kernel and in case of 1: mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin alt_kernel 2. Installation using serial connection from OEM firmware hit Enter once booted and enter credentials (login: root, password: admin) fw_printenv -n boot_part In case of 2: flash_erase /dev/mtd12 0 0 nandwrite -p /dev/mtd12 openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin or in case of 1: flash_erase /dev/mtd14 0 0 nandwrite -p /dev/mtd14 openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin After first boot install firmware on second partition: mtd -r -e kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin kernel or: mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq50xx-linksys_spnmx56-squashfs-factory.bin alt_kernel 3. Back to the OEM firmware. Download firmware from OEM website: Firmware for this device cannot be searched for on the Linksys website. Instead, we'd have to use serial to intercept the URL of the firmware while it's trying to update. Firmware is ISP specific: Toob (UK): http://download.linksys.com/updates/20241125t080737/FW_MX56TB_1.0.1.216218_prod.img
The intention is to collect URLs for different ISPs on a wiki page.
From serial or SSH: fw_printenv boot_part in case of 1: mtd -r -e alt_kernel -n write FW_MX56TB_1.0.1.216218_prod.img alt_kernel else in case of 2: mtd -r -e kernel -n write FW_MX56TB_1.0.1.216218_prod.img kernel
Signed-off-by: George Moussalem <george.moussalem@outlook.com> Link: https://github.com/openwrt/openwrt/pull/17968 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: fe379eb)
qualcommax: ipq50xx: sysupgrade: fix OEM UBI volume name for Linksys MX devices
The UBI volume name in OEM firmware for Linksys MX2000, MX5500, and SPNMX56 is 'squashfs' instead of 'rootfs'. So let's update the volume accordingly.
Signed-off-by: George Moussalem <george.moussalem@outlook.com> Link: https://github.com/openwrt/openwrt/pull/17968 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 92132bb)
5f127fcc415c convdb: preserve newlines at the end of scripts e94a2212a0d2 convdb: import package names starting with leading dot 9c0d353c7905 adbdump: use literal block if yaml quoting is needed 93c6a09a8ea8 improve compatibility of shellscripts 6c454d13de9b doc: fix pre/post commit hook documentation 3eb0b70b6d0f solver: rework solver name ordering to fix install_if handling 78c3bdc03cbd solver: make dependencies only packages selectable 373b364ef2a8 build: use the VERSION directly as the soname 6f627d93f5a0 update .gitignore 908f1ee7e87b index, add, pkg: check arch in 'add' only to allow 'index' to work 7c164c471251 index: Fix total always 0 0042b035df53 pkg, db: check arch on apk_db_pkg_add ffc706689603 applet: always show help for global options f6a66ebc5876 help: use uppercase usage prefix 7ebb23720483 doc: fix manpage sections 5e5e1f088986 genhelp: reorganize and add --debug output mode 9b371e452fb2 genhelp: do man page link wrangling for COMMANDS text only 2a87e46a354b context: introduce and use apknew_suffix a6180e4cfa1a meson: add tests option eb100676c5f0 test: move subdir unit to be the first a12eae1780e8 test/user/hardlink: be portable to bsd-style stat(1) f0c096bc034b db: attempt new mount user namespace for chroot in usermode 994e5e4e0006 db: fix "fetch --recurisve" to work 24d8f9677d77 Revert "database: move lock file from /lib/apk to /run/apk" 470432aafe77 applets: simplify option group handling e1275e2f5010 apk: load global options from /etc/apk/config 8c39b525cd0c add support for repository package name specification 5856cf100241 doc, db: fix repository url_base to be allocated and fetch man page a0411e87187e cache: fix not to remove indexes cddca5769e98 apk, commit: support --cache-predownload to first download packages 915e9841ed1c ci: always test all features available 4f94807104e3 commit: print version numbers with --verbose --interactive summary 5bd6d49ac447 fetch: call progress early to avoid flicker fc66fdfc49cd test: portability fixes 3f73ba343cbd test: shellcheck test suite for bash, dash and busybox d94671bb1235 test: fixup sourcing testlib.sh to work better with shellcheck 6007db9cdde6 print: refactor progress printing API a1d7042a2d3b print: further refactor progress API bed4628c9317 print: reorganize progress to be renderred after apk_out 8cd7362a986c add process main loop to pipe stdout/stderr and logs it ccfd7ac5e518 db: log script output using apk_process api 3c4594962fb4 db: log uvol output using apk_process api and add tests fc7768c09497 io_url_wget: log wget output using apk_process api 90a62541751f build: only use VERSION up until first space for soname 378d6360ab17 db: rename apk_db_add_repository to add_repository 5d978c2a5924 db: split open_repository out of add_repository af812cd28c6d print: simplify code a little bit 4c776eb74997 db: make index refresh notices a progress note 64e053071a89 db: fix non-repository reverese dependency indexing 3cf039322ce1 apk-tools-3.0.0_rc1 90220e710c61 commit: fixup progress during package removal d11521ec6309 apk-tools-3.0.0_rc2 dc191820b1c4 solver: fix name resolving order of pure virtual names 7da628bc455f libfetch: remove remaining ftp references 10b467c0992a libfetch: remove error generation script b5b130e1d628 print: flush after progress notice if needed d71722b9a637 libfetch: rework error codes API 7b0b69a3023f commit: advise on using upgrade --prune and/or --available 1fd82ea2d7dc test: fix spelling s/shuld/should 8eb22149138f process: move apk_exit_status_str as static function 752ee96a25b1 db: refactor repository parsing and url printing bfa763904fe4 doc: update apk-keys(5) and apk-repositories(5) 165333af1a35 db: introduce and use apk_db_foreach_repository 8e98d6889c92 libfetch: remove unused file scheme and manual pages 30b1c0348d6b remove usage of TRUE/FALSE fa19887d741c crypto: use explicit algorithm fetching for openssl >=3.0 a706cbdfd5b1 crypto: remove support for obsolete md5 35a57547a7d7 db: remove APK_REPOSITORY_CACHED and use cache_repository 7f616711636c db: const correctness for apk_db_pkg_available 2cda62cd3a4c io: adjust scheme detection in apk_url_local_file() 50a2c12a32b8 db: make repo.url_index a pure blob a186267a8822 db: make repo.url_base_printable prefix of url_index_printable 9fb473c6a269 add .editorconfig 088c584bf515 mkndx: introduce --filter-spec to filter existing index 0c3188793243 atom: remove apk_atomize_dup0 866374c7cda0 python: add initial python binding bdf492471328 python: add unittests 9afe8dae79a0 ci: install python3-dev df3424e5c8cd python: move version to a submodule 3e65a63aa4f1 apk-tools-3.0.0_rc3 946027f6abde test: extend blob_split tests e73b5e313998 db: do not add empty arch a6c84f8f62f7 atom: use null atom also for zero length blobs fb8eef15dc52 db: handle not found names in __apk_db_foreach_sorted_package 0ef8a2223cca commit: don't trigger question with --prune/--available warning fe484a5c06b9 atom: remove apk_atomize 70fc828cf06b update: make --update-cache and and 'update' behave the same 04e83acfb9b9 upgrade: fix previous commit cdeebc01283d test: add mkpkg/add symlink test c2f21ce06a67 mkpkg: do not include filename on error message de0a4886a91c fs_fsys: do not leave temporary files after failed commit e5e362c1a65c doc: update --cache-max-age documentation 8d41ff40b59a fetch: fix fetch_err_make() for 32-bit arches 2526fd73bc66 walk_gentext: make state per-module, use apk_ostream for output bb65553e6423 walk_genadb: make state per-module a920e5976127 adb_walk: rename scheme to start_scheme and always call end for it 92c573fac280 adb_walk: separate string and numeric values fe4876bd3a4e adbdump: add support for json output 66cc8da577f0 walk_adb: always call the string scalar function 40bfa97ce3e3 adb: reset dynamic on freeing adb_obj 7519b70d42d1 convert adb_walk_gen* to apk_serializer_* 64c484730c9f add missing serialize.c 83e85aaee220 add missing apk_serialize.h f70638e12ccc serializer: simplify schema and array handling 9bfc259d9fdb serializer: merge start_schema and start_object to one op a23368b38ff6 serialize_yaml: improve quoting detection 3a33e75b92aa serialize_adb: move from libapk to apk executable f5c3fd843824 info: fix -W with symlinks d54fdb753135 update, version: do not print unavailable repositories 8223c10d4c33 doc: extract arguments are files a3b4ebcefa3b serialize_yaml/adb: support single quoting, and fixes 77aff1daa967 db: fix --no-cache f0e3aa4c139d mkpkg: do not call openat() with null pathname 28770f552f4e adb: fix adb_block_init check when extended block is needed 1ca73b6ae892 blob: apk_blob_push_int use uint64_t as value 0b159e23432e print: use uint64_t for progress api progress type 5da830ba51d0 db, commit, print: use uint64_t for file size types a7b5d8d8eeb9 mkndx, extract: use uint64_t for file size types 639f8ab8d9cd io: use uint64_t for file size as needed 49905d47ee90 io: introduce and use apk_istream_skip 8d83f18647d4 defines: drop muldiv and mulmod helpers d373a9a6971e db: drop now unused apk_repo_format_cache_index 5700b195d67d pkg: update script execution logging style 00c51e267162 pkg: cap sizes that are allowed for scripts and some v2 fields 5157c540d732 io: fix segment_close to read the inner stream ad741fe98b72 db: implement system repository list configuration path 6ca1831ed563 use #pragma once instead of ifdef guards 64254d190b32 db, ctx: add and use allocator in apk_ctx 581825bb0811 fix handling of etc/apk/config options with an argument 508b312df637 apk: add APK_CONFIG to overwite path to config file 0e8e7e5a8264 test: fix busybox realpath compat 0186a6aa9d5c apk: support loading configuration options from /lib/apk/config 0c52242990f4 db: fix package name orphan check a7766c933853 add: don't print misleading error after failed non-repository check 4254863de6ac introduce and use apk_array_foreach and apk_array_foreach_item b276b3c50618 serialize: separate apk_ser_string and its multiline variant 91dc10b1cddf blob: introduce and use apk_blob_foreach_token d345a9aa6d25 adbgen: split adbgen specific code to separate file 00522cd60e18 apk: introduce and use APK_OPTVAL_* macros 7f8a1ca12465 list, search: fix origin existence checks b0bb4a99378b adb: allow copying larger arrays 3fe4258d4c1b mkndx: fix matching packages from old index b263d961ba12 libfetch/http: reuse fetch_netrc_auth for http(s) 1d4ed5525f54 ctype: fix apk_blob_{spn,cspn} for non-ascii characters 1fa9f3c221c7 genhelp.lua: don't match underscores in the middle of words 48980518436f ctx, trust: load public keys also from lib/apk/keys ba38d6584599 mkndx: remove --rewrite-arch a9ea20e37029 context: fix --keys-dir 8abae4785c78 various: fix compilation error for missing inttypes.h fdb10df21486 various: fix compilation error for missing limits.h 89ef2b546087 database: fix compilation error for missing sched.h 8afd4ab47200 process: correctly handle error from pipe2 and open 1cbbf7457721 crypto_openssl: make sha global variables constant for OpenSSL < 3 025710552ac8 io: fix compilation error for missing stdarg.h 908efa92701c libfetch: allow obsolete date format in http timestamps 70494b5bcdf9 apk: add support for boolean flag arguments 16ab8c549a06 apk: add --cache-packages to enable package caching always 460d62ee743c db: extend repositories file format with commands 34771ccb7964 apk-tools-3.0.0_rc4
Link: https://github.com/openwrt/openwrt/pull/17925 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: 83d2d21)
Upgrade the u-boot to a more recent version, and drop and refresh patches while at it. Additionally, use the correct architecture when running mkimage.
When selecting channels above 100 in VHT160+ modes the center frequency segment was incorrectly set to 50, causing the interface to not come up.
Change logic to instead check if the channel is within ±28 channels of the intended center, which matches the actual 160+ MHz channel width specification for VHT160, HE160, and EHT160.
Signed-off-by: Sean Khan <datapronix@protonmail.com> Link: https://github.com/openwrt/openwrt/pull/18013 Signed-off-by: John Crispin <john@phrozen.org> (commit: 7fd9340)
Notation for RX-STBC VHT capabilities when specifying number of spatial streams should be hyphenated, e.g. RX-STBC-1, RX-STBC-2. HT capabilities use without hyphen, e.g. RX-STBC1, RX-STBC2. This is consistent with what hostapd expects.
* Add missing parentheses in the conditionals for VHT160/VHT160-80PLUS80 and VHT_MAX_MPDU capabilities. The missing parentheses caused the bitwise AND to be evaluated after the equality comparison due to ECMA's operator precedence, where `==` has higher precedence than `&`.
* Fix Max MPDU length detection by changing the comparison operators to `>=` vs `>` otherwise the condition would never be met.
* Add missing default values: - `true` value for `short_gi_80` (As it exists for `short_gi_20`, `short_gi_40`, `short_gi_160`) - `7` for `vht_max_mpdu` (Without it the loop in MAX-MPDU-* calculation always compares with null)
* Change the `vht160` condition to `config.vht160 <= 2`. This flag is `2` by default, and only ever set to `0` when `vht_oper_chwidth < 2`.
Signed-off-by: Sean Khan <datapronix@protonmail.com> Link: https://github.com/openwrt/openwrt/pull/18013 Signed-off-by: John Crispin <john@phrozen.org> (commit: eabea73)
wifi-scripts: iwinfo: add null checks for rx/tx bitrate
On some devices, the rx/tx bitrate may not always be available right away, or at all when in mesh mode at plink is blocked causing the following:
``` Reference error: left-hand side expression is null In assoclist(), file /usr/share/ucode/iwinfo.uc, line 321, byte 46: called from function info (/usr/share/ucode/iwinfo.uc:427:33) called from anonymous function (/usr/bin/iwinfo:108:25)
` bitrate_raw: station.sta_info.tx_bitrate.bitrate,` Near here -----------------------------------------------^ Reference error: left-hand side expression is null In assoclist(), file /usr/share/ucode/iwinfo.uc, line 314, byte 54: called from function info (/usr/share/ucode/iwinfo.uc:427:33) called from anonymous function (/usr/bin/iwinfo:108:25)
` bitrate: format_rate(station.sta_info.rx_bitrate.bitrate),` Near here -------------------------------------------------------^ Reference error: left-hand side expression is null In assoc_flags(), file /usr/share/ucode/iwinfo.uc, line 216, byte 12: called from function assoclist (/usr/share/ucode/iwinfo.uc:323:51) called from function info (/usr/share/ucode/iwinfo.uc:427:33) called from anonymous function (/usr/bin/iwinfo:108:25)
` if (data[k])` Near here -------^ ```
This was seen on Linksys MX5300 in mesh mode (QCA9984).
Signed-off-by: Sean Khan <datapronix@protonmail.com> Link: https://github.com/openwrt/openwrt/pull/18027 Signed-off-by: John Crispin <john@phrozen.org> (commit: 15013e8)
wifi-scripts: failed to start hostapd if he_spr_psr_enabled is set
he_spr_psr_enabled is appended to hostapd.conf if it's enabled, but hostapd doesn't support this config, it should be used as an internal flag to control the he_spr_sr_control configuring.
The latest upstream version of Yafut builds on macOS and other POSIX-compatible systems. Drop the custom OpenWRT patch applying non-Linux compatibility fixes to the tool's source code.
Signed-off-by: Michał Kępień <openwrt@kempniu.pl> Link: https://github.com/openwrt/openwrt/pull/18014 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: 08f5a13)
Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17829 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: 208288f)
refresh patch: 001-no_doc.patch 002-fix-libmath.patch Changelog included in package.
Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17828 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: abd424c)
Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17827 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: b930ce3)
Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17825 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: e0f5ce9)
Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com> Link: https://github.com/openwrt/openwrt/pull/17826 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: bbb3b98)
The fixes are only for the WRT1900X and WRT1200AC.
It contains:
Deletes the driver's ability to modify the debit table. Remove skb_get(done_skb) in txdone Reworking ISR clean code Napi replaces tasklet Add rx_decrypt feature
Signed-off-by: Michael Trinidad <trinidude4@hotmail.com> Link: https://github.com/openwrt/openwrt/pull/17997 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> (commit: edfe589)