]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
2 weeks agorealtek: pcs: simplify gray code to binary conversion 23984/head
Markus Stockhausen [Sun, 28 Jun 2026 20:24:29 +0000 (22:24 +0200)] 
realtek: pcs: simplify gray code to binary conversion

Gray conversion is b[i] = g[i] XOR g[i+1] XOR ... XOR g[n-1]
Make the code a 3 liner. For more details see [1].

[1] https://en.wikipedia.org/wiki/Gray_code#Converting_to_and_from_Gray_code

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23984
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: rtl930x: simplify DCVS/VTH/TAP calibration helpers 23983/head
Jonas Jelonek [Sun, 28 Jun 2026 09:55:18 +0000 (09:55 +0000)] 
realtek: pcs: rtl930x: simplify DCVS/VTH/TAP calibration helpers

Reduce repetition in dcvs_manual, dcvs_get, vth_manual and tap_manual
by hoisting the per-channel enable bit write out of per-case branches
and encoding per-channel register/bit mappings as lookup tables where
the pattern is uniform across channels.

This also fixes two bugs in dcvs_get that were hidden in the switch:

- DCVS1 read never populated dcvs_sign_out; it wrote the sign bit read
  (0x14[4:4]) into dcvs_coef_bin and then immediately overwrote it with
  the coefficient read, leaving the sign always zero for that channel.

- DCVS3 assigned the manual bit read directly to a bool without the !!
  normalisation applied to all other cases.

Link: https://github.com/openwrt/openwrt/pull/23983
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: rtl930x: fix LEQ calibration to use media type
Jonas Jelonek [Sat, 27 Jun 2026 19:23:05 +0000 (19:23 +0000)] 
realtek: pcs: rtl930x: fix LEQ calibration to use media type

Replace the mode-based approximation in the LEQ adapt+lock step with
proper media-based logic using the newly stored sds->media field. Those
adjustments are based on SDK code and digging through some basics of
signal conditioning.

PCB connections route through an external PHY (PHY-attached); that PHY
handles its own equalization so the SerDes LEQ is left in free-running
auto-adapt with no correction offset. DAC and fiber SFP connect directly
to the SerDes without an intermediate PHY and require a calibrated lock.

Replace the SDK's dacLongCableOffset/eqHoldEnable variable pair with a
single direct_serdes bool and encode the full per-media LEQ correction
into one switch: fiber +3 (direct SerDes, no cable), DAC short +4
(base 3 + 1), DAC long +6 (base 3 + 3).

Fix the MAXHOLD_EN bit (0x17[7]) and the 0x0c[8] write to be gated on
direct_serdes; both were previously conditioned on PCB which is the
PHY-attached case and thus wrong. Fix the LEQ lock to apply to all
direct SerDes connections (DAC + fiber), not just PCB. Also drop the
spurious dead-code branch that was an artifact of the original
transplanting.

No behavioral change because this particular function of calibration is
not used right now but will be in the future.

Link: https://github.com/openwrt/openwrt/pull/23983
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: store active media type in SerDes state
Jonas Jelonek [Sat, 27 Jun 2026 17:50:12 +0000 (17:50 +0000)] 
realtek: pcs: store active media type in SerDes state

Track the resolved media type in struct rtpcs_serdes alongside hw_mode,
storing it as soon as rtpcs_sds_select_media() resolves it so all
subsequent ops (set_hw_mode, activate, post_config) can access it.

This is unused for now and will be used only in dead code in next
patches. Though, this dead code is going to be used with subsequent
patches.

Link: https://github.com/openwrt/openwrt/pull/23983
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: rtl930x: give some calibration functions meaningful names
Jonas Jelonek [Sat, 27 Jun 2026 17:25:02 +0000 (17:25 +0000)] 
realtek: pcs: rtl930x: give some calibration functions meaningful names

Adapted from the SDK, the calibration functions are just named after
their sequential logic and with a numbering scheme. This doesn't help
understanding what the code is doing. Instead, give some of them
meaningful names where possible, revealing kind of a logical structure.

Link: https://github.com/openwrt/openwrt/pull/23983
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: rtl930x: reduce calibration code nesting
Jonas Jelonek [Sat, 27 Jun 2026 13:54:02 +0000 (13:54 +0000)] 
realtek: pcs: rtl930x: reduce calibration code nesting

The calibration code is deeply nested with multiple function using
numeric nesting. Though it tries to follow the SDK pattern, this makes
it just unnecessarily complex and confusing. Dissolve some of this
unneeded nesting, together with some minor cleanup here and there.

Link: https://github.com/openwrt/openwrt/pull/23983
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agolantiq: vrx518_ep: use module_pci_driver macro 23976/head
Rosen Penev [Sat, 20 Jun 2026 21:40:59 +0000 (14:40 -0700)] 
lantiq: vrx518_ep: use module_pci_driver macro

Use = {} to get rid of the memset so that init is just
pci_register_driver with extra prints.

Assisted-by: Opencode:Big-Pickle
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23976
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agokernel: bump 6.18 to 6.18.37 23971/head
John Audia [Sat, 27 Jun 2026 14:56:56 +0000 (10:56 -0400)] 
kernel: bump 6.18 to 6.18.37

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

All patches automatically rebased via update_kernel.sh

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23971
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agortl8367b: fix RTL8367S-VB vlan mc memory handling 23970/head
Mieczyslaw Nalewaj [Sat, 27 Jun 2026 15:13:09 +0000 (17:13 +0200)] 
rtl8367b: fix RTL8367S-VB vlan mc memory handling

The RTL8367S-VB (Family D) uses a software-emulated VLAN MC table
(emu_vlanmc) since it lacks hardware support for the VLAN MC registers
used by earlier chips.

- Add missing NULL check after kzalloc() in rtl8367b_init_regs() to
  prevent NULL pointer dereference on allocation failure.
- Add missing kfree(smi->emu_vlanmc) in rtl8367b_remove() to prevent
  memory leak on driver unload.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/23970
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agofs: rpsec: add missing modules for CRYPTO_KRB5 23794/head
Rosen Penev [Sun, 14 Jun 2026 19:50:20 +0000 (12:50 -0700)] 
fs: rpsec: add missing modules for CRYPTO_KRB5

Upstream selects these for CRYPTO_KRB5.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23794
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoubus: update to Git HEAD (2026-06-28)
Hauke Mehrtens [Sun, 28 Jun 2026 14:48:13 +0000 (16:48 +0200)] 
ubus: update to Git HEAD (2026-06-28)

24864e7840b3 ubusd_id: use GRND_INSECURE to avoid blocking boot on getrandom()

Fixes: https://github.com/openwrt/ubus/issues/21
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agolinux-firmware: update 20260622 23974/head
John Audia [Sat, 27 Jun 2026 18:17:02 +0000 (14:17 -0400)] 
linux-firmware: update 20260622

% git log --no-merges --pretty=oneline --abbrev-commit 20260519...20260622
0798ed4d1dcd nxp: add firmware for IW61x WiFi device
431c5ea014f9 mediatek MT7922: update bluetooth firmware to 20260605203811
2d7053937558 mediatek MT7925: update bluetooth firmware to 20260605184935
bd1c66cfef5f linux-firmware: update firmware for MT7925 WiFi device
1a2f6aca3c9c linux-firmware: update firmware for MT7922 WiFi device
f0fcc1d248cb amdgpu: DMCUB updates for various ASICs
85780e744984 qcom: add LPAICP firmware for shikra platform
aa2c4a6cee7f qcom: Add qdsp6sw firmware for shikra platform
ddaa2620f48f linux-firmware: update firmware for MT7986
17485a680e53 linux-firmware: update firmware for MT7981
17ca86eb15f6 linux-firmware: update firmware for MT7996
1cccfa6b8073 linux-firmware: update firmware for MT7992
f8cd3f6faae7 linux-firmware: update firmware for MT7990
10bf07f6404f qcom: Update ADSP firmware for Kaanapali platform
c5774bd79997 qcom: update ADSP firmware for glymur platform
dd571d3fe15f qcom: update CDSP firmware for glymur platform
3dcf6778d29c QCA: Add bluetooth firmware nvm files for USI/NFA725B
aba75bb237b6 linux-firmware: Add firmware file for Intel BlazarIW
4a32fece257f linux-firmware: Update firmware file for Intel BlazarU core
7bf0edbf74a2 linux-firmware: Update firmware file for Intel BlazarI core
431e7f03d2c7 linux-firmware: Update firmware file for Intel Scorpius core
6ed5e5aa4a02 qcom: update ADSP firmware for qcs615 platform
8df26c69bbe9 cirrus: cs42l45: Update CS42L45 SDCA codec firmware for Dell laptops
ce8c0b7174fc rtl_bt: Update RTL8852A BT USB firmware to 0x244F_91B6
861ddef6ec1c realtek: rt1321: Update the patch code to v1.10
2d2d180a1cc0 amdgpu: DMCUB updates for various ASICs
ca254b03dc5b QCA: Update Bluetooth WCN3950 firmware 1.3.0-00108 to 1.3.0-00184
acb740a9bfaf qcom: update CDSP firmware for shikra platform
71f496945eb7 qcom: Update ADSP firmware for Glymur platform
1e6faaf837ae Remove any files with unknown licenses
7ad9f3aaa96b AGENTS.md, README: address second round of MR review
acda46b96b76 README: document AI assisted contribution convention
57ab6873b2fd AGENTS.md: clarify areas raised in MR review
45fb99aef1cd Add AGENTS.md for AI coding agents
e930d3975f23 LICENSES: update GPL-2.0 text and references
430c892e7460 LICENSES: rename GPL-3 to GPL-3.0-only
847ba27f6c18 LICENSES: rename Apache-2 to Apache-2.0
1221848f2376 Move firmware licenses to a LICENSES/ directory
72a012ee810d qcom: update ADSP firmware for sm8750 platform
5118abf637cb QCA: Update Bluetooth WCN6856 firmware 2.1.0-00666 to 2.1.0-00669
f7feff550c56 qcom: Update DSP firmware for qcs8300 platform
3bfa40aaa331 qcom: Update DSP firmware for sa8775p platform
4d575d919be3 amdgpu: Update DMCUB fw for DCN314
47bffda9bb89 amdgpu: revert yellow carp VCN firmware
268bb3d259a0 amdgpu: revert vangogh VCN firmware
8d5b020868c6 amdgpu: revert sienna cichlid VCN firmware
640aa1db8e7f amdgpu: revert navy flounder VCN firmware
4ade9cf51e4d amdgpu: revert dimgrey cavefish VCN firmware
f1ea993bb900 amdgpu: revert beige_goby VCN firmware
2110f8af357d qcom: update CDSP firmware for x1e80100 platform
e108a9ab7a94 cirrus: cs35l56: Add firmware for Cirrus Amps for a Dell laptop
5670228453b1 linux-firmware: Add RCA firmware files for tas257x projects
a329a4c520af intel_vpu: Update NPU firmware
075a812eca30 cirrus: cs35l63: Add Cirrus CS35L63 firmware mappings for various Dell laptops
d33a9c6d7661 cirrus: cs35l56: Update firmware for Cirrus Amps for a couple of Lenovo laptops
1a794cdf93cd cirrus: cs35l56: Add firmware for Cirrus Amps for a Lenovo laptop
282d83cf7a32 QCA: Add BCS calibration binary for QCC2072
5ce19c7bb06f QCA: Update Bluetooth firmware for QCC2072 UART interface
c8c796dcdd3b amdgpu: DMCUB updates for various ASICs
4f6efdd350e4 rtl_nic: add firmware rtl8261c.bin for RTL8261c
831ea4af30e1 cirrus: cs35l56: Add Cirrus CS35L56 firmware mappings for two Dell laptops
830ba56b93d3 i915: Xe3LPD DMC v2.36
563b533d4f56 i915: Xe3LPD_3002 DMC v2.31
9357f2b5010a i915: Xe3p_LPD DMC v2.37
df472a73b917 cirrus: cs35l56: Add firmware for Cirrus Amps for some Lenovo laptops
542ad48830f6 cirrus: cs42l45: Update CS42L45 SDCA codec firmware for Lenovo laptops
dd7b12f0d458 cirrus: cs42l45: Add CS42L45 SDCA codec firmware for Lenovo laptops
ef77d60eebba qcom: Add gpu firmwares for Shikra chipset
72a09795db65 cirrus: cs35l56: Update firmware for Cirrus Amps for some Dell laptops
f97831a28950 rtw89: 8852b: update fw to v0.29.29.18
d0bf0bc94f2d rtw89: 8852bt: update fw to v0.29.122.2
d531e213dea8 amdgpu: Update gc 11.0.1 microcode

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23974
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoelfutils: update to 0.195 23468/head
John Audia [Thu, 21 May 2026 12:53:52 +0000 (08:53 -0400)] 
elfutils: update to 0.195

Patches rebased:
- 003-libintl-compatibility.patch
- 005-build_only_libs.patch
- 006-Fix-build-on-aarch64-musl.patch
- 101-no-fts.patch

Patches removed due being upstreamed:
- 007-add-libeu-symbols-to-libelf.patch
- 008-fix-autoconf-ENABLE_IMA_VERIFICATION.patch
- 009-fix-null-dereference-with-lto.patch
- 102-fix-potential-deref-of-null-error.patch

Note that this release is needed in order to build against GCC 16.1
https://github.com/openwrt/openwrt/pull/23194

Release notes from 0.192 to 0.195:
https://inbox.sourceware.org/elfutils-devel/CAJDtP-RjuT13zehLgSvz9TnwQZ1VYPOS=q_kuut5a2g+KLamgw@mail.gmail.com/T/
https://inbox.sourceware.org/elfutils-devel/CAJDtP-S0rYAOZQeDZvMtPkQztgK9RboWtYwpqNLCNGNdaSGn-A@mail.gmail.com/T/
https://inbox.sourceware.org/elfutils-devel/CAJDtP-Qok4ViNzvrr28WgkCCqrFH0iAZStiD8C7nbpDhrPzLWA@mail.gmail.com/T/

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23468
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agorealtek: l3: move router MAC helpers to layer 3 ecosystem 23963/head
Markus Stockhausen [Sat, 27 Jun 2026 20:05:52 +0000 (22:05 +0200)] 
realtek: l3: move router MAC helpers to layer 3 ecosystem

The router MAC helpers and their structures belong to layer 3.
Move them over to the new source file.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: move route_lookup_hw over to layer 3 structure
Markus Stockhausen [Sat, 27 Jun 2026 19:39:23 +0000 (21:39 +0200)] 
realtek: l3: move route_lookup_hw over to layer 3 structure

Another layer 3 function that needs a new home. As always convert
the code to dev_...() logging.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: move nexthop helper to new struture
Markus Stockhausen [Sat, 27 Jun 2026 19:16:32 +0000 (21:16 +0200)] 
realtek: l3: move nexthop helper to new struture

Another two layer 3 functions that do not belong into the DSA
space. Move them over to the L3 configuration structure.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: move route read/write into new structure
Markus Stockhausen [Sat, 27 Jun 2026 14:22:26 +0000 (16:22 +0200)] 
realtek: l3: move route read/write into new structure

Reading and writing routes is part of the layer 3 code.
Move it to where it belongs. While we are here convert
pr_...() logging to dev_...() logging.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: add device specific configuration
Markus Stockhausen [Sat, 27 Jun 2026 11:48:59 +0000 (13:48 +0200)] 
realtek: l3: add device specific configuration

All the layer 3 device specific functions and attributes currently
live in the DSA driver. Add a configuration structure to the layer
3 code. For now provide and fill a dummy value. It will be replaced
with meaningful data with the next patches.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: convert function signatures from priv to ctrl
Markus Stockhausen [Sat, 27 Jun 2026 07:05:11 +0000 (09:05 +0200)] 
realtek: l3: convert function signatures from priv to ctrl

Get rid of the priv pointer in the function signatures.
Hand over the new layer 3 control structure instead.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: convert to device based logging
Markus Stockhausen [Sat, 27 Jun 2026 06:51:20 +0000 (08:51 +0200)] 
realtek: l3: convert to device based logging

Make device logging consistent. For this

- add a device attribute to the new layer 3 control structure
- convert pr_...() logging to dev_...() logging.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: convert otto_l3_walk_data to control structure
Markus Stockhausen [Fri, 26 Jun 2026 16:48:09 +0000 (18:48 +0200)] 
realtek: l3: convert otto_l3_walk_data to control structure

Use new control structure in walk data.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: replace priv with ctrl in work structures
Markus Stockhausen [Fri, 26 Jun 2026 16:36:25 +0000 (18:36 +0200)] 
realtek: l3: replace priv with ctrl in work structures

Use layer 3 control structure as attribute in work structures.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: move routes to l3 structure
Markus Stockhausen [Fri, 26 Jun 2026 16:28:29 +0000 (18:28 +0200)] 
realtek: l3: move routes to l3 structure

Make routes an attribute of the new layer 3 control structure.

Link: https://github.com/openwrt/openwrt/pull/23963
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agoodhcpd: update to Git HEAD (2026-06-28)
Hauke Mehrtens [Sat, 27 Jun 2026 22:46:48 +0000 (00:46 +0200)] 
odhcpd: update to Git HEAD (2026-06-28)

68f382690bfa statefiles: escape client hostnames in the lease state file

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoumdns: update to Git HEAD (2026-06-27)
Hauke Mehrtens [Sat, 27 Jun 2026 15:29:48 +0000 (17:29 +0200)] 
umdns: update to Git HEAD (2026-06-27)

dbee55098c2e Change domain variable to const char* for gcc 15 compatibility

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agodtc: update to 1.8.1 23677/head
Carsten Schuette [Sat, 6 Jun 2026 06:10:02 +0000 (08:10 +0200)] 
dtc: update to 1.8.1

Changelog:
https://git.kernel.org/pub/scm/utils/dtc/dtc.git/tag/?h=v1.8.1
https://git.kernel.org/pub/scm/utils/dtc/dtc.git/tag/?h=v1.8.0

This also fixes #23671

Signed-off-by: Carsten Schuette <schuettecarsten@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/23677
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoodhcp6c: update to Git HEAD (2026-06-27)
Hauke Mehrtens [Sat, 27 Jun 2026 14:12:46 +0000 (16:12 +0200)] 
odhcp6c: update to Git HEAD (2026-06-27)

10a52220aec9 config: drop misleading const from option-parsing input strings

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoirq-ath79-intc: move irq_chip to private struct 23884/head
Rosen Penev [Fri, 19 Jun 2026 22:34:01 +0000 (15:34 -0700)] 
irq-ath79-intc: move irq_chip to private struct

For whatever reason, the static array change is causing massive dmesg
spam. Revert it for now.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23884
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoirq-ath79-intc: use of_irq_get
Rosen Penev [Fri, 19 Jun 2026 22:45:29 +0000 (15:45 -0700)] 
irq-ath79-intc: use of_irq_get

Modern version of irq_of_map_and_parse() that does not require
irq_dispose_mapping() to be called.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23884
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoairoha: an7581: fix GPS support on Gemtek W1700k 23936/head
Aleksander Jan Bajkowski [Wed, 24 Jun 2026 17:46:25 +0000 (19:46 +0200)] 
airoha: an7581: fix GPS support on Gemtek W1700k

This commit removes unnecessary pinctrl nodes for the PHY LEDs. The LEDs are
controlled directly via GPIO pins. Alternate function of gpio33/34 is CTS/RTS
for UART2. It looks like this pinctrl is somehow conflicting with HSUART. This
is likely an errata in the early silicon revision. HSUART is connected to GPS.
The comment incorrectly states that the PHY driver doesn't attach. The driver
attaches correctly, the only drawback is a warning in the log.

Warning:
[   10.463371] mdio_bus mt7530-0: Failed to setup PHY LED pinctrl
[   10.494230] mdio_bus mt7530-0: Failed to setup PHY LED pinctrl
[   10.926028] mt7530-mmio 1fb58000.switch: configuring for fixed/internal link mode
[   10.933640] mt7530-mmio 1fb58000.switch lan3 (uninitialized): PHY [mt7530-0:09] driver [Airoha AN7581 PHY] (irq=50)
[   10.944890] mt7530-mmio 1fb58000.switch lan4 (uninitialized): PHY [mt7530-0:0a] driver [Airoha AN7581 PHY] (irq=51)

GPS test:
root@OpenWrt:~# minicom -D /dev/ttyS2 -b 460800
...
$GNGGA,000106.012,,,,,0,0,,,M,,M,,*52
$GNGLL,,,,,000106.012,V,N*60
$GNGSA,A,1,,,,,,,,,,,,,,,,1*1D
$GNGSA,A,1,,,,,,,,,,,,,,,,2*1E
$GNGSA,A,1,,,,,,,,,,,,,,,,3*1F
$GNGSA,A,1,,,,,,,,,,,,,,,,4*18
$GPGSV,1,1,00,1*64
...

Fixes: 99307582dea2 ("airoha: add support for Gemtek W1700K")
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/23936
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agotoolchain: gcc: update GCC 15 to 15.3.0 23771/head
Konstantin Demin [Sat, 13 Jun 2026 15:12:13 +0000 (18:12 +0300)] 
toolchain: gcc: update GCC 15 to 15.3.0

Release Notes: https://gcc.gnu.org/gcc-15/changes.html

Removed upstreamed:
 toolchain/gcc/patches-15.x/004-libcody-Make-it-buildable-by-C-11-to-C-26.patch [1]

[1] https://github.com/gcc-mirror/gcc/commit/1f0224e8ddb3d3d0bf4c7a11769b193a4df5cc37

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23771
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoead: fix compilation with GCC 15 23955/head
Hauke Mehrtens [Sat, 20 Jun 2026 18:47:14 +0000 (20:47 +0200)] 
ead: fix compilation with GCC 15

GCC 15 defaults to C23, where an empty parameter list "()" means
"(void)" instead of an unspecified argument list. This broke two spots
in the bundled tinysrp sources:

  - The interrupt() signal handler in t_truerand.c was declared with
    "()", so its type became "void (*)(void)" and no longer matched the
    "void (*)(int)" expected by signal():

      t_truerand.c:100:32: error: passing argument 2 of 'signal' from
      incompatible pointer type [-Wincompatible-pointer-types]

    Give it the proper signal handler signature instead.

  - The pre-ANSI fallback in t_defines.h declared strchr(), strrchr()
    and strtok() with "()". ead.c is compiled without -DHAVE_CONFIG_H,
    so STDC_HEADERS is undefined and that legacy branch is taken, where
    the zero-argument prototypes now conflict with the declarations in
    the standard headers:

      tinysrp/t_defines.h:90:30: error: conflicting types for 'strtok';
      have 'char *(void)'

    Drop the dead K&R branch and include <stdlib.h> and <string.h>
    unconditionally; the library's own objects already take this path
    via config.h.

Assisted-by: Claude:claude-opus-4-8
Link: https://github.com/openwrt/openwrt/pull/23955
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agothc-ipv6: fix compilation with GCC 15 23956/head
Hauke Mehrtens [Fri, 26 Jun 2026 22:42:11 +0000 (00:42 +0200)] 
thc-ipv6: fix compilation with GCC 15

GCC 15 defaults to C23, where an empty parameter list "()" means
"(void)" instead of an unspecified argument list. This broke thc-ipv6 in
two ways:

 - thc-ipv6.h declared thc_open_ipv6() with an empty argument list, so
   its prototype became "int(void)" and conflicted with the actual
   definition "int thc_open_ipv6(char *interface)" and all of its
   callers:

     thc-ipv6-lib.c:127:36: error: too many arguments to function
     'thc_open_ipv6'; expected 0, have 1
     thc-ipv6-lib.c:2555:5: error: conflicting types for 'thc_open_ipv6';
     have 'int(char *)'

 - The alarming() SIGALRM handlers in detect_sniffer6.c and thcping6.c
   were declared with "()", so their type became "void (*)(void)" and no
   longer matched the "void (*)(int)" expected by signal():

     detect_sniffer6.c:140:19: error: passing argument 2 of 'signal'
     from incompatible pointer type [-Wincompatible-pointer-types]

Add patches giving the prototype and the signal handlers their proper
signatures.

Assisted-by: Claude:claude-opus-4-8
Link: https://github.com/openwrt/openwrt/pull/23956
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agortl8812au-ct: fix compilation with GCC 15 23957/head
Hauke Mehrtens [Fri, 26 Jun 2026 22:51:21 +0000 (00:51 +0200)] 
rtl8812au-ct: fix compilation with GCC 15

GCC 15 enables -Wheader-guard and the kernel module build treats
warnings as errors, so the mismatched include guards in three driver
headers break the build:

  include/rtl8812a_sreset.h:20: error: header guard
  '_RTL88812A_SRESET_H_' followed by '#define' of a different macro
  [-Werror=header-guard]

Add a patch making each '#ifndef' match its '#define'. rtl8192e_sreset.h
was a copy/paste of the rtl8812a guard, so it gets its own
'_RTL8192E_SRESET_H_' name instead of duplicating '_RTL8812A_SRESET_H_'.

Assisted-by: Claude:claude-opus-4-8
Link: https://github.com/openwrt/openwrt/pull/23957
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agorealtek: dsa: rtl93xx: allow to adjust LED_CLK 23944/head
Jonas Jelonek [Fri, 26 Jun 2026 09:32:34 +0000 (09:32 +0000)] 
realtek: dsa: rtl93xx: allow to adjust LED_CLK

The LED_GLB_CTRL register has a field to select the clock used for LED
output, either for serial LED output or for the external auxiliary MDIO
to connect a RTL8231. While the default value for the period time of
400ns is the correct one for most applications, some special devices
require a dedicated setting, e.g. UniFi switches with Etherlighting.

Support the generic DT property "clock-frequency" within the LED node,
and read + apply during LED configuration. In case the property isn't
specified, no change is applied to keep previous behavior. In case an
unsupported value is supplied, the default is used as a fallback

Link: https://github.com/openwrt/openwrt/pull/23944
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agotoolchain: binutils: fix default version selection 23952/head
Shiji Yang [Fri, 26 Jun 2026 16:56:02 +0000 (00:56 +0800)] 
toolchain: binutils: fix default version selection

Fixes: 82f26df15c56 ("toolchain: binutils: change default to 2.46")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/23952
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agowifi-scripts: fix disabled vif tracking using wrong dictionary key
Felix Fietkau [Fri, 26 Jun 2026 17:00:36 +0000 (19:00 +0200)] 
wifi-scripts: fix disabled vif tracking using wrong dictionary key

wdev_update_disabled_vifs() indexed the disabled_vifs map with the wdev
object instead of the vif name. The map is read back via
disabled_vifs[vif.name], so disabled vifs were never matched, and
coercing the wdev object into a string key triggered an infinite
escaping loop in ucv_to_string_json_encoded() during state output,
causing OOM on reboot.

Suggested-by: Shayne Chen (陳軒丞) <Shayne.Chen@mediatek.com>
Reported-by: Michael-cy Lee (李峻宇) <Michael-cy.Lee@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agolayerscape: drop 6.12 files
Jonas Jelonek [Fri, 26 Jun 2026 16:57:52 +0000 (18:57 +0200)] 
layerscape: drop 6.12 files

Remove kernel configs and patches for 6.12, now that layerscape target
was switched to 6.18. This was missed during the 6.12 -> 6.18 PR.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agols-rcw: bump to lf-6.18.2-1.0.0 23290/head
Pawel Dembicki [Tue, 5 May 2026 21:03:46 +0000 (23:03 +0200)] 
ls-rcw: bump to lf-6.18.2-1.0.0

Bump ls-rcw package to lf-6.18.2-1.0.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agols-mc: bump to 10.40.0
Pawel Dembicki [Tue, 5 May 2026 21:03:46 +0000 (23:03 +0200)] 
ls-mc: bump to 10.40.0

Bump ls-mc package to 10.40.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agols-dpl: bump to 10.40.0
Pawel Dembicki [Tue, 5 May 2026 21:03:46 +0000 (23:03 +0200)] 
ls-dpl: bump to 10.40.0

Bump ls-dpl package to 10.40.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agols-ddr-phy: bump to lf-6.18.2-1.0.0
Pawel Dembicki [Tue, 5 May 2026 21:03:46 +0000 (23:03 +0200)] 
ls-ddr-phy: bump to lf-6.18.2-1.0.0

Bump ls-ddr-phy package to lf-6.18.2-1.0.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agofman-ucode: bump to lf-6.18.2-1.0.0
Pawel Dembicki [Tue, 5 May 2026 21:03:46 +0000 (23:03 +0200)] 
fman-ucode: bump to lf-6.18.2-1.0.0

Bump fman-ucode package to lf-6.18.2-1.0.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agouboot-layerscape: bump to lf-6.18.2-1.0.0
Pawel Dembicki [Tue, 5 May 2026 21:03:45 +0000 (23:03 +0200)] 
uboot-layerscape: bump to lf-6.18.2-1.0.0

Bump uboot-layerscape package to lf-6.18.2-1.0.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agotfa-layerscape: bump to lf-6.18.2-1.0.0
Pawel Dembicki [Tue, 5 May 2026 21:03:45 +0000 (23:03 +0200)] 
tfa-layerscape: bump to lf-6.18.2-1.0.0

Bump tfa-layerscape package to lf-6.18.2-1.0.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoppfe-firmware: bump to lf-6.18.2-1.0.0
Pawel Dembicki [Tue, 5 May 2026 21:01:15 +0000 (23:01 +0200)] 
ppfe-firmware: bump to lf-6.18.2-1.0.0

Bump ppfe-firmware package to lf-6.18.2-1.0.0.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorestool: bump to lf-6.18.2-1.0.0
Pawel Dembicki [Tue, 5 May 2026 20:59:24 +0000 (22:59 +0200)] 
restool: bump to lf-6.18.2-1.0.0

This commit bumps restool layerscape package to lf-6.18.2-1.0.0 version.

Patch to disable manpage build was dropped and replaced with MANPAGE=""
in MAKE_FLAGS.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agolayerscape: switch to 6.18 kernel
Pawel Dembicki [Tue, 5 May 2026 20:56:06 +0000 (22:56 +0200)] 
layerscape: switch to 6.18 kernel

Since there are no other active developers working on this target,
switch it to 6.18 for wider testing.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agolayerscape: kernel: 6.18: refresh config
Pawel Dembicki [Mon, 27 Apr 2026 21:19:08 +0000 (23:19 +0200)] 
layerscape: kernel: 6.18: refresh config

Done by `make kernel_oldconfig`.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agolayerscape: 6.18: refresh patches
Pawel Dembicki [Fri, 26 Jun 2026 13:13:48 +0000 (15:13 +0200)] 
layerscape: 6.18: refresh patches

Taken from 6.18 nxp tree:
701-staging-add-fsl_ppfe-driver.patch
702-phy-Add-2.5G-SGMII-interface-mode.patch

Refreshed by `make target/linux/refresh`:
302-arm64-dts-ls1012a-update-with-ppfe-support.patch

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agokernel/layerscape: restore files for v6.12
Pawel Dembicki [Thu, 2 Apr 2026 21:47:03 +0000 (23:47 +0200)] 
kernel/layerscape: restore files for v6.12

This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.

For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agokernel/layerscape: create files for v6.18 (from v6.12)
Pawel Dembicki [Thu, 2 Apr 2026 21:47:03 +0000 (23:47 +0200)] 
kernel/layerscape: create files for v6.18 (from v6.12)

This is an automatically generated commit.

When doing `git bisect`, consider `git bisect --skip`.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23290
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: l3: move notifier blocks to private structure 23937/head
Markus Stockhausen [Thu, 25 Jun 2026 09:20:16 +0000 (11:20 +0200)] 
realtek: l3: move notifier blocks to private structure

Relocate the notification handlers into the new L3 ecosystem.

Link: https://github.com/openwrt/openwrt/pull/23937
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: add private structure
Markus Stockhausen [Thu, 25 Jun 2026 08:46:17 +0000 (10:46 +0200)] 
realtek: l3: add private structure

The DSA private structure provides an overwhelming mix of
information. L3 data is part of this. Provide a new separated
structure that is linked bidirectionally to the old data.
For the start it only contains a reference pointer and no L3
specific data.

Link: https://github.com/openwrt/openwrt/pull/23937
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: provide probe/remove helpers
Markus Stockhausen [Thu, 25 Jun 2026 08:05:28 +0000 (10:05 +0200)] 
realtek: l3: provide probe/remove helpers

The L3 code is manually initialized and finalized in the DSA
probe/remove functions. Relocate the code into seperate helpers
that encapsule all required steps. Make no longer exposed L3
functions static.

Link: https://github.com/openwrt/openwrt/pull/23937
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: l3: separate L3 coding from DSA
Markus Stockhausen [Wed, 24 Jun 2026 20:41:15 +0000 (22:41 +0200)] 
realtek: l3: separate L3 coding from DSA

DSA is layer 2 and not layer 3. Nevertheless all routing management
needs a home. Separate it into its own source file. This first
step is far from perfect but at least it guides the DSA driver into
the right direction.

No functional changes. Just relocating, renaming and proper including.

Link: https://github.com/openwrt/openwrt/pull/23937
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: mdio: add polling setup support for RTL8264B 23946/head
Jonas Jelonek [Fri, 26 Jun 2026 10:08:43 +0000 (10:08 +0000)] 
realtek: mdio: add polling setup support for RTL8264B

Add polling setup support for RTL8264B PHY to avoid 'skip polling'
message during boot. Rely on the default register values for polling for
now, similar to RTL8261.

Link: https://github.com/openwrt/openwrt/pull/23946
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: dsa/eth: adapt receive path 23948/head
Markus Stockhausen [Tue, 23 Jun 2026 16:50:48 +0000 (18:50 +0200)] 
realtek: dsa/eth: adapt receive path

Improve the DSA receive tagging. For this convert the receive path
to METADATA_HW_PORT_MUX. This way no skb data mangling is needed.
See e.g. airoha_eth.c or mtk_eth_soc.c.

Link: https://github.com/openwrt/openwrt/pull/23948
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: dsa/eth: adapt transmit path
Markus Stockhausen [Wed, 24 Jun 2026 09:59:29 +0000 (11:59 +0200)] 
realtek: dsa/eth: adapt transmit path

This is just some reordering/simplifcation of the transmit path.
Relocate the port extraction into a separate helper for a smaller
xmit function. While we are here add some documentation and
reorder the tag and its contents. As these are only arbitrary
values that help the ethernet driver to identifiy the tag this
is just cosmetic.

Link: https://github.com/openwrt/openwrt/pull/23948
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: eth: fix tx_bytes calculation
Markus Stockhausen [Wed, 24 Jun 2026 09:45:40 +0000 (11:45 +0200)] 
realtek: eth: fix tx_bytes calculation

When sending data packets the hardware expects data size plus 4
bytes for the layer 2 checksum (FCS). This does not count into
"bytes sent" metric. Fix that.

Link: https://github.com/openwrt/openwrt/pull/23948
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agorealtek: eth: rename dest_port to port
Markus Stockhausen [Wed, 24 Jun 2026 09:27:18 +0000 (11:27 +0200)] 
realtek: eth: rename dest_port to port

Just variable renaming. No functional change.

Link: https://github.com/openwrt/openwrt/pull/23948
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2 weeks agotoolchain: binutils: change default to 2.46 23907/head 23925/head
Jonas Jelonek [Sun, 21 Jun 2026 21:05:51 +0000 (21:05 +0000)] 
toolchain: binutils: change default to 2.46

Change default to latest upstream release.

Link: https://github.com/openwrt/openwrt/pull/23907
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoairoha: align ethernet-phy node name with reg property 23920/head
YaleiZang [Tue, 23 Jun 2026 03:34:02 +0000 (11:34 +0800)] 
airoha: align ethernet-phy node name with reg property

Change ethernet-phy node name for alignment with reg.
This enhances the clarity and maintainability of the device-tree.

Signed-off-by: YaleiZang <yalei.zang@airoha.com>
Link: https://github.com/openwrt/openwrt/pull/23920
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoairoha: correct node addresses for crypto and thermal-sensor
YaleiZang [Tue, 23 Jun 2026 03:02:22 +0000 (11:02 +0800)] 
airoha: correct node addresses for crypto and thermal-sensor

Update the @ address suffix of crypto and thermal-sensor nodes
in the device tree to match the reg properties for consistency.

Signed-off-by: YaleiZang <yalei.zang@airoha.com>
Link: https://github.com/openwrt/openwrt/pull/23920
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: replace hardcoded page values with named fields 23915/head
Jonas Jelonek [Sat, 20 Jun 2026 07:52:34 +0000 (07:52 +0000)] 
realtek: pcs: replace hardcoded page values with named fields

Replace all hardcoded page values in various calls and definitions with
the previously added defines. This should help readability, giving those
various values a name and making it easier to compare and track within
the context of what is being set.

Link: https://github.com/openwrt/openwrt/pull/23915
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agorealtek: pcs: add SerDes page definitions
Jonas Jelonek [Sat, 20 Jun 2026 07:37:46 +0000 (07:37 +0000)] 
realtek: pcs: add SerDes page definitions

To reduce having magic values all over the place in the whole driver,
add definitions for the SerDes register pages. They are equal among all
variants and can be clearly named, as already done in the debugfs output
of the realtek-otto-serdes-mdio driver. This should ease comparison,
code understanding and very likely is a step forward towards
upstream-readyness.

Also define two macros to cover the special cases for RTL931x's digital
SerDes via 0x40/0x80 page offset.

Link: https://github.com/openwrt/openwrt/pull/23915
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 weeks agoairoha: backport additional fixes for ethernet driver 23934/head
Lorenzo Bianconi [Wed, 24 Jun 2026 15:20:54 +0000 (17:20 +0200)] 
airoha: backport additional fixes for ethernet driver

Backport fixes for airoha_eth driver from net tree recently merged
upstream.

Refresh all affected patch.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
[ refresh patch, improve commit title/description ]
Link: https://github.com/openwrt/openwrt/pull/23934
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 weeks agomediatek: add WD-R3000N-G2A as ALT device for Bazis AX3000WM 23653/head
Fil Dunsky [Wed, 3 Jun 2026 18:18:20 +0000 (21:18 +0300)] 
mediatek: add WD-R3000N-G2A as ALT device for Bazis AX3000WM

The Bazis AX3000WM is an OEM variant of the Shenzhen Jia Yan Technology
WD-R3000N-G2A (per EAEU certificate N RU Д-CN.РА04.В.23104/26). Hardware
is identical. Added for the owners of this device so they can find it
in firmware-selector.

Signed-off-by: Fil Dunsky <filipp.dunsky@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23653
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agorockchip: backport upstream fix R76S SD suspend power loss 23924/head
xiao bo [Thu, 25 Jun 2026 11:20:49 +0000 (19:20 +0800)] 
rockchip: backport upstream fix R76S SD suspend power loss

This patch is a full backport of Linux upstream commit a9c1acebfe0484343a443d082e039ca77186ed22
for rk3576-nanopi-r76s.dts device tree, resolving SD card power dropout in runtime suspend.

When runtime suspend is active, the SD power domain is shut down, wiping power control
registers and cutting card power. I/O recovery relies on mmc_blk_mq_rw_recovery(),
which results in poor performance and unstable card detection.

Implement GPIO-controlled vcc3v3_sd regulator and attach vmmc-supply to sdmmc node
to maintain SD power during suspend. Also add cd-gpios to guarantee working hotplug
when system enters idle/suspend state.

Modifications in DTS:
- vcc3v3_sd fixed regulator + sdmmc_pwren pinctrl
- vmmc-supply & vqmmc-supply for sdmmc bus power retention
- cd-gpios for SD card presence detection

Signed-off-by: xiao bo <peterwillcn@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23924
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agotools/cmake: update to 4.3.4 23938/head
Jack Sun [Thu, 25 Jun 2026 11:31:35 +0000 (19:31 +0800)] 
tools/cmake: update to 4.3.4

Release notes:https://cmake.org/cmake/help/latest/release/4.3.html

No need refresh patches.

Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23938
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: add support for FudanMicro FM25G01B and FM25G02B spi-nand 23864/head
Mikhail Zhilkin [Sun, 7 Jun 2026 10:04:39 +0000 (13:04 +0300)] 
kernel: add support for FudanMicro FM25G01B and FM25G02B spi-nand

This commit adds support for FudanMicro FM25G01B and FM25G02B SPI NAND
chips. This is required to:
1. Fix bootloop on new revision of Keenetic KN-1812 and Netcraze NC-1812
   (with FudanMicro FM25G02B SPI NAND)
2. Add Nokia XG-040G-MD support (device has either SkyHigh or FudanMicro
   SPI NAND).

Fixes: https://github.com/openwrt/openwrt/issues/23855
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23864
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: openwrt-one: make the front button usable as WPS button
Felix Fietkau [Wed, 24 Jun 2026 13:51:36 +0000 (15:51 +0200)] 
mediatek: openwrt-one: make the front button usable as WPS button

It's the most common use for such a button, and the behavior can
be changed in user space if needed

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agoscripts: dhcpv6: harmonize IAID between IA_NA and IA_PD requests 23758/head
Shine [Fri, 12 Jun 2026 14:27:28 +0000 (16:27 +0200)] 
scripts: dhcpv6: harmonize IAID between IA_NA and IA_PD requests

For DHCPv6 address requests (IA_NA), odhcp6c currently uses the first eight
digits of the i/f name's MD5 hash as IAID.

In case of DHCPv6-PD, however, odhcp6c expects the IAID to be specified
explicitly for the IA_PD(s) requested, otherwise it will start counting the
IAID from "1" up for each "-P" argument.

As OpenWrt only requests a single IA_PD per interface, make sure to pass
the identical IAID for IA_PD as is used for IA_NA, unless a custom IAID
was explicitly specified in the i/f configuration.

This prevents regressions with ISPs that expect an IA_PD request to come
from the same IAID+DUID combination as the IA_NA request.

In addition, add some validation of the "reqprefix" value, in order to
catch most cases that would otherwise result in netifd or odhcp6c
malfunction.

Signed-off-by: Shine <4c.fce2@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23758
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoramips: add support for ASUS RT-AC85U 23747/head
YAJIMA Hideyuki [Sat, 20 Jun 2026 15:49:38 +0000 (00:49 +0900)] 
ramips: add support for ASUS RT-AC85U

This patch adds support for the ASUS RT-AC85U wireless router.
It is a dual-band gigabit router based on the MediaTek MT7621AT SoC.

MAC Address Layout:
- LAN/WAN/2.4G/5G MAC addresses are derived from the
  factory partition at offset 0xe000.

Hardware Specifications:
- SoC: MediaTek MT7621AT (880 MHz, 2C/4T)
- RAM: 128 MB DDR3
- Flash: 128 MB Winbond W29N01HV NAND
- WI1: MediaTek MT7615E (2.4 GHz, 4x4)
- WI2: MediaTek MT7615E (5 GHz, 4x4)
- Switch: MediaTek MT7530 (Embedded Gigabit Switch)
- Ports: 1x WAN, 4x LAN (10/100/1000 Mbps), 1x USB 3.0
- LEDs: Power, LAN, WAN, 2.4G, 5G, USB, WPS
- Buttons: WPS, Reset

Installation / Flashing guide:
1. Power off the device.
2. Hold Reset button and power on to enter ASUS Restoration mode (slow flash LED).
3. Set your computer's static IP to 192.168.1.x (e.g., 192.168.1.10).
4. Upload the OpenWrt initramfs image via ASUS Restoration tool to 192.168.1.1.
5. Wait for the device to boot into the temporary OpenWrt environment.
6. Access LuCI (192.168.1.1) and flash sysupgrade image to make it permanent.

Signed-off-by: YAJIMA Hideyuki <ursmtr@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23747
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomvebu: add support for Zyxel NAS326 23228/head
Robert Senderek [Mon, 9 Feb 2026 12:07:06 +0000 (13:07 +0100)] 
mvebu: add support for Zyxel NAS326

-----
Hardware:
CPU: ARMADA 380 1x1332Mhz
RAM: 512MB DDR3
FLASH: 256MB MX30LF2G18AC
2x SATA III
2x USB3.0
1x USB2.0
i2c to control various states.
RTC with battery
1Gbit LAN (WoL capable)
9x LED
RESET button at back
Power button at front (gpio-poweroff)
Copy button at front

-----
Doesn't work
FAN control
buzzer

-----
UART connections

Connect UART to port J3 115200
+----+----+----+----+----+
|3.3V| TX | RX |    | GND|
+----+----+----+    +----+
Depend of UART adapter board can fail to boot when adapter is attached. (all leds are dimmed) .
In that case disconnect UART for an < second and after that all leds should be white.
Stop u-boot by ctrl-c within 3s window. (bootdelay 7s or more helps)
setenv bootdelay 7
saveenv

-----
Instalation via UART

Boot initramfs-kernel.bin
setenv ethact egiga0
setenv serverip 192.168.1.11
setenv ipaddr 192.168.1.12
tftpboot 0x02000000 *initramfs-kernel.bin
bootm 0x02000000 -

Device is DHCP client by default ( as the other supported NAS)

do backup into safe space
/dev/mtd3 Kernel-1
/dev/mtd4 RootFS-1

use sysupgrade in console or via luci

-----
MAC addresses

mac stored in u-boot-env ethaddr
label mac = eth0 mac =  5c:6a:80:xx:xx:xx

-----
Setting up u-boot  dual boot

u-boot contain two banks contain two OEM copies
To boot OpenWrt from bank1
setenv next_bootfrom 1
saveenv

To boot OEM from bank2
setenv next_bootfrom 2
saveenv

-----
Configuration via i2c
install i2c-tools

Enable WoL
i2cset -y 0x0 0xa 0xa 0x0006 w

Disable WoL
i2cset -y 0x0 0xa 0xa 0x0306 w

Enable auto power on
i2cset -y 0x0 0x0a 0x0a 0x0107 w

Disable auto power on
i2cset -y 0x0 0x0a 0x0a 0x0007 w

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
Link: https://github.com/openwrt/openwrt/pull/23228
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: split nf-nathelper-extra into individual packages 23690/head
Mieczyslaw Nalewaj [Sun, 7 Jun 2026 17:35:10 +0000 (19:35 +0200)] 
kernel: split nf-nathelper-extra into individual packages

Split kmod-nf-nathelper-extra into separate helper packages
and keep the original package as a compatibility meta-package.

This allows selecting only the required protocol helpers
instead of installing all helper modules and dependencies.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/23690
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: move flowtable fix to backport-6.18 23930/head
Qingfang Deng [Wed, 24 Jun 2026 01:32:56 +0000 (09:32 +0800)] 
kernel: move flowtable fix to backport-6.18

The patch is accepted upstream, so move it to backport-6.18 and update
its headers.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23930
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomt76: remove obsolete patches
Felix Fietkau [Wed, 24 Jun 2026 10:33:11 +0000 (12:33 +0200)] 
mt76: remove obsolete patches

Already included in the last update

Fixes: a0c5a58123fd ("mt76: update to Git HEAD (2026-06-23)"
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agomt76: update to Git HEAD (2026-06-23)
Felix Fietkau [Wed, 24 Jun 2026 09:22:26 +0000 (11:22 +0200)] 
mt76: update to Git HEAD (2026-06-23)

012e52ae3805 wifi: mt76: use hrtimer_setup() in mt76x02u beacon init
d2b01fbc329b mt76: pass LED define via ccflags-y
9a46d8d21d2a wifi: mt76: add PS buffering support for HW-managed TIM drivers
9e613fb007f5 wifi: mt76: mt7915: handle MCU PS sync events
b0af99f238f7 wifi: mt76: mt7996: handle UNI PS sync events
34064bd58bb3 wifi: mt76: mt7925: clean up DMA on probe failure
4ab8f2122dcb wifi: mt76: disable rx napi before queue cleanup
381582f2a5de wifi: mt76: mt7996: avoid memset overwriting tx_info->control.flags
d463ed9490ab wifi: mt76: mt7921: fix resource leak in probe error path
dd1459c0c708 wifi: mt76: mt7921/mt7925: fix NULL dereference in CSA beacon
6ae6f2b58cf5 wifi: mt76: route TDLS-peer frames as 3-addr non-DS in HW encap
0753cf183d8c wifi: mt76: mt7925: don't disable AP BSS when removing TDLS peer
fe0555feb30a wifi: mt76: use kfree_rcu for offchannel link in mt76_put_vif_phy_link
97fc0e785d0e wifi: mt76: mt7921: fix uninitialized variable warning
49a0aa659f7b wifi: mt76: drop redundant device reference
a4f3781dea07 wifi: mt76x0u: drop redundant device reference
52071e885528 wifi: mt76x2u: drop redundant device reference
0aca66c123f8 wifi: mt76: mt792xu: drop redundant device reference
5c94494f1b8d dma.h: add missing variable initialization
756b1c67eb3b wifi: mt76: mt7925: add Netgear A8500 USB device ID
58331e62df80 wifi: mt76: mt7996: Fix NULL pointer dereference in mt7996_init_tx_queues()
bd493e29f7e0 wifi: mt76: mt7925: fix stale pointer comparisons in change_vif_links
3c575281716f wifi: mt76: mt7925: add 320MHz bandwidth to bss_rlm_tlv
b1f7e240c717 wifi: mt76: mt7925: handle 320MHz bandwidth in RXV and TXS
06277d860b3d wifi: mt76: mt7925: populate EHT 320MHz MCS map in sta_rec
70bfd49d255a wifi: mt76: mt7925: advertise EHT 320MHz capabilities for 6GHz band
fda04bb435fa wifi: mt76: mt7925: add MT7927 chip ID helpers
6e5802e93dfb wifi: mt76: mt7925: add MT7927 firmware paths
8175695dcd5e wifi: mt76: mt7925: use irq_map for chip-specific interrupt handling
f698c7f22569 wifi: mt76: mt7925: disable ASPM and runtime PM for MT7927
1f91523cb928 wifi: mt76: connac: replace is_mt7925() with is_connac3()
9342a017992d wifi: mt76: mt7925: use link-specific removal for non-MLD STA
3969bb117161 wifi: mt76: connac: tolerate inactive BSS deactivation
d045c72b294c wifi: mt76: mt792x: add MT7927 WFSYS reset support
b81028de36e8 wifi: mt76: mt792x: factor out common DMA queue allocation
903f8b3bfa02 wifi: mt76: mt7925: switch DMA init to common mt792x queue helpers
79e061f30b0c wifi: mt76: mt792x: add MT7927-specific PCIe DMA support
3e55b6595da9 wifi: mt76: mt7925: sync MT7927 BSS band assignment
b8e20dc9c221 wifi: mt76: mt7925: add MBMC event handling
049633e34b79 wifi: mt76: mt792x: enable CNM ops for MT7927
8a7d31ac92b0 wifi: mt76: mt7925: add MT7927 PCIe support
62956aec1615 wifi: mt76: mt7925: add MT7927 USB support
4ed651794a7f wifi: mt76: mt7925: keep TX BA state in the primary WCID
6cdcb480f32b wifi: mt76: mt7925: pass WCID explicitly to mt7925_mcu_sta_ba()
f142a55342a4 wifi: mt76: mt7925: program BA state on active links
3e54e1c80079 wifi: mt76: mt792x: skip MLD header rewrite for 802.3 encap TX
e588dc4843ab wifi: mt76: mt7925: validate skb length in testmode query
2802466a9440 wifi: mt76: mt7915: validate skb length in txpower SKU query
d8fc8629f2bc wifi: mt76: mt7996: Fix possible token leak in mt7996_tx_prepare_skb()
652740d6f12e wifi: mt76: mt7996: Fix possible NULL pointer dereference in mt7996_mac_write_txwi_80211()
f5f14a017454 Revert "wifi: mt76: disable rx napi before queue cleanup"
1e7ac9bf7764 Revert "wifi: mt76: mt7996: avoid memset overwriting tx_info->control.flags"
934f64710479 wifi: mt76: mt7996: fix reading zeroed info->control.flags after mt76_tx_status_skb_add()
1ba5cc4b4023 wifi: mt76: mt7925: drop redundant chandef.chan NULL check in MT7927 path
02934c3d0726 wifi: mt76: mt7996: remove redundant pdev->bus check in probe
2ab649809db7 wifi: mt76: add wcid publish check in mt76_sta_add
7825972b0a3c wifi: mt76: transform aspm_conf for pci_disable_link_state
c0e41eb57d96 wifi: mt76: mt7996: reduce phy work in set_coverage
e640565e0701 wifi: mt76: mt7996: limit work in set_bitrate_mask
761478b9b1a3 wifi: mt76: connac: use a helper to cache txpower_cur
1e05654e6aec wifi: mt76: connac: factor out rate power limit calculation
994443de60ba wifi: mt76: mt792x: report txpower for the requested vif link
600dbf123399 wifi: mt76: mt792x: add common USB transport reset helpers
91f19ba39348 wifi: mt76: mt7921u: escalate broken USB transport to device reset
03644ac19f9a wifi: mt76: fix argument to ieee80211_is_first_frag()
cd931f9e5fa6 wifi: mt76: mt7996: disable UNI_BSS_INFO_PROTECT_INFO for mt7996
fc890d5b3603 wifi: mt76: mt7921: refactor regulatory domain handling to regd.[ch]
1ec0abf5d9aa wifi: mt76: mt7921: refactor CLC support check flow
cd3d2a68c90c wifi: mt76: mt7921: refactor regulatory notifier flow
06d1ccbecd50 wifi: mt76: mt7921: add auto regdomain switch support
4fb4a076256f wifi: mt76: mt7921: disable auto regd changes after user set
748311faa56c wifi: mt76: mt7915: fix potential tx_retries underflow
ee2bb3337274 wifi: mt76: mt7921: fix potential tx_retries underflow
e791fb66e47c wifi: mt76: mt7925: fix potential tx_retries underflow
9f60dd01e62c wifi: mt76: mt7996: fix potential tx_retries underflow
a3bf7dac3e58 wifi: mt76: mt7921: assert sniffer on chanctx change
72d8dc857443 wifi: mt76: Drop unneeded mt76_register_debugfs_fops() return checks
f8b59ca3be7b wifi: mt76: don't pin undrainable PS stations in the tx scheduler
2dd6e4c8892f firmware: update MT7981 firmware to version 20260515

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agobase-files: derive DHCP DUID from device MAC address
Felix Fietkau [Fri, 19 Jun 2026 14:32:19 +0000 (16:32 +0200)] 
base-files: derive DHCP DUID from device MAC address

The DUID-UUID was generated from a random UUID, which is regenerated on
every fresh flash and therefore does not survive reconfiguration events
such as reflashing without keeping the configuration. RFC8415/RFC6355
prefer a DUID that remains stable across such events.

Add a ucode helper that picks the first LAN port (falling back to WAN)
from /etc/board.json, resolves its MAC address and derives a stable UUID
from it, falling back to a random UUID only when that fails.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agonetifd: expose udhcpc timeout/retry/tryagain UCI options in dhcp.sh
John Crispin [Thu, 16 Apr 2026 12:26:11 +0000 (14:26 +0200)] 
netifd: expose udhcpc timeout/retry/tryagain UCI options in dhcp.sh

proto/dhcp.sh hardcoded `-t 0` (infinite retries) with no way
for UCI / operator to tune per-retry interval (udhcpc -T),
retry count (udhcpc -t) or failure retry-loop wait (udhcpc -A).
Add three new proto config ints (timeout, retry, tryagain)
and thread them into the udhcpc command line. Unset options
preserve existing behaviour: retry defaults to 0, timeout and
tryagain are omitted so udhcpc uses its own RFC defaults.

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agolldpd: resolve bridge VLAN sub-interfaces to member ports
John Crispin [Thu, 12 Mar 2026 13:50:05 +0000 (14:50 +0100)] 
lldpd: resolve bridge VLAN sub-interfaces to member ports

When bridge VLAN filtering is active, network_get_physdev resolves
UCI interface names to the VLAN sub-interface (e.g. br-lanv0) rather
than the bridge master. LLDP frames use reserved multicast
(01:80:c2:00:00:0e) which bridges trap to member ports, so lldpd
must listen on the physical ports to receive them.

Detect when the resolved device is a sub-interface of a bridge and
expand it to the list of bridge member ports instead.

Signed-off-by: John Crispin <john@phrozen.org>
2 weeks agoprocd: update to Git HEAD (2026-06-17)
Felix Fietkau [Wed, 17 Jun 2026 10:01:52 +0000 (12:01 +0200)] 
procd: update to Git HEAD (2026-06-17)

9ff6e43bb75f service: notify instance exit details via ubus
4f42296dc4f0 jail: mount rootfs overlay with userxattr in user namespace
60fdbf00e924 jail: chown rootfs overlay dir to mapped root in user namespace

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agowifi-scripts: make scan output fields conditional
John Crispin [Tue, 17 Mar 2026 11:25:24 +0000 (12:25 +0100)] 
wifi-scripts: make scan output fields conditional

Only print VHT/HE/EHT center frequency and channel width fields
when they are actually populated. This avoids displaying undefined
values for non-6GHz HE results where channel info is derived from
VHT/HT Operation IEs. Also fix center_chan_2 format specifier from
%s to %d.

Signed-off-by: John Crispin <john@phrozen.org>
2 weeks agonetifd: dhcp: add restart command for clean lease re-acquire
John Crispin [Wed, 17 Jun 2026 08:44:57 +0000 (10:44 +0200)] 
netifd: dhcp: add restart command for clean lease re-acquire

Add a proto_dhcp_restart() handler that re-acquires the DHCP lease via a
single ubus call, releasing the previous lease and triggering a fresh
DHCPDISCOVER without bouncing the interface.

The re-acquire is implemented by sending SIGHUP to udhcpc, which releases
the current lease (if any) and immediately transitions the state machine
to INIT_SELECTING so the next main-loop iteration sends a fresh
DHCPDISCOVER. A single signal thus expresses 'release this lease and get
a new one' without exiting the client, so upstream watchdogs (e.g. a
DNS-health monitor) can request a clean re-lease without tearing down the
interface.

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agowifi-scripts: fix EAP STA support in supplicant config generation
John Crispin [Mon, 15 Jun 2026 08:50:16 +0000 (10:50 +0200)] 
wifi-scripts: fix EAP STA support in supplicant config generation

The supplicant config generator read eap_type and auth from UCI for
internal logic but never wrote the corresponding eap= and phase2=
directives to the wpa_supplicant config.

Fix by:
- Generating eap= and phase2= from eap_type/auth for PEAP/TTLS/FAST/TLS
- Adding eap and phase2 to the network_append_vars output list

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agobusybox: enable timeout utility by default
John Crispin [Fri, 23 Jan 2026 07:42:20 +0000 (08:42 +0100)] 
busybox: enable timeout utility by default

Small cost, but can be of use for non-interactive scripts.

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agowifi-scripts: expose connected_time in iwinfo assoclist
John Crispin [Tue, 24 Mar 2026 11:07:46 +0000 (12:07 +0100)] 
wifi-scripts: expose connected_time in iwinfo assoclist

Signed-off-by: John Crispin <john@phrozen.org>
2 weeks agowifi-scripts: fix HE Operation IE parsing in iwinfo scan
John Crispin [Tue, 17 Mar 2026 10:37:00 +0000 (11:37 +0100)] 
wifi-scripts: fix HE Operation IE parsing in iwinfo scan

cell.he was only populated when the 6 GHz Operation Information
sub-element was parsed, making HE invisible to scan results on
2.4/5 GHz bands. Fix this by setting cell.he unconditionally when
HE Operation IE (Extension Element 36) is seen.

Gate 6 GHz channel width parsing on cell.band rather than the HE
Operation Parameters bit field, which proved unreliable on MediaTek
firmware. Fix flag byte offsets in the 6 GHz path: VHT Oper Info
Present (BIT 14) and Co-Hosted BSS (BIT 15) are in byte 1 of
he_oper_params which maps to ext[2], not ext[1].

For non-6GHz bands, derive channel width from the already-parsed
VHT/HT Operation IEs instead of leaving cell.he empty.

Signed-off-by: John Crispin <john@phrozen.org>
2 weeks agonetifd: update to Git HEAD (2026-06-16)
Felix Fietkau [Wed, 17 Jun 2026 08:40:30 +0000 (10:40 +0200)] 
netifd: update to Git HEAD (2026-06-16)

abfaaac65929 netifd: fix const-discard warnings in attr/devtype parsing
52c7db3a2beb bridge: remove kernel member on teardown regardless of device claim state
741fd3c162df bridge: attempt delbr unconditionally on bridge destroy
2909720f8cf1 system-linux: detach device from stale bridge before adding it
67f06ef1600a interface: detach hotplug members on reassignment
bb7f0a456dce interface-ip: skip offlink handling on point-to-point links
c1f9d4df847a system-linux: guard PSE port priority for older kernel headers
b087b0773366 build: prefer libnl-tiny and fix LIBNL detection on reconfigure
b0063715d7ea device: add broadcast_flood bridge port setting
973354a1a6f0 interface: add carrier_loss_delay option
d155e4cefbd9 interface: add restart support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agoutil-linux: update to 2.42.2 23844/head
Thomas Weißschuh [Wed, 17 Jun 2026 08:42:27 +0000 (10:42 +0200)] 
util-linux: update to 2.42.2

Release notes:
https://www.kernel.org/pub/linux/utils/util-linux/v2.42/v2.42.2-ReleaseNotes

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/23844
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agotools: util-linux: update to 2.42.2
Thomas Weißschuh [Wed, 17 Jun 2026 08:42:00 +0000 (10:42 +0200)] 
tools: util-linux: update to 2.42.2

Release notes:
https://www.kernel.org/pub/linux/utils/util-linux/v2.42/v2.42.2-ReleaseNotes

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/23844
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoodhcp6c: update to Git HEAD (2026-06-20)
Hauke Mehrtens [Tue, 23 Jun 2026 23:53:14 +0000 (01:53 +0200)] 
odhcp6c: update to Git HEAD (2026-06-20)

07d324ee7222 odhcp6c: fix handling of RFC6603 Prefix Exclude Option

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agohostapd: fix misplaced radar-detected ubus notification 23815/head
Chad Monroe [Mon, 15 Jun 2026 21:21:02 +0000 (14:21 -0700)] 
hostapd: fix misplaced radar-detected ubus notification

Fixes: 94037ab6b031 ("hostapd: update to 2022-07-29")
Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/23815
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomvebu: set MOX firmware fallback via cmdline 23666/head
Štěpán Dalecký [Fri, 5 Jun 2026 17:04:30 +0000 (19:04 +0200)] 
mvebu: set MOX firmware fallback via cmdline

Newer kernels support applying sysctl keys from the kernel
command line.

Set sysctl.kernel.firmware_config.force_sysfs_fallback=0 in
MOX bootargs to disable firmware sysfs fallback without a
board-specific init script.

Signed-off-by: Štěpán Dalecký <daleckystepan@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23666
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomvebu: add kmod-btmrvl to Turris MOX packages
Štěpán Dalecký [Fri, 5 Jun 2026 15:47:03 +0000 (17:47 +0200)] 
mvebu: add kmod-btmrvl to Turris MOX packages

Turris MOX needs the btmrvl module for its onboard Marvell
Bluetooth controller.

Include kmod-btmrvl in DEVICE_PACKAGES so default images
ship with the required driver.

Signed-off-by: Štěpán Dalecký <daleckystepan@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23666
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomvebu: fix Turris MOX update
Štěpán Dalecký [Fri, 5 Jun 2026 14:02:09 +0000 (16:02 +0200)] 
mvebu: fix Turris MOX update

Turris MOX still upgrades from a legacy SD card image rather than
using the default sysupgrade path for cortexa53 devices.

Route image validation, upgrade handling and config backup through
the legacy_sdcard helpers so sysupgrade writes the correct image
format and preserves settings.

Signed-off-by: Štěpán Dalecký <daleckystepan@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23666
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoqualcommax: ipq807x: Add PCIe support for TP-Link Deco X80-5G 23801/head
Timo Jutila [Sun, 14 Jun 2026 11:12:05 +0000 (14:12 +0300)] 
qualcommax: ipq807x: Add PCIe support for TP-Link Deco X80-5G

Make 5G modem available over PCIe.

Modify dts to enable PCIe.
Adapted based on ipq8072-linkhub-hh500v.dts

Add MHI modules to default X80-5g image

Signed-off-by: Timo Jutila <zutija@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23801
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq807x: Fix w_disable for Deco X80-5G 23800/head
Timo Jutila [Mon, 15 Jun 2026 07:46:14 +0000 (10:46 +0300)] 
qualcommax: ipq807x: Fix w_disable for Deco X80-5G

Change w_disable GPIO to 55. 35 is used in the u-boot as "ONOFF_MODULE 5G",
55 can be found in the stock dts as w_disable

Signed-off-by: Timo Jutila <zutija@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23800
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agopackage: arm-trusted-firmware-tools: add proper patch header 23917/head
Shine [Mon, 22 Jun 2026 13:35:33 +0000 (15:35 +0200)] 
package: arm-trusted-firmware-tools: add proper patch header

A patch was added without proper header.
Add a header that explains what the patch does and its prerequisites.

Fixes: e42e9c8133fbd0dce7abfe1ec696383745448078
Signed-off-by: Shine <4c.fce2@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23917
Signed-off-by: Robert Marko <robimarko@gmail.com>