]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
2 months agokernel: bump 6.12 to 6.12.74 22314/head
John Audia [Thu, 19 Feb 2026 19:58:26 +0000 (14:58 -0500)] 
kernel: bump 6.12 to 6.12.74

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.74

No patches touched with this release.

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22191
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 3bcbbb0ac7b891b18a55238c9b8ec7a55f40324d)
Link: https://github.com/openwrt/openwrt/pull/22314
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agokernel: bump 6.12 to 6.12.73
John Audia [Mon, 16 Feb 2026 17:42:22 +0000 (12:42 -0500)] 
kernel: bump 6.12 to 6.12.73

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.73

No patches rebased/checksum update only.

Build system: x86/64
Build-tested: flogic/glinet_gl-mt6000
Run-tested: flogic/glinet_gl-mt6000

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22191
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 3c1e45a39fb63bd5e2b55436f3e5fad36f2899b9)
Link: https://github.com/openwrt/openwrt/pull/22314
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agokernel: bump 6.12 to 6.12.72
John Audia [Mon, 16 Feb 2026 11:55:53 +0000 (06:55 -0500)] 
kernel: bump 6.12 to 6.12.72

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.72

All patches automatically rebased.

Build system: x86/64
Build-tested: flogic/glinet_gl-mt6000
Run-tested: flogic/glinet_gl-mt6000

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22191
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 129244d618e991b1a09463308b52569b30a3a438)
Link: https://github.com/openwrt/openwrt/pull/22314
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoomcproxy: update to Git HEAD (2026-03-07)
Álvaro Fernández Rojas [Sat, 7 Mar 2026 14:54:29 +0000 (15:54 +0100)] 
omcproxy: update to Git HEAD (2026-03-07)

3abb601ab77f mrib: receive_mrt: workaround for RTL8373 queries
e25491f27af3 Revert "mrib: receive_mrt: workaround for RTL8373 queries"
cd20f3a4b4f1 mrib: receive_mrt: workaround for RTL8373 queries
cad82dc5cb65 formal: fix workflow permissions
997a981ae375 github: ci: add MIPS64, PowerPC64 and RISCV64
e646f462daeb github: ci: add powerpc arch
b3d1e2e48cf4 github: ci: add cmake build and source directories
de4353546064 github: ci: disable json-c tests
2be7e63d9b68 scripts: devel-build: disable json-c tests
36adc79c7b76 github: fix CI apt dependencies
11e45f6cfe10 README: update build instructions
78eea9b83a93 omcproxy: use syslog mask for logging level
9f0a1454de10 github: add CI build
49df5f5b8704 omcproxy: add a simple build script
757c1c704c9d libubox: remove submodule
8957f6c2557b omcproxy: update cmake file
848d696419eb proxy: fix indentation warning

(cherry picked from commit 56bf67d47406bd7c64cdfc6a8610032afe7094cf)
Link: https://github.com/openwrt/openwrt/pull/22317
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2 months agobuild: use STAGING_DIR for special APK package versions
Jonas Gorski [Wed, 14 Jan 2026 19:19:30 +0000 (20:19 +0100)] 
build: use STAGING_DIR for special APK package versions

Removing tmp/ after having built base-files or toolchain currently
breaks rootfs generation:

$ rm -rf tmp
$ make V=w
...
 make[2] package/install
cat: .../openwrt/tmp/base-files.version: No such file or directory
cat: .../openwrt/openwrt/tmp/libc.version: No such file or directory
ERROR: 'base-files=' is not a valid world dependency, format is name(@tag)([<>~=]version)
make[2]: *** [package/Makefile:100: package/install] Error 99

The only way to recover from here is to clean toolchain and base-files via

$ make package/{base-files,toolchain}/clean

tmp is supposed to be ephemeral, so clearing it is an expected action,
which normally just triggers a regeneration of all files there.

Fix this by moving the version files to $(STAGING_DIR).

Fixes: 63e178f067 ("build: lock versions for special APK packages")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21803
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit a4e92f0484f365565072162dad3eeaca0e38b709)

2 months agokernel: net: sfp: improve Huawei MA5671a fixup 22299/head
Álvaro Fernández Rojas [Thu, 5 Mar 2026 13:13:55 +0000 (14:13 +0100)] 
kernel: net: sfp: improve Huawei MA5671a fixup

Add pending patch for improving Huawei MA5671a SFP fixup, which allows
communicating with the module even if the fiber isn't connected.

(cherry picked from commit eb4fd65c9291bf5851b1a094bd706d2240bb1d20)
Link: https://github.com/openwrt/openwrt/pull/22283
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2 months agoipq40xx: re-enable MeshPoint.One target 22279/head
Valent Turkovic [Tue, 3 Mar 2026 21:18:52 +0000 (22:18 +0100)] 
ipq40xx: re-enable MeshPoint.One target

The MeshPoint.One was disabled during the DSA migration with the
comment "Missing DSA Setup". However, this device inherits its
entire network configuration from 8dev Jalapeno via the
Device/8dev_jalapeno-common template, and shares the same DSA
network setup in 02_network.

The Jalapeno has been working with DSA since the migration. All
MeshPoint.One board support files (DTS, network config, LED config)
are already in place and reference the same QCA8072 switch
configuration as the Jalapeno.

Hardware: Qualcomm IPQ4018, QCA8072 switch, same as 8dev Jalapeno.
Tested: Built firmware from current main branch, boots and network
functions correctly.

Signed-off-by: Valent Turkovic <valent@meshpointone.com>
Link: https://github.com/openwrt/openwrt/pull/22258
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit a75cc4f18ca9ea1e9a491ffd5a386f6a6d771ea1)
Link: https://github.com/openwrt/openwrt/pull/22279
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agotreewide: linksys: use nvmem MAC for hw_mac_addr 22260/head
Rosen Penev [Thu, 19 Feb 2026 01:57:22 +0000 (17:57 -0800)] 
treewide: linksys: use nvmem MAC for hw_mac_addr

Given that Linksys is the same brand and probably use the same OEM, it
stands to reason all devinfo hw_mac_addr implementations are the same.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22092
(cherry picked from commit ee5999cf78d8ce4d0a3800b785bca445291ee30c)
Link: https://github.com/openwrt/openwrt/pull/22260
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agolantiq: add missing WAN MAC override 22288/head
Rosen Penev [Mon, 8 Dec 2025 02:11:02 +0000 (18:11 -0800)] 
lantiq: add missing WAN MAC override

In the original userspace implementation, the WAN and DSL interfaces
used the same MAC. Mirror that here.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21081
(cherry picked from commit 02f40d63e23a67aad34aae01079352ae6f690e2c)
Link: https://github.com/openwrt/openwrt/pull/22288
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agomac80211: fix a crash triggered by CSA with AP VLAN enabled
Felix Fietkau [Thu, 5 Mar 2026 17:12:09 +0000 (17:12 +0000)] 
mac80211: fix a crash triggered by CSA with AP VLAN enabled

Fix getting the correct operating channel for stations on VLAN

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit ba3c6ff3024f934c6f32b9cb679d9f457a7a1627)

3 months agoOpenWrt v25.12.0: revert to branch defaults
Hauke Mehrtens [Tue, 3 Mar 2026 00:16:20 +0000 (01:16 +0100)] 
OpenWrt v25.12.0: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoOpenWrt v25.12.0: adjust config defaults v25.12.0
Hauke Mehrtens [Tue, 3 Mar 2026 00:16:17 +0000 (01:16 +0100)] 
OpenWrt v25.12.0: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agobase-files: honoring Dave Täht with the OpenWrt 25.12 22180/head
Hauke Mehrtens [Wed, 25 Feb 2026 23:02:11 +0000 (00:02 +0100)] 
base-files: honoring Dave Täht with the OpenWrt 25.12

Dave Täht sadly passed away on April 1, 2025. With the OpenWrt 25.12
release, we honor his life and his remarkable contributions.

Dave played a key role in reducing bufferbloat and improving network
latency in OpenWrt and across the wider internet. His work made networks
faster, more responsive, and more reliable for millions of users.

This release is dedicated to his memory and lasting impact on the
networking community.

Dave's Wikipedia article: https://en.wikipedia.org/wiki/Dave_T%C3%A4ht

Link: https://github.com/openwrt/openwrt/pull/22180
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoRevert "imx: cortexa53: remove KSZ9477 static driver"
Robert Marko [Mon, 2 Mar 2026 17:05:45 +0000 (18:05 +0100)] 
Revert "imx: cortexa53: remove KSZ9477 static driver"

This reverts commit 231553b280925f1c1154c9a7c8549c4cbbea7c9e.

Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 4bfa5e2c09311d9aabab18d0d35a1446641be3cb)

3 months agoRevert "kernel: netdevices: add KSZ9477 DSA switch packages"
Robert Marko [Mon, 2 Mar 2026 17:05:55 +0000 (18:05 +0100)] 
Revert "kernel: netdevices: add KSZ9477 DSA switch packages"

This reverts commit c053b225731e81826b5b8acb144ac68f4ae14d30.

KSZ DSA driver is the only thing in the kernel selecting DCB support
instead of depending on it if required.
So, it will enable DCB support without asking and we do not want the
kernel size increase, as well as current Layerscape ARMv8 build failure.

So, revert this until its fixed upstream or worked around.

Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit b897db9c44f05ecb71768a6fa59dd091296f4251)

3 months agolibunistring: update to 1.4.2 22226/head
Ivan Pavlov [Sun, 1 Mar 2026 05:52:57 +0000 (08:52 +0300)] 
libunistring: update to 1.4.2

sync with gnulib, fixes compilation with gcc15

Signed-off-by: Ivan Pavlov <AuthorReflex@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22225
(cherry picked from commit fce39a8d7fa59556af276223ba21ad5c661fda51)
Link: https://github.com/openwrt/openwrt/pull/22226
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoprocd: update to git HEAD
Nora Schiffer [Fri, 27 Feb 2026 19:19:16 +0000 (20:19 +0100)] 
procd: update to git HEAD

2881a59f3043 rcS: allow overriding init.d/rc.d paths
4e4a34b1a833 rcS, ubus: constify char * arguments and variables where appropriate

Link: https://github.com/openwrt/openwrt/pull/22204
Signed-off-by: Nora Schiffer <neocturne@universe-factory.net>
(cherry picked from commit 67fe34932efc71a20f439ab99f88c53eaa639c0f)

3 months agoimx: cortexa53: update supported devices
Tim Harvey [Fri, 27 Feb 2026 18:31:19 +0000 (10:31 -0800)] 
imx: cortexa53: update supported devices

Add some additional Gateworks Venice boards to sysupgrade support.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/22202
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit a9f4daa3febdcd7975316b2d113efb7a8928980b)

3 months agotoolchain: binutils: fix update to 2.45.1
Hauke Mehrtens [Sat, 28 Feb 2026 19:43:11 +0000 (20:43 +0100)] 
toolchain: binutils: fix update to 2.45.1

Rename the patches folder too and also adapt the name in the toolchain menu.
Without changing the patches folder name the patches are not applied.

Fixes: adad973a9c34 ("toolchain: binutils: update to 2.45.1")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 525a1e94b34362369dc9b9ad03193dd74da203cf)

3 months agorealtek: pcs: revive dead ports after RTL8382M start 22087/head
Markus Stockhausen [Wed, 11 Feb 2026 15:20:32 +0000 (16:20 +0100)] 
realtek: pcs: revive dead ports after RTL8382M start

SerDes attached ports that are connected during switch
boot might not be able to transmit any data after SerDes
setup. Especially ports that passed traffic before (e.g.
for tftp initramfs boot) seem to be affected. Ports that
are connected later do not show this issue.

It turns out that the old SerDes setup never really worked
on RTL8382 and the pcs refactoring (with dynamic SerDes
start and stop) totally changed the order of network bringup
in contrast to Realtek SDK.

Fix this by restaring the switch queue whenever a SerDes
goes up for the first time.

Fixes: e956adf ("realtek: rtl838x: setup SDS in PCS driver")
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21956
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 0839c5c9f21d6d0fe5c8c1a764371a5b1a3637ff)
Manually resolved merge conflicts.
Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22087
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorealtek: central unlock for RTL838x write protection
Markus Stockhausen [Tue, 10 Feb 2026 07:40:49 +0000 (08:40 +0100)] 
realtek: central unlock for RTL838x write protection

The write protection register (0x1b000058) is opened up in prom init
but closed later in rtl838x_pie_init(). From that moment no more
special register writes are possible.

Only unlock the write protection register once during prom init.
Remove all other references. The error has been active since ages
but was not visible until pcs refactoring. For reference blame the
refactoring commit.

Fixes: e956adf ("realtek: rtl838x: setup SDS entirely in PCS driver")
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21956
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 8bf37836d62f001562c78238f41f4d05a31d606a)
Manually resolved merge conflicts of prom.c
Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22087
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorealtek: pcs: fix PLL_CML_CTRL for serdes 0/1
Markus Stockhausen [Mon, 9 Feb 2026 19:26:07 +0000 (20:26 +0100)] 
realtek: pcs: fix PLL_CML_CTRL for serdes 0/1

Setup of register PLL_CML_CTRL has two issues.

- It clears out bits 4-31 due to a wrong mask
- Setup of bits 0-3 is not generic but depends on the mode of
  serdes 0/1

Fix that by relocating the code and adapting the mask. The error
exists for longer but it has survived the pcs refactoring. Thus
blame the corresponding refactoring commit.

Fixes: b670d48 ("realtek: pcs: rtl838x: refactor imported code")
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21956
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit fdc37760684e784d7c305796c7fba4a9ef891f1c)
Link: https://github.com/openwrt/openwrt/pull/22087
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agobcm53xx: fix switch standalone ports (like "wan")
Rafał Miłecki [Fri, 27 Feb 2026 19:40:20 +0000 (20:40 +0100)] 
bcm53xx: fix switch standalone ports (like "wan")

Fixes: https://github.com/openwrt/openwrt/issues/21187
Fixes: https://github.com/openwrt/openwrt/issues/21349
Fixes: 499a59c234f4 ("kernel: bump 6.12 to 6.12.30")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 73bfb342841c5941b4a63d3190ee70e25cd79cb2)

3 months agolantiq: dm200: Fix loading PHY firmware
Hauke Mehrtens [Thu, 26 Feb 2026 19:49:17 +0000 (20:49 +0100)] 
lantiq: dm200: Fix loading PHY firmware

The device has 1 100MBit/s port. By default the PHY firmware is running
in 1GBit/s mode. The driver will try to load the 1GBit/s firmware and
fail if it is not there. Set the GPHY0 also to 100MBit/s mode.

The driver uses all nodes independent of the status attribute.

Do the same fix for AVM FRITZ!Box 7412 too.

Reported-by: Achelon in OpenWrt forum
Fixes: https://github.com/openwrt/openwrt/issues/21836
Link: https://github.com/openwrt/openwrt/pull/22188
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 296b286a673d2b152f84613d4a1ec4c3cb1b8f4e)

3 months agomt7620: workaround jal imm26 and redundant PAGE_ALIGN
Mieczyslaw Nalewaj [Tue, 28 Oct 2025 23:23:02 +0000 (00:23 +0100)] 
mt7620: workaround jal imm26 and redundant PAGE_ALIGN

On MT7620-class platforms (CONFIG_NET_RALINK_MT7620) we observe sporadic
wrong-jump-targets, kernel oopses, hanging, corrupted backtraces or even
"half-written" instructions when the compiler emits a direct 'jal imm26'
call.
This is triggered in:
  - the small random helpers inside get_random_u32_below(), and
  - the blkcg_maybe_throttle_current() call in resume_user_mode_work().

This patch forces those two call sites to use an indirect call via
a volatile function pointer (load into register + jalr) when building
for MT7620, avoiding embedding a 26-bit immediate jump target.

Additionally, on MT7620 builds the exec path in fs/exec.c is modified:
  - skip arch_align_stack() + PAGE_ALIGN() in setup_arg_pages()
    because the micro-randomization (< PAGE_SIZE) implemented by many
    ports (including MT7620) is negated immediately by PAGE_ALIGN().
    Skipping the redundant PAGE_ALIGN() reduces exposure to the
    problematic code pattern.

These changes are targeted workarounds for MT7620; behavioral logic is unchanged.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/20553
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 22ccb445e611018ede702e6c0798640353632cce)

3 months agoRevert "lantiq: arv7525pw: use nvmem for eeprom"
Rosen Penev [Thu, 26 Feb 2026 04:02:34 +0000 (20:02 -0800)] 
Revert "lantiq: arv7525pw: use nvmem for eeprom"

This reverts commit 9dbd45c18702cdd55fcfb0f71dc505afa1ff64d6.

Compared to ralink,mtd-eeprom , the nvmewm binding ends up byteswapping
the data on big endian hosts. Meaning on big endian, the nvmwem binding
is equivalent to:

ralink,mtd-eeprom +
ralink,eeprom-wrap

Revert as a result since there's no eeprom-swap here.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22192
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit d4845bf618d978c70ee3825ed5a948087e24620d)

3 months agoimx: cortexa53: enable DMA contiguous memory allocator
Tim Harvey [Mon, 9 Feb 2026 17:30:10 +0000 (09:30 -0800)] 
imx: cortexa53: enable DMA contiguous memory allocator

Enable and configure DMA contiguous memory allocator. Without this
CMA itself will be disabled.

Fixes: ae8bf1a26e15 ("imx: add imx8m support")
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/21950
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit eef354ff348ab2c1ec9db753ba192682d61ad313)

3 months agomac80211: activate BRCMFMAC_SDIO on x86
Hauke Mehrtens [Wed, 25 Feb 2026 00:26:02 +0000 (01:26 +0100)] 
mac80211: activate BRCMFMAC_SDIO on x86

Activate the option BRCMFMAC_SDIO by default on x86 too. x86 already
compiles MMC support into the kernel. This will just compile brcmfmac
with MMC support.

Fixes: https://github.com/openwrt/openwrt/issues/22155
Link: https://github.com/openwrt/openwrt/pull/22171
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit efcd70cb196e6e460b2dda1b427b232ff4756bef)

3 months agowifi-scripts: fix handling of 64 character WPA key
Hauke Mehrtens [Wed, 25 Feb 2026 23:41:11 +0000 (00:41 +0100)] 
wifi-scripts: fix handling of 64 character WPA key

The key variable is not defined in the scope when setting wpa_psk. Use
config.key instead.
This fixes configuration the 64 characters wpa_psk directly.

Reported-by: donjoe in OpenWrt Forum
Link: https://github.com/openwrt/openwrt/pull/22182
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 69daeebc9a4f688d672ea1fef315a287730cd8a8)

3 months agoramips: mt7621: fix network configuration
Hauke Mehrtens [Wed, 25 Feb 2026 21:42:56 +0000 (22:42 +0100)] 
ramips: mt7621: fix network configuration

The configuration for the dlink,dir-1360-a1 also changed the settings
for the devices defined on top of it. "lan1 lan2 lan3 lan4" "wan" is
the default configuration, no need to add it here.

Fixes: 7a8e2efed587 ("ramips: add support for D-Link DIR-1360 A1")
Reported-by: schmars in IRC
Link: https://github.com/openwrt/openwrt/pull/22179
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 758c8a26e964e33315cd585f055fbfdbdbd6756e)

3 months agoprocd: update to git HEAD
Daniel Golle [Tue, 17 Feb 2026 15:26:18 +0000 (15:26 +0000)] 
procd: update to git HEAD

 180ffcc instance: use mkdir_p helper
 9493a3d signal: handle SIGUSR1 as halt
 4dd22d0 cgroups: fix syntax error

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit e95cfd2ad75558be21d01838f816a65c5c016ce5)

3 months agoprocd: update to git HEAD
Daniel Golle [Mon, 9 Feb 2026 11:47:39 +0000 (11:47 +0000)] 
procd: update to git HEAD

 7e5b324 instance: check length of names when creating cgroups
 014f94c procd: jail/cgroups: fix OOB write in cgroups_apply()
 e08cdc8 hotplug-dispatch: fix filter disallowing setting PATH
 afa4391 service instance: Improve handling of watchdog config changes
 52c64d2 service instance: Fix overwriting of watchdog linked list members
 96c827f coldplug: fix missing header include
 6b10c71 hotplug-dispatch: fix missing header include
 58d7aaa initd/coldplug: create /dev/null before running udevtrigger
 64f97ff hotplug-dispatch: redirect output to /dev/null
 c4e9859 hotplug-dispatch: use stat if d_type is DT_UNKNOWN
 bafdfff system: fix arguments validation in ubus handler

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 361885b1331860f683eb4beeeae1bcac1e05dd40)

3 months agoramips: mt7621: enable kmod-usb3 for Mikrotik RBM33G
Chester A. Unal [Mon, 5 Jan 2026 12:54:42 +0000 (14:54 +0200)] 
ramips: mt7621: enable kmod-usb3 for Mikrotik RBM33G

Mikrotik RBM33G has got a USB-A port and mPCIe slots with USB 3.0 and USB
2.0 interfaces in use. The MediaTek MT7621 SoC has got an xHCI to provide
these interfaces. Therefore, enable kmod-usb3 to support them.

Fixes: 5684d087418d ("ramips: Add support for Mikrotik RouterBOARD RBM33g")
Signed-off-by: Chester A. Unal <chester.a.unal@arinc9.com>
(cherry picked from commit 61c9337d80318a49a5bcee586435b513fbdeacf7)

3 months agonetifd: update to Git openwrt-25.12 (2026-02-26)
Felix Fietkau [Thu, 26 Feb 2026 12:10:02 +0000 (12:10 +0000)] 
netifd: update to Git openwrt-25.12 (2026-02-26)

51fa9ed6d4d6 interface-ip: fix fortify build error
cbb83a185740 bridge: skip present toggle in bridge_free_member() when device is active

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 months agoRevert "package: kernel: dtc: Add DTO support"
Daniel Golle [Fri, 20 Feb 2026 14:49:02 +0000 (14:49 +0000)] 
Revert "package: kernel: dtc: Add DTO support"

It looks like commit 6d2f3b1b19 ("package: kernel: dtc: Add DTO support")
added this patch file 9 years ago without it ever being applied anywhere.
Back then there wasn't even a 'dtc' package, but we just used 'dtc' from
the Linux kernel sources.
Nowadays there is package/utils/dtc which is used to build dtc to be used
on the target (*not* a host-build!), and it of course already contains
support for device tree overlays since v1.4.3 from 2017...

This reverts commit 6d2f3b1b1974d742576b0902e9c4777c9ac1ba67.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/22118
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit c69beade6025be79a59e78a404f91e036bff4b7e)

3 months agorealtek: hog the GS1900-24E external IC reset line
Sander Vanheule [Sat, 21 Feb 2026 14:00:39 +0000 (15:00 +0100)] 
realtek: hog the GS1900-24E external IC reset line

The GPIO line connecting to the reset signals of the GS1900-24E(A1)'s
external ICs (RTL8218B phys and RTL8231 expander) cannot be asserted by
the MDIO subsystem, as the reset is shared between busses.

To prevent users from accidentally asserting the reset line, a GPIO hog
is created to permanently de-assert the signal, reliably keeping the
phys and GPIO expanders on.

Tested-by: Simon Fischer <simi.fischa@gmail.com>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit ba57225066243b28d2802ea5c47313c97767150e)

3 months agorealtek: rtl838x: drop GS1900 MDIO reset GPIO
Sander Vanheule [Sat, 21 Feb 2026 13:44:23 +0000 (14:44 +0100)] 
realtek: rtl838x: drop GS1900 MDIO reset GPIO

The reset line wired to the RTL8231 on the GS1900 series may also
connect to other external ICs on the board. On the GS1900-24E, the
reset line is wired (via buffers) to the board's RTL8231 expanders and
the RTL8218 phys. As these external devices (phys) are on different
busses, the reset line shouldn't be specified on one bus or the other.

Drop the reset specification from the generic GPIO description, so it
can be added back on a per-device basis after confirming the behavior.

Link: https://github.com/openwrt/openwrt/issues/18620
Fixes: fd978c2e80b4 ("realtek: Enable Zyxel GS1900's RTL8231 reset line")
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit cdbd9eb448a8fa802cbc2b2f8a1dec93b3999a3b)

3 months agoimx: cortexa53: remove KSZ9477 static driver
Tim Harvey [Fri, 20 Feb 2026 01:01:48 +0000 (17:01 -0800)] 
imx: cortexa53: remove KSZ9477 static driver

The KSZ9477 driver was added to the cortexa53 kernel to support the
Gateworks Venice product family which has a board with this switch. Now
that the kmod-dsa-ksz9477 driver is available as a package remove the
static configuration ad add the package.

This resolves an issue caused by having the switch driver static and the
PHY driver as a module such that the PHY driver was not registered early
enough to be used causing some errata to not be worked around.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/22120
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 231553b280925f1c1154c9a7c8549c4cbbea7c9e)

3 months agokernel: netdevices: add KSZ9477 DSA switch packages
Tim Harvey [Fri, 20 Feb 2026 00:57:29 +0000 (16:57 -0800)] 
kernel: netdevices: add KSZ9477 DSA switch packages

This adds kernel packages for the Microchip KSZ9477 switch family.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/22120
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit c053b225731e81826b5b8acb144ac68f4ae14d30)

3 months agowireless-regdb: update to version 2026.02.04
Hauke Mehrtens [Sun, 22 Feb 2026 22:11:47 +0000 (23:11 +0100)] 
wireless-regdb: update to version 2026.02.04

75bedc5 wireless-regdb: Update regulatory info for Australia (AU) for 2025
a6e5195 wireless-regdb: Update broken link in regulatory.bin(5) manpage
9e8c67f wireless-regdb: Update regulatory info for Malaysia (MY) for 2024
61a4637 wireless-regdb: Update regulatory info for Malaysia (MY) for 2025
5cefe55 wireless-regdb: Update regulatory info for Tunisia (TN) on 6GHz for 2025
1a729ae wireless-regdb: Update regulatory info for Canada (CA) for 2025
ea20dfa wireless-regdb: update regulatory database based on preceding changes

Link: https://github.com/openwrt/openwrt/pull/22150
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7c5e329b541066613c09aafd89f7bb6cd8b3bc67)

3 months agoiproute2: include upstream patch for musl libc
Jonas Lochmann [Mon, 16 Feb 2026 00:00:00 +0000 (01:00 +0100)] 
iproute2: include upstream patch for musl libc

Due to a missing include, the constant UINT_MAX is undefined. This
fixes issues when building v25.12.0-rc5. Including a newer version of
iproute2 would include the patch, but causes other building issues.

Signed-off-by: Jonas Lochmann <openwrt@jonaslochmann.de>
Link: https://github.com/openwrt/openwrt/pull/22128
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 5f063d18bdc368cb3eede54b01557f000b3df3b6)

3 months agokernel: net: fix deadlock caused by phy led trigger
Shiji Yang [Sun, 22 Feb 2026 02:52:20 +0000 (10:52 +0800)] 
kernel: net: fix deadlock caused by phy led trigger

Register phy led_triggers earlier to avoid AB-BA deadlock.

Fixes: https://github.com/openwrt/openwrt/issues/18472
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22136
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 0bfcb0a36c9dbfc8b7a8ab8ade100cad4d7628b4)

3 months agomediatek: TP-Link EAP683-UR support
Stijn Tintel [Sat, 1 Mar 2025 17:07:30 +0000 (19:07 +0200)] 
mediatek: TP-Link EAP683-UR support

The TP-Link EAP683-UR is identical to the EAP683-LR. Add it as ALT0
variant.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
(cherry picked from commit 708dcca80a0b19aacd32e2bd4530b88461f87581)

3 months agomediatek: TP-Link EAP683-LR support
Stijn Tintel [Fri, 5 Apr 2024 22:45:25 +0000 (01:45 +0300)] 
mediatek: TP-Link EAP683-LR support

Add support for the TP-Link EAP683-LR, an AX6000 Ceiling Mount WiFi 6
AP.

Hardware:
* SoC: MediaTek MT7896AV
* RAM: 1GiB DDR4 (Samsung K4A8G165WC-BCTD)
* Flash: 128MiB SPI-NAND (ESMT F50L1G41LB)
* Ethernet: 1x 10/100/1000/2500 Mbps PoE-PD (MaxLinear GPY211C)
* WiFi: MT7976AN/MT7976GN 2.4/5GHz 4T4R
* LEDS: 3x blue connected to a single GPIO line
* Buttons: 1x reset
* BLE/Thread/Zigbee: CC2652

Stock firmware uses a random MAC address for ethernet, label MAC for
2.4 and label MAC + for 5GHz.

Installation via bootloader:
* Solder JST??? connector on J255, alternatively solder wires on the
  TP13-TP15 pads. Pinout: TP13: TX, TP14: RX, TP15: GND, TP16: VCC.
  The pins for J255 are in the same order.
* Interrupt boot process by repeatedly pressing Ctrl+b during boot
* In the boot menu, select U-Boot console
* Ensure the U-Boot environment variable "tp_boot_idx" is not set:
  # setenv tp_boot_idx
  # saveenv
* Boot the OpenWrt initramfs:
  # tftpboot openwrt-mediatek-filogic-tplink_eap683-lr-initramfs-kernel.bin
  # bootm
* copy openwrt-mediatek-filogic-tplink_eap683-lr-squashfs-sysupgrade.bin
  to /tmp and install it using sysupgrade

Flashing via OEM firmware is currently not supported. The
tplink-safeloader utility does not recognize the OEM firmware:

  DEBUG: can not find fwuphdr
  Firmware image partitions:
  base     size     name
  Segmentation fault (core dumped)

To revert to the OEM firmware, you can set the U-Boot environment
variable "tp_boot_idx" to 1 via bootloader, or using fw_setenv via
OpenWrt. This should result in booting from the ubi1 partition, which
OpenWrt should not touch. Then use the web interface to upgrade
firmware: System > Firmware Update.

The OEM firmware uses 0x800000 for the runtime_backup partition size.
This causes the following warning:

  mtd: partition "runtime_backup" extends beyond the end of device "nmbm_spim_nand" -- size truncated to 0x600000

This is due to the NMBM reserved blocks. Use 0x600000 in our DTS.

Thanks to init Lab's user890104, who soldered jumper wires on the TTL
pads for me so I could have serial console. My soldering skills just
aren't good enough to pull that off without risk damaging things.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
(cherry picked from commit f1749142ca59c3877ce70b7c97475f4416cf74a8)

3 months agoRevert "bmips: huawei-hg556a-c: use nvmem for wifi eeprom"
Rosen Penev [Thu, 19 Feb 2026 01:25:38 +0000 (17:25 -0800)] 
Revert "bmips: huawei-hg556a-c: use nvmem for wifi eeprom"

This reverts commit 72f43ac220616fbd2f9658b9b60a861e8565a998.

The NVMEM codepath does not perform automatic byte conversion. It can be
fixed but the upstream version is quite different from the local
mac80211 patch. Revert until mac80211 gets updated and the whole mess
can get squared away.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22091
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit b270580deabb40fa7af702d35d32b1f9f80fd007)

3 months agoramips: remove obsolete SPI flash nodes after kernel fix
Mieczyslaw Nalewaj [Sun, 15 Feb 2026 10:50:05 +0000 (11:50 +0100)] 
ramips: remove obsolete SPI flash nodes after kernel fix

Remove incomplete SPI flash definitions from affected device tree files.
These fragments only defined address-cells and size-cells without any
actual flash configuration (partitions, compatible string, etc.).

After applying openwrt/openwrt#20942 ("kernel: of: fix bad cell count error
for SPI flash node"), the kernel properly handles SPI flash nodes without
requiring these incomplete definitions in device-specific DTS files.

This cleanup eliminates unnecessary code that was likely a workaround for
the previous kernel issue.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/22036
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 313d56366448d8c2ca12daba7725fdd848057d98)

3 months agouclient: update to Git HEAD (2026-02-20)
Felix Fietkau [Fri, 20 Feb 2026 09:07:56 +0000 (09:07 +0000)] 
uclient: update to Git HEAD (2026-02-20)

7a0aa2e4afb4 uclient-http: fix data_eof for body-less responses

Fixes: https://github.com/openwrt/openwrt/issues/22103
Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 months agohostapd: fix dealing with required interface restart in AP+STA mode
Felix Fietkau [Sun, 1 Feb 2026 19:17:27 +0000 (19:17 +0000)] 
hostapd: fix dealing with required interface restart in AP+STA mode

Ensure that the BSS start_disabled option is always cleared, so that
interfaces come up properly.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit b7cd16dba3259279643705a6bbed21abe1330586)

3 months agohostapd: fix EAP-PWD in experimental hostapd-radius server
Yaroslav Isakov [Sat, 14 Feb 2026 18:35:06 +0000 (19:35 +0100)] 
hostapd: fix EAP-PWD in experimental hostapd-radius server

Without initializing pwd_group, it's set to 0, which is reserved value.
When EAP-PWD is used in wpa_supplicant/eapol_test, next error is seen:
EAP-PWD: Server EAP-pwd-ID proposal: group=0 random=1 prf=1 prep=0
EAP-pwd: Unsupported or disabled proposal

Signed-off-by: Yaroslav Isakov <yaroslav.isakov@gmail.com>
(cherry picked from commit 9d78b2f53c48ddbc2f978e3365af183c69a33c84)

3 months agohostapd: initialize first BSS radio_mask during driver init
Chad Monroe [Fri, 6 Feb 2026 17:21:44 +0000 (09:21 -0800)] 
hostapd: initialize first BSS radio_mask during driver init

Secondary BSSes inherit the alloc value which bypasses
NL80211_ATTR_VIF_RADIO_MASK in nl80211_create_iface() and causes the
kernel to default new interfaces to all radios.

The ucode bss_create fallback fails to correct this because
the interface is already UP.. the kernel rejects SET_INTERFACE with
-EBUSY.

Signed-off-by: Chad Monroe <chad@monroe.io>
(cherry picked from commit 50d3d287e4cfafd5e0cf727d55472df7bd0e1c0c)

3 months agoOpenWrt v25.12.0-rc5: revert to branch defaults
Hauke Mehrtens [Thu, 19 Feb 2026 01:16:14 +0000 (02:16 +0100)] 
OpenWrt v25.12.0-rc5: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoOpenWrt v25.12.0-rc5: adjust config defaults v25.12.0-rc5
Hauke Mehrtens [Thu, 19 Feb 2026 01:16:11 +0000 (02:16 +0100)] 
OpenWrt v25.12.0-rc5: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoucode-mod-bpf: add CPPFLAGS
Hauke Mehrtens [Tue, 17 Feb 2026 21:23:27 +0000 (22:23 +0100)] 
ucode-mod-bpf: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c3f2a09a25b17d16f9c38dc49cc3a4b424d1e1d6)

3 months agoebtables: add CPPFLAGS
Hauke Mehrtens [Tue, 17 Feb 2026 21:22:44 +0000 (22:22 +0100)] 
ebtables: add CPPFLAGS

Add the OpenWrt CPPFLAGS to the CFLAGS. ebtables does not
support CPPFLAGS. This fixes fortify sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 77d896725f0678a7824c8a3ee46b6401df34000c)

3 months agoarptables: add CPPFLAGS
Hauke Mehrtens [Tue, 17 Feb 2026 21:22:07 +0000 (22:22 +0100)] 
arptables: add CPPFLAGS

Add the OpenWrt CPPFLAGS to the CFLAGS. arptables does not
support CPPFLAGS. This fixes fortify sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 33b2c6f955fb2a088f582f84871b05fc9db5e11c)

3 months agoiwinfo: add CPPFLAGS
Hauke Mehrtens [Tue, 17 Feb 2026 00:19:50 +0000 (01:19 +0100)] 
iwinfo: add CPPFLAGS

Add the OpenWrt CPPFLAGS to the FLAGS. iwinfo does not support CPPFLAGS.
This fixes fortify sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 379d5b8bc4dc6930cbb93e5e3d542fc3386c1eec)

3 months agozyxel-bootconfig: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:55:47 +0000 (00:55 +0100)] 
zyxel-bootconfig: add CPPFLAGS

Add the OpenWrt CPPFLAGS to the CFLAGS. zyxel-bootconfig does not
support CPPFLAGS. This fixes fortify sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b8ea5004f4cd3cbc48cb427914a9e46920a68518)

3 months agoravpower-mcu: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:55:27 +0000 (00:55 +0100)] 
ravpower-mcu: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ddb1c1ab330cb88ca9c58ba6c33d55e6dc70f240)

3 months agowireless-tools: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:55:11 +0000 (00:55 +0100)] 
wireless-tools: add CPPFLAGS

Add the OpenWrt CPPFLAGS to the CFLAGS. wireless-tools does not
support CPPFLAGS. This fixes fortify sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d69b2830681fdaeb2b19b28231e9171684ead6d1)

3 months agoresolveip: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:53:31 +0000 (00:53 +0100)] 
resolveip: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0f1c1c581f67b22b538fc2dfe3387bc7b3f5bbc3)

3 months agoiwcap: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:53:21 +0000 (00:53 +0100)] 
iwcap: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit bfd57eab3dbfbdedc7a5d94b92f3a7a37a2f6fd9)

3 months agolibcap: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:28:23 +0000 (00:28 +0100)] 
libcap: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Allow to extend the CPPFLAGS and not only overwrite.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 53e6935960b807000f90bd2220a7182c366b2af8)

3 months agobzip2: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 00:48:09 +0000 (01:48 +0100)] 
bzip2: add CPPFLAGS

Add the OpenWrt CPPFLAGS to the CFLAGS. bzip2 does not support CPPFLAGS.
This fixes fortify sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit cd1fda5c8b068f98d38cdbed4342e0608653b2e8)

3 months ago6rd: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 00:47:50 +0000 (01:47 +0100)] 
6rd: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b497c3f68f294df5111715a1465a204c12e38f05)

3 months ago464xlat: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 00:47:01 +0000 (01:47 +0100)] 
464xlat: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 2ca7c2b84669a885c6fe46a30657b1453abef123)

3 months agogdb: add CPPFLAGS
Hauke Mehrtens [Tue, 17 Feb 2026 00:19:25 +0000 (01:19 +0100)] 
gdb: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 39e5f11631ddce63f46f8ddf338770fe0556990a)

3 months agobinutils: add CPPFLAGS
Hauke Mehrtens [Mon, 16 Feb 2026 23:26:30 +0000 (00:26 +0100)] 
binutils: add CPPFLAGS

Forward the OpenWrt CPPFLAGS to the compile process. This fixes fortify
sources support.

Link: https://github.com/openwrt/openwrt/pull/22056
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 35939e4db93975c54ec002e6820f889906e6fcac)

3 months agotools: m4: update to 1.4.21
John Audia [Wed, 11 Feb 2026 22:56:42 +0000 (17:56 -0500)] 
tools: m4: update to 1.4.21

Changelog: https://github.com/autotools-mirror/m4/blob/branch-1.4/NEWS

This update fixes a build error on my system:
./string.h:777:20: error: expected identifier or '(' before '_Generic'
  777 | _GL_EXTERN_C void *memchr (const void *__s, int __c, size_t __n)
      |                    ^~~~~~

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/21987
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit ce9a0ff3fb88d037080aaf95af92ac5da4fcfdba)

3 months agobcm53xx: fix target name of meraki_mx64-a0
Edward Chow [Sat, 14 Feb 2026 13:10:05 +0000 (21:10 +0800)] 
bcm53xx: fix target name of meraki_mx64-a0

The target name of meraki_mx64-a0 in
target/linux/bcm53xx/image/Makefile used not to be consistent with the
one defined in target/linux/bcm53xx/base-files/lib/upgrade/platform.sh
and generates warning for "Image check failed" during sysupgrade.

This commit would also make the target name for meraki_mx64-a0 to
conform to the openwrt standard.

Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/22034
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 625f01cd807b4fa7b7c2e1f36b50dd49dd18ae28)

3 months agoath79: add env-size for Sitecom WLR-7100 / WLR-8100 u-boot-env
Hauke Mehrtens [Sun, 15 Feb 2026 02:06:53 +0000 (03:06 +0100)] 
ath79: add env-size for Sitecom WLR-7100 / WLR-8100 u-boot-env

The Linux kernel assumes that the u-boot environment covers the full
partition, but it only covers 0x1000 bytes. Linux checks the CRC and
does this over the full partition. This fails like this:
```
u-boot-env-layout 1f000000.spi:flash@0:partitions:partition@30000:nvmem-layout: Invalid calculated CRC32: 0xfcac8c41 (expected: 0x14e6335a)
u-boot-env-layout 1f000000.spi:flash@0:partitions:partition@30000:nvmem-layout: probe with driver u-boot-env-layout failed with error -22
```

Define the u-boot environment with a length of 0x1000 bytes to calculate
the CRC only over this area.

When replicating the u-boot environment with these parameters it
generates the same CRC:
```
mkenvimage -p 0 -b -s 0x1000 -o output.bin input.txt
```

Fixes: https://github.com/openwrt/openwrt/issues/21696
Fixes: 5e3a602def72 ("ath79: sitecom,wlrx100: use nvmem")
Link: https://github.com/openwrt/openwrt/pull/22030
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 68a466b698420b32ee45c322141b1f156b635640)

3 months agobuild: pass CPPFLAGS to cmake build
Hauke Mehrtens [Sun, 15 Feb 2026 23:49:15 +0000 (00:49 +0100)] 
build: pass CPPFLAGS to cmake build

The TARGET_CPPFLAGS contain the include paths used by OpenWrt. This also
contains the including of the fortify sources headers. If they are not
provided, the applications will not use fortify sources headers when
compiled against musl. Add them to cmake builds too. cmake does not
support a special CPPFLGS option [0], just add them to CFLAGS and
CXXFLAGS like we also do it for meson and normal make.
This should fix fortify sources support for cmake builds.

I found this explanation for the flags:
 * CFLAGS: C flags, passed during compile AND link
 * CXXFLAGS: C++ flags, passed during compile AND link
 * CPPFLAGS: pre-processor flags, passed ONLY during compile
 * LDFLAGS: linker flags, passed ONLY during link

[0]: https://gitlab.kitware.com/cmake/cmake/-/issues/12928

Link: https://github.com/openwrt/openwrt/pull/22042
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7bf8d568f6c83411041e504e0ca231d4081c2534)

3 months agofortify-headers: fix -Werror=format-nonliteral in fortify/stdio.h
Hauke Mehrtens [Sun, 15 Feb 2026 15:45:38 +0000 (16:45 +0100)] 
fortify-headers: fix -Werror=format-nonliteral in fortify/stdio.h

Some applications might activate -Werror=format-nonliteral when building
their application. This breaks fortify headers build. Tell GCC to ignore
such warnings for this code.

This fixes the libubox and ucode build:
```
/include/fortify/stdio.h: In function 'snprintf':
/include/fortify/stdio.h:101:9: error: format not a string literal, argument types not checked [-Werror=format-nonliteral]
  101 |         return __orig_snprintf(__s, __n, __f, __builtin_va_arg_pack());
      |         ^~~~~~
/include/fortify/stdio.h: In function 'sprintf':
/include/fortify/stdio.h:110:17: error: format not a string literal, argument types not checked [-Werror=format-nonliteral]
  110 |                 __r = __orig_snprintf(__s, __b, __f, __builtin_va_arg_pack());
      |                 ^~~
/include/fortify/stdio.h:114:17: error: format not a string literal, argument types not checked [-Werror=format-nonliteral]
  114 |                 __r = __orig_sprintf(__s, __f, __builtin_va_arg_pack());
      |                 ^~~
cc1: all warnings being treated as errors
ninja: build stopped: subcommand failed.
```

Link: https://github.com/openwrt/openwrt/pull/22042
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b23726664090098acb9318caf41f7d6961cd1074)

3 months agofstools: update to Git HEAD (2026-02-15)
Hauke Mehrtens [Tue, 17 Feb 2026 00:23:03 +0000 (01:23 +0100)] 
fstools: update to Git HEAD (2026-02-15)

8d377aa627be libfstools: Rename PATH_MAX to MTD_PATH_MAX

Link: https://github.com/openwrt/openwrt/pull/22042
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0f4e4a41b23215a7080a2372bd4de29704bee78d)

3 months agolantiq: handle EPROBE_DEFER for MAC
Rosen Penev [Mon, 9 Feb 2026 19:40:51 +0000 (11:40 -0800)] 
lantiq: handle EPROBE_DEFER for MAC

If nvmem is used for ethernet mac address, we need to defer loading to
get the proper mac.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21955
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit fb71774232871e7272bf15950c4a08f2a8395b87)

3 months agomvebu: add support for RIPE Atlas Probe v5 22048/head
Tomáš Macholda [Thu, 11 Sep 2025 12:45:12 +0000 (14:45 +0200)] 
mvebu: add support for RIPE Atlas Probe v5

RIPE Atlas Probe v5 is a network measurement device based on Turris MOX.

u-boot bootscript supports booting both from the original Turris BTRFS
layout and default OpenWrt ext4 boot + root partition layout.

Specifications:
* SoC: Marvell ARMADA 3720
* RAM: 512 MiB, DDR3
* eMMC: 4G
* Ethernet: 1x 1GbE

MAC:
LAN MAC: label on board

Flash instructions:
* For using the default ext4 layout, boot into a live system using
tftpboot in u-boot and flash an OpenWrt SD image onto /dev/mmcblk0.
* For the Turris layout, put the new rootfs into subvolume '@', not
forgetting to add Image, device tree, and boot.scr to /boot.

Misc:
* USB connection is only for power. For UART access use the pin header:
  1: GND
  2: +1.8V
  5: TX
  6: RX
* Flashing the image onto Turris Shield won't work. Use Turris MOX image
  instead.

Signed-off-by: Tomáš Macholda <tomas.macholda@nic.cz>
Link: https://github.com/openwrt/openwrt/pull/20031
(cherry picked from commit 0271f2ee3649fcabcf5cb989743bbbdc38b34b3e)
Signed-off-by: Trix Taiclet <git@trix.moe>
Link: https://github.com/openwrt/openwrt/pull/22048
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoudebug: update to Git HEAD (2026-01-16)
Felix Fietkau [Fri, 16 Jan 2026 08:53:27 +0000 (08:53 +0000)] 
udebug: update to Git HEAD (2026-01-16)

c5c493ed5787 udebug-cli: fix reference to invalid variable in error message
875e1a7af6ca udebug-cli: add logdump command

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 55c498eb7b5effb8aae1147e528a773e02e3e01b)

3 months agowifi-scripts: fix macaddr check in mac80211.uc
Harin Lee [Wed, 24 Dec 2025 19:15:25 +0000 (04:15 +0900)] 
wifi-scripts: fix macaddr check in mac80211.uc

This fixes a simple logic error in the macaddr existence check in mac80211.uc.

Signed-off-by: Harin Lee <me@harin.net>
Link: https://github.com/openwrt/openwrt/pull/21277
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 2ebcda1ea6b757864c4700e543a9767752ca766e)

3 months agowifi-scripts: wireless.uc: add MLO support for procd service data
Felix Fietkau [Fri, 30 Jan 2026 18:02:35 +0000 (18:02 +0000)] 
wifi-scripts: wireless.uc: add MLO support for procd service data

This allows services to dynamically configure MLO interfaces without
using UCI.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 0a8bccf85d71531e0b8523d720aebc7f080b54bd)

3 months agowifi-scripts: move the "disabled" option to the wifi-iface section
Felix Fietkau [Tue, 6 Jan 2026 17:46:46 +0000 (18:46 +0100)] 
wifi-scripts: move the "disabled" option to the wifi-iface section

This helps for setups where the wifi interfaces are added dynamically
via procd data by avoiding automatically bringing up interfaces with
the default config. Internally, they are treated pretty much the same
by netifd.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 79a0aebd81687868374e98d9987c256722c6a4f8)

3 months agowifi-scripts: netifd: fix null dereference in config_init for missing devices
Felix Fietkau [Sun, 15 Feb 2026 08:23:57 +0000 (08:23 +0000)] 
wifi-scripts: netifd: fix null dereference in config_init for missing devices

Add optional chaining when accessing device config in the wifi-iface
loop to handle cases where a referenced device doesn't exist.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 8b994ed3970ffd02ee77889304ca32bdbecdb1f3)

3 months agowifi-scripts: fix nested config accumulation in wdev_set_data
Felix Fietkau [Wed, 4 Feb 2026 10:34:55 +0000 (10:34 +0000)] 
wifi-scripts: fix nested config accumulation in wdev_set_data

When storing device-level data, wdev_set_data() spread the entire wdev
object into handler_data. Since handler_config.data is set from the
previous handler_data[wdev.name] before each setup, this created
exponentially growing nesting with each reload, eventually causing
"nesting too deep" JSON parse errors.

Fix by initializing cur to a simple object containing only the device
name instead of the entire wdev object.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 68c2ab8f5fdf1c12966fa0cdf3c13d889beccdbe)

3 months agowifi-scripts: iwinfo.uc: cache survey data in iface object
Felix Fietkau [Thu, 22 Jan 2026 10:25:49 +0000 (11:25 +0100)] 
wifi-scripts: iwinfo.uc: cache survey data in iface object

Extract survey fetching into get_survey() and store results in iface.survey,
allowing access to full survey info (not just noise) for later use.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit e855f32bddf8c42da2a0045b30729261a352308a)

3 months agowifi-scripts: refactor iwinfo.uc to support dynamic data updates
John Crispin [Fri, 19 Sep 2025 15:05:30 +0000 (17:05 +0200)] 
wifi-scripts: refactor iwinfo.uc to support dynamic data updates

Moved interface discovery and data population into an exported update()
function that can be called on-demand to refresh wireless interface
information. This allows using iwinfo.uc as a library inside daemons.

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit 26eab84f81ad0fa8018c950530d5c7a7b0a3b5d7)

3 months agouclient: update to Git HEAD (2026-02-13)
Felix Fietkau [Fri, 13 Feb 2026 09:09:09 +0000 (09:09 +0000)] 
uclient: update to Git HEAD (2026-02-13)

63413daa8760 uclient-http: fix HTTP authentication after deferred header processing
4fa6fae02f74 uclient-fetch: Extract opt_post variable
8df3120639a4 uclient-fetch: Use HEAD for --spider
0392dfc8e8c4 uclient-fetch: Support of --method, --body-data and --body-file
115c92824b6d uclient-fetch: add OPTIONS request type
a1531e89f6c2 uclient-fetch: support for WebDAV methods

Fixes: https://github.com/openwrt/uclient/issues/14
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 88f3c0eeb0cd3335cd117accf09a2c3fd0470f4a)

3 months agouclient: update to Git HEAD (2026-01-31)
Felix Fietkau [Sat, 31 Jan 2026 14:03:05 +0000 (14:03 +0000)] 
uclient: update to Git HEAD (2026-01-31)

b3ee1209a3d0 uclient-http: reset fd to -1 after close in disconnect
9c2ad269c42b uclient-http: fix seq field check to use correct field
80c9bd29c233 uclient-http: fix hang on HTTP to HTTPS redirect
931bbfeb2c92 ucode: fix memory leak when using ssl context

Fixes: https://github.com/openwrt/uclient/issues/11
Fixes: https://github.com/openwrt/uclient/issues/13
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 9d496dfb984dc645560bb86e5012de29e5efcc6f)

3 months agolibubox: update to Git HEAD (2026-02-13)
Felix Fietkau [Fri, 13 Feb 2026 09:09:06 +0000 (09:09 +0000)] 
libubox: update to Git HEAD (2026-02-13)

d324c0503040 libubox: send warnings to stderr
5a65cb5a79b7 libubox: document positional arguments
8c7b489daa02 libubox: add anonymous strings, ints, et al in arrays
5ec7ff2effb3 uloop: use volatile sig_atomic_t for do_sigchld flag
0efa2cd3b74c usock: check SO_ERROR after poll in usock_inet_timeout()
1a73ded9f738 usock: fix timeout handling in usock_inet_timeout()
1aa36ee774c8 usock: implement RFC 8305 Happy Eyeballs for usock_inet_timeout()

Fixes: https://github.com/openwrt/uclient/issues/8
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 7bc8aa492f5d3a918c7890645ffd992eadf4c234)

3 months agoucode: add ubus fixes
Felix Fietkau [Sat, 7 Feb 2026 07:47:36 +0000 (07:47 +0000)] 
ucode: add ubus fixes

- avoid double close of externally owned channel fds
- fix refcounting bug

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit e9d6025725fabf0def17651160819651243c2aa1)

3 months agoprocd: reload_config: support UCI overlay directory
John Crispin [Fri, 23 Jan 2026 08:54:11 +0000 (09:54 +0100)] 
procd: reload_config: support UCI overlay directory

Check /var/run/uci/ before /etc/config/ so that overlay configs
also trigger service reload events.

The overlay directory takes precedence, and uci show already handles
merging overlay + base configuration correctly.

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit aaa2d9f1e5b417b8ac76dacb0aa2d7baacf4527b)

3 months agounetmsg: notify subscribers when remote peer connection drops
John Crispin [Fri, 6 Feb 2026 07:41:49 +0000 (08:41 +0100)] 
unetmsg: notify subscribers when remote peer connection drops

When a remote peer's connection drops (device powered off, unetmsgd
crash, network failure), network_rx_cleanup_state silently removed
the remote publish/subscribe handles without notifying local
subscribers. This meant local clients had no way to detect that a
remote peer had disappeared.

Call handle_publish for each channel where a remote publish handle
is removed during connection cleanup, so local subscribers receive
the publisher change notification and can react accordingly.

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit 7fd71f2c7424c75f6aca26f523e084012b122714)

3 months agounetmsg: only send publish notifications for remote publisher changes
Felix Fietkau [Sat, 7 Feb 2026 08:02:24 +0000 (08:02 +0000)] 
unetmsg: only send publish notifications for remote publisher changes

handle_publish() notifies local subscribers about publisher state
changes. The publish/subscribe handler in network_socket_handle_request()
was calling it for both remote publish and subscribe changes, but
subscriber changes are not relevant to local subscribers.

Guard the handle_publish() calls with a msgtype == "publish" check,
matching the local client paths in unetmsgd-client.uc which already
have this guard.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit e0722d0ac41b931e8a3b79c439a029844e89cbad)

3 months agounetmsg: fix reconnect loop when RX authenticates before TX
Felix Fietkau [Fri, 6 Feb 2026 10:12:31 +0000 (10:12 +0000)] 
unetmsg: fix reconnect loop when RX authenticates before TX

When both peers connect simultaneously, the RX side can authenticate
before the TX handshake completes. network_check_auth() was sending a
ping on the unauthenticated TX channel, which gets rejected by the
remote's pre-auth handler as "Auth failed", killing the connection and
triggering an endless reconnect cycle.

Check chan.auth before interacting with the TX channel. If TX auth
hasn't completed yet, just schedule a reconnect timer - auth_data_cb
already handles state sync when TX auth completes.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 212040b5cac619ec8009b0b4262d11b4e3abfdc4)

3 months agounetmsg: close all channels on network removal
Felix Fietkau [Fri, 6 Feb 2026 09:30:49 +0000 (09:30 +0000)] 
unetmsg: close all channels on network removal

network_close() only closed the listening socket without shutting down
established RX/TX connections. This left remote state in
core.remote_publish/core.remote_subscribe for hosts on the removed
network, causing stale entries in channel listings and failed routing
attempts.

Close all RX and TX channels before removing the network, which also
triggers remote state cleanup via network_rx_socket_close().

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 389a79d97230fbd31de98a7f8896302ad284c114)

3 months agounetmsg: fix inverted condition in network_rx_socket_close()
Felix Fietkau [Fri, 6 Feb 2026 09:30:26 +0000 (09:30 +0000)] 
unetmsg: fix inverted condition in network_rx_socket_close()

The cleanup condition checked != instead of ==, inverting the logic.
This caused two problems:

When an authenticated RX connection disconnected, remote state for that
host was never cleaned up since the stored entry matched the one being
closed.

When a stale unauthenticated connection from a peer closed, any existing
authenticated connection from the same peer was incorrectly deleted and
its remote state wiped.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit f09596f84f3572d963e1c893762fd105b4ceee2e)

3 months agounetmsg: fix publish notification timing around remote auth
Felix Fietkau [Fri, 6 Feb 2026 09:22:30 +0000 (09:22 +0000)] 
unetmsg: fix publish notification timing around remote auth

When a remote peer's publish registrations arrive via RX before the
local TX connection is authenticated, handle_publish fires but the
subscriber can't reach the remote publisher yet since the TX channel
isn't ready.

Suppress publish notifications on the RX side when no authenticated TX
channel exists for the remote host. After TX authentication completes,
re-trigger handle_publish only for topics that the specific peer
publishes and that have local subscribers.

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 3efcf444a11e9402d86ae79c733114827ce31b42)

3 months agounetmsg: fix stale network cleanup in unetd_network_update()
Felix Fietkau [Fri, 6 Feb 2026 09:17:50 +0000 (09:17 +0000)] 
unetmsg: fix stale network cleanup in unetd_network_update()

The condition checked !data.networks instead of !data.networks[name],
making it always false since data.networks was already validated earlier
in the function. Networks removed from unetd were never closed.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit a2368e0f6906cd6ad374c0280a1c219f789ca258)

3 months agounetmsg: remove redundant socket close
Felix Fietkau [Sun, 4 Jan 2026 12:17:39 +0000 (12:17 +0000)] 
unetmsg: remove redundant socket close

channel.disconnect() already closes the fd via ubus_shutdown(),
so calling socket.close() afterwards is redundant and causes EBADF.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit bdc3c1a820d2f2a457ec2408449e8de6ff0bf9f6)

3 months agounetmsg: add timeout for outgoing auth requests
Felix Fietkau [Sun, 4 Jan 2026 10:07:33 +0000 (10:07 +0000)] 
unetmsg: add timeout for outgoing auth requests

Add a 10-second timeout for outgoing auth requests to prevent
connections from getting stuck when the remote peer goes silent
after the hello handshake but before responding to auth.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 8a304d051f1a8b9b4193d9b25edddc0119c26b44)

3 months agounetmsg: add null check in TX disconnect callback
Felix Fietkau [Sun, 4 Jan 2026 10:04:58 +0000 (10:04 +0000)] 
unetmsg: add null check in TX disconnect callback

The network may be deleted before the disconnect callback fires.
Check for null to avoid crash when accessing net.tx_channels.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit f631d1576ddb331ceee726d876ea9c74a3553dbc)

3 months agowifi-scripts: ucode: fix ieee80211w default
Rany Hany [Sun, 15 Feb 2026 16:29:17 +0000 (16:29 +0000)] 
wifi-scripts: ucode: fix ieee80211w default

This should not be defaulted to anything in the schema.

What seemed like a minor cleanup actually broke this
as the schema defines a default value already. I did
not notice as I had this explictly set in my config.

Fixes: 70ba7512 ("wifi-scripts: ucode: allow sae_pwe to be modified for AP mode")
Signed-off-by: Rany Hany <rany_hany@riseup.net>
Link: https://github.com/openwrt/openwrt/pull/22043
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit f012e8d50a31546eb96267ab751f316d2cf46fc9)

3 months agoRevert "kernel: revert ip6_tunnel use skb_vlan_inet_prepare() in __ip6_tnl_rcv()"
Goetz Goerisch [Sat, 14 Feb 2026 19:52:36 +0000 (20:52 +0100)] 
Revert "kernel: revert ip6_tunnel use skb_vlan_inet_prepare() in __ip6_tnl_rcv()"

This reverts commit ee0b160accecc397c124b8ddc356822be32a3320.

A backport commit was missing which was backported upstream with
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.71&id=4ce768ac429ec1c2d4ba63a408fed454ed12b248

Link: https://lore.kernel.org/all/CANn89iL5ksZZCJr7SK9=4Sw6EejdOzr5_m6pBMM8RVtbLy_ACA@mail.gmail.com/
Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22025
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 385b02614e3eb2204582bbfebb1d4e515da959c4)