]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
2 months agoramips: fix kernel decompress error for ELECOM WRC-X1800GS 22520/head
Shiji Yang [Fri, 20 Mar 2026 11:32:03 +0000 (19:32 +0800)] 
ramips: fix kernel decompress error for ELECOM WRC-X1800GS

The bootloader reads the compressed kernel to 0x82000000. We need
to decompress kernel to a different address far from 0x82000000 to
avoid memory overlap.

Fixes: https://github.com/openwrt/openwrt/issues/22270
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22520
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: fix initramfs kernel loadaddr for EAP615-Wall v1 22562/head
Shiji Yang [Sun, 22 Mar 2026 12:12:11 +0000 (20:12 +0800)] 
ramips: fix initramfs kernel loadaddr for EAP615-Wall v1

The kernel load address was changed in commit e2d823d06830 ("ramips:
fix LZMA decompression error for TP-Link EAP615-Wall"). We also need
to relocate the load address for initramfs image so that it can be
booted correctly.

Fixes: e2d823d06830 ("ramips: fix LZMA decompression error for TP-Link EAP615-Wall")
Fixes: https://github.com/openwrt/openwrt/issues/22505
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22562
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agouboot-lantiq: fix C-style comments in AWK scripts 22458/head
Hauke Mehrtens [Tue, 17 Mar 2026 00:06:24 +0000 (01:06 +0100)] 
uboot-lantiq: fix C-style comments in AWK scripts

Modern gawk rejects C-style /* ... */ comments in AWK code, treating
them as regex patterns where '*' has nothing to quantify. Replace all
such comments with AWK-style '#' comments in lantiq_bdi_conf.awk and
lantiq_ram_init_uart.awk.

Also replace the pattern 'if (x) /* comment */ else action' which used
a C comment as a null statement with the equivalent 'if (!x) action'.

Fixes build error:
  awk: error: ? * + or {interval} not preceded by valid subpattern

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Link: https://github.com/openwrt/openwrt/pull/22458
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agogithub: fix claude-code-review running in tag mode for issue_comment
Hauke Mehrtens [Sun, 22 Mar 2026 23:59:06 +0000 (00:59 +0100)] 
github: fix claude-code-review running in tag mode for issue_comment

Without a prompt the action auto-detected mode: tag instead of agent
when triggered via issue_comment, resulting in no review being posted.
Remove the prompt so the action can correctly use its built-in agent
mode with full PR context.

Fixes: c0e75c9de6f2 ("github: add Claude code review workflow triggered by /claude comment")
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agolantiq: xrx200: autoload lantiq_gswip and tag_gswip to fix failsafe mode 22514/head
Benjamin Levine [Fri, 20 Mar 2026 06:07:31 +0000 (06:07 +0000)] 
lantiq: xrx200: autoload lantiq_gswip and tag_gswip to fix failsafe mode

lantiq_gswip and tag_gswip were not loaded during failsafe, leaving the
switch uninitialised. This caused LAN1 port to show no link, making
SSH-based recovery impossible.
Add the autoload flag and include tag_gswip (which was also missing from
the autoload list) so the switch initialises correctly in failsafe mode.

Tested on BT HomeHub 5A (lantiq/xrx200).

Fixes: https://github.com/openwrt/openwrt/issues/22480
Signed-off-by: Benjamin Levine <benjaminmileslevine@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22514
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agogithub: add actions: read permission for CI status in claude-code-review
Hauke Mehrtens [Sun, 22 Mar 2026 20:31:41 +0000 (21:31 +0100)] 
github: add actions: read permission for CI status in claude-code-review

The claude-code-action uses mcp__github_ci__get_ci_status and related
tools to check workflow run status as part of the review. Without
actions: read the GitHub API calls for CI status are rejected.

Fixes: c0e75c9de6f2 ("github: add Claude code review workflow triggered by /claude comment")
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agogithub: remove allowedTools restriction from claude-code-review
Hauke Mehrtens [Sun, 22 Mar 2026 20:28:54 +0000 (21:28 +0100)] 
github: remove allowedTools restriction from claude-code-review

The whitelist was too restrictive, causing permission denials when
Claude tried to use basic tools like Read or Grep to analyse the diff.
Remove it and let the action use its default toolset.

Fixes: c0e75c9de6f2 ("github: add Claude code review workflow triggered by /claude comment")
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agogithub: add Claude code review workflow triggered by /claude comment 22556/head
Hauke Mehrtens [Sun, 22 Mar 2026 03:00:51 +0000 (04:00 +0100)] 
github: add Claude code review workflow triggered by /claude comment

Add claude-code-review.yml using anthropics/claude-code-action@v1.
The review runs when a PR comment containing "/claude" is posted,
avoiding unnecessary API usage on every push.

Uses issue_comment trigger restricted to PR comments only. Only
triggers for users with write access (OWNER, MEMBER, COLLABORATOR)
and when the comment body contains "/claude", preventing any runner
from being allocated for unrelated comments. A short domain hint
steers the review toward OpenWrt embedded Linux conventions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Link: https://github.com/openwrt/openwrt/pull/22556
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agorealtek: gpio: backport rtl9607c gpio support patches 22358/head
Rustam Adilov [Tue, 10 Mar 2026 17:07:18 +0000 (22:07 +0500)] 
realtek: gpio: backport rtl9607c gpio support patches

This commit backports 2 patches that add gpio controller support
to RTL9607C SoCs. It enables us to make use of anything that
can be controlled by GPIO on RTL9607C, like LEDs, buttons and such.

Signed-off-by: Rustam Adilov <adilov@tutamail.com>
Link: https://github.com/openwrt/openwrt/pull/22358
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agostarfive: visionfive2: add CMA entry into board DTS
Zoltan HERPAI [Mon, 2 Jun 2025 22:06:24 +0000 (22:06 +0000)] 
starfive: visionfive2: add CMA entry into board DTS

This entry is present in the SDK kernel and is poked by the bootloader.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 months agostarfive: add uEnv script on VF2 boards
Zoltan HERPAI [Sun, 1 Jun 2025 21:31:52 +0000 (21:31 +0000)] 
starfive: add uEnv script on VF2 boards

Certain versions of the VF2 bootloader require the presence of a
vf2_uEnv.txt in the boot partition to properly load a non-SDK kernel.
Add this file during the SD-card generation.

Known VF2 bootloader versions exhibiting this behaviour are:

U-Boot 2021.10 (Mar 31 2025 - 22:49:46 +0800), Build: jenkins-github_visionfive2_6.12-11

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 months agostarfive: add ubootenv support
Zoltan HERPAI [Sun, 1 Jun 2025 21:34:50 +0000 (21:34 +0000)] 
starfive: add ubootenv support

The VF2 boards store their ubootenv on /dev/mtd1 which is a SPI flash
partition. Add support for reading this partition in uboot-envtools,
and add the package into the VF2 image.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 months agostarfive: add GPIO LEDs to VF1 and VF2
Zoltan HERPAI [Sun, 1 Jun 2025 13:18:38 +0000 (13:18 +0000)] 
starfive: add GPIO LEDs to VF1 and VF2

Both boards have status LEDs, which we can use to
indicate running state.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 months agokernel: bump 6.12 to 6.12.77 22276/head
John Audia [Sat, 14 Mar 2026 00:07:03 +0000 (20:07 -0400)] 
kernel: bump 6.12 to 6.12.77

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

Removed upstream:
  generic/backport-6.12/204-v6.13-resource-Add-resource-set-range-and-size-helpers.patch[1]
  microchipsw/patches-6.12/0098-v7.0-net-sparx5-lan969x-fix-DWRR-cost-max-to-match-hardwa.patch

Manually rebased:
  bcm27xx/patches-6.12/950-0955-hwmon-aht10-Fix-AHT20-initialization.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.77&id=889b5cb678c1ae5a4e1ff3b2c46f06ef4292aa86
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.77&id=6c28aa8dfdf24f554d4c5d4ff7d723a95360d94a

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

Co-authored-by: Shiji Yang <yangshiji66@outlook.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22276
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agokernel: bump 6.12 to 6.12.76
John Audia [Thu, 5 Mar 2026 21:42:13 +0000 (16:42 -0500)] 
kernel: bump 6.12 to 6.12.76

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

Updated checksum only as this release is a simple revert of one patch.

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22276
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agokernel: bump 6.12 to 6.12.75
John Audia [Wed, 4 Mar 2026 22:10:07 +0000 (17:10 -0500)] 
kernel: bump 6.12 to 6.12.75

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

Removed upstream:
  bcm27xx/patches-6.12/950-0225-media-i2c-ov5647-Correct-pixel-array-offset.patch[1]
  bcm27xx/patches-6.12/950-0226-media-i2c-ov5647-Correct-minimum-VBLANK-value.patch[2]
  bcm27xx/patches-6.12/950-0248-media-i2c-ov5647-Sensor-should-report-RAW-color-spac.patch[3]
  qualcommax/patches-6.12/0074-v6.20-clk-qcom-gcc-ipq5018-flag-sleep-clock-as-critical.patch[4]

Manually rebased:
  bcm27xx/patches-6.12/950-0262-mfd-simple-mfd-i2c-Add-configuration-for-RPi-POE-HAT.patch
  bcm27xx/patches-6.12/950-0071-drivers-mfd-sensehat-Add-Raspberry-Pi-Sense-HAT-to-s.patch
  bcm27xx/patches-6.12/950-0516-media-i2c-ov5647-Add-V4L2_CID_LINK_FREQUENCY-control.patch
  lantiq/patches-6.12/101-find_active_root.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.75&id=58f1767ad5c9eda3dd0befddc1843259d46d64fa
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.75&id=ff65571ffae52b65577121e7696bf22156e1928a
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.75&id=fbf2a108ed5eb1c896d3f354bd05314c2e22e78f
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.75&id=b109dd4970a0fc89d54b1198b163f86125dd2977

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

Co-authored-by: Shiji Yang <yangshiji66@outlook.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22276
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agogeneric: config-6.12: update with new symbols
John Audia [Fri, 6 Mar 2026 13:09:32 +0000 (08:09 -0500)] 
generic: config-6.12: update with new symbols

Upstream 2b81db8a7f4475e141a8ffd7cc745ed9f15962df introduced several new
symbols. This commit adds them and also applies alphabetical order via
./scripts/kconfig.pl target/linux/generic/config-6.12

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22276
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agolantiq: fix mtdparsers refcount leak and memory leak
Shiji Yang [Fri, 6 Mar 2026 00:36:01 +0000 (08:36 +0800)] 
lantiq: fix mtdparsers refcount leak and memory leak

Release previously allocated memory and OF node before return.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22276
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: dts: fix ethernet-switch node 22557/head
Markus Stockhausen [Sun, 22 Mar 2026 08:37:06 +0000 (09:37 +0100)] 
realtek: dts: fix ethernet-switch node

RTL93xx devices can no longer find the switch node in the DTS.
Commit 4c92254 ("relocate/retype switch node") refactored the
switch node definition to better align with upstream. Sadly
the redefinition for RTL93xx devices failed.

- RTL83xx: use "switch0: ethernet-switch"
- RTL93xx: use "switch0: switch@1b000000"

Follow up commit 8b969f7 ("drop realtek,smi-address property)
changed the dts lookup sequence for mdio initialization. On
RTL93xx devices it cannot find the switchnode via
of_get_child_by_name(dev->of_node->parent, "ethernet-switch")

Fix the switch node type for RTL93xx

Fixes: 8b969f7 ("drop realtek,smi-address property)
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22557
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: adjust initial vth_min value 22450/head
Jonas Jelonek [Wed, 18 Mar 2026 10:24:19 +0000 (11:24 +0100)] 
realtek: pcs: rtl930x: adjust initial vth_min value

During RX calibration we use a vth_min value of 0 while the SDK always
uses a value of 1 [1]. While we do not know right now which effect this
really has, sync this to the SDK. In worst case we might have an
insufficient calibration result at the moment which usually might be
fine.

[1] https://github.com/plappermaul/realtek-doc/blob/82af3a36b7f65dbe2158fef3a9b71e7aab94315e/sources/rtk-dms1250/src/dal/longan/dal_longan_sds.c#L173

Suggested-by: Bevan Weiss <bevan.weiss@gmail.com>
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: reorder FGCAL code
Jonas Jelonek [Wed, 18 Mar 2026 09:26:16 +0000 (10:26 +0100)] 
realtek: pcs: rtl930x: reorder FGCAL code

The order within the FGCAL code is not optimal. Right now, there's
output printed even in successful cases (which doesn't really help) and
a value is read although it isn't used if the run succeeds. To fix both,
move that below the success loop exit so it's just printed in
non-success case where the information might be helpful.

Suggested-by: Bevan Weiss <bevan.weiss@gmail.com>
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: simplify even/odd writes
Jonas Jelonek [Tue, 17 Mar 2026 20:17:12 +0000 (20:17 +0000)] 
realtek: pcs: rtl930x: simplify even/odd writes

Simplify some register writes being different for even and odd SerDes by
removing if-else and use ternary operator instead. This makes code
shorter and more readable.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: fix calibration check
Jonas Jelonek [Mon, 16 Mar 2026 15:22:55 +0000 (15:22 +0000)] 
realtek: pcs: rtl930x: fix calibration check

Comparing our calibration check with the one in the SDK ([1]), one can
see some discrepancies for which there are no apparent reasons. SGMII
and 1000Base-X are handled equal to XSGMII although they aren't in the
SDK and have different symbol error registers. USXGMII and 10GBase-R are
fine, but other modes are explicitly handled with failure then.

Restructure this by keeping XSGMII alone with its dedicated check (as
the SDK does) and handle all other modes differently. Though the SDK
just skips symbol error check for modes like SGMII, 1000Base-X,
2500Base-X, it was found to be ok to perform a simple check for them
too. Since we have also a default case in the symbol error read
implementation now, we can cover all other modes with default case here
too. As a side-effect, this removes the confusing and probably wrong
failure stating calibration has failed although just the checks were
insufficient.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: fix 10g RX idle waiting
Jonas Jelonek [Mon, 16 Mar 2026 12:10:14 +0000 (13:10 +0100)] 
realtek: pcs: rtl930x: fix 10g RX idle waiting

Our implementation waiting for RX idle signal of a 10G SerDes deviates
from what the SDK does. While we timeout after 100 reads and thus cannot
really control the real time, the SDK times out after 10ms. Adjust that
accordingly by switching the timeout to ktime_* functions with a 10ms
timeout as per the SDK.

While at it, improve the overall style of the function a bit.

Suggested-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: fix symbol error read
Jonas Jelonek [Thu, 5 Mar 2026 21:59:55 +0000 (21:59 +0000)] 
realtek: pcs: rtl930x: fix symbol error read

Fix the symbol error read implementation to be usable for other modes
too. While we handle other modes as 'not supported', the SDK has a
generic read used in the 'default' case. Do the same so we can have
proper 2500Base-X support here and avoid confusing error messages.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: use param instead of register read
Jonas Jelonek [Thu, 5 Mar 2026 22:01:19 +0000 (22:01 +0000)] 
realtek: pcs: rtl930x: use param instead of register read

Instead of performing a dedicated register read we can rely on the mode
that is passed via a parameter to the function. The code flow ensures
that this is the same value in this place.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: fix some harebrained piece of code
Jonas Jelonek [Thu, 5 Mar 2026 21:34:46 +0000 (21:34 +0000)] 
realtek: pcs: rtl930x: fix some harebrained piece of code

Part of the calibration procedure contains some weird and harebrained
piece of code where a specific register write is guarded by a check for
the SerDes mode, otherwise an error is printed. But right after this
if-else block, the exact same write is applied anyway. Remove this
brain-dead piece of code with something meaningful, i.e. reference code
from the SDK [1]. Over there, more writes are applied and a proper check
is in place.

While at it, add some another comment to the code. While it is
honourable to have code developed by someone quite some time ago that
works, it's discouraged to just have code without any explanation
especially if it differs from the SDK.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: limit loop iterations
Jonas Jelonek [Thu, 5 Mar 2026 21:21:39 +0000 (21:21 +0000)] 
realtek: pcs: rtl930x: limit loop iterations

Calibration for RTL930x uses multiple iterations for several checks.
While this is fine and needed, it shouldn't be allowed to run forever in
trust that at some point there will always be a "valid" value causing a
loop exit. This has occured a couple of times, causing the driver to
loop forever in case something doesn't run as expected.

To avoid this (and in general as a good practice) limit the affected
loop to a rough estimate of 10 iterations instead of running possibly
forever. The estimate is based on the fact that under normal conditions
it usually takes 1 or 2 to iterations to succeed, more is likely never
to succeed but 10 gives some reasonable headroom.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: pcs: rtl930x: cleanup code comments and output
Jonas Jelonek [Thu, 5 Mar 2026 21:17:30 +0000 (21:17 +0000)] 
realtek: pcs: rtl930x: cleanup code comments and output

Cleanup some comments in the code by reducing them to the essential and
putting them behind a line in favor of above. Also simplify some output
prints for the same purpose.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22450
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agompc85xx: remove swconfig package 22161/head
Pawel Dembicki [Wed, 25 Feb 2026 20:06:28 +0000 (21:06 +0100)] 
mpc85xx: remove swconfig package

Every devices of mpc85xx was switched to DSA.
Swconfig can be removed.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22161
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agompc85xx: p2020: switch P2020RDB to DSA
Pawel Dembicki [Tue, 24 Feb 2026 08:35:49 +0000 (09:35 +0100)] 
mpc85xx: p2020: switch P2020RDB to DSA

Convert the P2020RDB DTS to DSA for the VSC7385 switch, add port
labels and fixed-link. Update board network defaults, preinit iface,
and compat version, and include the DSA switch kmod in the image.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22161
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: mdio: drop realtek,smi-address property 22236/head
Markus Stockhausen [Sun, 1 Mar 2026 16:34:49 +0000 (17:34 +0100)] 
realtek: mdio: drop realtek,smi-address property

A phy node in the dts has two properties:

- reg: the (overall) address of the phy
- realtek,smi-address: the address of the phy on its bus

This notation does not align with upstream. reg should be the address
of the phy on its bus. But where to get the overall address that is
needed for register writes to the hardware?

Luckily the mdio driver and the hardware design sync the ports and
phys (overall) addresses. Thus derive missing data from the dts port
nodes (below ethernet-ports). To realize this

- carve out the port mapping into a separate function to align with
  the upstream driver.
- do more sanity checks and catch more inconsistencies
- raise more/better errors via dev_err_probe()

With this commit all dts files must be rewritten as follows:

- if phy has no realtek,smi-address leave it as is
- if phy has realtek,smi-address, write that value into the reg
  property and drop realtek,smi-address.

Remark: This commit might bring some confusion about the phyXX and
phy@YY and <reg=YY> naming convention. To be somehow consistent with
the current port/phy identifiers from now on the dts will have:

- phyXX: where XX matches the port number
- phy@YY: where YY is the phy address on the mdio bus
- <reg=YY>: where YY is the phy address on the mdio bus

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22236
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agorealtek: dts: relocate/retype switch node
Markus Stockhausen [Mon, 9 Mar 2026 15:39:11 +0000 (16:39 +0100)] 
realtek: dts: relocate/retype switch node

The switch node is currently located outside of the switchcore@1b000000
tree. This makes it hard to find when referencing from other nodes in
this tree. Make it a subnode of switchcore and "retype" it to
ethernet-switch like upstream does.

This is not perfectly aligned as upstream just mixes the switchcore and
the ethernet-switch node into one. But this will be future work for
downstream.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22236
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agorealtek: dts: normalize Zyxel XGS1x10 DTS
Markus Stockhausen [Mon, 9 Mar 2026 09:50:44 +0000 (10:50 +0100)] 
realtek: dts: normalize Zyxel XGS1x10 DTS

The Zyxel XGS1x10 DTS overzealously tries to avoid redundancies. For
this the phy24/phy25 definitions were split into a common and a device
specific part. Understanding how these phys are defined is therefore
a little bit tricky. Add a little bit of redundancy to make the
definitions easier to read and understand in a single location.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22236
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agouboot-envtools: ipq60xx: add support for JDCloud devices 21787/head
Fire Chen [Sat, 7 Feb 2026 02:27:19 +0000 (10:27 +0800)] 
uboot-envtools: ipq60xx: add support for JDCloud devices

Add uboot-envtools support for JDCloud RE-CS-02 RE-CS-07 and RE-SS-01

Signed-off-by: Fire Chen <firedevel@icloud.com>
Link: https://github.com/openwrt/openwrt/pull/21787
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agoqualcommax: ipq60xx: add Link NN6000v1/v2 support
Fire Chen [Sat, 7 Feb 2026 02:26:56 +0000 (10:26 +0800)] 
qualcommax: ipq60xx: add Link NN6000v1/v2 support

NN6000v1 Specifications:
SoC:     Qualcomm IPQ6000 1.2GHz
RAM:     K4B4G1646E-BCMA 512MiB x2 = 1 GiB
Flash:   FORESEE 256GB eMMC
ETH:     QCA8075 (2x LAN, 1x WAN)
WLAN1:   QCN5022 2.4GHz AX 2x2
WLAN2:   QCN5052 5GHz AX 2x2
Power:   DC 12V
Button:  Reset, Wps
USB:     1x 3.0

NN6000v2 Specifications:
SoC:     Qualcomm IPQ6000 1.2GHz
RAM:     MT41K512M16VRN-107 IT:P 1GiB x2 = 2 GiB
Flash:   FORESEE 256GB eMMC
ETH:     QCA8075 (4x LAN, 1x WAN)
WLAN1:   QCN5022 2.4GHz AX 2x2
WLAN2:   QCN5052 5GHz AX 2x2
Power:   DC 12V
Button:  Reset, Wps
USB:     1x 3.0

Install via UART:
  1. Download the initramfs image, rename it to
     initramfs.itb, host it with the tftp server.
  2. Interrupt U-Boot and run these commands:
     tftpboot initramfs.itb
     bootm
  3. After openwrt boots up, use scp or luci web
     to upload sysupgrade.bin to upgrade.
Install via Uboot WebUI:
   - Only work when you flash a custom uboot with webui
   - Push the reset button for 5 seconds, then use broswer to
     access http://192.168.1.1/, then upload factory.bin.

Signed-off-by: Fire Chen <firedevel@icloud.com>
Link: https://github.com/openwrt/openwrt/pull/21787
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agohostapd: update to 2026-03-19 22517/head
Nick Hainke [Fri, 20 Mar 2026 09:58:20 +0000 (10:58 +0100)] 
hostapd: update to 2026-03-19

Remove upstreamed patch:
- 001-PASN-Fix-the-compilation-errors-without-CONFIG_PASN.patch

Add patch:
- 001-RSN-Fix-pmksa_cache_flush-prototype-mismatch-in-non-.patch

Link: https://github.com/openwrt/openwrt/pull/22517
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 months agohostapd: fix memory leak in rrm ubus interface 22538/head
Vladimir Palevich [Fri, 20 Mar 2026 20:46:04 +0000 (21:46 +0100)] 
hostapd: fix memory leak in rrm ubus interface

Add missing wpabuf_free calls to the hostapd_rrm_nr_set and
hostapd_rrm_beacon_req functions.

Signed-off-by: Vladimir Palevich <palevichva@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22538
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 months agosunxi: add PineCube support
Zoltan HERPAI [Mon, 6 Oct 2025 21:09:32 +0000 (21:09 +0000)] 
sunxi: add PineCube support

PineCube is a low-powered, open source IP camera with OV5640.

Specifications:
SoC:      Allwinner S3 Cortex-A7
DRAM:     128MB DDR3 integrated
Power:    microUSB
Storage:  microSD / 16MByte SPI flash
USB:      1x 2.0
Network:  10/100Mbit ethernet with passive PoE (4-18V)
Wireless: RTL8189ES (unsupported)
Debug:    Serial UART on 26-pin GPIO
Features: 5 mpx OV5640 camera, microphone, IR LEDs

Flashing instructions:
Standard sunxi SD card installation procedure - copy image to SD card,
insert into SD card slot on the device and boot.

Link: https://github.com/openwrt/openwrt/pull/22422
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 months agoipq40xx: add CONFIG_NVMEM_BLOCK 22539/head
Rosen Penev [Sat, 21 Mar 2026 00:45:39 +0000 (17:45 -0700)] 
ipq40xx: add CONFIG_NVMEM_BLOCK

NVMEM on MMC was added in dts but the corresponding option was not added
to the config.

Fixes: ee5999c ("treewide: linksys: use nvmem MAC for hw_mac_addr")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22539
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agoramips: kernel: drop ip_fast_csum() dead loop fix 22525/head
Shiji Yang [Fri, 20 Mar 2026 16:53:00 +0000 (00:53 +0800)] 
ramips: kernel: drop ip_fast_csum() dead loop fix

The issue described in the patch has been fixed by commit
604355e8c4d1 ("kernel: fix fraglist GRO on linux 6.12")

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22525
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 months agoramips: mt76x8: disable ICPlus PHY driver 22519/head
Shiji Yang [Fri, 20 Mar 2026 11:05:33 +0000 (19:05 +0800)] 
ramips: mt76x8: disable ICPlus PHY driver

The initial mt76x8 kernel config file was inherited from mt7620
sub-target. However, This SoC series doesn't support any external
PHY. We can disable CONFIG_ICPLUS_PHY symbol to reduce kernel size.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22519
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoairoha: backport some missing airoha_eth upstream patches 22479/head
Lorenzo Bianconi [Wed, 18 Mar 2026 11:16:49 +0000 (12:16 +0100)] 
airoha: backport some missing airoha_eth upstream patches

Backport more upstream patch to include all the fixes pushed upstream and
add all the preliminary patch for multi-serdes support.

While at it also move 2 patch in the 6xx numbering to the 000-1xx backport
numbering to keep things tidy.

All the affected patch manually and automatically refreshed.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
[ add comment, renumber patch, add more patch, fix PCS patch ]
Link: https://github.com/openwrt/openwrt/pull/22479
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agogeneric: backport new field_prep()/get() helper for non-const bitmask
Christian Marangi [Thu, 19 Mar 2026 16:09:49 +0000 (17:09 +0100)] 
generic: backport new field_prep()/get() helper for non-const bitmask

Backport new field_prep()/get() particularly useful to handle case where a
bitmask is not const and FIELD_PREP can't be used. This permit to replace
manual shift with these macro. (also needed to permit backport of some
patch without modification)

Backport reworked patch that drop the local field_prep()/get() macro in
favor of the global one.

Link: https://github.com/openwrt/openwrt/pull/22479
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agoairoha: renumber ASoC and PCS patch for more backport patch
Christian Marangi [Thu, 19 Mar 2026 15:46:40 +0000 (16:46 +0100)] 
airoha: renumber ASoC and PCS patch for more backport patch

Renumber ASoC and PCS patch to 2xx and 3xx numbering to leave space for
more backport patch in the 000-1xx numbering.

Link: https://github.com/openwrt/openwrt/pull/22479
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agoath79: untag to cpu ports on qxwlan_e558-v2 22510/head
Edward Chow [Fri, 20 Mar 2026 03:01:43 +0000 (11:01 +0800)] 
ath79: untag to cpu ports on qxwlan_e558-v2

These targets seems to be left over, so changed as other targets
covered by commit d35d92a .

Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/22510
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agowifi-scripts: ucode: use correct antenna count for SU beamformee 22511/head
Andrew Sim [Fri, 20 Mar 2026 05:21:26 +0000 (06:21 +0100)] 
wifi-scripts: ucode: use correct antenna count for SU beamformee

The hostapd configuration for SU-BEAMFORMEE was incorrectly using the
beamformer antenna count instead of the beamformee antenna count for the
[BF-ANTENNA-N] capability string.

Fix this by using config.beamformee_antennas instead.

Signed-off-by: Andrew Sim <andrewsimz@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22511
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agoairoha: Add PCIe sub-nodes for NPU wifi offloading 22516/head
Lorenzo Bianconi [Thu, 19 Mar 2026 10:42:37 +0000 (11:42 +0100)] 
airoha: Add PCIe sub-nodes for NPU wifi offloading

Introduce missing PCIe sub-nodes required to enable NPU wifi offloading
on Airoha AN7581 SoC.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/22516
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agomac80211: ath9k: patch hw.c for gpio mask from dt 22376/head
Edward Chow [Wed, 11 Mar 2026 08:19:26 +0000 (16:19 +0800)] 
mac80211: ath9k: patch hw.c for gpio mask from dt

"qca,gpio-mask" used to be read between ath9k_hw_init() and
ath9k_init_queues(). After 12913c3c5658992985e13f4395dee86e5450154d
it is read in ath9k_of_init(), but it gets overwritten by
ath9k_gpio_cap_init() during the call of ath9k_hw_init(), and causes
https://github.com/openwrt/openwrt/issues/22340

If keeping the most of 12913c3c5658992985e13f4395dee86e5450154d,
ath9k_gpio_cap_init() could be patched to keep the existing non-zero
gpio mask (coming from device tree).

Tested on Netgear WNDR4500 v3:
[   22.558083] ath9k 0000:00:00.0: enabling device (0000 -> 0002)
[   22.569548] ath: phy1: Use overridden gpio mask 0xf6ff

Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/22376
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agotools/erofs-utils: assign PKG_CPE_ID 22425/head
Fabrice Fontaine [Sat, 14 Mar 2026 19:55:40 +0000 (20:55 +0100)] 
tools/erofs-utils: assign PKG_CPE_ID

cpe:/a:erofs-utils_project:erofs-utils is the correct CPE ID for erofs-utils:
https://nvd.nist.gov/products/cpe/search/results?keyword=cpe:2.3:a:erofs-utils_project:erofs-utils

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22425
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agorealtek: clk: add rtl9607 clock support 22080/head
Rustam Adilov [Wed, 18 Feb 2026 15:26:42 +0000 (20:26 +0500)] 
realtek: clk: add rtl9607 clock support

This commit adds support for RTL9607C/RTL8198D clocks to the existing
clk-rtl83xx driver. Setting clock rates is not supported due to
lack of knowledge on this topic at the moment. Clocks for CPU1, SRAM
and SPI can also be calculated but not included in this commit.

Since the registers, calculations are widely different to RTL83XX it
was decide to have different clk_ops for RTL960X.

The code was partly based on naseef's work with some changes to
integrate it into the clk-rtl83xx driver.

Tested-by: Ahmed Naseef <naseefkm@gmail.com>
Signed-off-by: Rustam Adilov <adilov@tutamail.com>
Link: https://github.com/openwrt/openwrt/pull/22080
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agobase-files: sysupgrade: avoid cat missing conffiles_static 22071/head
Nick Hainke [Tue, 17 Feb 2026 23:42:43 +0000 (00:42 +0100)] 
base-files: sysupgrade: avoid cat missing conffiles_static

If the user removes all /lib/apk/packages/*.conffiles* files to prevent
sysupgrade from preserving configuration, the glob no longer matches and
sysupgrade ends up calling cat on a non-existent path:

  cat: can't open '/lib/apk/packages/*.conffiles_static': No such file or directory

Fix this by using find cmd.

Signed-off-by: Nick Hainke <vincent@systemli.org>
Link: https://github.com/openwrt/openwrt/pull/22071
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoath79: untag to cpu ports on 2-cpu-port devices by default 19444/head
Edward Chow [Thu, 17 Jul 2025 11:29:10 +0000 (19:29 +0800)] 
ath79: untag to cpu ports on 2-cpu-port devices by default

Currently, devices having two cpu ports to the switch managed by swconfig,
especally those with qca955x, line tplink archer c7 v2 and linksys ea4500 v3,
use vlan on different cpu port to separate networks by default. (e.g. eth1.1
for lan, eth0.2 for wan)

However, untagging to these vlans cpu ports, and limiting vlans in the switch
on these devices could effectively offload the expense to process vlan tag from
cpu to the switch, and increase the throughput of lan <-> wan ipoe routing.

Tested on my tplink tl-wdr4900 v2, where ucidef_add_switch "switch0"
"0u@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6u@eth0" "1:wan" finally generates
on /etc/config/network:

config device
option name 'br-lan'
option type 'bridge'
list ports 'eth1'

config interface 'lan'
option device 'br-lan'
option proto 'static'
list ipaddr '192.168.1.1/24'
option ip6assign '60'

config interface 'wan'
option device 'eth0'
option proto 'dhcp'

config interface 'wan6'
option device 'eth0'
option proto 'dhcpv6'

config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'

config switch_vlan
option device 'switch0'
option vlan '1'
option ports '2 3 4 5 0'

config switch_vlan
option device 'switch0'
option vlan '2'
option ports '1 6'

and the throughput of lan <-> wan ipoe routing with software flow offload
increases from around
[850 Mbps](https://openwrt.org/toh/tp-link/archer-c5-c7-wdr7500#nat_performance)
to 900 Mbps.

Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/19444
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agomt76: remove incompatible patch
David Bauer [Thu, 19 Mar 2026 16:30:41 +0000 (17:30 +0100)] 
mt76: remove incompatible patch

This patch became incompatible as the depending patches have been
reverted.

Signed-off-by: David Bauer <mail@david-bauer.net>
2 months agomt76: update to Git HEAD (2026-03-19)
Felix Fietkau [Thu, 19 Mar 2026 12:33:56 +0000 (12:33 +0000)] 
mt76: update to Git HEAD (2026-03-19)

b7d6e434382a wifi: mt76: add offchannel check to mt76_roc_complete
35e79a5bb199 wifi: mt76: check chanctx before restoring channel after ROC
42955db08adf wifi: mt76: abort ROC on chanctx changes
273c6f60cc8e wifi: mt76: optimize ROC for same-channel case
b451ffe2c0c1 wifi: mt76: send nullfunc PS frames on offchannel transitions
757d4404487d wifi: mt76: flush pending TX before channel switch
da6d90e4f66a wifi: mt76: route nullfunc frames to PSD/ALTX queue
447cc8c89c17 wifi: mt76: wait for firmware TX completion of mgmt frames before channel switch
fb6a584e7119 wifi: mt76: add per-link beacon monitoring for MLO
ab6abc97132b wifi: mt76: fix scan work requeue race with spinlock
d2b1e1aa8ec4 wifi: mt76: do not free skb on ieee80211_tx_prepare_skb failure
94017d560bad wifi: mt76: mt7996: Remove link pointer dependency in mt7996_mac_sta_remove_links()
754e3af4d131 wifi: mt76: mt7996: Fix deflink lookup removing links
42964c80d2d7 wifi: mt76: mt7996: Fix deflink lookup adding links
a87f63e269e4 wifi: mt76: mt7996: Remove unnecessary phy filed in mt7996_vif_link struct
ca058da77830 wifi: mt76: mt792x: describe USB WFSYS reset with a descriptor
2e2962f9e19e wifi: mt76: mt792x: fix mt7925u USB WFSYS reset handling
82c56dd7c1ec wifi: mt76: mt7996: fix RRO EMU configuration
616439131793 wifi: mt76: mt7996: support critical packet mode for MT7990 chipsets
9b6cc2ba6625 wifi: mt76: mt7996: update WFSYS reset flow for MT7990 chipsets
4edbdf38c68e wifi: mt76: mt7996: adjust timeout value for boot-up calibration commands
b4ec73b3355e wifi: mt76: mt7996: fix the temporary buffer for calibration-free data
3a16c78c9e06 wifi: mt76: mt7996: fix issues with manually triggered radar detection
bada63e285ad wifi: mt76: mt7915: set mt76 specific PS flag
99e8e3cb9804 wifi: mt76: mt7925: pass mlink to sta_amsdu_tlv()
f716cf9b6e16 wifi: mt76: mt7925: pass WCID indices to bss_basic_tlv()
aac117362eed wifi: mt76: mt7925: pass mlink and mconf to sta_mld_tlv()
dce1e6e4ceca wifi: mt76: mt7925: pass mlink to mcu_sta_update()
b7fee4e5e5b4 wifi: mt76: mt7925: resolve primary mlink via def_wcid
130184621d20 wifi: mt76: mt7925: pass mlink to mac_link_sta_remove()
ea1a80f7cf5e wifi: mt76: mt7925: pass mlink to sta_hdr_trans_tlv()
5eb53c948beb wifi: mt76: mt7925: validate mlink in sta_hdr_trans_tlv()
6e66c08ac0c6 wifi: mt76: mt7925: pass mlink to wtbl_update_hdr_trans()
826ecd386bf0 wifi: mt76: mt7925: pass mlink to set_link_key()
3b1e74d14b4e wifi: mt76: mt7925: resolve link after acquiring mt76 mutex
6c64c41fccec wifi: mt76: mt7925: pass mconf and mlink to wtbl_update_hdr_trans()
215e122415d4 wifi: mt76: mt7925: make WCID cleanup unconditional in sta_remove_links()
98cb4c0f5d7c wifi: mt76: mt7925: unwind WCID setup on link STA add failure
471d6b3404c8 wifi: mt76: mt7925: drop WCID reinit after publish
9cbcc7e59d32 wifi: mt76: mt7925: move WCID teardown into link_sta_remove()
9fbe29ba429e wifi: mt76: mt7925: switch link STA allocation to RCU lifetime
8be727730640 wifi: mt76: mt7925: publish msta->link after successful link add
2cdcad1bb688 wifi: mt76: mt7925: host-only unwind published links on add failure
24c298a04f09 Revert "wifi: mt76: mt7915: set mt76 specific PS flag"
ca81c5c18ec8 Revert "wifi: mt76: mt7915: sync station power save state"
39c960c3ada5 wifi: mt76: mt7996: fix frequency separation for station STR mode

Fixes: https://github.com/openwrt/mt76/issues/1068
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agomac80211: rt2x00: remove swap binding 22207/head
Rosen Penev [Tue, 3 Mar 2026 23:12:03 +0000 (15:12 -0800)] 
mac80211: rt2x00: remove swap binding

No longer used. If swapping is desired, ralink,mtd-eeprom can be used.
Otherwise nvmem.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22207
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agolantiq: convert ralink,mtd-eeprom to nvmem
Rosen Penev [Thu, 26 Feb 2026 04:27:50 +0000 (20:27 -0800)] 
lantiq: convert ralink,mtd-eeprom to nvmem

These devices use the binding + eeprom-swap. Turns out the reason swap
is needed is because the binding wrongly swaps the data on big endian
hosts. NVMEM doesn't do this and thus just works.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22207
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agohostapd: ubus: fix parent-tsf size in beacon report notification
Felix Fietkau [Thu, 19 Mar 2026 09:38:36 +0000 (09:38 +0000)] 
hostapd: ubus: fix parent-tsf size in beacon report notification

parent_tsf in struct rrm_measurement_beacon_report is le32 (32-bit),
but was being added with blobmsg_add_u16, truncating the value.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agohostapd: ubus: add missing token to beacon report notification
Felix Fietkau [Thu, 19 Mar 2026 09:38:21 +0000 (09:38 +0000)] 
hostapd: ubus: add missing token to beacon report notification

The beacon measurement token was not included in the ubus beacon-report
notification, causing consumers that need the token (e.g. for constructing
Beacon Metrics Response TLVs) to receive null.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agomac80211: fix reporting MLO link ID for non-MLO STAs on MLO AP
Felix Fietkau [Thu, 19 Mar 2026 04:48:28 +0000 (04:48 +0000)] 
mac80211: fix reporting MLO link ID for non-MLO STAs on MLO AP

Add missing information on station dump/get

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agohostapd: fix type mismatch in BSS transition responses
Felix Fietkau [Wed, 18 Mar 2026 18:42:06 +0000 (18:42 +0000)] 
hostapd: fix type mismatch in BSS transition responses

Use blobmsg_add_u32 for non-bool fields in order to avoid wrong
interpretations of the data on JSON/ucode conversion.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agohostapd: ubus: fix beacon request reporting detail field size
Felix Fietkau [Wed, 18 Mar 2026 15:58:52 +0000 (15:58 +0000)] 
hostapd: ubus: fix beacon request reporting detail field size

The Reporting Detail value is a 1-byte field, but was written as le16,
producing a 2-byte write that also contradicts the length field of 1
in the subelement header.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agohostapd: ubus: fix beacon request buffer overflow with reporting detail
Felix Fietkau [Wed, 18 Mar 2026 15:58:37 +0000 (15:58 +0000)] 
hostapd: ubus: fix beacon request buffer overflow with reporting detail

The reporting detail subelement (up to 3 bytes) was not accounted for
in the wpabuf allocation, causing a crash when reporting_detail is set
to a valid value (0, 1, or 2).

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 months agoramips: cpe200: fix eeprom size 22459/head
Rosen Penev [Tue, 17 Mar 2026 03:24:01 +0000 (20:24 -0700)] 
ramips: cpe200: fix eeprom size

A size of 600 is incomplete in that calibration data is not included,
resulting in low TX power.

Fixes: 64dae105 ("ramips: mt76x8: add support for Yuncore CPE200")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22459
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agowifi-scripts: fix hostapd config for 160MHz 22482/head
Shine [Wed, 18 Mar 2026 20:08:38 +0000 (21:08 +0100)] 
wifi-scripts: fix hostapd config for 160MHz

After 02e2065203c5e6c95f88e3501644d3e6ad740f89, it can happen that both,
[VHT160-80PLUS80] and [VHT160] are added to the vht_capab option in
an AP's hostapd.conf, which would cause a failure to start the AP.

Fix the logic in order to prevent such misconfiguration.

Fixes: #22481
Signed-off-by: Shine <4c.fce2@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22482
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoramips: dir-3040-a1: fix MAC address assignment 21977/head
Rosen Penev [Wed, 11 Feb 2026 00:29:33 +0000 (16:29 -0800)] 
ramips: dir-3040-a1: fix MAC address assignment

The dtsi used handles a bunch of non-DBDC platforms where the
assignments are correct. The 3040-a1 is different as there are 3 instead
of 2 wifi interfaces and WAN needs to be incremented by 1.

Remove userspace wifi assignmwent which was needed before per band nvmem
was supported.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21977
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoairoha: an7581: fix interface selection script for Nokia Valyrian
Christian Marangi [Wed, 18 Mar 2026 08:27:30 +0000 (09:27 +0100)] 
airoha: an7581: fix interface selection script for Nokia Valyrian

While rebasing, a typo was made where the ';;' terminator was omitted in
the 02_network script. Add it to restore script functionality.

Fixes: e210d994faa5 ("airoha: an7581: add Nokia Valyrian support")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agomediatek: update Tenda BE12 Pro support 22060/head
Chukun Pan [Fri, 30 Jan 2026 12:16:28 +0000 (20:16 +0800)] 
mediatek: update Tenda BE12 Pro support

- Update network port names based on the shell

- Fix boot log errors:
  OF: /soc/pcie@11280000/pcie@0,0: Missing device_type

- Match vendor firmware Ethernet and wireless MAC addresses

  LAN MAC 50:xx:xx:xx:xx:60
  WAN MAC 50:xx:xx:xx:xx:61
  2G  MAC 50:xx:xx:xx:xx:63
  5G  MAC 50:xx:xx:xx:xx:65

Fixes: 7d79346581 ("mediatek: filogic: add support for Tenda BE12 Pro")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/22060
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2 months agoairoha: an7581: add Nokia Valyrian support 21761/head
Christian Marangi [Wed, 28 Jan 2026 19:56:53 +0000 (20:56 +0100)] 
airoha: an7581: add Nokia Valyrian support

Add support for Nokia Valyrian based on Airoha AN7581 SoC.

Device specification
--------------------
SoC Type: Airoha AN7581
RAM: 2x DDR4 Nanya NT5AD256M16E4-JR (1GB)
Flash: eMMC Macronix MX52LM08A11XVW (1GB)
Ethernet: 3x gigabit via AN7581, 1x 10g via AS21x1x, 1x SFP cage
Wi-Fi: MT7996 - BE19000
LEDs: 11 LED via 2x 74HC595 shift register
Button: Reset, WPS, WiFi
USB ports: 1x 2.0
Miscellaneous:  1x Power Monitor via RTQ6059, 2x FXS port

Device is unfused and is originally flashed with Airoha SDK bootloader
that require signed images.

Bootloader is username/password protected and use the leaked auth combo
that can be found online.

From the bootloadet instruction on how to flash custom bootloader are:
1. mmc erase 0 0x800
2. tftpboot 192.168.1.10:airoha/an7581/openwrt-airoha-an7581-nokia_valyrian-preloader.bin
3. mmc write $loadaddr 0x4 0xfc
4. tftpboot 192.168.1.10:airoha/an7581/openwrt-airoha-an7581-nokia_valyrian-bl31-uboot.fip
5. mmc write $loadaddr 0x100 0x700

It's also possible to use the Emergency Recovery procedure:
From powered OFF device:
1. Keep the reset button pressed (middle button)
2. Power on the device
3. Notice the "Press x" prompt
4. Press x
5. Notice the "C" char waiting for XMODEM load
6. Load the preloader binary with XMODEM protocol
7. Notice the "Press x to load BL31 + U-Boot FIP"
8. Press x
9. Notice the "C" char waiting for XMODEM load
10. Load the fip binary with XMODEM protocol
11. You are now in U-Boot loaded from serial
12. Follow normal procedure to flash bootloader

Due to BOOTROM limitation. the device can't have a standard GPT table
implementation. Because of this fixed-partitions are used to handle this.

U-Boot still doesn't have support for this (it's planned) and currently to flash
and load and image it's needed to write and read from static address in eMMC.

The GPT partition table follow Prpl guidelines with dual partition table with
kernel and rootfs split.

The address for kernel is 0xb00000 and the address for rootfs is 0x1b00000.

Link: https://github.com/openwrt/openwrt/pull/21761
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agouboot-airoha: Add support for Nokia Valyrian
Christian Marangi [Thu, 5 Feb 2026 18:59:47 +0000 (19:59 +0100)] 
uboot-airoha: Add support for Nokia Valyrian

Add support for Nokia Valyrian device that implement similar spec of an
Airoha AN7581 RFB board.

Link: https://github.com/openwrt/openwrt/pull/21761
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 months agolinux-firmware: ath11k: add IPQ5018, IPQ8074, QCN9074 21833/head
Paweł Owoc [Thu, 22 Jan 2026 11:44:55 +0000 (12:44 +0100)] 
linux-firmware: ath11k: add IPQ5018, IPQ8074, QCN9074

Use linux-firmware repository for IPQ5018, IPQ8074 and QCN9074.
All officially released firmware versions are available there.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21833
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoodhcpd: update to Git HEAD (2026-03-16) 22454/head
Álvaro Fernández Rojas [Mon, 16 Mar 2026 18:07:36 +0000 (19:07 +0100)] 
odhcpd: update to Git HEAD (2026-03-16)

160e5fa3957c odhcpd: ensure zero padding on DNSSL
2a316dbfd798 odhcpd: ignore NULL in dhcpv4_free_lease() stub
b960d4cbe27b ubus: fix truncated field in DHCPv6 lease query
4e26e1361335 dhcpv4: fix avl_delete on leases not in avl tree
ea5af5bffa2d dhcpv4: fix segfault when disabling interface

https://github.com/openwrt/odhcpd/compare/13cec018c0d9...160e5fa3957c

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22454
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoiptables: prefer nft variants over zz-legacy 22448/head
Eric Fahlgren [Mon, 16 Mar 2026 15:26:03 +0000 (08:26 -0700)] 
iptables: prefer nft variants over zz-legacy

Set the default variant on "iptables-nft" and "ip6tables-nft" to
make them the preferred package when "iptables" is installed as
a dependency.

Link: https://github.com/openwrt/packages/issues/28815
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22448
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agowifi-scripts: fix [VHT160]/[VHT160-80PLUS80] usage 22436/head
Miika Sundström [Sun, 15 Mar 2026 16:40:42 +0000 (18:40 +0200)] 
wifi-scripts: fix [VHT160]/[VHT160-80PLUS80] usage

Don't set vht_capab [VHT160] or [VHT160-80PLUS80] when the AP is not
configured to operate in 160 MHz. Fixes an issue degrading station
upload speed.

Fixes: https://github.com/openwrt/openwrt/issues/22435
Signed-off-by: Miika Sundström <mitasun@utu.fi>
Link: https://github.com/openwrt/openwrt/pull/22436
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: fix for Keenetic KN-1910 22311/head
Esat Yiğithan GÖKTOPRAK [Mon, 16 Mar 2026 17:38:00 +0000 (20:38 +0300)] 
ramips: fix for Keenetic KN-1910

Set nand flash for KN-1910

Sysupgrade or any other method i tried (asu, owut) not working without it. Tested with a local build.

Signed-off-by: Esat Yiğithan GÖKTOPRAK <eygoktoprak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22311
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: mt76x8: fix bootcount init script file permissions 22446/head
Oliver Sedlbauer [Mon, 16 Mar 2026 09:27:38 +0000 (10:27 +0100)] 
ramips: mt76x8: fix bootcount init script file permissions

The bootcount init script is missing the executable bit (644 instead of 755),
causing the script to not be executable:

  /etc/preinit: line 44: /etc/init.d/bootcount: Permission denied

Fixes: c3b8108a2be4 ("ramips: Add support for Xiaomi MiWiFi 3A")
Signed-off-by: Oliver Sedlbauer <os@dev.tdt.de>
Link: https://github.com/openwrt/openwrt/pull/22446
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agolantiq: adapt gpio-stp-xway node name to get clock 22444/head
Hauke Mehrtens [Mon, 16 Mar 2026 01:40:09 +0000 (02:40 +0100)] 
lantiq: adapt gpio-stp-xway node name to get clock

The MIPS code assigns the clock node based on the device tree node name.
This name was renamed with kernel 6.12.58 and v6.6.117. Adapt our out of
tree device tree files to this rename to fix loading the STP GPIO
driver.

Without this fix the driver fails like this:
```
[    0.320000] gpio-stp-xway 1e100bb0.stp: Failed to get clock
[    0.330000] gpio-stp-xway 1e100bb0.stp: probe with driver gpio-stp-xway failed with error -2
```

Link: https://git.kernel.org/linus/b0d04fe6a633ada2c7bc1b5ddd011cbd85961868
Fixes: https://github.com/openwrt/openwrt/issues/21697
Co-Authored-By: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22444
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agowifi: mt76: mt7915: set mt76 specific PS flag
David Bauer [Sun, 15 Mar 2026 16:47:15 +0000 (17:47 +0100)] 
wifi: mt76: mt7915: set mt76 specific PS flag

mt76 tracks the PSM state of a sta internally with a wcid flag. TX to
such clients is skipped based on the presence of this flag.

This flag was not added to the PS state notify handler for MT7915 chips.
Without this flag, mt76 queues pending frames to the hardware,
accounting for airtime when a PSM notification is received while in a TX
iteration.

Set the PS flag for the STA WCID to prevent this from happening. TX gets
skipped in presence of this flag.

Link: https://patchwork.kernel.org/project/linux-wireless/patch/20260313112502.2026974-1-mail@david-bauer.net/
Signed-off-by: David Bauer <mail@david-bauer.net>
2 months agoairoha: rename kmod-pwm-an7581 to kmod-pwm-airoha 22445/head
Kenneth Kasilag [Mon, 16 Mar 2026 09:25:53 +0000 (09:25 +0000)] 
airoha: rename kmod-pwm-an7581 to kmod-pwm-airoha

Certain targets for an7581 and an7583 referred to kmod-pwm-airoha;
however in the target modules makefile the module is referred to
as kmod-pwm-an7581, causing buildbot to fail.

Change the name of kmod-pwm-an7581 to kmod-pwm-airoha to resolve this.

Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me>
Link: https://github.com/openwrt/openwrt/pull/22445
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoapk: add help text for 'apk add --force-reinstall' 22426/head
Hannu Nyman [Sat, 14 Mar 2026 20:40:30 +0000 (22:40 +0200)] 
apk: add help text for 'apk add --force-reinstall'

Add a help text for the new --force-reinstall option, so that users
will actually find the new option.

(Also refresh patches)

Improves: 91cff1a "apk: add --force-reinstall option"

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/22426
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoairoha: an7581: fix w1700k fan script 22391/head
Andrew LaMarche [Thu, 12 Mar 2026 13:22:03 +0000 (13:22 +0000)] 
airoha: an7581: fix w1700k fan script

W1700K fan script is missing the #!/bin/sh /etc/rc.common shebang and
requires execution bits set. Also, set the fallback to hwmon 3 instead
of 5, since the new RTL PHY driver was not merged.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22391
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agoipq40xx: enable Devolo Magic 2 WiFi next 22123/head
Julius Schwartzenberg [Thu, 19 Feb 2026 18:08:59 +0000 (19:08 +0100)] 
ipq40xx: enable Devolo Magic 2 WiFi next

Note that for working G.hn support some packages need to be extracted from the Devolo firmware.

Signed-off-by: Julius Schwartzenberg <julius.schwartzenberg@eclipso.eu>
Link: https://github.com/openwrt/openwrt/pull/22123
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: mt76x8: drop downstream PWM driver support 22214/head
Shiji Yang [Sat, 28 Feb 2026 11:26:47 +0000 (19:26 +0800)] 
ramips: mt76x8: drop downstream PWM driver support

Developers no longer maintain this driver. And it has been replaced
by the new upstream implementation. It's time to say goodbye.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22214
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: mt76x8: add new upstream PWM driver module
Shiji Yang [Sat, 28 Feb 2026 11:26:03 +0000 (19:26 +0800)] 
ramips: mt76x8: add new upstream PWM driver module

This is the generic PWM framework driver for Mediatek SoC. Now
this module is ready for MT7628.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22214
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: mt76x8: adapt to upstream PWM driver
Shiji Yang [Sat, 28 Feb 2026 11:25:29 +0000 (19:25 +0800)] 
ramips: mt76x8: adapt to upstream PWM driver

Fix register offsets and clock sources for MT7628 hardware variant.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22214
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoramips: mt76x8: add missing clocks to PWM peripheral
Shiji Yang [Sat, 28 Feb 2026 11:25:07 +0000 (19:25 +0800)] 
ramips: mt76x8: add missing clocks to PWM peripheral

The upstream MediaTek PWM driver requires these clock sources to
work properly.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22214
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agomvebu: select CPU_LITTLE_ENDIAN 22282/head
Qingfang Deng [Thu, 5 Mar 2026 07:23:42 +0000 (15:23 +0800)] 
mvebu: select CPU_LITTLE_ENDIAN

When running `make kernel_menuconfig`, CPU_BIG_ENDIAN is selected by
default, resulting in a non-bootable image. Add CPU_LITTLE_ENDIAN to
avoid that.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22282
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agojsonfilter: update to Git HEAD (2026-03-16)
Hauke Mehrtens [Sun, 15 Mar 2026 23:51:04 +0000 (00:51 +0100)] 
jsonfilter: update to Git HEAD (2026-03-16)

b17c31f8a2fd main: exit 1 on getopt() errors
e3f6a4160ba2 main: exit 1 when showing the usage
d67578d6b7f7 main: fix stdin parsing after option deferral
b9034210bd33 main: fix multiple -e/-t expressions after option deferral

Fixes: https://github.com/openwrt/openwrt/issues/22439
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agoqualcommax: move EAP623 Outdoor dts to the correct folder 22433/head
Shiji Yang [Sun, 15 Mar 2026 13:05:08 +0000 (21:05 +0800)] 
qualcommax: move EAP623 Outdoor dts to the correct folder

The device dts files were moved to the dedicated directory in commit
a66e30631c87 ("qualcommax: move Device DTS to dedicated DTS directory"),
which resulted in a merge conflict.

Fixes: d755c49f7a8a ("qualcommax: ipq60xx: rename TP-Link EAP623-Outdoor HD v1 compatible")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22433
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agomac80211: broadcom: fix Makefile syntax error 22430/head
Shiji Yang [Sun, 15 Mar 2026 06:56:09 +0000 (14:56 +0800)] 
mac80211: broadcom: fix Makefile syntax error

Remove unmatched endif.

fixes: 2948dbebbfb2 ("mac80211: use OpenWrt mirror for b43 fw downloads")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22430
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 months agorealtek: thermal: extend the driver to support rtl960x 22081/head
Rustam Adilov [Wed, 18 Feb 2026 16:33:07 +0000 (21:33 +0500)] 
realtek: thermal: extend the driver to support rtl960x

This commit adds support for RTL9607C / RTL8198D thermal controller.
Based on the Realtek SDK code.

Signed-off-by: Rustam Adilov <adilov@tutamail.com>
Link: https://github.com/openwrt/openwrt/pull/22081
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agomac80211: use OpenWrt mirror for b43 fw downloads 21269/head
Yanase Yuki [Wed, 24 Dec 2025 08:05:38 +0000 (17:05 +0900)] 
mac80211: use OpenWrt mirror for b43 fw downloads

lwfinger dot com seems drop-catched and now
redirects to potentially unsafe website.
This commit also drops no longer available 6.30 firmware.

Fixes: https://github.com/openwrt/openwrt/issues/19436
Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21269
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agorealtek: enable MDI swapping for RTL8226 where needed 21261/head
Jan Hoffmann [Tue, 23 Dec 2025 19:40:52 +0000 (20:40 +0100)] 
realtek: enable MDI swapping for RTL8226 where needed

The RTL8226 PHYs in Zyxel XGS1010-10 and XGS1210-10 rev A1 have swapped
MDI lanes. Specify this in the device tree, so the driver can configure
it. With this change, the PHYs no longer require initialization by the
bootloader.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://github.com/openwrt/openwrt/pull/21261
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agorealtek: support MDI swapping for RTL8226 PHY
Jan Hoffmann [Tue, 23 Dec 2025 19:38:31 +0000 (20:38 +0100)] 
realtek: support MDI swapping for RTL8226 PHY

The PHY supports swapping the MDI pairs (ABCD->DCBA) to simplify board
layout. On devices making use of this, it needs to be configured in the
driver, otherwise the PHY won't work properly.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://github.com/openwrt/openwrt/pull/21261
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agowireguard-tools: bump to 20260223 22190/head
John Audia [Thu, 26 Feb 2026 22:24:56 +0000 (17:24 -0500)] 
wireguard-tools: bump to 20260223

% git shortlog v1.0.20250521..v1.0.20260223

Doug Freed (1):
      wg-quick@.service: add deps on wg-quick.target

Jason A. Donenfeld (8):
      wg-quick: linux: use smallest mtu, not largest
      syncconf: account for psks removed from config file
      wg-quick: linux: deal with resolvconf migration more gracefully
      wg-quick: use addconf instead of setconf
      wg-quick: linux: do not unnecessarily set sysctl
      config: preserve const correctness
      syncconf: account for persistent keepalive removed from config file
      version: bump

Robyn Kosching (1):
      wg-quick: pass on # comments to {Pre,Post}{Up,Down}

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/22190
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agorealtek: dsa: consolidate switch_irq() 22273/head
Markus Stockhausen [Wed, 4 Mar 2026 18:16:23 +0000 (19:16 +0100)] 
realtek: dsa: consolidate switch_irq()

The dsa irq handler works always in the same way for all SoCs.

- Read register ISR_PORT_LINK_STS_CHG to determine the ports that
  triggered the irq.
- Write the read value back to the register to confirm the irq
- Read link status via MAC_LINK_STS
- Trigger dsa_port_phylink_mac_change() for each changed port

Currently each SoC has its own implementation. Drop that in
favour of a generic implementation that makes use of the existing
bit register read/write helpers.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22273
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agorealtek: dsa: add MAC_LINK_STS to config structure
Markus Stockhausen [Wed, 4 Mar 2026 07:13:25 +0000 (08:13 +0100)] 
realtek: dsa: add MAC_LINK_STS to config structure

This register will be needed to provide a generic irq handler. Add
it to the configuration structure of the driver.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22273
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agointel-microcode: update to 20260227 22035/head
John Audia [Sun, 8 Mar 2026 11:58:25 +0000 (07:58 -0400)] 
intel-microcode: update to 20260227

Changelog: https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/microcode-20260227

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc (Intel N150)

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22035
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agointel-microcode: update to 20260210
John Audia [Sun, 15 Feb 2026 10:25:59 +0000 (05:25 -0500)] 
intel-microcode: update to 20260210

Changelog: https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/microcode-20260210-rev1

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc (Intel N150)

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/22035
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 months agorealtek: use 50kHz I2C for SFPs on Xikestor SKS8300-8X 22210/head
Jan Kantert [Sat, 28 Feb 2026 23:09:19 +0000 (00:09 +0100)] 
realtek: use 50kHz I2C for SFPs on Xikestor SKS8300-8X

Some 10G optics showed random "module transmit fault indicated" due to I2C
read errors on ONTi ONT-S508CL-8S/XikeStor SKS8300-8X switches. The same
modules work with the original firmware and on other Linux based devices.

There seems to be some differences in how we talk to those modules using
I2C in OpenWRT. To fix this this patch adds support for 50kHz I2C speed on
SFPs and enables that for XikeStor/Onti devices. Since SFPs only transmit
very few bytes this should not have any real downsides.

This patch configures I2C to use 50kHz clock in the DTS for the affected
devices. For it to work it requires a change in the RTL9300 I2C driver.
This can be safely merged without the kernel change (but will not work
in that case as it will fall back to 100kHz).

Signed-off-by: Jan Kantert <jan-openwrt@kantert.net>
Link: https://github.com/openwrt/openwrt/pull/22210
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>