1
0
Fork 0
forked from mirror/openwrt
Commit graph

66246 commits

Author SHA1 Message Date
Hauke Mehrtens
985394bf26 ucode: update to Git HEAD (2025-11-07)
e8a7290e55c0 socket: fix `recv()` incorrectly reporting unrelated errors
ddde611fb9d4 socket: fix convertion of hw addresses to ucode strings
924ccc95be32 vm: make sure uc_vm_insn_to_name() always returns a value
754590d26f23 lexer: fix parsing \xHH and \0OOO escape sequences
623f550e579a fs: add dup2() function
6c9385a99edd fs: add mkdtemp() method for creating temporary directories
ea579046a619 fs: reset errno to zero in get_fd()

The removed patches are integrated upstream.

Fixes: https://github.com/jow-/ucode/issues/332
Fixes: https://github.com/jow-/ucode/issues/337
Link: https://github.com/openwrt/openwrt/pull/20718
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 21:27:39 +01:00
Tomasz Maciej Nowak
6af5b8033c tegra: promote kernel 6.12 as default
It has been stable so far. As result of this change drop 6.6 files.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20251111183950.426981-1-tmn505@terefe.re/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 21:23:14 +01:00
Alexandru Gagniuc
7656e74a95 qualcommbe: support 10g-qxgmii in QCA8084 PHY driver
The "old" QCA8084 PHY driver does not implement 10g-qxgmii support.
This is blocking several devices which use the QCA8084 form being
merged. Qualcomm has provided updated drivers for the MAC (ppe), PCS,
and PHY via github. We only need to update the PHY driver.

Update the QCA8084 PHY driver using the patches provided by Qualcomm.
Re-organize the patches so that the changes go into the existing
patches. The SERDES functionality is new, so it gets new patches. This
is sufficient to enable 10g-qxgmii on ipq95xx platforms.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20721
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-11 17:21:54 +01:00
Christian Marangi
bd7f5b32a6
airoha: replace AN7583 pinctrl patch with upstream version
Replace Airoha AN7583 pinctrl patch with upstream version as it has been
accepted upstream. Add the related kernel version tag to identify it.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-11-11 17:20:13 +01:00
Florian Bomers
4daff067d7
kernel: sound: add support for MIDI 2.0 and UMP
New Packages / build options:
* sound-midi2: enable MIDI 2.0 / UMP in ALSA MIDI
* sound-midi2-seq: enable MIDI 2.0 / UMP in ALSA sequencer
* sound-midi2-usb: enable USB MIDI 2.0 support
* sound-dynamic-minors: allow more than 8 MIDI devices
More info about ALSA MIDI 2.0:
 https://docs.kernel.org/6.12/sound/designs/midi-2.0.html
More info about MIDI 2.0:
 https://midi.org/midi-2-0

Signed-off-by: Florian Bomers <github@bome.com>
Link: https://github.com/openwrt/openwrt/pull/20727
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-11-11 12:13:40 +01:00
Christoph Krapp
6f99711b1b ipq40xx: fix unit-address of Netgear LBR20 ubi partition
The unit-address of the ubi partition was @a9c0000 but the partition
actually starts at offset 0x0ad00000. Ideally they should match, so
align them.

Signed-off-by: Christoph Krapp <achterin@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20733
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-11 10:34:47 +01:00
Sven Eckelmann
356acef794 realtek: dsa: Clarify meaning of secondary lag member variable
The name "is_lagmember" implies that the port is part of a LAG. But this
information is already stored in lagmembers. In reality, it is stored the
non-primary LAG members. Renaming it accordingly, makes the code a lot more
readable

Also the type (u32 array) looks like it would contain some kind of large id
(like the group ID). But it only stores a single bit. It is more appropriate
to just use a single bit per port.

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20707
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 01:06:49 +01:00
Sven Eckelmann
f82da653fd realtek: DSA: Document meaning of lag priv variables
The names of the LAG variables in struct rtl838x_switch_priv are not self
explaining. They are even suggesting that they are dealing with information
which are actually stored in a different variable. As first step, document
their meaning.

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20707
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 01:06:49 +01:00
Sven Eckelmann
14095ab268 realtek: dsa: Drop LAG checks already handled by DSA handlers
There is no need to check conditions in rtl83xx_lag_add()/rtl83xx_lag_del()
when they are already checked in
rtl83xx_port_lag_join()/rtl83xx_port_lag_leave().

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20707
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 01:06:49 +01:00
Sven Eckelmann
e9bb1debb7 realtek: dsa: Use DSA allocated LAG ids
It is not necessary to have a private LAG id allocation when the shared DSA
code already provides the complete infrastructure for it.

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20707
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 01:06:49 +01:00
Sven Eckelmann
ca014cfd72 realtek: dsa: Drop secondary LAG configuration handler
The DSA code is responsible to inform the driver about link aggregation
changes. Having a second one which behaves slightly different makes the
whole process fragile and creates hard to debug problems.

It also complicates the code because the secondary event handler can also
not rely on shared DSA state to handle things like LAG ID.

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20707
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 01:06:49 +01:00
Sven Eckelmann
108381e5a1 realtek: dsa: Fix LAG id allocation
The rtl83xx_lag_can_offload() function always returned an error because
ds->num_lag_ids was never set. This basically disabled the DSA lag
configuration completely.

Drop the private n_lag variable and instead use the DSA specific one. This
ensures that all the code always has the same reference for the number of
LAGs.

Fixes: 32e5b5ee6b ("realtek: Add Link Aggregation (aka trunking) support")
Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20707
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 01:06:49 +01:00
Hauke Mehrtens
23211b196c udebug: update to Git HEAD (2025-10-21)
8c967bce23ae CMakeLists.txt: rename udebug-cli to udebug on installation
75f39cd4a806 add debian package support

Link: https://github.com/openwrt/openwrt/pull/20719
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:23:22 +01:00
Hauke Mehrtens
1f21cc9600 uci: update to Git HEAD (2025-11-03)
57c1e8cd2c05 github: add CI build
2e46a7405f26 github: improve CI
c1e2eee6c5e3 github: fix CI apt dependencies

Link: https://github.com/openwrt/openwrt/pull/20717
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:22:11 +01:00
Hauke Mehrtens
c0a30370f9 ubus: update to Git HEAD (2025-11-03)
6fdf7a979162 github: improve CI
0d4bcb56f5e1 github: fix CI apt dependencies

Link: https://github.com/openwrt/openwrt/pull/20716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:21:16 +01:00
Hauke Mehrtens
825dbed09a ubox: update to Git HEAD (2025-10-30)
6f78fa496bf3 ubox validate: port range check fix

Link: https://github.com/openwrt/openwrt/pull/20715
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:20:14 +01:00
Hauke Mehrtens
56eb74960d libnl-tiny: update to Git HEAD (2025-11-03)
fa6a52b03713 github: add CI build
c69fb5ef80b9 github: improve CI
532ac744dedc github: fix CI apt dependencies

Link: https://github.com/openwrt/openwrt/pull/20714
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:18:34 +01:00
Hauke Mehrtens
e0b6fa2216 libubox: update to Git HEAD (2025-11-03)
7a3863acfb15 lua: CMakeLists: drop redundant cmake_minimum_required
61cc1e6fdc0e examples: CMakeLists: drop redundant cmake_minimum_required
7d6b9d98d0bd add debian/ directory
9caf555f00e2 github: improve CI build
e357be611cd9 github: fix CI apt dependencies

Link: https://github.com/openwrt/openwrt/pull/20713
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:17:26 +01:00
Tianling Shen
fefd50ec00 rockchip: add missing KERNEL_LOADADDR for LinkEase EasePi R1
Commit 8ca4caacd0 ("rockchip: Add support for RK3568 LinkEase EasePi R1")
forgot to include the SoC recipe, which leads KERNEL_LOADADDR undefined.

Fixes: 8ca4caacd0 ("rockchip: Add support for RK3568 LinkEase EasePi R1")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/20722
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:11:16 +01:00
Tianling Shen
d720ad5254 rockchip: fix assign IRQ SMP affinity for Radxa E52C
The ifname was renamed to `lan`/`wan` in commit 1f1db75432
 ("rockchip: make NIC name predictable for Radxa E52C/ROCK 5 ITX/ROCK 5T"),
update accordingly.

Fixes: 1f1db75432 ("rockchip: make NIC name predictable for Radxa E52C/ROCK 5 ITX/ROCK 5T")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/20722
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:11:16 +01:00
Sven Eckelmann
14d3ea43ab realtek: dsa: rtl93xx: Keep mgmt recv action functions local
Th function to set the mangement frames receive actions is only used in the
SoC specific files. They can therefore be kept local without any
declaration in headers.

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20704
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:05:20 +01:00
Sven Eckelmann
fa8ac8e562 realtek: dsa: rtl931x: Sync mgmt recv action code with RTL930x
The code for the RTL930x management action configuration was cleaned up
significantly for commit 75fe6b2d0b ("realtek: rtl930x: Add support for
trapping management frames"). Sync these changes to RTL931x to make it
easier to extend both implementations.

Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20704
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-11 00:05:20 +01:00
Hauke Mehrtens
0c6fa6edce
odhcp6c: update to Git HEAD (2025-11-09)
17ef5f40d48a readme: rewrite in markdown
0fcfe9166173 readme: document all environment options
e3949977ca94 readme: update for prpl patch-set additions
86544fa2b581 src: align SoftAtHome license headers format
8bad7df9feb9 src: reorder includes alphabetically
6d353ff96826 src: remove pragma once in headers
f5684d570200 treewide: remove whitespaces at EOL
e5cfea8f6ef8 src: add missing if/else braces
a92f199d6b8d dhcpv6: potential bug fix for checking DHCPV6_OPT_STATUS
9e414d41e16e readme: fix description string
775e6c759cfd dhcpv6: return early upon success
e5690c1f13ed treewide: Replace _unused with _o_unused

This fixes the build on powerpc.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Link: https://github.com/openwrt/openwrt/pull/20712
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-11-10 23:52:06 +01:00
Christian Marangi
3169ffa4c7
airoha: backport patch fixing out of order DMA for ethernet driver
Backport upstream patch fixing out of order DMA access for ethernet
driver. This is relevant in the context of QoS when packets doesn't
follow linear handling by QDMA HW.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-11-10 19:27:11 +01:00
Christian Marangi
cce81ed05b
uboot-airoha: drop HIDDEN option
Drop HIDDEN option from U-Boot default for Airoha while support for ATF
gets pushed.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-11-10 19:16:01 +01:00
Christian Marangi
eedc7b3b79
airona: an7583: fix typo for CONFIG_PHY_AIROHA_USB
KConfig flag have an extra whitespace for CONFIG_PHY_AIROHA_USB and
value is not ignored.

Drop the extra whitespace to correctly ignore the value on kernel
compilation.

Fixes: c5b12fc02a ("airoha: Introduce support for Airoha AN7583 SoC")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2025-11-10 18:25:49 +01:00
Andy Chiang
4ad22d0342 firewall: config: add dest addr restrictions for DHCPv6 rules
Some ISPs may use a GUA or other non-LLA as the source addr for the DHCPv6 response, but the destination addr is always LLA (fe80::/10).
Therefore, adding a dest addr restriction improves security.
See https://forum.mikrotik.com/t/xfinity-comcast-dhcpv6-configuration-change/156031/10

Signed-off-by: Andy Chiang <AndyChiang_git@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20562
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-10 15:23:16 +01:00
Rany Hany
df338d67d4 wifi-scripts: allow sae_password_file to be configured
Adds missing config_add_string for sae_password_file.

Fixes: 65a1c666f2 ("hostapd: add SAE support for wifi-station and optimize PSK file creation")
Fixes: https://github.com/openwrt/openwrt/issues/19717
Signed-off-by: Rany Hany <rany_hany@riseup.net>
Link: https://github.com/openwrt/openwrt/pull/19964
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-10 15:21:45 +01:00
Andy Chiang
631d535282 toplevel.mk: use relative path for feeds/base symlink
Currently, feeds/base is created as an absolute symlink to $(TOPDIR)/package.
If the OpenWrt source tree is copied to another location for building (while keeping the old tree), the symlink will still point to the package directory in the old tree.
Using a relative symlink ensures that feeds/base always points to the package directory within the current OpenWrt source tree, improving portability and avoiding incorrect links.

Signed-off-by: Andy Chiang <AndyChiang_git@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20297
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-10 15:20:34 +01:00
David Härdeman
a88a19982d odhcpd: update Makefile description
Make it a little bit more consistant, and a bit more idiomatic.

Signed-off-by: David Härdeman <david@hardeman.nu>
Link: https://github.com/openwrt/openwrt/pull/20673
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-11-10 12:58:15 +01:00
David Härdeman
002e22b069 odhcpd: update Makefile, remove homenet
The support has been removed from odhcpd, so remove the Makefile options
related to homenet.

Signed-off-by: David Härdeman <david@hardeman.nu>
Link: https://github.com/openwrt/openwrt/pull/20673
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-11-10 12:53:25 +01:00
David Härdeman
781b04a84f odhcpd: reload on change to service/network cfg
"system" is used to get the current time zone, "network" is used to get
the global DUID.

Signed-off-by: David Härdeman <david@hardeman.nu>
Link: https://github.com/openwrt/openwrt/pull/20673
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-11-10 12:53:11 +01:00
David Härdeman
9be4970581 odhcpd: remove legacy option
Support for this option has been removed from odhcpd, so remove it in
the defaults as well.

Signed-off-by: David Härdeman <david@hardeman.nu>
Link: https://github.com/openwrt/openwrt/pull/20673
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-11-10 12:52:39 +01:00
Eneas U de Queiroz
0b9111301b wifi-scripts: ucode: iwinfo: expand AKM display
This exands the list of AKMs to display:
 - display the hash when larger than the default (loosely based on
   what hostapd uses in config).
   - renaming 'WPA PSK2' to 'WPA PSK-SHA256' as a result
 - separate FILS suites from plain 802.1x
 - add suites 3, 5, 9, 19, 20, 24, and 25

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20686
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-10 11:46:55 +01:00
Eneas U de Queiroz
988b2ed515 wifi-scripts: ucode: iwinfo: escape control chars
Escape control characters when displaying ESSID.  It is not uncommon for
a scan to encounter invalid SSIDs, containing binary data.  Escape the
control characters to avoid messing the display (ENQ is particularly
bothersome).

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20686
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-10 11:46:55 +01:00
Eneas U de Queiroz
e50703d033 wifi-scripts: ucode: iwinfo: show ESSID in scan
This adds the ESSID: line to the iwinfo scan results.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20686
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-10 11:46:55 +01:00
Joe Holden
d97e529f1f realtek: RTL838x: make u-boot-env writeable ZyXEL GS1900
As per #19596 - this allows eg, modifying the bootcmd etc.

This has been useful when testing on e.g the -48, where `rtk network on` is required for the SFP ports.

Signed-off-by: Joe Holden <jwh@zorins.us>
Link: https://github.com/openwrt/openwrt/pull/19913
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 23:34:12 +01:00
Liangbin Lian
8ca4caacd0 rockchip: Add support for RK3568 LinkEase EasePi R1
Specification:
- Rockchip RK3568
- 2GB/4GB LPDDR4 RAM
- 16GB on-board eMMC
- 1x M.2 key for 2280 NVMe (PCIe 3.0)
- 1x USB 3.0 Type-A
- 1x USB 2.0 Type-C (for USB flashing)
- 2x 1000 Base-T (native, RTL8211F)
- 2x 2500 Base-T (PCIe, RTL8125B)
- 1x HDMI 2.0 Output
- 12v DC Jack
- 1x Power key connected to PMIC
- 2x LEDs (one static power supplied, one GPIO controlled)

Debug Serial Port: 3.3V TTL, 3-pin 2.54mm pitch connector, 1500000 bauds,
'J7' on board with G/R/T (GND/RX/TX) pins marked

Installation - eMMC:
-Boot official firmware (OpenWRT based)
-Upload sysupgrade.img.gz to /tmp/firmware.bin (with scp or web page)
-Flash to eMMC: sysupgrade -n -p -F /tmp/firmware.bin

Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20147
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 23:13:37 +01:00
Liangbin Lian
ef093299db uboot-rockchip: add support for LinkEase EasePi R1
generic-rk3568 is enough

Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20147
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 23:13:25 +01:00
Thibaut VARÈNE
887cab883b mediatek/filogic: fix Cudy WR3000H ethernet port order
The ports are physically labelled in reverse order on the device.
This patch aligns logical names with physical ones.
LED order on front of device is correct after this patch.

Fixes: 9d66b8b312
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Link: https://github.com/openwrt/openwrt/pull/20528
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 23:07:59 +01:00
Trix Taiclet
71b5de61ae uboot-d1: fix build with swig 4.3.0
Swig 4.3.0 has changed SWIG_Python_AppendOutput, which now requires an
additional parameter `is_void`. SWIG_AppendOutput remains unchanged.
This was fixed upstream in u-boot/u-boot@a63456b

```
scripts/dtc/pylibfdt/libfdt_wrap.c: In function ‘_wrap_fdt_next_node’:
scripts/dtc/pylibfdt/libfdt_wrap.c:5581:17: error: too few arguments to function ‘SWIG_Python_AppendOutput’
 5581 |     resultobj = SWIG_Python_AppendOutput(resultobj, val);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~
```

This is the same fix as applied in 363e07d.

Fixes: #20619
Link: #20620
Signed-off-by: Trix Taiclet <trix@c3l.lu>
Link: https://github.com/openwrt/openwrt/pull/20620
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 23:00:44 +01:00
Pawel Dembicki
ef93221841 kirkwood: kernel: remove 6.6 version support
After switching to 6.12, time to remove 6.6 support.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20672
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 22:55:44 +01:00
Pawel Dembicki
c5b75d6cde kirkwood: kernel: switch to 6.12 version
No new reggresions was observed. Time to switch to 6.12.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20672
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 22:55:44 +01:00
Shiji Yang
64432358e0 tools/squashfs4: update to 4.7.3
Release Note:
  https://github.com/plougher/squashfs-tools/releases/tag/4.7.3

The three backported patches fixed the regression and build
issue on squashfs-tools v4.7.3.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20683
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 22:45:12 +01:00
FUKAUMI Naoki
1f1db75432 rockchip: make NIC name predictable for Radxa E52C/ROCK 5 ITX/ROCK 5T
The probe order for PCIe buses and devices is non-deterministic,
making the names eth0 and eth1 unpredictable (they may be swapped).

This patch fixes the names by referencing the device path using
`ucidef_set_network_device_path`.

The mapping between silkscreen labels on the board/case and OpenWrt
interface names is as follows:

- E52C
  LAN: lan
  WAN: wan

- ROCK 5 ITX
  RJ45 1: eth0
  RJ45 2: eth1

- ROCK 5T
  RJ45_1: eth0
  RJ45_2: eth1

For Radxa E52C, this breaks compatibility of the network config;
therefore, set DEVICE_COMPAT_VERSION to `1.1`.

Fixes: d16d2765bd ("rockchip: add support for Radxa E52C")
Fixes: 0839345211 ("rockchip: add support for Radxa ROCK 5 ITX/ITX+")
Fixes: 4a78af9876 ("rockchip: add support for Radxa ROCK 5T")
Link: https://github.com/openwrt/openwrt/issues/20202
Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
Link: https://github.com/openwrt/openwrt/pull/20608
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 21:56:13 +01:00
Andrii Kuiukoff
b33df7ba33 mediatek: add support for COMFAST CF-WR632AX
COMFAST CF-WR632AX is a compact/travel (123.4 mm * 88.7 mm * 34 mm)
wireless WiFi 6 router.

Specification
-------------
- SoC          : MediaTek MT7981B dual-core ARM Cortex-A53 1.3 GHz
- RAM          : DDR3 512 MiB
- Flash        : SPI-NAND 128 MiB (Winbond)
- WLAN         : MediaTek MT7976CN dual-band WiFi 6
  - 2.4 GHz    : b/g/n/ax, MU-MIMO (2x 5 dBi antennas)
  - 5 GHz      : a/n/ac/ax, MU-MIMO (2x 5 dBi antennas)
- Ethernet     :
  - LAN x1     : 10/100/1000 Mbps (MT7981 internal PHY)
  - WAN x1     : 10/100/1000/2500 Mbps (Maxlinear GPY211C)
- USB x1       : 3.0
- UART         : through-hole on PCB
  - assignment : (RX), (TX), (GND), [VCC]
  - settings   : 115200n8
- Buttons x1   : Reset
- LEDs x3      : Status (Blue, Green, Red)
- Fan x1       : PWM, 4-wire, 5 V, 0.3 A, 45 mm * 10 mm
- Power        : 5 VDC, 3 A, Type-C

Flash instructions
------------------
WebUI Method:

1. Install the *squashfs-sysupgrade.bin image using the stock WebUI
   update page.
2. Press and hold the reset button after reboot
   to wipe the stock config.

SSH Method:

1. Import stock firmware settings from backup file
   github.com/andros-ua/owrt-misc/blob/main/cf-wr632ax/backup.file
   Note: WebUI password will be reset to admin1234 after import.
2. Connect via SSH using root:openwrt credentials.
3. Upload the *squashfs-sysupgrade.bin image.
4. Use the command: sysupgrade -n
   All checks should pass.

Return to stock
---------------
Flash a stock firmware
using the OpenWrt sysupgrade method.

Recovery
--------
Power on the router while holding the Reset button until
the LED flashes 5 times.
The U-Boot Flash WebUI will be available at http://192.168.1.1
or
Connect UART and use the U-Boot menu to flash the firmware image
or boot an OpenWrt initramfs image.

OpenWrt U-Boot flash instructions
---------------------------------
1. Flash ordinary OpenWrt image.
2. Login into the device and backup everything, especially 'Factory' part.
3. Unlock mtd partitions:
    apk add kmod-mtd-rw
    insmod mtd-rw i_want_a_brick=1
4. Write new BL2 and FIP:
    mtd write openwrt-mediatek-filogic-comfast_cf-wr632ax-ubootmod-preloader.bin BL2
    mtd write openwrt-mediatek-filogic-comfast_cf-wr632ax-ubootmod-bl31-uboot.fip FIP
5. Set static IP on your PC:
    ip 192.168.1.254 mask 255.255.255.0
6. Serve OpenWrt initramfs image using TFTP server.
7. Reboot device, wait for TFTP recovery to complete.
8. After OpenWrt has booted, perform sysupgrade.

MAC Addresses:
----------------------------------------------------------
| Interface    |  MAC              | Source              |
---------------|-------------------|----------------------
| WAN (label)  | 40:A5:EF:xx:xx:xx | Factory, 0xe000     |
| LAN          | 40:A5:EF:xx:xx:xx | Factory, 0xe000 + 1 |
| WLAN 2.4 GHz | 40:A5:EF:xx:xx:xx | Factory, 0x4        |
| WLAN 5 GHz   | 40:A5:EF:xx:xx:xx | Factory, 0x8000     |
----------------------------------------------------------

Signed-off-by: Andrii Kuiukoff <andros.ua@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20382
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 19:33:18 +01:00
Luis Mita
8fb644e9e8 ramips: mt7621: add support for Cudy AP1300 Outdoor v1
Hardware:
 - SoC: MediaTek MT7621DAT
 - Flash: 16 MiB XM25QH128C
 - RAM: 128 MiB
 - WLAN: 2.4 GHz (MT7603E, 11n), 5 GHz (MediaTek MT7613BEN, 11ac)
 - Ethernet: 1x10/100/1000 Mbps LAN
 - Buttons: 1 Reset button, 1 WPS button
 - LEDs: 5x Green
 - Serial Console: unpopulated header 115200 8n1 (silkscreen on PCB)
 - Power: POE 802.3af (37-57V DC)

MAC addresses:
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| LAN     | 80:af:ca:xx:xx:x0 | label     |
| WLAN 2g | 80:af:ca:xx:xx:x0 | label     |
| WLAN 5g | 82:af:ca:xx:xx:x1 | +1        |
+---------+-------------------+-----------+

Installation:
The factory firmware is locked: you can only work with Cudy signed firmware.
Download a intermediate firmware signed by Cudy here:
https://www.cudy.com/blogs/faq/openwrt-software-download

After that, login to the router (192.168.10.254, password "admin") and install the intermediate firmware.

If you can reach LuCI or SSH now on the intermediate firmware, just use the sysupgrade image with the 'Keep settings' option turned off.

Special thanks to Daniel de Kock for starting the porting work at #16265.

Signed-off-by: Luis Mita <luis@luismita.com>
Co-Authored-By: Daniel de Kock <daniel@riot.network>
Co-Authored-By: Hauke Mehrtens <hauke@hauke-m.de>
Link: https://github.com/openwrt/openwrt/pull/20268
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 18:00:18 +01:00
Jonas Jelonek
b10663c428 realtek: pcs: allow to configure SerDes polarity
Allow to configure SerDes polarity in device tree. To achieve this, add
new device tree properties that can be set in the device tree definition
of the SerDes, are read by the PCS driver during probe and are applied
upon SerDes setup.

This may be required for supporting new devices as the SerDes polarity
is usually subject to the vendors board design and defined in the
hardware profile (HWP) in the SDK. Most importantly, it is quite an
important step towards being able to setup everything on our own instead
of relying on the bootloader.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20648
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 17:48:10 +01:00
Jonas Jelonek
56e9a73d0b realtek: pcs: rtl93xx: provide proper SerDes polarity configuration
The configuration code for RTL930X already provides setting the SerDes
TX and RX PN polarity. This is covered by a function called
'..._sds_mac_link_config'. But despite its name, this function only sets
the SerDes polarity and nothing more.

Moreover, this was called always with 'not inverted' in the SerDes setup
code and thus not really allowing to be configured.

At first, streamline the SerDes polarity configuration code. Rename the
function to reflect what it actually does instead of giving the
impression of doing more. Improve the implementation of this for better
readability.

As the implementation, page, register, bits, etc. are exactly the same
for both RTL930X and RTL931X (compare [1] and [2]), move and name it
accordingly so we can also add support for RTL931X.

[1] 69d2890a2e/sources/rtk-xgs1210/src/hal/phy/phy_rtl9300.c (L1384)
[2] 69d2890a2e/sources/rtk-xgs1210/src/hal/phy/phy_rtl9310.c (L3479)

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20648
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 17:48:10 +01:00
Shiji Yang
627a0e7da0 kernel: mtdsplit_fit: always return 0 when partition can't be split
If parse_fn() callback returns any error code, the entire MTD partition
table will be destroyed. Returning "0" indicates that the partition
should not be split. This patch fixes the kernel warning when running
the initramfs image but there is no image in firmware partition:

```
[    1.554246] no rootfs found after FIT image in "firmware"
[    1.559686] Failed to parse subpartitions: -19
[    1.564120] Deleting MTD partitions on "spi0.0":
[    1.568743] Deleting bl2 MTD partition
[    1.572507] ------------[ cut here ]------------
[    1.577110] WARNING: CPU: 0 PID: 1 at del_gendisk+0x260/0x2c4
[    1.582855] Modules linked in:
[    1.585902] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.57 #0
[    1.592505] Hardware name: AiroPi AX3 (DT)
[    1.596589] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    1.603538] pc : del_gendisk+0x260/0x2c4
[    1.607452] lr : del_gendisk+0x1c/0x2c4
[    1.611280] sp : ffffffc080dab460
[    1.614583] x29: ffffffc080dab460 x28: ffffffc080d75140 x27: 0000000000000004
[    1.621711] x26: 0000000000000000 x25: 0000000000000000 x24: ffffffc080b3f3d0
[    1.628838] x23: ffffffc080cf3d78 x22: ffffffc080cf3da8 x21: ffffff80009b8780
[    1.635966] x20: ffffffc080cf3e10 x19: ffffff80009d7400 x18: ffffffc080c5ebd8
[    1.643093] x17: ffffffc080cf00f0 x16: 000000009d594d00 x15: 0000000000000088
[    1.650221] x14: 0000000000000088 x13: 00000000ffffffea x12: ffffffc080cb6b80
[    1.657348] x11: 0000000000000040 x10: ffffffc080cf3820 x9 : ffffffc080cf3818
[    1.664475] x8 : ffffff8000420dd8 x7 : 0000000000000000 x6 : 0000000000000000
[    1.671601] x5 : ffffff8000420db0 x4 : ffffff8000420dd8 x3 : 0000000000000000
[    1.678728] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000004
[    1.685855] Call trace:
[    1.688290]  del_gendisk+0x260/0x2c4
[    1.691858]  del_mtd_blktrans_dev+0x30/0x144
[    1.696120]  mtdblock_remove_dev+0xc/0x20
[    1.700119]  blktrans_notify_remove+0x88/0xc4
[    1.704464]  del_mtd_device+0x58/0xdc
[    1.708120]  __del_mtd_partitions+0x98/0xe0
[    1.712296]  del_mtd_partitions+0x50/0x70
[    1.716299]  add_mtd_partitions+0x94/0x1e0
[    1.720388]  parse_mtd_partitions+0x3d0/0x4d4
[    1.724736]  mtd_device_parse_register+0x170/0x36c
[    1.729518]  spi_nor_probe+0x250/0x2cc
[    1.733261]  spi_mem_probe+0x68/0xa0
[    1.736828]  spi_probe+0x80/0xe0
[    1.740051]  really_probe+0xb8/0x2a4
[    1.743617]  __driver_probe_device+0x74/0x118
[    1.747962]  driver_probe_device+0x3c/0xe0
[    1.752049]  __device_attach_driver+0xac/0xe8
[    1.756394]  bus_for_each_drv+0x6c/0xb0
[    1.760224]  __device_attach+0x98/0x178
[    1.764049]  device_initial_probe+0x10/0x18
[    1.768223]  bus_probe_device+0xa0/0xa4
[    1.772051]  device_add+0x540/0x724
[    1.775531]  __spi_add_device+0x13c/0x1f8
[    1.779532]  of_register_spi_device+0x44c/0x720
[    1.784051]  spi_register_controller+0x4cc/0x6c0
[    1.788658]  devm_spi_register_controller+0x48/0xa0
[    1.793525]  mtk_spi_probe+0x420/0x720
[    1.797266]  platform_probe+0x64/0xcc
[    1.800920]  really_probe+0xb8/0x2a4
[    1.804485]  __driver_probe_device+0x74/0x118
[    1.808831]  driver_probe_device+0x3c/0xe0
[    1.812916]  __driver_attach+0x88/0x154
[    1.816741]  bus_for_each_dev+0x60/0xa0
[    1.820569]  driver_attach+0x20/0x28
[    1.824138]  bus_add_driver+0xdc/0x208
[    1.827880]  driver_register+0x64/0x114
[    1.831705]  __platform_driver_register+0x20/0x30
[    1.836399]  mtk_spi_driver_init+0x18/0x20
[    1.840486]  do_one_initcall+0x4c/0x1f8
[    1.844313]  kernel_init_freeable+0x238/0x290
[    1.848661]  kernel_init+0x1c/0x120
[    1.852141]  ret_from_fork+0x10/0x20
[    1.855707] ---[ end trace 0000000000000000 ]---
[    1.860731] Deleting u-boot-env MTD partition
[    1.865431] Deleting factory MTD partition
[    1.869907] Deleting fip MTD partition
[    1.874003] Deleting firmware MTD partition
```

Ref:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/mtd/mtdpart.c?h=linux-6.12.y&id=5c2f7727d437cd42033d13ebc8b3d74b9fe65712

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20706
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2025-11-09 17:23:18 +01:00