]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
23 min agoucode: remove the fs.read_nb patch main master
Felix Fietkau [Tue, 6 Jan 2026 19:09:01 +0000 (19:09 +0000)] 
ucode: remove the fs.read_nb patch

It is obsolete since the io module was added

Signed-off-by: Felix Fietkau <nbd@nbd.name>
23 min agoucode: add package for ucode-mod-io
Felix Fietkau [Tue, 6 Jan 2026 19:08:41 +0000 (19:08 +0000)] 
ucode: add package for ucode-mod-io

It was included in the last update

Signed-off-by: Felix Fietkau <nbd@nbd.name>
23 min agowifi-scripts: move the "disabled" option to the wifi-iface section
Felix Fietkau [Tue, 6 Jan 2026 17:46:46 +0000 (18:46 +0100)] 
wifi-scripts: move the "disabled" option to the wifi-iface section

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

Signed-off-by: Felix Fietkau <nbd@nbd.name>
19 hours agouboot-bcm53xx: bump U-Boot to 2025.10
Linus Walleij [Sat, 3 Jan 2026 20:44:13 +0000 (21:44 +0100)] 
uboot-bcm53xx: bump U-Boot to 2025.10

Bump to the latest version used by other OpenWrt platforms so
we don't bitrot.

Tested on the D-Link DIR-890L.

Link: https://github.com/openwrt/openwrt/pull/21377
Signed-off-by: Linus Walleij <linusw@kernel.org>
21 hours agobuild: restore opkg-related provides logic 21409/head
George Sapkin [Mon, 5 Jan 2026 14:26:47 +0000 (16:26 +0200)] 
build: restore opkg-related provides logic

Re-add opkg provides logic to CONTROL when USE_APK is not set and remove
virtual provider prefix.

Fixes: cefbf11 ("build: refactor provides logic")
Fixes: https://github.com/openwrt/openwrt/issues/21372
Fixes: https://github.com/openwrt/openwrt/issues/21382
Fixes: https://github.com/openwrt/openwrt/issues/21402
Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21409
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
31 hours agoucode-mod-ubus: complete pending requests when disconnecting locally
Felix Fietkau [Sun, 4 Jan 2026 18:21:41 +0000 (18:21 +0000)] 
ucode-mod-ubus: complete pending requests when disconnecting locally

libubus only completes pending requests when the socket receives EOF.
When explicitly disconnecting, we need to call ubus_flush_requests().

Signed-off-by: Felix Fietkau <nbd@nbd.name>
31 hours agounetmsg: remove redundant socket close
Felix Fietkau [Sun, 4 Jan 2026 12:17:39 +0000 (12:17 +0000)] 
unetmsg: remove redundant socket close

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

Signed-off-by: Felix Fietkau <nbd@nbd.name>
31 hours agounetmsg: add timeout for outgoing auth requests
Felix Fietkau [Sun, 4 Jan 2026 10:07:33 +0000 (10:07 +0000)] 
unetmsg: add timeout for outgoing auth requests

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

Signed-off-by: Felix Fietkau <nbd@nbd.name>
31 hours agounetmsg: add null check in TX disconnect callback
Felix Fietkau [Sun, 4 Jan 2026 10:04:58 +0000 (10:04 +0000)] 
unetmsg: add null check in TX disconnect callback

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

Signed-off-by: Felix Fietkau <nbd@nbd.name>
43 hours agoairoha: an7581: correct led nodename 20482/head
Ziyang Huang [Sun, 19 Oct 2025 09:45:48 +0000 (17:45 +0800)] 
airoha: an7581: correct led nodename

Use standard name.

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20482
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
43 hours agoairoha: an7581: correct phy nodename
Ziyang Huang [Sun, 19 Oct 2025 09:51:28 +0000 (17:51 +0800)] 
airoha: an7581: correct phy nodename

Let node unit address same as reg.

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20482
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
43 hours agoairoha: an7581: move the switch led label from soc-level to board-level
Ziyang Huang [Sun, 19 Oct 2025 09:41:43 +0000 (17:41 +0800)] 
airoha: an7581: move the switch led label from soc-level to board-level

Different boards use different port map. For example, some board may use
a GE port as WAN. So defining the led label in board-level is better.

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20482
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
43 hours agoairoha: an7581: move the switch port label from soc-level to board-level
Ziyang Huang [Sun, 19 Oct 2025 09:37:39 +0000 (17:37 +0800)] 
airoha: an7581: move the switch port label from soc-level to board-level

Different boards use different port map. Defining the port labels in
board-level is better.

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20482
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
43 hours agoairoha: an7581: disable all switch port and phy by default
Ziyang Huang [Sun, 19 Oct 2025 09:45:24 +0000 (17:45 +0800)] 
airoha: an7581: disable all switch port and phy by default

Some board only use some of them, so enable as necessary in
board-level dts.

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20482
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
43 hours agoairoha: an7581: correct the pinctrl-name of phy leds
Ziyang Huang [Sun, 19 Oct 2025 09:34:53 +0000 (17:34 +0800)] 
airoha: an7581: correct the pinctrl-name of phy leds

address the following issues:

    [    3.542844] mdio_bus mt7530-0: Failed to setup PHY LED pinctrl
    [    3.552550] mdio_bus mt7530-0: Failed to setup PHY LED pinctrl
    [    3.562449] mdio_bus mt7530-0: Failed to setup PHY LED pinctrl
    [    3.574350] mdio_bus mt7530-0: Failed to setup PHY LED pinctrl

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20482
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agorealtek: eth: adapt prefix of ops structures 21345/head
Markus Stockhausen [Wed, 31 Dec 2025 14:04:46 +0000 (15:04 +0100)] 
realtek: eth: adapt prefix of ops structures

Convert all ops structures to the new rteth prefix.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agorealtek: eth: move netdev_ops to config structure
Markus Stockhausen [Wed, 31 Dec 2025 13:49:05 +0000 (14:49 +0100)] 
realtek: eth: move netdev_ops to config structure

Simplify netdev_ops initialization by moving the data
into the configuration structure.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agorealtek: eth: reorder configuration data
Markus Stockhausen [Wed, 31 Dec 2025 13:31:42 +0000 (14:31 +0100)] 
realtek: eth: reorder configuration data

The configuration data needs to reference the netdev_ops
in the future. Reorder it in a separate commit to avoid
confusion later.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agorealtek: eth: move cpu_port to config structure
Markus Stockhausen [Wed, 31 Dec 2025 13:20:38 +0000 (14:20 +0100)] 
realtek: eth: move cpu_port to config structure

There is no need to set the cpu port depending on the
given family. Remove it from the private control structure
and add the fixed value to the configuration structure.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agorealtek: eth: Rename configuration structure
Markus Stockhausen [Wed, 31 Dec 2025 13:09:58 +0000 (14:09 +0100)] 
realtek: eth: Rename configuration structure

The name of the configuration structure suggests that it
contains a list of registers. As it contains functions too
change the name according to other realtek drivers.

- "Invent" a new driver prefix "rteth"
- Rename the structure and variables to config/cfg

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21345
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agopackages: ethtool: restore CONFLICTS 21388/head
Eric Fahlgren [Sun, 4 Jan 2026 17:35:11 +0000 (09:35 -0800)] 
packages: ethtool: restore CONFLICTS

Inadvertent removal of 'CONFLICTS' breaks kconfig selection.
Restore it.

Fixes: ded99c2984b2 ("treewide: add explicit default variant part 2")
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21388
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agonat46: fix reproducible-build failure and use latest git 21284/head
John Audia [Thu, 25 Dec 2025 13:31:13 +0000 (08:31 -0500)] 
nat46: fix reproducible-build failure and use latest git

Bump to 2025-11-04 snapshot.

Added 100-gcc15-fix.patch which drops __DATE__/__TIME__ usage and provides
a stable fallback ("unknown"). This fixes build failures with GCC 15 and
-Werror=date-time in kernel builds.

% git log --oneline 04923c5..adb2f72
adb2f72e6fb8 get rid of spurious ubsan complaint for nat46_instance_t pairs field
d5f88686a4a8 Add a test harness which boots the kernel under kvm with a custom init which runs the tests
b983bab221f0 nat46-core: Fix FIXMEs about ICMPv6 parameter pointers
1aca482d6917 Add support for ignoring traffic class or TOS translation at the same time

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/21284
[Removed "Replace printk with pr_* macros" patch]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agowifi-scripts: wdev.uc: fix mesh mode frequency handling 21373/head
Valent Turkovic [Sat, 3 Jan 2026 08:50:16 +0000 (09:50 +0100)] 
wifi-scripts: wdev.uc: fix mesh mode frequency handling

Mesh mode interface creation fails when the freq parameter is empty or
undefined. Unlike adhoc mode which checks if freq exists before using it,
mesh mode blindly constructs the iw command with freq parameter, resulting
in invalid syntax like:

  iw dev mesh0 mesh join ssid freq  NOHT

This causes the mesh interface to be created without joining the mesh
network, leaving it in a DOWN state with no channel assigned.

Fix by adding freq validation check similar to adhoc mode.

Tested on two routers in parallel as mesh peers:
- Xiaomi AX3000T (MediaTek MT7981)
- OpenWrt One (MediaTek MT7981)
- OpenWrt 6.6.119, 802.11s mesh on 5GHz (Channel 36, HE80)

Signed-off-by: Valent Turkovic <valent@meshpointone.com>
Link: https://github.com/openwrt/openwrt/pull/21373
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agoixp4xx: fix bug in Actiontec DTS file
Linus Walleij [Fri, 2 Jan 2026 20:15:28 +0000 (21:15 +0100)] 
ixp4xx: fix bug in Actiontec DTS file

This misassigned ethernet port bug was merged in the upstream
kernel.

Link: https://github.com/openwrt/openwrt/pull/21367
Signed-off-by: Linus Walleij <linusw@kernel.org>
2 days agokernel: QCOM SPI NAND: backport multiple fixes 21366/head
Hauke Mehrtens [Thu, 1 Jan 2026 18:40:06 +0000 (19:40 +0100)] 
kernel: QCOM SPI NAND: backport multiple fixes

These patches fix bugs in a patch we backported.

These patch were cherry picked from upstream Linux because it references
a patch we backported in the fixes tag.

The patches were reordered to match the ordering in the upstream Linux kernel.

Fixes: 93173aee96e7 ("qualcommbe: ipq95xx: Add initial support for new target")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: phylink: disable autoneg for interfaces that have no inband
Hauke Mehrtens [Thu, 1 Jan 2026 18:31:48 +0000 (19:31 +0100)] 
kernel: phylink: disable autoneg for interfaces that have no inband

This patch fixes a bug in a patch we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

The first two patches are providing function needed by the last patch.

Fixes: 813ecda1f387 ("generic: backport phylink patches for PCS/PHY caps OPs")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: RTL8211FVD: restore disabling of PHY-mode EEE
Hauke Mehrtens [Thu, 1 Jan 2026 18:27:26 +0000 (19:27 +0100)] 
kernel: RTL8211FVD: restore disabling of PHY-mode EEE

This patch fixes a bug in a patch we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

Fixes: 48c9e5509407 ("kernel: backport upstream Realtek PHY patches")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: mv88e6xxx: backport fixes
Hauke Mehrtens [Thu, 1 Jan 2026 18:21:08 +0000 (19:21 +0100)] 
kernel: mv88e6xxx: backport fixes

These patches fix bugs in a patch we backported.

These patch were cherry picked from upstream Linux because it references
a patch we backported in the fixes tag.

Fixes: c990f6e15669 ("linux: generic: net: dsa: mv88e6xxx LED support")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: reserved_mem: add missing IORESOURCE_MEM flag on resources
Hauke Mehrtens [Thu, 1 Jan 2026 18:17:00 +0000 (19:17 +0100)] 
kernel: reserved_mem: add missing IORESOURCE_MEM flag on resources

This patch fixes a bug in a patch we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

Fixes: 9d3009f426d5 ("airoha: major backport of Airoha Ethernet driver feature support")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: as21xxx: backport patch improve PHY HW reset
Hauke Mehrtens [Thu, 1 Jan 2026 16:41:31 +0000 (17:41 +0100)] 
kernel: as21xxx: backport patch improve PHY HW reset

This patch fixes a bug in a patch we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

The function phy_id_compare_vendor() is needed by the fix.
Refresh 782-05-v6.16-net-phy-Add-support-for-Aeonsemi-AS21xxx-PHYs.patch with the upstream code.

Fixes: 08a616b2163e ("generic: backport support for Aeonsemi AS21xxx PHY")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: pcs-mtk-lynxi: backport fix for in-band status capabilities
Hauke Mehrtens [Thu, 1 Jan 2026 16:38:07 +0000 (17:38 +0100)] 
kernel: pcs-mtk-lynxi: backport fix for in-band status capabilities

This patch fixes a bug in a patch we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

Fixes: 813ecda1f387 ("generic: backport phylink patches for PCS/PHY caps OPs")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: PHY: backport led fixes commit
Hauke Mehrtens [Thu, 1 Jan 2026 16:34:05 +0000 (17:34 +0100)] 
kernel: PHY: backport led fixes commit

This patch fixes a bug in some patches we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: r8169: backport upstream fix
Hauke Mehrtens [Thu, 1 Jan 2026 16:28:56 +0000 (17:28 +0100)] 
kernel: r8169: backport upstream fix

This fixes a bug introduced in a patch we backported.

This patch was cherry picked from upstream Linux because it references a
patch we backported in the fixes tag.

Fixes: 91ce7f606a62 ("generic: backport upstream v6.16 r8169 patches")
Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: move patches to backported
Hauke Mehrtens [Thu, 1 Jan 2026 01:34:27 +0000 (02:34 +0100)] 
kernel: move patches to backported

These formally pending patches were merged into upstream Linux some time
ago. Move them to the backports folder and add the kernel version they
were added to the file name.

Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: refresh upstreamed patches
Hauke Mehrtens [Thu, 1 Jan 2026 01:08:19 +0000 (02:08 +0100)] 
kernel: refresh upstreamed patches

Replace pending patches which are already integrated in upstream Linux
with their upstream versions.

These patches were exported with:
git format-patch -1 -k

Link: https://github.com/openwrt/openwrt/pull/21366
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agotreewide: add explicit default variant part 2 21380/head
Eric Fahlgren [Sun, 4 Jan 2026 00:04:51 +0000 (16:04 -0800)] 
treewide: add explicit default variant part 2

Add 'DEFAULT_VARIANT' to two packages, 'iw' and 'eapol-test',
that were missed in the first pass.  Refactor 'iw' and 'ethtool'
package definitions to be consistent with the pattern used in most
other packages.

Fixes: https://github.com/openwrt/openwrt/commit/f4fdb996
Fixes: https://github.com/openwrt/openwrt/commit/7a78dc4a
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21380
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agocli: fix typo in error reporting
Felix Fietkau [Sun, 4 Jan 2026 09:59:14 +0000 (10:59 +0100)] 
cli: fix typo in error reporting

Return the proper error code for COMMAND_FAILED

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 days agotreewide: replace remove_new with remove 21226/head
Rosen Penev [Fri, 19 Dec 2025 23:33:50 +0000 (15:33 -0800)] 
treewide: replace remove_new with remove

Preparation for kernel 6.18. It removes the former.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21226
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoairoha: an7583: fix scuclk unit-address 20985/head
Aleksander Jan Bajkowski [Sat, 29 Nov 2025 17:58:17 +0000 (18:58 +0100)] 
airoha: an7583: fix scuclk unit-address

Fix the unit-address of the scuclk node.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/20985
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoairoha: en7583: dts: fix typo disable
Aleksander Jan Bajkowski [Sat, 29 Nov 2025 17:56:50 +0000 (18:56 +0100)] 
airoha: en7583: dts: fix typo disable

No functional changes intended.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/20985
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: pcs: rtl931x: soften early exit for USXGMII 21365/head
Jonas Jelonek [Fri, 2 Jan 2026 17:49:02 +0000 (17:49 +0000)] 
realtek: pcs: rtl931x: soften early exit for USXGMII

Now that the PCS driver keeps track of how many links are registered per
SerDes, we can also decide which real hardware mode to use when USXGMII
is set. While there is still no proper setup for 10G-QXGMII or XSGMII,
the existing USXGMII 10G-SXGMII setup seems to work properly.

Soften the condition when to exit early so that single 10G port USXGMII
can be setup properly.

Fixes: c18476d0c581 ("realtek: RTL931x: disable USXGMII SerDes setup")
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21365
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: pcs: select OFF mode with no links on SerDes
Jonas Jelonek [Fri, 2 Jan 2026 18:50:10 +0000 (18:50 +0000)] 
realtek: pcs: select OFF mode with no links on SerDes

Because the PCS driver keeps track of the number of registered links for
each SerDes now, we now know when there is no link on a SerDes. In this
case, determine to turn off the SerDes in the mode mapper.

Though the phylink subsystem shouldn't attempt to config something
different when no link/port references a Serdes, be on the safe side.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21365
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: pcs: cover number of links per SerDes for USXGMII
Jonas Jelonek [Fri, 2 Jan 2026 16:30:16 +0000 (16:30 +0000)] 
realtek: pcs: cover number of links per SerDes for USXGMII

A SerDes may supply multiple ports and depending on that number,
different hardware modes need to be used. While there are corresponding
modes in the kernel in some cases (e.g. USXGMII with 4 2.5G ports aka
10G-QXGMII), this doesn't always map to Realtek hardware modes. Use the
previously added link number accounting for that.

An obvious example of this is the SerDes on XGS12xx-12 switches which
is connected to an octa-PHY. This runs Realtek proprietary XSGMII mode
(10G-pumped SGMII interface) for which there is no corresponding mode
in the kernel.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21365
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: pcs: keep track of number of links per SerDes
Jonas Jelonek [Wed, 24 Dec 2025 10:28:36 +0000 (10:28 +0000)] 
realtek: pcs: keep track of number of links per SerDes

Add a field to the rtpcs_serdes structure to keep track of how many
links (aka ports) are used on a single SerDes. This is needed to be
known to map kernel interface modes to SerDes hardware modes properly
(e.g. USXGMII --> USXGMII/10G-QXGMII/XSGMII).

While working in rtpcs_create, optimize referencing the SerDes instance
for cleaner code.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21365
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: pcs: add missing SerDes modes
Jonas Jelonek [Wed, 24 Dec 2025 10:36:03 +0000 (10:36 +0000)] 
realtek: pcs: add missing SerDes modes

100Base-X mode was missing before in the enum rtpcs_sds_mode. So add it
to be able to support this mode too. Handle this mode in the
_determine_hw_mode mapper.

10G_QXGMII mode was missing in the mode mapper. Add it and map it to
USXGMII_10GQXGMII mode.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21365
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: remove erroneous pipe action from BE7200 recipe 21376/head
Hannu Nyman [Sat, 3 Jan 2026 10:51:29 +0000 (12:51 +0200)] 
mediatek: remove erroneous pipe action from BE7200 recipe

Remove the errorneous pipe action from the BE7200 device package list.

It causes visible errors into config:

 perus@ub2510:/OpenWrt/aarch64$ make defconfig
 ...
 tmp/.config-target.in:55023:warning: ignoring unsupported character '|'
 tmp/.config-target.in:191877:warning: ignoring unsupported character '|'
 tmp/.config-target.in:191878:warning: ignoring unsupported character '|'
 tmp/.config-target.in:285812:warning: ignoring unsupported character '|'
 tmp/.config-target.in:285815:warning: ignoring unsupported character '|'
 tmp/.config-target.in:285819:warning: ignoring unsupported character '|'
 tmp/.config-target.in:285820:warning: ignoring unsupported character '|'
 #
 # configuration written to .config
 #

 File tmp/.config-target.in:

  55020         select DEFAULT_urandom-seed
  55021         select DEFAULT_urngd
  55022         select DEFAULT_wpad-basic-mbedtls
  55023         select DEFAULT_|
  55024         help
  55025           Build firmware images for Routerich BE7200

Fixes: ff5e66a9208a ("mediatek: add support for Routerich BE7200")
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/21376
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agokernel: add kernel module sun6i_csi and ov5640 20085/head
Michel Promonet [Sun, 14 Dec 2025 15:58:32 +0000 (16:58 +0100)] 
kernel: add kernel module sun6i_csi and ov5640

This is adding SUN6I-CSI and OV5640 driver for AllWinner platform for NanoPi

Signed-off-by: Michel Promonet <michel.promonet@free.fr>
Link: https://github.com/openwrt/openwrt/pull/20085
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: add support for device zbt-z8103ax-c 19823/head
Jörg Seitz [Sun, 21 Dec 2025 10:55:34 +0000 (11:55 +0100)] 
mediatek: add support for device zbt-z8103ax-c

- adopted MTD partition size increase from 64M to 128M
  -> this allows boot to complete
- moved MAC addressing stuff out of partition definitions
- all MAC addressing stuff is in .dtsi

Specifications:

SoC: MediaTek MT7981B
RAM: 256MiB
Flash: Winbond SPI-NAND 128 MiB
Switch: 1 WAN, 3 LAN (Gigabit) MediaTek MT7531
Buttons: Reset, Mesh
Power: DC 12V 1A
WiFi: MT7981B 2.4Ghz & 5.8Ghz

Led Layout from bottom to top:

    Power
    Mesh (RGB Led, user controllable, default set to OpenWrt Status)
    WLAN 2 GHz (user controllable)
    WAN (user controllable)
    LAN3
    LAN2
    LAN1
    WLAN 5 GHz (Not on front panel but blinks through enclosure,
               user controllable)

Buttons:

    Reset
    Mesh (user controllable, no default function)

Installation:

A. Through U-Boot menu:

 -  Prepare your connecting computer to use a static IP in
network 192.168.1.0/24
 -  Power down the router and hold in the Reset button.
 -  While holding in the button power up the router again.
 -  Hold the button in for 10 seconds and then release.
 -  Use your browser to go to 192.168.1.1
 -  If you see a GUI allowing for flashing firmware then
you got the right model.
 -  Upload the sysupgrade file.

Note: Recovery GUI can be used to recover from an incorrect
      firmware flash.

B. Through OpenWrt Dashboard:

    If your router comes with OpenWrt preinstalled
(modified by the seller), you can easily upgrade
by going to the dashboard (192.168.1.1) and then
navigate to System -> Backup/Flash firmware,
then flash the firmware

MAC Addresses were found in Factory partition:

offset 0x4 F8:5E:3C:xx:xx:aa --> Router Label -2
offset 0xa F8:5E:3C:xx:xx:bb --> Router Label -1
offset 0x24 F8:5E:3C:xx:xx:cc --> Router Label +1
offset 0x2a F8:5E:3C:xx:xx:yy --> printed on Router Label

Signed-off-by: Jörg Seitz <github.joeterminal@xoxy.net>
Link: https://github.com/openwrt/openwrt/pull/19823
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: extract DTS include for zbt z8103ax
Jörg Seitz [Sun, 21 Dec 2025 09:59:06 +0000 (10:59 +0100)] 
mediatek: extract DTS include for zbt z8103ax

- Use .dtsi for old z8103ax featuring a 64M Nand
- Prepare .dtsi for model C of z8103ax featuring a 128M Nand

This .dtsi is supposed to match boards labeled as hardware
revision Z8103AX_V01. Model variant D of zbt-z8103ax appears
to use very same board.

DTS include does also

- set wifi mac addresses in &wifi section
- set eth mac addresses in &eth section
- set LAN switch mac addresses in &switch section

All of the above allows to get rid of 11_fix_wifi_mac script

Signed-off-by: Jörg Seitz <github.joeterminal@xoxy.net>
Link: https://github.com/openwrt/openwrt/pull/19823
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoopenssl: add kTLS support option 21306/head
Tan Zien [Sun, 28 Dec 2025 00:08:33 +0000 (08:08 +0800)] 
openssl: add kTLS support option

This commit add option to enable kTLS support, improving
performance by offloading TLS encryption and decryption to
kernel space.

- Reduced CPU usage by minimizing data copying between user space
  and kernel space.
- Enables the use of the sendfile() system call with encrypted
  sockets for zero-copy data transmission.
- Leverages hardware-accelerated NIC that support TLS offloading.

Signed-off-by: Tan Zien <nabsdh9@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21306
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoairoha: replace patches with upstream version 21333/head
Aleksander Jan Bajkowski [Tue, 16 Dec 2025 21:02:34 +0000 (22:02 +0100)] 
airoha: replace patches with upstream version

Replace patches with version accepted upstream.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/21333
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: filogic: add support for Cudy AP3000 Wall v1 21266/head
Derek Denk [Wed, 31 Dec 2025 00:34:47 +0000 (17:34 -0700)] 
mediatek: filogic: add support for Cudy AP3000 Wall v1

This commit adds support for the Cudy AP3000 Wall v1.

SoC: MediaTek MT7981b
RAM: 256MiB
Flash: spi-nand spi0.0: 128 MiB
Wifi: MediaTek MT7981 2x2 DBDC 802.11ax 2T2R (2.4 / 5)
LEDs: 1 LED in two colors (red & white)
Buttons: 1 reset, 1 led on/off
Ethernet: 5x 1GbE
Power: PoE powered (standalone)

The stock firmware is a customized variant of OpenWrt, which implements
a signature check that only allows flashing official firmware. Cudy offers
intermediate OpenWrt firmware images on their website [1][2] which do not
implement the signature check. After flashing the intermediate image the
upstream official OpenWrt image can be installed.

The stock firmware can be recovered via TFTP using the U-Boot based boot
loader[3]. Set up a TFTP server on your computer with IP 192.168.1.88/24
serving the stock firmware from Cudy's website renamed to "recovery.bin".
Press and hold the reset button while powering on the device, wait for the
TFTP server to send the recovery.bin file, then release the reset button.
The router will take a couple of minutes to reboot and set up the stock
firmware.

[1] https://www.cudy.com/blogs/faq/openwrt-software-download
[2] https://drive.google.com/drive/folders/1BKVarlwlNxf7uJUtRhuMGUqeCa5KpMnj
[3] https://www.cudy.com/en-us/blogs/faq/how-to-recovery-the-cudy-router-from-openwrt-firmware-to-cudy-official-firmware

Signed-off-by: Derek Denk <derek.denk@live.com>
Link: https://github.com/openwrt/openwrt/pull/21266
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agomediatek: add support for Routerich BE7200 21235/head
Mikhail Zhilkin [Sat, 20 Dec 2025 15:43:45 +0000 (18:43 +0300)] 
mediatek: add support for Routerich BE7200

This PR adds support for Routerich BE7200 router.

Specification
-------------
- SoC       : MediaTek MT7987A Quad-core ARM Cortex-A53 2.0 GHz
- RAM       : 1024 MiB DDR4
- Flash     : SPI-NAND 512 MiB (Giga Device)
- WLAN      : MediaTek MT7992E, WiFi 7
  - 2.4 GHz : b/g/n/ax, MIMO 4x4
  - 5 GHz   : a/n/ac/ax, MIMO 4x4
- Ethernet  : 10/100/1000 Mbps x3 (LAN, Airoha AN8855AE)
              10/100/1000/2500 Mbps x1 (WAN, SoC internal phy)
- USB       : 3.0 x1
- Buttons   : Mesh, Reset
- LEDs      : 1x Status (blue), gpio-controlled
              1x WiFi (blue), gpio-controlled
              1x mesh (blue), gpio-controlled
              3x LAN activity (blue), gpio-controlled
              1x WAN activity (blue), gpio-controlled
              1x WAN no-link (red), gpio-controlled
- Power     : 12 VDC, 1.5 A

Installation
------------
1. Update stock firmware via the web interface (don't keep settings).

Update U-Boot (optional)
------------------------
After installing OpenWrt, you may want to install opensource U-Boot.
1. Install kmod-mtd-rw:
   apk update && apk add kmod-mtd-rw
2. Unlock bootloader:
   insmod mtd-rw i_want_a_brick=1
   mtd unlock BL2
   mtd unlock FIP
3. Download and write open-source BL2 and FIP:
   cd /tmp
   wget https://.../openwrt-mediatek-filogic-routerich_be7200-preloader.bin
   wget https://.../openwrt-mediatek-filogic-routerich_be7200-bl31-uboot.fip
   mtd write /tmp/openwrt-mediatek-filogic-routerich_be7200-preloader.bin BL2
   mtd write /tmp/openwrt-mediatek-filogic-routerich_be7200-bl31-uboot.fip FIP
4. Reboot the router.

Return to stock
---------------
1. Update OpenWrt wirh the vendor's firmware (don't keep settings).

Recovery (original U-Boot)
-----------------------------
1. Press Reset button and power on the router. After ~10 sec release
   the button;
2. Upload and flash squashfs-sysupgrade.itb image via the web interface.

Recovery (open-source U-Boot)
-----------------------------
1. Place OpenWrt
   'openwrt-mediatek-filogic-routerich_be7200-initramfs-recovery.itb'
   image on the tftp server (IP: 192.168.1.254)
2. Press Reset button and power on the router. After ~10 sec release
   the button.
3. Use OpenWrt initramfs system for recovery

Recovery (full disaster)
------------------------
Use UART and mtk_uartboot tool.
Link: https://github.com/981213/mtk_uartboot
USB power control
-----------------
Disable: echo disabled > /sys/devices/platform/usb-power/state
Enable: echo enabled > /sys/devices/platform/usb-power/state

UART
----
UART pins are silkscreened on the PCB. Don't connect Vcc.
Serial connection parameters: 115200, 8n1, 3.3V

MAC addresses
-------------
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| WAN     | 24:0f:5e:xx:xx:30 | label     |
| LAN     | 24:0f:5e:xx:xx:31 | label+1   |
| WLAN 2g | 24:0f:5e:xx:xx:32 | label+2   |
| WLAN 5g | 24:0f:5e:xx:xx:33 | label+3   |
+---------+-------------------+-----------+
The WLAN 2g MAC was found in 'Factory', 0x4

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21235
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoarm-trusted-firmware-mediatek: add mt7987-spim-nand0 build
Mikhail Zhilkin [Sat, 20 Dec 2025 15:40:22 +0000 (18:40 +0300)] 
arm-trusted-firmware-mediatek: add mt7987-spim-nand0 build

This commit adds a new non-ubi spim-nand build for mt7987.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21235
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: dsa: rtl931x: configure phy ability source 21351/head
Jonas Jelonek [Thu, 1 Jan 2026 20:11:17 +0000 (20:11 +0000)] 
realtek: dsa: rtl931x: configure phy ability source

The MAC can get PHY abilities, link status, etc. via different ways. In
RTL931x, the corresponding register needs to be setup properly. By
default, all ports use out-of-band MDIO polling to retrieve that
information. Thus, PHY-backed ports usually work with the default
setting.

For SFP ports, there is no MDIO polling available. Instead, the SerDes
ability bus needs to be used to retrieve the link information.

So far, the bootloader (e.g. U-boot) had to properly initialize that
setting. Instead of relying on that, do that properly during MAC setup.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21351
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 days agounetmsg: fix variable shadowing bug in network_rx_cleanup_state()
Felix Fietkau [Fri, 2 Jan 2026 18:59:49 +0000 (18:59 +0000)] 
unetmsg: fix variable shadowing bug in network_rx_cleanup_state()

The for-in loop variable 'name' was shadowing the function parameter,
causing remote subscription cleanup to fail when hosts disconnect.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 days agorealtek: rtl838x: fix lan9 and lan10 on Netgear GS110TUP 21346/head
Jacob Potter [Wed, 31 Dec 2025 19:45:31 +0000 (14:45 -0500)] 
realtek: rtl838x: fix lan9 and lan10 on Netgear GS110TUP

The GS110TUP's lan9 port is connected via a QSGMII PHY to SERDES 2, and
therefore should use the SWITCH_PORT_SDS macro instead of SWITCH_PORT. This
was missed in e956adfe because the GS110TUP is not particularly well
documented and the old code was confusing.

lan10 is an SFP and doesn't have an onboard PHY, so also remove its
associated PHY references and update it to match other devices' SFP ports.

Fixes: https://github.com/openwrt/openwrt/issues/21324
Signed-off-by: Jacob Potter <jacob@j4cbo.com>
Link: https://github.com/openwrt/openwrt/pull/21346
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 days agomvebu: Add support for WD MyCloud EX2 Ultra 17779/head
Robert Senderek [Wed, 12 Nov 2025 09:08:37 +0000 (10:08 +0100)] 
mvebu: Add support for WD MyCloud EX2 Ultra

Hardware
--------
Marvell Armada 385 (MV88F6820)
1GB RAM
256MB NAND
1x 1Gbit
2x USB 3.0
2x SATA-III
UART: 115200 8N1 3.3V
RTC
Weltrend MCU WT6703F connected via UART1 for Power LED / PWM Fan / hw reset / WoL

Installation
------------
Connect UART 3.3V adapter to JP2  pins: 1-RX / 2-GND / 5-TX

Use USB2.0 FAT32 pendrive with openwrt-mvebu-cortexa9-wd_cloud-ex2-ultra-initramfs-kernel.bin
 1. stop boot by pressing 1
 2. usb start
 3. fatload usb 0:1  0x02000000 openwrt-mvebu-cortexa9-wd_cloud-ex2-ultra-initramfs-kernel.bin;bootm 0x02000000 -
 4. do backup mtd1 mtd3
 5. use sysupgrade

Or tftp
 1. stop boot by pressing 1
 2. setenv ethact egiga2;setenv serverip 192.168.11.114;setenv ipaddr 192.168.11.113
 3. tftpboot 0x02000000 openwrt-mvebu-cortexa9-wd_cloud-ex2-ultra-initramfs-kernel.bin; bootm 0x02000000 -
 4. do backup mtd1 mtd3
 5. use sysupgrade

or Evgeny Kolesnikov <evgenyz@gmail.com> method from his failed PR 2040

- Using original firmware's network settings obtain SSH access to the device.
- Put *-image-cfs-factory.bin and *-uImage-factory.bin images into device's /tmp directory.
- Write kernel (uImage) image 'flash_eraseall /dev/mtd1 && nandwrite --markbad -p /dev/mtd1 /tmp/*-uImage-factory.bin'.
- Write rootfs (image-cfs) image 'ubiformat /dev/mtd3 -f /tmp/*-image.cfs-factory.bin -y'.
- Reboot the device.

Installation (upgrade):

Use *-sysupgrade.bin in a usual way.
Weltrend MCU control is done via uart1 19200
install coreutils-stty
stty -F /dev/ttyS1 raw speed 19200
stty -F /dev/ttyS1 raw speed 19200

PWM Fan Control
off: 00
echo -n -e '\xfa\x02\x00\x00\x00\x00\xfb' > /dev/ttyS1
slow: 5F
echo -n -e '\xfa\x02\x00\x5f\x00\x00\xfb' > /dev/ttyS1
max: FF
echo -n -e '\xfa\x02\x00\xff\x00\x00\xfb' > /dev/ttyS1

Power LED Control
Blue
echo -n -e '\xfa\x26\x00\x11\x00\x01\xfb' > /dev/ttyS1
Red
echo -n -e '\xfa\x26\x00\x14\x00\x01\xfb' > /dev/ttyS1
Orange
echo -n -e '\xfa\x26\x00\x12\x00\x01\xfb' > /dev/ttyS1

more here: https://github.com/c-MM/mcm-daemon/blob/master/mcm.h

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
Link: https://github.com/openwrt/openwrt/pull/17779
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 days agotreewide: switch to HTTPS URL 21279/head
Yanase Yuki [Thu, 25 Dec 2025 04:48:18 +0000 (13:48 +0900)] 
treewide: switch to HTTPS URL

Avoids insecure plain HTTP.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agof2fs-tools: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:37:00 +0000 (13:37 +0900)] 
f2fs-tools: update project URL

Use redirected new URL.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoadb: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:34:59 +0000 (13:34 +0900)] 
adb: update project URL

It seems old website has been retired.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoiw: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:33:10 +0000 (13:33 +0900)] 
iw: update project URL

It seems project URL has been changed.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoiproute2: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:31:10 +0000 (13:31 +0900)] 
iproute2: update project URL

It seems project URL has been changed.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoebtables: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:27:51 +0000 (13:27 +0900)] 
ebtables: update project URL

Website has been moved to netfilter.org.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agosysfsutils: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:25:06 +0000 (13:25 +0900)] 
sysfsutils: update project URL

Project has been moved to GitHub.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoreadline: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:21:45 +0000 (13:21 +0900)] 
readline: update project URL

It seems domain has been changed.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agolibxml2: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:18:57 +0000 (13:18 +0900)] 
libxml2: update project URL

It seems old website has been retired.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agotreewide: update SELinux project URL
Yanase Yuki [Thu, 25 Dec 2025 04:15:57 +0000 (13:15 +0900)] 
treewide: update SELinux project URL

It seems old website has been retired.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agolantiq: remove intel.com from URL
Yanase Yuki [Thu, 25 Dec 2025 04:09:46 +0000 (13:09 +0900)] 
lantiq: remove intel.com from URL

Intel doesn't have lantiq anymore.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agojansson: update project URL
Yanase Yuki [Thu, 25 Dec 2025 04:06:07 +0000 (13:06 +0900)] 
jansson: update project URL

Old website redirects to github.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agotreewide: remove lantiq dot com URL
Yanase Yuki [Thu, 25 Dec 2025 04:02:47 +0000 (13:02 +0900)] 
treewide: remove lantiq dot com URL

This website is offline.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agotreewide: use HTTPS URL for www.kernel.org
Yanase Yuki [Thu, 25 Dec 2025 03:54:10 +0000 (12:54 +0900)] 
treewide: use HTTPS URL for www.kernel.org

Avoids insecure plain HTTP.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agotreewide: use HTTPS URL for GNU websites
Yanase Yuki [Thu, 25 Dec 2025 03:49:19 +0000 (12:49 +0900)] 
treewide: use HTTPS URL for GNU websites

Avoids insecure plain HTTP.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agotreewide: update u-boot URL
Yanase Yuki [Thu, 25 Dec 2025 03:44:10 +0000 (12:44 +0900)] 
treewide: update u-boot URL

U-Boot website has been moved to docs.u-boot.org.

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/21279
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agorealtek: rename smi-address dts property 21343/head
Markus Stockhausen [Wed, 31 Dec 2025 12:35:17 +0000 (13:35 +0100)] 
realtek: rename smi-address dts property

The rtl9300,smi-address property was first developed for the RTL930x
targets. So it got a device specific prefix. Nowadays it is used for
RTL931x targets too. Convert it to our gerneric realtek prefix.

find ./realtek -type f -exec sed -i 's/rtl9300,smi-address/realtek,smi-address/g' {} +

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21343
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agorealtek: rt-loader: allow piggy-backed uimage 21332/head
Markus Stockhausen [Tue, 30 Dec 2025 16:34:41 +0000 (17:34 +0100)] 
realtek: rt-loader: allow piggy-backed uimage

Until now rt-loader expects a piggy-backed lzma compressed data
stream. Be more flexible and allow a piggy-backed uimage as well.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21332
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agorealtek: rt-loader: rename flash loading function
Markus Stockhausen [Tue, 30 Dec 2025 16:32:45 +0000 (17:32 +0100)] 
realtek: rt-loader: rename flash loading function

The loading function searches the image on flash (or its memory
copy). Rename it to make clearer what the function does. Adapt
comments accordingly.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21332
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agorealtek: rt-loader: make search_image() generic
Markus Stockhausen [Tue, 30 Dec 2025 15:54:56 +0000 (16:54 +0100)] 
realtek: rt-loader: make search_image() generic

Until now search_image() is used for searching a uImage on
flash (or the memory mapped equivalent). In a future commit
this will be reused to search for a piggy-backed uimage.
Make this function generic by

- replacing "flash" with "image" in variables
- Search bytewise and do not rely on 4 byte alignment
- remove 2 obsolete variables
- move console output to caller

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21332
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agorealtek: rt-loader: enhance is_uimage()
Markus Stockhausen [Tue, 30 Dec 2025 15:43:37 +0000 (16:43 +0100)] 
realtek: rt-loader: enhance is_uimage()

Until now is_uimage() is only a crc check and the caller
still needs to check other bits of the uimage header. Make
this function what it is meant to be.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21332
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agopackage: ethtool: specify just one default variant 21363/head
Eric Fahlgren [Fri, 2 Jan 2026 16:20:15 +0000 (08:20 -0800)] 
package: ethtool: specify just one default variant

Inadvertently defining 'DEFAULT_VARIANT' on both ethool and
ethtool-full variants resulted in

    $ make defconfig
    tmp/.config-package.in:121615:error: recursive dependency detected!
    tmp/.config-package.in:121615:  symbol PACKAGE_ethtool-full is selected by PACKAGE_ethtool
    tmp/.config-package.in:121605:  symbol PACKAGE_ethtool depends on PACKAGE_ethtool-full

Fix this by simply undefining 'DEFAULT_VARIANT' on the ethtool-full
variant, which is ugly, but expedient.

Fixes: https://github.com/openwrt/openwrt/commit/f4fdb996
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21363
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agotreewide: add explicit default variant 21358/head
Eric Fahlgren [Fri, 2 Jan 2026 02:02:30 +0000 (18:02 -0800)] 
treewide: add explicit default variant

Some packages with variants did not specify the default among the
alternatives, so were left without any apk 'provider_priority'
for that package.  This caused the apk solver to select the wrong
variant, silently changing the requested package list.

Notable among these were busybox, procd and the hostapd/wpad suite.
This behavior presented in the imagebuilders when creating the
image as follows, silently replacing packages even when explicitly
requested:

    $ make image PACKAGES=busybox
    ...
    ( 14/148) Installing busybox-selinux (1.37.0-r6)
    ...

We add 'DEFAULT_VARIANT:=1' to the packages that were missing one,
providing apk with sufficient information to choose the correct
package.

See link below for further examples and discussion.

Link: https://github.com/openwrt/openwrt/pull/21288#issuecomment-3704101422
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21358
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 days agoutil-linux: update to 2.41.3 21276/head
Wei-Ting Yang [Wed, 24 Dec 2025 15:20:12 +0000 (23:20 +0800)] 
util-linux: update to 2.41.3

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

Also update URL to use HTTPS.

Signed-off-by: Wei-Ting Yang <williamatcg@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21276
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 days agotools: util-linux: update to 2.41.3
Wei-Ting Yang [Wed, 24 Dec 2025 15:16:00 +0000 (23:16 +0800)] 
tools: util-linux: update to 2.41.3

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

Remove upstreamed:
110-meson-fix-a-bug-in-posixipc_libs-configuration.patch

Signed-off-by: Wei-Ting Yang <williamatcg@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21276
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agolibiwinfo: update to Git HEAD (2025-11-29) 21347/head
Hauke Mehrtens [Wed, 31 Dec 2025 20:33:08 +0000 (21:33 +0100)] 
libiwinfo: update to Git HEAD (2025-11-29)

2ebef3da84e8 iwinfo: Query hostapd for 'ssid2'

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Link: https://github.com/openwrt/openwrt/pull/21347
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 days agorealtek: setup cpu port in soc_info structure 21327/head
Markus Stockhausen [Tue, 30 Dec 2025 13:07:32 +0000 (14:07 +0100)] 
realtek: setup cpu port in soc_info structure

A lot of soc_info usage has been reorganized. Nevertheless there
are some consumers left. A very critical one is the dsa/qos coding.
It makes use of the cpu_port in this shared structure. This is
totally broken as that info is never properly initialized. Fill
the cpu_port according to the identified hardware.

Remark: Looking at the prom.c history soc_info.cpu_port was never
setup since the beginning of time. So no "fixes" tag here.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21327
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agorealtek: RTL930x: setup highmem registers during init
Markus Stockhausen [Tue, 30 Dec 2025 10:02:04 +0000 (11:02 +0100)] 
realtek: RTL930x: setup highmem registers during init

For some reason the highmem configuration of RTL930x
devices was totally missed until now. Take over the
setup from the SDK. This will avoid boot stalls on
switches with more than 256 MB RAM when switching
over to kernel 6.18.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21327
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agorealtek: determine memory size during initialization
Markus Stockhausen [Tue, 30 Dec 2025 09:33:32 +0000 (10:33 +0100)] 
realtek: determine memory size during initialization

For proper highmem initialization on RTL930x the size of the
installed memory is needed during early bootup. Enhance the
soc_info structure and fill the data from the registers.

While we are here remove the obsolete compatible variable from
the soc_info structure.

Adapt boot message to show the memory size.

old: SoC Type: Realtek RTL9301 rev B (6487)
new: Realtek RTL9301 rev B (6487) SoC with 512 MB

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21327
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agorealtek: harmonize variables in prom.c
Markus Stockhausen [Tue, 30 Dec 2025 08:59:26 +0000 (09:59 +0100)] 
realtek: harmonize variables in prom.c

There is mix of variable naming in prom.c. Use a fixed
prefix of "rtl_" for all static variables. Additionally
remove the prefix from rtl83xx_set_system_type as it is
a generic function for all SoC types.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/21327
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 days agokernel/rtl8812au-ct: provide a virtual kmod 21288/head
George Sapkin [Sun, 28 Dec 2025 15:37:08 +0000 (17:37 +0200)] 
kernel/rtl8812au-ct: provide a virtual kmod

Switch rtl8812au-ct to use the new virtual kmod provides semantic.

Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agokernel/ath10k: provide a virtual kmod
George Sapkin [Sun, 28 Dec 2025 15:34:48 +0000 (17:34 +0200)] 
kernel/ath10k: provide a virtual kmod

Switch ath10k and related kmods to use the new virtual kmod provides
semantic and mark ath10k as the default variant.

Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agokernel/r8169: provide a virtual kmod
George Sapkin [Sun, 28 Dec 2025 15:30:12 +0000 (17:30 +0200)] 
kernel/r8169: provide a virtual kmod

Switch r8169 and related kmods to use the new virtual kmod provides
semantic and mark r8169 as the default variant.

Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agoca-certificates: provide a virtual package
George Sapkin [Thu, 25 Dec 2025 15:16:18 +0000 (17:16 +0200)] 
ca-certificates: provide a virtual package

Switch ca-certs provides to use the new virtual provides semantic that
enables ca-bundle and ca-certificates to be installed side-by-side.

Provide the new format virtual ca-certificates-any in ca-bundle.

Fixes: https://github.com/openwrt/openwrt/issues/21257
Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agobuild: provide virtual self in kmods
George Sapkin [Sun, 28 Dec 2025 15:22:41 +0000 (17:22 +0200)] 
build: provide virtual self in kmods

Add an implicit self-provide to kmods. apk can't handle self provides,
be it versioned or virtual, so opt for a prefix and a suffix instead.
Package name without a prefix/suffix is too generic and might conflict
with other packages, e.g. wireguard. This allows several variants to
provide the same virtual package without adding extra provides to the
default one, e.g. r8169 implicitly provides kmod-r8169-any and is marked
as default, so r8125 can explicitly provide @kmod-r8169-any as well.

Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agobuild: add support for virtual provides
George Sapkin [Thu, 25 Dec 2025 13:32:29 +0000 (15:32 +0200)] 
build: add support for virtual provides

Allow defining virtual provides using the PROVIDES field by prefixing
them with @, e.g.:

PROVIDES:=@ca-certs

Virtual provides don't own the provided name and multiple packages with
the same virtual provides can be installed side-by-side. Packages must
still take care not to override each other's files.

Add an implicit self-provide to packages. apk can't handle self
provides, be it versioned or virtual, so opt for a suffix instead. This
allows several variants to provide the same virtual package without
adding extra provides to the default one, e.g. wget implicitly provides
wget-any and is marked as default, so wget-ssl can explicitly provide
@wget-any as well.

Filter out virtual provides when generating metadata.

Filter out virtual provides prefix and self provide where appropriate.

Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agobuild: refactor provides logic
George Sapkin [Thu, 25 Dec 2025 12:09:53 +0000 (14:09 +0200)] 
build: refactor provides logic

Refactor provides logic into a helper define and use it for both apk and
control. Document the behavior.

Store preformatted provides in Package/$(1)/PROVIDES similar to defines.

Remove unnecessary logging.

Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/21288
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agokernel: bump 6.12 to 6.12.63 21329/head
John Audia [Thu, 18 Dec 2025 15:10:55 +0000 (10:10 -0500)] 
kernel: bump 6.12 to 6.12.63

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

Manually rebased:
  qualcommax/patches-6.12/0113-remoteproc-qcom-Add-secure-PIL-support.patch
  qualcommax/patches-6.12/0116-remoteproc-qcom-Update-regmap-offsets-for-halt-regis.patch

Removed upstreamed:
  airoha/patches-6.12/029-14-spi-airoha-snfi-en7523-workaround-flash-damaging.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.63&id=7be679104357439ff6eab076975f5f74368acd69

Build system: x86/64
Build-tested: flogic/glinet_gl-mt6000, ramips/tplink_archer-a6-v3, x86/64-glibc
Run-tested: flogic/glinet_gl-mt6000, ramips/tplink_archer-a6-v3, x86/64-glibc

Co-authored-by: Goetz Goerisch <ggoerisch@gmail.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/21329
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agogeneric: add missing symbol
John Audia [Fri, 19 Dec 2025 21:37:38 +0000 (16:37 -0500)] 
generic: add missing symbol

Set SND_SOC_NAU8325 to no

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/21329
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agokernel: r8168: fix CFLAGS with linux 6.15+ 21330/head
Álvaro Fernández Rojas [Tue, 30 Dec 2025 13:45:15 +0000 (14:45 +0100)] 
kernel: r8168: fix CFLAGS with linux 6.15+

Fix r8168 module CFLAGS with kernels >= v6.15.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
6 days agokernel: r8101: fix CFLAGS with linux 6.15+
Álvaro Fernández Rojas [Tue, 30 Dec 2025 13:44:10 +0000 (14:44 +0100)] 
kernel: r8101: fix CFLAGS with linux 6.15+

Fix r8101 module CFLAGS with kernels >= v6.15.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
6 days agomediatek: filogic: fix supported_devices list for gl-mt2500 20632/head
Eric Fahlgren [Mon, 3 Nov 2025 20:34:37 +0000 (12:34 -0800)] 
mediatek: filogic: fix supported_devices list for gl-mt2500

The SUPPORTED_DEVICES sets for both Maxlinear (v1) and Airoha (v2)
devices were identical, so sysupgrade was unable to detect when an
incorrect image was being installed.  This caused "soft bricking" of
devices when a v1 image was installed on a v2 device, and vice versa.

Fix this by making the supported_devices distinct for each device
version, by renaming the devices with a version-specific name.
This is reflected in the file name and the image metadata.

Fixes: https://github.com/openwrt/openwrt/issues/20566
Fixes: https://github.com/openwrt/asu/issues/1525
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20632
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>