]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
6 weeks agokernel: bump 6.6 to 6.6.94 19183/head
John Audia [Thu, 19 Jun 2025 14:59:11 +0000 (10:59 -0400)] 
kernel: bump 6.6 to 6.6.94

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

Removed upstreamed:
generic/backport-6.6/421-01-v6.16-spi-bcm63xx-spi-fix-shared-reset.patch[1]
generic/backport-6.6/421-02-v6.16-spi-bcm63xx-hsspi-fix-shared-reset.patch[2]
generic/backport-6.6/725-01-v6.16-net-dsa-tag_brcm-legacy-fix-pskb_may_pull-length.patch[3]
mvebu/patches-6.6/0001-v6.16-pinctrl-armada-37xx-use-correct-OUTPUT_VAL-register-.patch[4]
mvebu/patches-6.6/0002-v6.16-pinctrl-armada-37xx-set-GPIO-output-value-before-set.patch[5]

Added new back-port:
generic/backport-6.6/001-powerpc-kernel-Fix-pcc_save_regs-inclusion.patch[6]
All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.94&id=29abb7fc82443bee273ba4623ce319bf7ba1d43d
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.94&id=59d5f3134b5c265df233b7f385bbe718191411be
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.94&id=2e02edb66427e3b8752e1f3dd3cfc1bef3f2357b
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.94&id=39ed85ae485d991ffb24d25629a679c0b22e2d8f
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.94&id=8f0f45a312151a52aae920a091ea4b454ac97caf
6. Addresses a build failure for pcc

Build system: x86/64
Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19183
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agokernel: bump 6.12 to 6.12.34 19184/head
Shiji Yang [Thu, 19 Jun 2025 16:01:11 +0000 (00:01 +0800)] 
kernel: bump 6.12 to 6.12.34

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

Remove upstreamed patches:
  generic/backport-6.12/421-01-v6.16-spi-bcm63xx-spi-fix-shared-reset.patch [1]
  generic/backport-6.12/421-02-v6.16-spi-bcm63xx-hsspi-fix-shared-reset.patch [2]
  generic/backport-6.12/610-06-v6.16-net-dsa-b53-do-not-enable-RGMII-delay-on-bcm63xx.patch [3]
  generic/backport-6.12/610-08-v6.16-net-dsa-b53-allow-RGMII-for-bcm63xx-RGMII-ports.patch [4]
  generic/backport-6.12/610-09-v6.16-net-dsa-b53-do-not-touch-DLL_IQQD-on-bcm53115.patch [5]
  generic/backport-6.12/611-v6.16-net-dsa-tag_brcm-legacy-fix-pskb_may_pull-length.patch [6]

Manually rebased patches:
  bcm27xx/patches-6.12/950-0665-drm-vc4-tests-Drop-drm-parameter-for-vc4_find_crtc_f.patch [7]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=408ca1d1803b223d615f9021055f9ccb4f4863ea
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=2a98786e258718ff93ef6d6bd26a9a39076e0cb7
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=6d1c93a5c6b0ae87bb7001d8d6fdef3b3be9c6c6
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=1aa31695bf0dc1ee3e6c559c14db7fd05b6bb102
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=b2fc08d276797e529cacad6fa9d704a7367090b5
[6] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=2c32fc56c05aa69439fdfd5e0b25f57e2a158627
[7] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.34&id=aba86d49e5ac3700295ab8c417436abacc19cc32

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19184
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agoucode: add ubus refcounting fix
Felix Fietkau [Fri, 20 Jun 2025 20:54:12 +0000 (22:54 +0200)] 
ucode: add ubus refcounting fix

Fixes a regression in the last ucode update

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 weeks agohostapd: fix generating own neighbor report for dynamically added/changed interfaces
Felix Fietkau [Fri, 20 Jun 2025 12:26:27 +0000 (14:26 +0200)] 
hostapd: fix generating own neighbor report for dynamically added/changed interfaces

hostapd_neighbor_set_own_report is normally called from interface setup only.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 weeks agohostapd: fix dealing with mac address changes for the primary BSS
Felix Fietkau [Fri, 20 Jun 2025 12:20:36 +0000 (14:20 +0200)] 
hostapd: fix dealing with mac address changes for the primary BSS

Ensure that hapd->own_addr is set properly, since hostapd_setup_bss
only handles it for secondary BSS interfaces

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 weeks agomvebu: add 6.12 testing kernel 18975/head
Stefan Kalscheuer [Sat, 31 May 2025 10:40:11 +0000 (12:40 +0200)] 
mvebu: add 6.12 testing kernel

Add 6.12 testing kernel for mvebu target.

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
Link: https://github.com/openwrt/openwrt/pull/18975
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agomvebu: 6.12: refresh kernel config
Stefan Kalscheuer [Sat, 31 May 2025 10:23:13 +0000 (12:23 +0200)] 
mvebu: 6.12: refresh kernel config

Add new and remove obsolete symbols for Kernel 6.12

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
Link: https://github.com/openwrt/openwrt/pull/18975
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agomvebu: 6.12: refresh patches
Stefan Kalscheuer [Sat, 31 May 2025 10:09:38 +0000 (12:09 +0200)] 
mvebu: 6.12: refresh patches

Drop upstreamed patches:
0001-v6.16-pinctrl-armada-37xx-use-correct-OUTPUT_VAL-register-.patch
0002-v6.16-pinctrl-armada-37xx-set-GPIO-output-value-before-set.patch
820-v6.11-01-dt-bindings-firmware-add-cznic-turris-omnia-mcu-bind.patch
820-v6.11-02-platform-cznic-Add-preliminary-support-for-Turris-Om.patch
820-v6.11-03-platform-cznic-turris-omnia-mcu-Add-support-for-MCU-.patch
820-v6.11-04-platform-cznic-turris-omnia-mcu-Add-support-for-powe.patch
820-v6.11-05-platform-cznic-turris-omnia-mcu-Add-support-for-MCU-.patch
820-v6.11-06-platform-cznic-turris-omnia-mcu-Add-support-for-MCU-.patch
820-v6.11-07-ARM-dts-turris-omnia-Add-MCU-system-controller-node.patch
820-v6.11-08-ARM-dts-turris-omnia-Add-GPIO-key-node-for-front-but.patch
820-v6.11-09-platform-cznic-turris-omnia-mcu-Depend-on-OF.patch
820-v6.11-10-platform-cznic-turris-omnia-mcu-Depend-on-WATCHDOG.patch
820-v6.11-11-platform-cznic-turris-omnia-mcu-fix-Kconfig-dependen.patch

Manually refreshed:
310-linksys-use-eth0-as-cpu-port.patch
350-drivers-thermal-step_wise-add-support-for-hysteresis.patch
901-dt-bindings-Add-IEI-vendor-prefix-and-IEI-WT61P803-P.patch
902-drivers-mfd-Add-a-driver-for-IEI-WT61P803-PUZZLE-MCU.patch
910-drivers-leds-wt61p803-puzzle-improvements.patch

All other patches automatically refreshed.

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
Link: https://github.com/openwrt/openwrt/pull/18975
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agokernel/mvebu: Restore kernel files for v6.6
Stefan Kalscheuer [Sat, 31 May 2025 07:30:51 +0000 (09:30 +0200)] 
kernel/mvebu: Restore kernel files for v6.6

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

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

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
Link: https://github.com/openwrt/openwrt/pull/18975
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agokernel/mvebu: Create kernel files for v6.12 (from v6.6)
Stefan Kalscheuer [Sat, 31 May 2025 07:30:51 +0000 (09:30 +0200)] 
kernel/mvebu: Create kernel files for v6.12 (from v6.6)

This is an automatically generated commit.

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

Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de>
Link: https://github.com/openwrt/openwrt/pull/18975
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agomediatek: 6.12: fix cci driver probe for mt7988d 19165/head
Chukun Pan [Mon, 16 Jun 2025 15:06:38 +0000 (23:06 +0800)] 
mediatek: 6.12: fix cci driver probe for mt7988d

The patch of kernel 6.12 missing cpufreq part for
mt7988d, causing the ccifreq driver probe to fail.
Add it to avoid mt7988d devices boot hang.

Fixes: a9822e8 ("kernel/mediatek: 6.12: drop patches which have been applied upstream")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
6 weeks agox86: move common kconfig symbols into target shared config 18632/head
Shiji Yang [Tue, 29 Apr 2025 12:09:09 +0000 (20:09 +0800)] 
x86: move common kconfig symbols into target shared config

These kernel config symbols are selected by all sub-targets. We
can merge them together to simplify the config files.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18632
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agox86: refresh kernel symbol configs
Shiji Yang [Tue, 29 Apr 2025 12:09:09 +0000 (20:09 +0800)] 
x86: refresh kernel symbol configs

All kernel config symbols are refreshed by `make kernel_oldconfig`.
Some symbols are moved to the generic/config-6.12 because the
refresh tool will automatically trim them.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18632
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agoprocd: update to Git HEAD (2025-06-19)
Hauke Mehrtens [Thu, 19 Jun 2025 20:27:02 +0000 (22:27 +0200)] 
procd: update to Git HEAD (2025-06-19)

cde025d fix generating syscall-names.h for loongarch64

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agotools/bash: update to version 5.2.37 19143/head
Josef Schlehofer [Sun, 15 Jun 2025 09:39:33 +0000 (11:39 +0200)] 
tools/bash: update to version 5.2.37

Update to the latest version.

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19143
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agomt76: replace strlcpy with strscpy 18927/head
Mieczyslaw Nalewaj [Tue, 27 May 2025 06:19:29 +0000 (08:19 +0200)] 
mt76: replace strlcpy with strscpy

Change deprecated function strlcpy to strscpy
for compatibility with kernel 6.12.

strlcpy() reads the entire source buffer first.
This read may exceed the destination size limit.
This is both inefficient and can lead to linear read
overflows if a source string is not NUL-terminated [1].
In an effort to remove strlcpy() completely [2], replace
strlcpy() here with strscpy().

Direct replacement is safe here since DEV_ASSIGN is only used by
TRACE macros and the return values are ignored.

[1] https://www.kernel.org/doc/html/latest/process/deprecated.html#strlcpy
[2] https://github.com/KSPP/linux/issues/89

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18927
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agorealtek: activate MIPS power cluster controller for RTL931x 19110/head
Markus Stockhausen [Thu, 12 Jun 2025 13:20:12 +0000 (09:20 -0400)] 
realtek: activate MIPS power cluster controller for RTL931x

The SMP environment is prepared well for the RTL93X. Now describe the
power cluster controller in the DTS. Tested on RTL9311 based Linksys
LGS352C.

Without patch:

root@OpenWrt:~# dmesg | grep CPU
[    0.140425] CPU1 revision is: 0001a120 (MIPS interAptiv (multi))
[    0.191952] Synchronize counters for CPU 1: done.
[    1.232191] CPU2: failed to start
[    1.237863] No online CPU in core 1 to start CPU3
[    2.273784] CPU3: failed to start
[    2.277589] smp: Brought up 1 node, 2 CPUs

root@OpenWrt:~# cat /proc/cpuinfo  | grep -E "model|proc"
processor               : 0
cpu model               : MIPS interAptiv (multi) V2.0
processor               : 1
cpu model               : MIPS interAptiv (multi) V2.0

With patch:

root@OpenWrt:~# dmesg | grep CPU
[    0.000000] CPU0 revision is: 0001a120 (MIPS interAptiv (multi))
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Failed to get CPU clock: -2
[    0.000000] CPU frequency from device tree: 1000MHz
[    0.133360] smp: Bringing up secondary CPUs ...
[    0.140418] CPU1 revision is: 0001a120 (MIPS interAptiv (multi))
[    0.191950] Synchronize counters for CPU 1: done.
[    0.230103] CPU2 revision is: 0001a120 (MIPS interAptiv (multi))
[    0.289220] Synchronize counters for CPU 2: done.
[    0.326189] CPU3 revision is: 0001a120 (MIPS interAptiv (multi))
[    0.378861] Synchronize counters for CPU 3: done.
[    0.413829] smp: Brought up 1 node, 4 CPUs

processor               : 0
cpu model               : MIPS interAptiv (multi) V2.0
processor               : 1
cpu model               : MIPS interAptiv (multi) V2.0
processor               : 2
cpu model               : MIPS interAptiv (multi) V2.0
processor               : 3
cpu model               : MIPS interAptiv (multi) V2.0

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19110
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agokernel: mtdsplit_uimage: return 0 if not fatal 19163/head
Markus Stockhausen [Tue, 17 Jun 2025 09:21:40 +0000 (05:21 -0400)] 
kernel: mtdsplit_uimage: return 0 if not fatal

Introduced with Linux 6.7, in commit:
5c2f7727d437 ("mtd: mtdpart: check for subpartitions parsing result"),
when a parser returns an error, this will be passed up, and
consequently, all parent mtd partitions get torn down.

Adjust the mtdsplit_uimage driver to only return an error if there is a
critical problem in reading from the mtd device or allocating memory.
Otherwise return 0 to indicate that no partitions were found.
Also add logging to indicate what went wrong.

E.g. on Realtek devices that are booted for the first time through
initramfs with OpenWrt never installed before boot log will show

[    0.975518] Creating 7 MTD partitions on "spi0.0":
[    0.981062] 0x000000000000-0x0000000e0000 : "u-boot"
[    1.041320] 0x0000000e0000-0x0000000f0000 : "u-boot-env"
[    1.060683] 0x0000000f0000-0x000000100000 : "u-boot-env2"
[    1.080992] 0x000000100000-0x000000200000 : "jffs2-cfg"
[    1.100988] 0x000000200000-0x000000300000 : "jffs2-log"
[    1.120599] 0x000000300000-0x000000fe0000 : "firmware"
[    1.157426] mtdsplit_uimage: no rootfs after uImage in "firmware"
[    1.176456] mtdsplit_uimage: no rootfs after uImage in "firmware"
[    1.200262] 0x000000fe0000-0x000001000000 : "log"

Similar issues were fixed before with commit ade045084bd3f8696
("kernel: mtdsplit_minor: return 0 if not fatal") and
c78765213ecbe830204 ("kernel: mtdsplit_uimage: return 0 if not fatal")

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19163
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agoath79: enable USB by default on hAP ac 19149/head
Valeriy Manzhos [Sun, 15 Jun 2025 10:08:29 +0000 (13:08 +0300)] 
ath79: enable USB by default on hAP ac

Due to a bug, USB is not powered on after boot on hAP ac.
This prevents extroot configurations from working as overlayfs is mounted
before USB device can be powered on. This commit fixes this by enabling USB
in devicetree.

Related discussion links:
- https://forum.openwrt.org/t/usb-power-is-off-on-boot/229007

---

Extroot configuration requires the USB to be powered on before
preinit_main/80_mount_root. Probably the simplest approach is to enable
it in the devicetree. Another approach would be to add a script into
/lib/preinit that will power on USB via /sys/class/gpio/usb-power/value
E.g.
cat /lib/preinit/79_power_on_usb
do_power_on_usb(){
  echo '1' > /sys/class/gpio/usb-power/value
}
boot_hook_add preinit_main do_power_on_usb

Signed-off-by: Valeriy Manzhos <manzhos.va@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agoramips: mt7621: add support for JDCloud RE-SP-01B 17409/head
Yijie Jin [Sat, 28 Dec 2024 07:00:28 +0000 (15:00 +0800)] 
ramips: mt7621: add support for JDCloud RE-SP-01B

JDCloud RE-SP-01B is a dual-band WiFi 5 router based on the MT7621AT.

Specifications:
- SoC: MediaTek MT7621AT
- RAM: 512MB DDR3
- Flash: 32MB SPI NOR
- WiFi: MediaTek MT7603EN (2.4GHz), MediaTek MT7615N (5GHz)
- Ethernet: 1x WAN, 2x LAN (Gigabit Ethernet)
- LEDs: red, blue, green (GPIO controlled)
- Button: Reset (GPIO controlled)
- eMMC: Single onboard (32GB/64GB/128GB)
- USB: 1x USB 2.0 port

MAC Address Structure:
The MAC addresses share the structure DC:D8:7C:XX:XX:XX, where:
- WAN, LAN, and 2.4GHz WiFi: same as the label MAC address.
- 5GHz WiFi: label MAC address + 0x800000.

The manufacturer writes the label MAC address at different
offsets depending on the storage version of the device:

e.g.
128GB version:  &config + 0x442a
64GB version:   &config + 0x4429

So `get_mac_ascii()` is used here to search for the
base label MAC address of the device.

Ref:
https://github.com/openwrt/openwrt/pull/17409#discussion_r1899674262
https://github.com/immortalwrt/immortalwrt/commit/c0c480d

Flash Instruction:
A 3rd party bootloader is required to boot the image. You can
use a SOP16 test clip to burn the image/bootloader to the flash.

The official bootloader does provide a web recovery interface
which only accepts an official image. To access it, you will
need to hold the reset button and power on the device, set your
IP address to 192.168.68.2 and visit http://192.168.68.1.

Co-authored-by: Chukun Pan <amadeus@jmu.edu.cn>
Signed-off-by: Yijie Jin <jinyijie@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/17409
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agorealtek: fix/add switchcore syscon nodes for RTL838x/RTL839x/RTL931x 18642/head
Markus Stockhausen [Wed, 30 Apr 2025 08:24:27 +0000 (04:24 -0400)] 
realtek: fix/add switchcore syscon nodes for RTL838x/RTL839x/RTL931x

The switchcore node is the central location that describes the Realtek switch
register addresses starting at 0x1b000000. It will be used by current and
future regmap enabled device drivers. The upstream MDIO driver already makes
use of it by calling syscon_node_to_regmap(dev->parent->of_node);

In the current DTS base we have 3 issues that should be fixed:

- rtl838x.dtsi has a length of 0x20000 instead of 0x10000
- rtl839x.dtsi has a length of 0x20000 instead of 0x10000
- rtl931x.dtsi has no switchcore node at all

Align these mismatches with the "good" RTL930x template.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18642
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agorealtek: rtl931x: fix I2C sda pin 19171/head
Jonas Jelonek [Mon, 16 Jun 2025 19:57:27 +0000 (19:57 +0000)] 
realtek: rtl931x: fix I2C sda pin

The drivers for I2C bus and mux for RTL931x have an incorrectly defined
SDA0 pin number, causing an error with correct pin numbers specified in
the device tree.

Using the `show tech-support board` on the vendor firmware of a Netgear
MS510TXM shows the correct pin numbers but they don't work with the
drivers. So fix this.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19171
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agorealtek: rtl931x: add missing function reference for l2_hash_seed 19170/head
Jonas Jelonek [Wed, 18 Jun 2025 09:52:02 +0000 (09:52 +0000)] 
realtek: rtl931x: add missing function reference for l2_hash_seed

Add missing function reference for the l2_hash_seed call in rtl931x_reg
in the rtl83xx DSA driver part.
While at it, rename the referenced function to proper naming convention
and simplify its content.

The missing reference causes a hard crash after a short time (on
MS510TXM) because the driver assumes the reference always exists.

[  111.785559] CPU 0 Unable to handle kernel paging request at virtual address 00000000, epc == 00000000, ra == 805469a0
[  111.800991] Oops[#1]:
[  111.801026] CPU: 0 PID: 11 Comm: kworker/u8:0 Tainted: G           O       6.12.33 #0
[  111.801046] Workqueue: dsa_ordered dsa_slave_switchdev_event_work
...
[  111.880600] epc   : 00000000 0x0
[  111.884219] ra    : 805469a0 rtl83xx_port_fdb_add+0x7c/0x204
[  111.890570] Status: 11000403 KERNEL EXL IE
[  111.895263] Cause : 50800008 (ExcCode 02)
[  111.899731] BadVA : 00000000
[  111.902946] PrId  : 0001a120 (MIPS interAptiv (multi))
[  111.956086] Process kworker/u8:0 (pid: 11, threadinfo=0b107c25, task=265aeb31, tls=00000000)
...
[  112.015167] Call Trace:
[  112.019549] [<80170b04>] load_balance+0x494/0x708
[  112.025022] [<807bb368>] dsa_port_do_fdb_add+0x24c/0x340
[  112.031048] [<807bc868>] dsa_switch_event+0xd44/0x13cc
[  112.036845] [<8015867c>] raw_notifier_call_chain+0x48/0x88
[  112.043031] [<807bcf3c>] dsa_tree_notify+0x10/0x3c
[  112.048395] [<807b2a64>] dsa_port_bridge_host_fdb_add+0x15c/0x190
[  112.055459] [<807b4e40>] dsa_slave_switchdev_event_work+0x164/0x1cc
...

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19170
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agoramips: PCIe driver improvements for mt7620 and mt7628 18299/head
Shiji Yang [Mon, 17 Mar 2025 16:42:19 +0000 (00:42 +0800)] 
ramips: PCIe driver improvements for mt7620 and mt7628

This patchset fixes some PCIe bridge register access issues and
reworks the initialization procedure. It may bring some stability
improvements. To match the driver changes, the memory remap range
was extended and a PCIe reset pinctrl was added to mt7628an.dtsi.

Link: https://lore.kernel.org/all/OSBPR01MB1670555F549B69B9A5E7F133BC72A@OSBPR01MB1670.jpnprd01.prod.outlook.com/
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/18299
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agogeneric: net: phy: psb6970: fix missing-prototypes warnings 19174/head
Shiji Yang [Thu, 8 May 2025 13:20:22 +0000 (21:20 +0800)] 
generic: net: phy: psb6970: fix missing-prototypes warnings

Fix the following build warnings on 6.12 kernel:

drivers/net/phy/psb6970.c:426:12: error: no previous prototype for 'psb6970_init' [-Werror=missing-prototypes]
  426 | int __init psb6970_init(void)
      |            ^~~~~~~~~~~~
drivers/net/phy/psb6970.c:434:13: error: no previous prototype for 'psb6970_exit' [-Werror=missing-prototypes]
  434 | void __exit psb6970_exit(void)
      |             ^~~~~~~~~~~~

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19174
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 weeks agomt76: update to Git HEAD (2025-06-18)
Felix Fietkau [Wed, 18 Jun 2025 15:03:27 +0000 (17:03 +0200)] 
mt76: update to Git HEAD (2025-06-18)

55218e636092 Revert "wifi: mt76: mt7996: fill txd by host driver"
fdfe9eca6401 wifi: mt76: disable napi on driver removal
d7a070e11de4 wifi: mt76: mt7925: fix missing hdr_trans_tlv command for broadcast wtbl
29363a669195 wifi: mt76: mt7996: prevent uninit return in mt7996_mac_sta_add_links
e285cb42be03 wifi: mt76: Remove an unneeded local variable in mt76x02_dma_init()
3dee73c357cf wifi: mt76x2: Add support for LiteOn WN4516R,WN4519R
73f9582f92b6 wifi: mt76: mt7925: introduce thermal protection
cf8522c5eea8 wifi: mt76: mt7925: fix host interrupt register initialization
8a24527e6c63 wifi: mt76: mt7921: add 160 MHz AP for mt7922 device
d0ef73122e8b wifi: mt76: mt7996: avoid NULL pointer dereference in mt7996_set_monitor()
7fdbe4cb5c8d wifi: mt76: mt7996: avoid null deref in mt7996_stop_phy()
925d156dab3d wifi: mt76: mt7996: fix uninitialized symbol warning
a403590fd464 Revert "wifi: mt76: Check link_conf pointer in mt76_connac_mcu_sta_basic_tlv()"
ca76c1bcede4 wifi: mt76: mt7996: remove duplicate check in mt7996_mcu_sta_mld_setup_tlv()
b70a4a619538 wifi: mt76: scan: Fix 'mlink' dereferenced before IS_ERR_OR_NULL check
2247afffc734 wifi: mt76: add mt76_connac_mcu_build_rnr_scan_param routine
460aa7da0ef6 wifi: mt76: mt7925: add RNR scan support for 6GHz
a68584ddf98e wifi: mt76: mt7996: Fix null-ptr-deref in mt7996_mmio_wed_init()
025c1d19b55a wifi: mt76: mt7915: Fix null-ptr-deref in mt7915_mmio_wed_init()
c20015bdc88b wifi: mt76: mt7925: prevent multiple scan commands
832387a1f876 wifi: mt76: mt7925: refine the sniffer commnad
7bf6a2914a54 wifi: mt76: mt7925: ensure all MCU commands wait for response
1bd4dbd48281 wifi: mt76: mt7925: extend MCU support for testmode
0ca6ed4e2724 wifi: mt76: mt7925: add test mode support
a2838480f805 wifi: mt76: remove capability of partial bandwidth UL MU-MIMO
1865f5ea80ea wifi: mt76: mt7996: fix beamformee SS field
3bda39f1465e wifi: mt76: mt7996: set EHT max ampdu length capability
7d30840e5b21 wifi: mt76: mt7996: drop fragments with multicast or broadcast RA
bf22595a1d8a wifi: mt76: mt7996: fix invalid NSS setting when TX path differs from NSS
b9f01d7c368c wifi: mt76: mt7996: change max beacon size
8808d7c4eed7 wifi: mt76: mt7996: fix RX buffer size of MCU event
36e0b90e47ff wifi: mt76: fix available_antennas setting
da2c23bec426 wifi: mt76: support power delta calculation for 5 TX paths
3e161d0cf3c7 wifi: mt76: mt7925: add rfkill_poll for hardware rfkill
ee6dac9b6b76 wifi: mt76: mt7915: mcu: increase eeprom command timeout
0534761b76e1 wifi: mt76: mt7915: mcu: lower default timeout
79dd14f2e816 wifi: mt76: mt7915: mcu: re-init MCU before loading FW patch
f2943046881d wifi: mt76: Assume __mt76_connac_mcu_alloc_sta_req runs in atomic context
656eb209ec42 wifi: mt76: Move RCU section in mt7996_mcu_set_fixed_field()
4f47d90943a3 wifi: mt76: Move RCU section in mt7996_mcu_add_rate_ctrl_fixed()
189532e383c1 wifi: mt76: Move RCU section in mt7996_mcu_add_rate_ctrl()
5603bd03d56a wifi: mt76: Remove RCU section in mt7996_mac_sta_rc_work()
ca24f0794e94 wifi: mt76: mt7925: fix the wrong config for tx interrupt
63f18baa5bb6 wifi: mt76: mt7925: fix invalid array index in ssid assignment during hw scan
4bdc4c5f26e0 wifi: mt76: mt7925: fix incorrect scan probe IE handling for hw_scan
321ae47a7439 wifi: mt76: mt7925: fix off by one in mt7925_mcu_hw_scan()
3699df4e85ec wifi: mt76: mt7925: prevent NULL pointer dereference in mt7925_sta_set_decap_offload()
a17fbd3d8598 wifi: mt76: mt7921: prevent decap offload config before STA initialization

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 weeks agobmips: update BCM531x5 RGMII delays patch 19107/head
Álvaro Fernández Rojas [Wed, 11 Jun 2025 07:46:44 +0000 (09:46 +0200)] 
bmips: update BCM531x5 RGMII delays patch

Replace BCM531x5 patch with the one sent upstream.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
6 weeks agogeneric: 6.12: backport accepted BCM5325 patches
Álvaro Fernández Rojas [Wed, 11 Jun 2025 07:46:44 +0000 (09:46 +0200)] 
generic: 6.12: backport accepted BCM5325 patches

Backport accepted BCM5325 patches from net-next.
These patches will be merged in the v6.17 kernel window.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
6 weeks agoiproute2: point KERNEL_INCLUDE to toolchain headers
Jonas Gorski [Wed, 18 Jun 2025 08:46:35 +0000 (10:46 +0200)] 
iproute2: point KERNEL_INCLUDE to toolchain headers

Glibc since 2.41 tries to include linux/sched/types.h from sched.h, and
pointing KERNEL_INCLUDE to the kernel headers makes it use
linux/sched/types.h from the kernel headers instead of the installed
one.

This then breaks the configure (test) compile for setns() and the test:

mips-openwrt-linux-gnu-gcc -I/fork.openwrt/build_dir/target-mips_24kc_glibc/linux-ath79_generic/linux-6.6.93/include/uapi -o config.HaAJYe/setnstest config.HaAJYe/setnstest.c
In file included from /fork.openwrt/build_dir/target-mips_24kc_glibc/linux-ath79_generic/linux-6.6.93/include/uapi/linux/sched/types.h:5,
                 from /fork.openwrt/staging_dir/toolchain-mips_24kc_gcc-14.3.0_glibc/include/bits/sched.h:63,
                 from /fork.openwrt/staging_dir/toolchain-mips_24kc_gcc-14.3.0_glibc/include/sched.h:43,
                 from config.HaAJYe/setnstest.c:2:
/fork.openwrt/build_dir/target-mips_24kc_glibc/linux-ath79_generic/linux-6.6.93/include/uapi/linux/types.h:10:2: warning: #warning "Attempt to use kernel headers from user space, see https://kernelnewbies.org/KernelHeaders" [-Wcpp]
   10 | #warning "Attempt to use kernel headers from user space, see https://kernelnewbies.org/KernelHeaders"
      |  ^~~~~~~
In file included from /fork.openwrt/build_dir/target-mips_24kc_glibc/linux-ath79_generic/linux-6.6.93/include/uapi/linux/posix_types.h:5,
                 from /fork.openwrt/build_dir/target-mips_24kc_glibc/linux-ath79_generic/linux-6.6.93/include/uapi/linux/types.h:14:
/fork.openwrt/build_dir/target-mips_24kc_glibc/linux-ath79_generic/linux-6.6.93/include/uapi/linux/stddef.h:5:10: fatal error: linux/compiler_types.h: No such file or directory
    5 | #include <linux/compiler_types.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Fix this by pointing KERNEL_INCLUDE to the toolchain headers, which
include the installed kernel headers.

Tested with musl, glibc, and SDK.

Fixes: 60738feded ("iproute2: Fix KERNEL_INCLUDE in SDK")
Reported-by: Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
7 weeks agotools: libdeflate: update to 1.24 19145/head
Josef Schlehofer [Sun, 15 Jun 2025 09:46:33 +0000 (11:46 +0200)] 
tools: libdeflate: update to 1.24

Release notes:
https://github.com/ebiggers/libdeflate/releases/tag/v1.23
https://github.com/ebiggers/libdeflate/releases/tag/v1.24

Changelog can be found in NEWS.md in relevant tags.

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19145
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: switch LGS310C devicetree to new i2s-gpio-shared driver 18737/head
Markus Stockhausen [Fri, 13 Jun 2025 08:34:34 +0000 (04:34 -0400)] 
realtek: switch LGS310C devicetree to new i2s-gpio-shared driver

From now on both SFP ports can be used without manual intervention.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18737
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: activate i2c-gpio-shared driver
Markus Stockhausen [Fri, 13 Jun 2025 08:33:16 +0000 (04:33 -0400)] 
realtek: activate i2c-gpio-shared driver

Currently only RTL83xx devices are known with shared SCL pins.
So activate the driver only for those targets.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18737
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: add new i2c-gpio-shared driver for shared SCL lines
Markus Stockhausen [Fri, 13 Jun 2025 08:29:52 +0000 (04:29 -0400)] 
realtek: add new i2c-gpio-shared driver for shared SCL lines

Some Realtek switches have been designed with I2C busses that share a
single SCL line. The clock line is used for 2 or more busses. This cannot
be used with the standard i2c-gpio driver that relies on distinct SDA
and SCL pairs.

Provide a derived i2c-gpio-shared driver that can be used instead. This
driver can handle up to 4 busses with only a single clock line.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18737
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agotools/cmake: update to 3.31.5 17814/head
Jack Sun [Sat, 1 Feb 2025 13:09:26 +0000 (21:09 +0800)] 
tools/cmake: update to 3.31.5

Release notes: https://cmake.org/cmake/help/latest/release/3.31.html
No need refresh patch

Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17814
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agoperf: disable slang support 19123/head
Josef Schlehofer [Fri, 13 Jun 2025 14:32:45 +0000 (16:32 +0200)] 
perf: disable slang support

libs/slang2 is getting picked up from the packages feed, if the slang2
is compiled first and then if you try to compile perf, it fails
due to unmet dependency.

Fixes:
Package perf is missing dependencies for the following libraries:
libslang.so.2

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19123
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agosunxi: add support for OrangePi Zero 2W
Zoltan HERPAI [Wed, 2 Apr 2025 10:12:50 +0000 (10:12 +0000)] 
sunxi: add support for OrangePi Zero 2W

Specifications:
SoC:     Allwinner H618 SoC (Quad core Cortex-A53)
DRAM:    1/1.5/2/4 GB LPDDR4 DRAM (1.5GB version not supported)
Power:   5V USB-C
Video:   HDMI (Type 2.0A - micro)
Storage: microSD / 16MByte SPI flash
Network: Unisoc UWE5622 (no driver currently)
Debug:   serial UART

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

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agomediatek: add support for Zbtlink ZBT-Z8102AX v2 18514/head
Marius Durbaca [Tue, 22 Oct 2024 13:15:57 +0000 (16:15 +0300)] 
mediatek: add support for Zbtlink ZBT-Z8102AX v2

Specifications:
SoC: MediaTek MT7981B
RAM: 1024MiB
Flash: SPI-NAND 128 MiB
Switch: 1 WAN, 4 LAN (Gigabit)
USB: two M.2 slots for 5G modems via USB 3.0 hub, external USB 3.0 port
Buttons: Reset, Mesh
Power: DC 12V 1A
WiFi: MT7976CN
UART: 115200n8
UART Layout:
VCC-RX-TX-GND

Installation:
1. Power down the router and hold in the Reset button.
2. While holding in the button power up the router again.
3. Hold the button in for 10 seconds and then release.
4. Use your browser to go to 192.168.1.1
5. If you see a GUI that is for flashing firmware then you have the V2 model.
If there is no GUI and the router continues to boot up normally
you have the V1 model.
6. Now use the V2 sysugrade file.

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

Based on patches adding support for this device by Yannick Chabanois (openmptcprouter)
and Dairyman (ofmodemsandmen)

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18514
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoramips: dts: increase maximum MMC clock frequency 18896/head
Shiji Yang [Sat, 24 May 2025 08:32:26 +0000 (16:32 +0800)] 
ramips: dts: increase maximum MMC clock frequency

The High-Speed SD mode stability issue should have been fixed.
Increase the MMC max-frequency to improve the IO speed. We can
still use the sysfs to limit the clock frequency, e.g.

root@OpenWrt:~# echo 25000000 > /sys/kernel/debug/mmc0/clock

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18896
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoramips: mtk-sd: stability improvements for MIPS mt762x SoCs
Shiji Yang [Fri, 13 Jun 2025 13:36:16 +0000 (21:36 +0800)] 
ramips: mtk-sd: stability improvements for MIPS mt762x SoCs

* Add tuning parameters to improve the stability of 48~50 MHz
  High-Speed SD mode.

* Fix I/O errors on EMMC mode by disabling unsupported auto CMD23
  feature.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18896
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoramips: mtk-sd: backport Host Software Queue support
Shiji Yang [Fri, 13 Jun 2025 13:05:31 +0000 (21:05 +0800)] 
ramips: mtk-sd: backport Host Software Queue support

This new feature has some improvements for random RW performance.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18896
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoramips: mtk-mmc: fix data timeout value
Shiji Yang [Sat, 24 May 2025 08:31:07 +0000 (16:31 +0800)] 
ramips: mtk-mmc: fix data timeout value

The MT7628 programing guide shows that the correct DTOC unit is
1048576 clocks instead of 65536 clocks. This value is also used
by linux upstream mtk-sd driver. Correct the DTOC register and
also round up its value.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18896
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoramips: mt76x8: add support for Keenetic Start (KN-1112) 19091/head
Anton Yu. Ivanusev [Wed, 11 Jun 2025 03:53:20 +0000 (08:53 +0500)] 
ramips: mt76x8: add support for Keenetic Start (KN-1112)

Specification:
SoC: MediaTek MT7628NN
RAM: 128 MB, EtronTech EM68C16CWQG-25H (DDR2)
Flash: 32MB, Winbond 25Q256JVFQ (Dual Boot, SPI)
Switch: MediaTek MT7628AN, 4 ports 100 Mbps
WiFi: MediaTek MT7603 2T2R/2.4GHz 802.11n
GPIO: 2 buttons (Wi-Fi, Reset), 3 LEDs (Power, Internet, Wi-Fi), 1 mode switch

Disassembly:
At the bottom, under the LEDs, there are 2 screws hidden by rubber feet. After removing the screws, pry the gray plastic part around (it is secured with latches) and remove it.

Serial Interface:
The serial interface can be connected to the 5 pin dots located on the right between the operating mode switch and the antenna.
Pins (from antenna to operating mode switch):
VCC
TX
RX
NC
GND
Settings: 115200, 8N1

Flashing via OEM recovery software:
1. Download the OEM recovery software from the manufacturer's website
2. Download the firmware image (for OpenWRT it is *-squashfs-factory.bin), rename it to KN-1112_recovery.bin
3. Replace the file in the fw folder OEM recovery software with the file from step 2.
4. Run the OEM recovery software and follow the instructions.

Flashing via TFTP:
1. Connect your PC and router to port 1-3, configure PC interface using IP 192.168.1.2, mask 255.255.255.252
2. Serve the firmware image (for OpenWRT it is *-squashfs-factory.bin) renamed to KN-1112_recovery.bin via TFTP
3. Power up the router while pressing Reset button on the back
4. Release Restart button when Power LED starts blinking

To revert back to OEM firmware:
The return to the OEM firmware is carried out by using the methods described above with the help of the appropriate firmware image.

When using OEM bootloader, the firmware image size cannot exceed the size of one OEM «Firmware_x» partition or Kernel + rootFS size.

Signed-off-by: Anton Yu. Ivanusev <ivanusevanton@yandex.ru>
Link: https://github.com/openwrt/openwrt/pull/19091
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorealtek: Add support for Zyxel XGS1210-12 Switch
Nicolas BERTRAND [Tue, 10 Jun 2025 09:09:06 +0000 (11:09 +0200)] 
realtek: Add support for Zyxel XGS1210-12 Switch

The Zyxel XGS1210-12 Switch is a 10 + 2 port multi-GBit switch with
8 x 1000BaseT, 2 x 10/100/1000/2500BaseT Ethernet ports and
2 SFP+ module slot.

Hardware:
- RTL9302B SoC
- Macronix MX25L12833F (16MB flash)
- Nanja NT5CC64M16GP-1 (128MB DDR3 SDRAM)
- RTL8231 GPIO extender to control the port LEDs
- RTL8218D 8x Gigabit PHY
- RTL8226 2x 10m/100m/1/2.5 Gigabit PHY
- SFP+ 2x 10GBit slot

Power is supplied via a 12V 1.5A standard barrel connector. At the
right side behind the grid is UART serial connector. A Serial
header can be connected to from the outside of the switch trough
the airvents with a standard 2.54mm header.
Pins are from top to bottom Vcc(3.3V), TX, RX and GND. Serial
connection is via 115200 baud, 8N1.

A reset button is accessble through a hole in the front panel

At the time of this commit, all ethernet ports work under OpenWrt,
including the various NBaseT modes, SFP+ slots are supported with i2c bus.

Installation
--------------
* Connect serial as per the layout above. Connection parameters: 115200 8N1.
* Navigate to 'Management' in the OEM web interface and click on 'Firmware upgrade'
  to the left.
* Upload the OpenWrt initramfs image, and wait till the switch reboots.
* Connect to the device through serial and change the U-boot boot command.
  > fw_setenv bootcmd 'rtk network on; boota'
* Reboot, scp the sysupgrade image to /tmp, verify the checksum and flash it:
  > sysupgrade openwrt-realtek-rtl930x-Zyxel_xgs1210-12-squashfs-sysupgrade.bin
* Upon reboot, you have a functional OpenWrt installation. Leave the bootcmd
  value as is - without 'rtk network on' the switch will fail to initialise
  the network.

Debug
------------
* Connect serial as per the layout above. Connection parameters: 115200 8N1.
* A tftp server is requiered, tftpd-hpa works well.
* Power the device, at U-Boot start rapidly hit Esc key to stop autoboot
* Enable network:
  > rtk network on
* Change ip address (default is 192.168.1.1):
  > setenv ipaddr 192.168.1.6
* Download initramfs:
  > tftpboot 0x84f00000 192.168.1.111:openwrt-realtek-rtl930x-Zyxel_xgs1210-12-initramfs-kernel.bin
* Boot loaded file:
  > bootm 0x84f00000

This prodecudre also apply to the sock firmware with the file XGS1210-12_V2.00(ABTY.1)C0.bix.

More information can be found on the page of XGS1250-12 as they share the same base.

Signed-off-by: Nicolas BERTRAND <nicolasbertrand89@gmail.com>
[fixed white space error]
Signed-off-by: Paul Spooren <mail@aparcar.org>
7 weeks agorealtek: add support for TP-Link TL-ST1008F v2.0
Jonas Jelonek [Fri, 2 May 2025 21:39:14 +0000 (21:39 +0000)] 
realtek: add support for TP-Link TL-ST1008F v2.0

The TP-Link TL-ST1008F is an 8-port multi-gig switch with 8x SFP+ ports
which support 1G/2.5G/10G speeds. Out of the box it is an unmanaged
switch but with RTL9303 and sufficient RAM + Flash it easily can run as
a managed Linux switch.

Hardware:
 - Realtek RTL9303 Switch SoC
 - Winbond 25Q256JVFQ (32MB flash)
 - Samsung K4B4G1646E-BYMA (512MB DDR3 SDRAM)
 - TCA9534 GPIO extender to control the port LEDs
 - 8x SFP+ 1/2.5/10G slot
 - Serial: 3V3 logic, 115200 8N1
 - 5-pin JTAG
 - physical tri-state switch (used by stock firmware for port speed
   config)
 - 24-LED port speed matrix
 - robust full-metal case

Power is supplied via a 12V 2A standard barrel connector.
There are THT holes on the PCB for serial console next to the flash chip
and JTAG pads. Serial uses 3V3 logic and standard 115200-8N1 config.
Pinout is labeled on the PCB.

All ports/connectors and LEDs are on the back, only Power LED is on the
front.

Hints before flashing
----------------------

* It is recommended to backup the stock flash contents before proceeding.
  Backup can be done from U-Boot (with memory display), from OpenWrt
  initramfs or probably with SPI flash programmer.
  There is no stock recovery functionality.
* Use a small image for RAM boot or first flash. Since you need to use
  ymodem, this is really slow and takes time.
* This does not keep the dual-partition layout for firmware to have more
  space available for a single OpenWrt installation.

Initial flashing
----------------------

The stock U-boot has broken networking thus no TFTP available. Serial
transfer only.

1. Open device and connect serial as per layout and settings
   (recommended to use picocom, ymodem not working with minicom)
2. Connect power to device and press Esc when prompted to enter
   the U-Boot console.
3. Boot initramfs
  * in the U-Boot console:
      loady 0x82000000 (load OpenWrt image via ymodem)
      CTRL-A CTRL-S <initramfs.bin> (specify initramfs image for
                                         picocom to upload)
      bootm 0x82000000 (boot initramfs from RAM)
(Just to be on the safe side, backup your flash now while RAM-booted)
4. Connect network to your device
5. Upload the sysupgrade image (e.g. with scp)
6. Do sysupgrade

There's no need to adjust the bootcmd in U-Boot. Networking is running
fine once the realtek driver initialized everything in OpenWrt. No
functional difference with running 'rtk network on' within U-Boot
before. Running this even fails and returns with an error.

Return to stock
------------------

This only works if you did a backup of the flash before flashing
OpenWrt. Stock dump then can be flashed from within U-Boot or OpenWrt.
There is no vendor firmware image because this is an unmanaged switch!

CAUTION: Make sure to not overwrite the U-Boot partition(s). If you do
 not have a flash programmer, you may not be able to debrick
 your device then.

Co-authored-by: Balázs Triszka <balika011@gmail.com>
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
7 weeks agorockchip: add kernel 6.12 as testing kernel 18683/head
Tianling Shen [Fri, 2 May 2025 11:11:43 +0000 (19:11 +0800)] 
rockchip: add kernel 6.12 as testing kernel

Add kernel 6.12 as testing kernel.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18683
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorockchip: refresh kernel configs
Tianling Shen [Fri, 2 May 2025 11:10:48 +0000 (19:10 +0800)] 
rockchip: refresh kernel configs

Refresh kernel configs with `make kernel_oldconfig CONFIG_TARGET=subtarget`.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18683
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorockchip: refresh kernel patches
Tianling Shen [Fri, 2 May 2025 10:45:33 +0000 (18:45 +0800)] 
rockchip: refresh kernel patches

Remove upstreamed patches and refresh remaining ones.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18683
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorockchip: Restore kernel files for v6.6
Tianling Shen [Sun, 18 May 2025 07:09:25 +0000 (15:09 +0800)] 
rockchip: Restore kernel files for v6.6

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

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

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18683
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorockchip: Create kernel files for v6.12 (from v6.6)
Tianling Shen [Sun, 18 May 2025 07:09:23 +0000 (15:09 +0800)] 
rockchip: Create kernel files for v6.12 (from v6.6)

This is an automatically generated commit.

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

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/18683
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agolinux-firmware: update to 20250613 19127/head
John Audia [Fri, 13 Jun 2025 19:26:32 +0000 (15:26 -0400)] 
linux-firmware: update to 20250613

git log --no-merges --pretty=oneline --abbrev-commit 20250509...20250613
225e865382d4 QCA: Update WCN785x btusb firmware to 2.0.0-00799-5
c3dd75fe5c3c rtl_nic: update firmware of RTL8153A
8793795c0fb6 qcom: sc8280xp: Updated power FW for X13s
2fe0e63bdc7b linux-firmware: update firmware for MT7986
522126fd7526 linux-firmware: update firmware for MT7981
47e03ef409e0 linux-firmware: update firmware for MT7916
64823fcdf059 cirrus: cs35l41: Add Firmware for ASUS NUC using CS35L41
1e29e963851f Revert "iwlwifi: add Bz/gl FW for core96-76 release"
5ac6303062e4 amdgpu: DMCUB updates for various ASICs
50bbf75a5c54 mediatek MT7922: update bluetooth firmware to 20250523103438
dad32063a360 mediatek MT7921: update bluetooth firmware to 20250523111333
59df6ceeb259 linux-firmware: update firmware for MT7922 WiFi device
8e0ad059b481 linux-firmware: update firmware for MT7921 WiFi device
247c9f3b5f99 xe: Update GUC to v70.45.2 for BMG, LNL
53796829da2d i915: Update GUC to v70.45.2 for DG2
38b5863bcacb xe: Update LNL GSC to v104.0.5.1429
25750add9b77 amdgpu: DMCUB updates for various ASICs
7143ab41c859 qcom: add QUPv3 firmware for QCS8300 platform
62960e12efff Intel IPU7: Add firmware binary files
4439f5b5c5af ice: update wireless_edge package to 1.3.23.0
902386062e4e ice: update comms package to 1.3.55.0
18f9edda4283 ice: update package to 1.3.43.0
ebea7801d5cf linux-firmware: Update firmware file for Intel Pulsar core
cb0c72fb4deb linux-firmware: Update firmware file for Intel BlazarI core
7d9bc01cd679 linux-firmware: Update firmware file for Intel Quasar core
e2d7a179d030 linux-firmware: Update firmware file for Intel Solar core
992d84e5173b linux-firmware: Update firmware file for Intel Magnetar core
4f04404dfc0c linux-firmware: Update firmware file for Intel BlazarU core
6e15e748c1a7 iwlwifi: add Bz/gl FW for core96-76 release
b5fb9ede6a3d iwlwifi: update ty/So/Ma firmwares for core96-76 release
e258fd022749 iwlwifi: update cc/Qu/QuZ firmwares for core96-76 release
c7f676e3c800 iwlwifi: update firmwares for 8000 series
3944e657f79f iwlwifi: update 7265D firmware
c799f5d3045f mediatek MT7925: update bluetooth firmware to 20250526153203
a1971ffc61d5 linux-firmware: update firmware for MT7925 WiFi device
0c4cd60597a0 qcom: sc8280xp: FW blob updates for X13s
c629575aa5ce brcm: Add symlinks for Khadas VIM SDIO wifi config to AW-CM256SM.txt
2e91d8c3c4bd ath12k: WCN7850 hw2.0: update to WLAN.HMT.1.1.c5-00284.1-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
7966e448ac3b cirrus: cs35l41: Fix firmware links for several ASUS laptops
fdf1068e30ce cirrus: cs35l41: Add Firmware for various HP Agusta Laptops using CS35L41 HDA
da412873f3f4 Adjust QUPv3 driver name
c97a2ef501be cnm: Add Chips&Media wave633c firmware for NXP i.MX9
1d98680254f7 qcom: add QUPv3 firmware for QCM6490 platform
3d6067ec1975 mediatek: Add mt8196 VCP firmware
48c42ece446e cirrus: cs35l41: Add Firmware for various ACER Laptops using CS35L41 HDA
050f0a1e3a76 nvidia: add GSP-RM version 570.144 firmware images
6b9fb15a5b49 amdgpu: DMCUB updates for various ASICs
3dc736d9f749 powervr: add firmware for Imagination Technologies BXS-4-64 GPU
ddc80c83e2dd rtl_bt: Update RTL8822C BT USB and UART firmware to 0x7C20
e4c6ae01a11c brcmfmac: Add a couple of NanoPi devices
e6b5ebde46d4 rtl_nic: add firmware rtl8127a-1
9d8574c2f46b cnm: update chips&media wave521c firmware.
1591254ed58d intel_vpu: Update NPU firmware
a32d5cc1a182 intel: avs: Update topology file for Digital Microphone Array
e663dc7a2122 amdgpu: updates for dcn 3.20 and dcn 4.01 firmware to 0.1.10.0

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19127
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
7 weeks agostarfive: drop 6.6 support
Zoltan HERPAI [Thu, 12 Jun 2025 16:15:13 +0000 (16:15 +0000)] 
starfive: drop 6.6 support

Drop configs and patches for Linux 6.6.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agostarfive: usb3 and pcie support is compiled into kernel now
Zoltan HERPAI [Sun, 1 Jun 2025 14:09:52 +0000 (14:09 +0000)] 
starfive: usb3 and pcie support is compiled into kernel now

As support for these peripherals are now compiled into the kernel, the
respective kmods can be dropped.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agostarfive: use kernel 6.12 by default
Zoltan HERPAI [Thu, 12 Jun 2025 16:14:39 +0000 (16:14 +0000)] 
starfive: use kernel 6.12 by default

Switch to Linux kernel version 6.12.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agostarfive: remove useless aic8800 driver
Chukun Pan [Fri, 6 Jun 2025 15:26:39 +0000 (23:26 +0800)] 
starfive: remove useless aic8800 driver

AIC8800 is a WiFi/BT module based on Ceva's IP.
This driver is old and not enabled in the starfive target,
so remove it. We can add out of tree drivers if necessary.

Fixes: 8f0f02d2 ("starfive: 6.12: refresh patches and drop upstreamed ones")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
7 weeks agoqualcommax: ipq50xx: Add support for Xiaomi AX6000 19004/head
George Moussalem [Tue, 3 Jun 2025 05:15:04 +0000 (09:15 +0400)] 
qualcommax: ipq50xx: Add support for Xiaomi AX6000

Add support for Xiaomi AX6000.

Speficiations:
* SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz)
* Memory: Etrontech EM6HE16EWAKG 512 MiB DDR3L-933
* Serial Port: 1v8 TTL 115200n8
* Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax - up to 574 Mbps)
 QCN9024 (4x4 5 Ghz 802.11an/ac/ax - up to 4804 Mbps)
   QCA9887 (1x1 5 Ghz 802.11ac/n - up to 433 Mbps)
* Ethernet: IPQ5018 integrated virtual switch connected to:
- external QCA8337 switch   (3 LAN Ports 10/100/1000)
- QCA8081 Phy WAN port  (10/100/1000/2500)
* Flash: Either of:
- Gigadevice GD5F1GQ4RE9IGD (128 MiB)
- ESMT F50D1G41LB (128 MiB)
* LEDs: 1x WLAN Link (GPIO 23 Active High)
1x System Blue   (GPIO 24 Active High)
1x System Yellow (GPIO 25 Active High)
1x WAN Link Blue (GPIO 26 Active High)
1x WAN Link Yellow   (GPIO 27 Active High)
1x Green - Unused(GPIO 28 Active High)
3x LAN Phy Green
1x WAN Phy Green
* Buttons: 1x Reset  (GPIO 38 Active Low)

Known issue:
- QCA9887 doesn't come up (possibly due to 1-lane PCIe phy not coming up or missing method to drive power),
  hence the host PCIe controller is disabled in the DTS.

Flash instructions:

Download XMIR Patcher: https://github.com/openwrt-xiaomi/xmir-patcher

First flash a ubinized OpenWrt initramfs that will serve as the intermediate step, since
OpenWrt uses unified rootfs in order to fully utilize NAND and provide enough space for
packages, through either of the below two methods:

Installation via XMIR Patcher:

1. Load the initramfs image: openwrt-qualcommax-ipq50xx-xiaomi_ax6000-initramfs-factory.ubi

Installation via ubiformat method, through SSH:

1. If needed, enable SSH using XMIR Patcher.
2. Copy the file openwrt-qualcommax-ipq50xx-xiaomi_ax6000-initramfs-factory.ubi to the /tmp directory
3. Open an SSH shell to the router
4. Check which rootfs partition is your router booted in (0 = rootfs | 1 = rootfs_1):
nvram get flag_boot_rootfs
5. Find the rootfs and rootfs_1 mtd indexes respectively:
cat /proc/mtd
Please confirm if mtd18 and mtd19 are the correct indexes from above!
6. Use the command ubiformat to flash the opposite mtd with UBI image:
If nvram get flag_boot_rootfs returned 0:
ubiformat /dev/mtd19 -y -f /tmp/openwrt-qualcommax-ipq50xx-xiaomi_ax6000-initramfs-factory.ubi && nvram set flag_boot_rootfs=1 && nvram set flag_last_success=1 && nvram commit
otherwise:
ubiformat /dev/mtd18 -y -f /tmp/openwrt-qualcommax-ipq50xx-xiaomi_ax6000-initramfs-factory.ubi && nvram set flag_boot_rootfs=0 && nvram set flag_last_success=0 && nvram commit
7. Reboot the device by:
reboot

Continue in order to pernamently flash OpenWrt:
1. Upload the sysupgrade image to /tmp/ using SCP:
scp -O <path to image> root@192.168.1.1:/tmp/
2. Open an SSH shell to 192.168.1.1 from a PC within the same subnet
3. Use sysupgrade to flash the sysupgrade image:
sysupgrade -n -v /tmp/openwrt-qualcommax-ipq50xx-xiaomi_ax6000-squashfs-sysupgrade.bin

Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19004
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agomtd: spinand: esmt: fix id code for F50D1G41LB
George Moussalem [Wed, 28 May 2025 08:53:00 +0000 (12:53 +0400)] 
mtd: spinand: esmt: fix id code for F50D1G41LB

Upon detecting the ID for the ESMT F50D1G41LB chip, the fifth byte
returned is always 0x00 instead of the expected JEDEC continuation code
of 0x7f. This causes detection to fail:

[    0.304399] spi-nand spi0.0: unknown raw ID c8117f7f00
[    0.508943] spi-nand: probe of spi0.0 failed with error -524

So let's revert back to the 4 byte ID code for this chip
specifically.

Fixes: 4bd14b2fd8a8 ("mtd: spinand: esmt: Extend IDs to 5 bytes")
Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/19004
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agonet: dsa: qca8k: fix led devicename when using external mdio bus
George Moussalem [Fri, 25 Apr 2025 07:07:55 +0000 (11:07 +0400)] 
net: dsa: qca8k: fix led devicename when using external mdio bus

The qca8k dsa switch can use either an external or internal mdio bus.
This depends on whether the mdio node is defined under the switch node
itself and, as such, the internal_mdio_mask is populated with its
internal phys. Upon registering the internal mdio bus, the
internal_mdio_bus of the dsa switch is assigned to this bus.
When an external mdio bus is used, it is left unassigned, though its id
is used to create the device names of the leds.
This leads to the leds being named '(efault):00:green:lan' and so on as
the internal_mdio_bus is null. So let's fix this by adding a null check
and use the devicename of the external bus instead when an external bus
is configured.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19004
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agogeneric: 6.12: disable cont read for MX35LFxGE4AD 19115/head
Chukun Pan [Tue, 10 Jun 2025 15:15:02 +0000 (23:15 +0800)] 
generic: 6.12: disable cont read for MX35LFxGE4AD

Continuous read does not work properly in on-die ECC mode.
Disable it to fix ubi io error on the GL.iNet GL-MT3000.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
7 weeks agomediatek: cleanup device tree for mt7988 devices
Chukun Pan [Mon, 9 Jun 2025 15:10:30 +0000 (23:10 +0800)] 
mediatek: cleanup device tree for mt7988 devices

Fix wrong pwm-fan node for bpi-r4.
Remove useless status for pwm-fan.
Remove blank lines added by b992aa11.

Fixes: b992aa11 ("mediatek: dts: bring mt7988a.dtsi closer to upstream")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
7 weeks agoipq-wifi: update to Git HEAD (2025-06-13)
Robert Marko [Fri, 13 Jun 2025 08:57:04 +0000 (10:57 +0200)] 
ipq-wifi: update to Git HEAD (2025-06-13)

5be4c60a9084 ipq5018: add BDF for Xiaomi AX6000
22588512b844 qcn9074: add BDF for Xiaomi AX6000
4810aacf3b1c qca9889: add BDF for Xiaomi AX6000

Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoinclude/package-pack: add missing apk package lifecycle events 18531/head
George Sapkin [Fri, 18 Apr 2025 18:38:17 +0000 (21:38 +0300)] 
include/package-pack: add missing apk package lifecycle events

- pre-install calls preinst
- pre-upgrade calls preinst with PKG_UPGRADE=1
- post-upgrade calls postinst with PKG_UPGRADE=1
- prerm and postrm from the previous version of a package are NOT
  executed on upgrade, so packages are expected to handle their own
  migrations in the new versions

Link: https://wiki.alpinelinux.org/wiki/Creating_an_Alpine_package
Fixes: #18527
Reported-by: Dobroslaw Kijowski <dobo90@gmail.com>
Suggested-by: Eric Fahlgren <ericfahlgren@gmail.com>
Suggested-by: Jonas Gorski <jonas.gorski@gmail.com>
Suggested-by: Thomas Richard <thomas.richard@bootlin.com>
Signed-off-by: George Sapkin <george@sapk.in>
Link: https://github.com/openwrt/openwrt/pull/18531
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agowifi: ath11k: increase max ATH11K_QMI_CALDB_SIZE macro 19118/head
George Moussalem [Fri, 13 Jun 2025 07:36:16 +0000 (11:36 +0400)] 
wifi: ath11k: increase max ATH11K_QMI_CALDB_SIZE macro

QCN6122 wifi in fw-memory-mode 1 has a slightly larger caldb size than
currently defined in the ath11k driver. When coldboot calibration was
disabled, the fw mem mode was changed from 2 (256MB mem profile) to 1
(512MB mem profile), which is the correct setting for devices in scope.
However, in fw mem mode, the caldb size is 0x500000 instead of the max
0x480000 defined in the driver, causing QCN6122 wifi failing to boot:

ath11k b00a040.wifi1: qmi mem size is low to load caldata
ath11k b00a040.wifi1: failed to assign qmi target memory: -22

As such, change the max caldb memory size accordingly.

This macro is used by the driver only as a max size limit to validate
the requested caldb size returned by QMI. Different ath11k wifi chips
have different caldb sizes (for ex. the size for IPQ5018 is 0x200000).

Fixes: cf715a230589 ("wifi: ath11k: disable coldboot calibration for ipq5018")
Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19118
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoucode-mod-bpf: switch to ucv_resource_create_ex
Felix Fietkau [Thu, 12 Jun 2025 09:41:03 +0000 (11:41 +0200)] 
ucode-mod-bpf: switch to ucv_resource_create_ex

On map/program resource, hold references to the module in order to avoid
closing it prematurely.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 weeks agoucode: update to Git HEAD (2025-06-09)
Felix Fietkau [Thu, 12 Jun 2025 11:28:47 +0000 (13:28 +0200)] 
ucode: update to Git HEAD (2025-06-09)

54b00e3b1fa9 ubus: fix double registry clear on disconnect
69521b55855c ubus: fix use-after-free on deferred request reply() method
22e8c16d9deb debug: fix crash when passing tagged string to getinfo()
2c9eea5174d6 ubus: use ucv_resource_create_ex for connections/channels
0a4cf4b7e71a ubus: use ucv_resource_create_ex for for ubus.request resources
99ee75a69cd3 ubus: use ucv_resource_create_ex for ubus.deferred resources
f085a42b977f ubus: use ucv_resource_create_ex for objects
94ad17d13a0d ubus: use ucv_resource_create_ex for ubus.notify resources
a3fa47fdda3e ubus: use ucv_resource_create_ex for ubus.listener resources
9ab5fa869dec ubus: use ucv_resource_create_ex for ubus.subscriber resources
be92ebd70633 CI: debian: install cmake package
fd202fd40bd1 socket: respect port argument in sockinst.connect()
767c209b917b socket: properly handle async `connect(2)` errors in socket.connect()
37ac8f112af6 socket: improve port argument validation in sockinst.connect()

Fixes: https://github.com/jow-/ucode/issues/302
Fixes: https://github.com/jow-/ucode/issues/303
Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 weeks agorealtek: align port names 18913/head
Joe Holden [Sun, 25 May 2025 12:01:19 +0000 (12:01 +0000)] 
realtek: align port names

Only 2 devices use leading zeroes to pad interface names,
align the remaining ones so that it is consistent.

Signed-off-by: Joe Holden <jwh@zorins.us>
Link: https://github.com/openwrt/openwrt/pull/18913
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agokernel: bump 6.12 to 6.12.33 19084/head
John Audia [Tue, 10 Jun 2025 12:05:48 +0000 (08:05 -0400)] 
kernel: bump 6.12 to 6.12.33

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

All patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/19084
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
7 weeks agobmips: bcm6358: add support for Huawei HG553 19103/head
Álvaro Fernández Rojas [Wed, 11 Jun 2025 18:25:07 +0000 (20:25 +0200)] 
bmips: bcm6358: add support for Huawei HG553

Specifications:
- SoC: Broadcom BCM6358 dual 300MHz MIPS
- Flash: 16MB NOR
- RAM: 64MB DDR
- Ethernet: 4x 100M
- Wifi: Broadcom BCM4318
- 2x USB 2.0 port
- 2x Button
- 9x LED
- RJ11 2x FXS VoIP (unsupported)
- RJ11 xDSL (unsupported)

Install instructions:
- Assign static IP 192.168.1.100 to PC.
- Unplug the power source.
- Press the RESTART button at the router, don't release it yet!
- Plug the power source and wait at least 15 seconds.
- Release the RESTART button.
- Browse to http://192.168.1.1 with your PC.
- Upload the openwrt-bmips-bcm6358-huawei_hg553-squashfs-cfe.bin file.
- Wait some minutes until the firmware upgrade completes.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
7 weeks agocryptodev-linux: fix sysctl warning for kernel 6.12 19100/head
Chukun Pan [Wed, 4 Jun 2025 13:06:05 +0000 (21:06 +0800)] 
cryptodev-linux: fix sysctl warning for kernel 6.12

Fix sysctl warning when running kernel 6.12:

[    8.722212] sysctl table check failed: ioctl/(null) procname is null
[    8.728584] sysctl table check failed: ioctl/(null) No proc_handler

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/19100
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agocryptodev-linux: update to 1.14
Chukun Pan [Tue, 3 Jun 2025 13:05:30 +0000 (21:05 +0800)] 
cryptodev-linux: update to 1.14

Remove upstream backport patch.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/19100
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoqualcommax: add support for I-O DATA WN-DAX3000GR 19053/head
INAGAKI Hiroshi [Tue, 3 Jun 2025 15:08:06 +0000 (00:08 +0900)] 
qualcommax: add support for I-O DATA WN-DAX3000GR

I-O DATA WN-DAX3000GR is a 2.4/5 GHz band 11ax (Wi-Fi 6) router, based
on IPQ5018.

Specification:

- SoC             : Qualcomm IPQ5018
- RAM             : DDR3 512 MiB
- Flash           : SPI-NAND 128 MiB (Macronix MX35UF1G24AD-Z4I)
- WLAN            : 2.4/5 GHz 2T2R
  - 2.4 GHz       : Qualcomm IPQ5018 (SoC)
  - 5 GHz         : Qualcomm Atheros QCN6102
- Ethernet        : 5x 10/100/1000 Mbps
  - wan (phy)     : Qualcomm IPQ5018 (SoC)
  - lan (switch)  : Qualcomm Atheros QCA8337
- LEDs/Keys (GPIO): 7x/5x
- UART            : through-hole on PCB (J3)
  - assignment    : 3.3V, TX, RX, NC, GND from tri-angle marking
  - settings      : 115200n8
- USB             : USB 2.0 Type-A (through-hole on PCB, "J6")
- Power           : 12 VDC, 1A (Typ. 930 mA)

Flash instruction using factory.bin image:

1. Boot WN-DAX3000GR with router mode
2. Access to the WebUI ("http://192.168.0.1/") on the device and open
   the firmware update page ("ファームウェア")
3. Select the OpenWrt factory.bin image and click update ("更新") button
4. Wait ~120 seconds to complete flashing

Switching to the stock firmware:

1. Load the elecom.sh script

   . /lib/upgrade/elecom.sh

2. Check the current index of rootfs

   bootconfig_rw_index 0:bootconfig rootfs

3. Set the index to inverted value

   bootconfig_rw_index 0:bootconfig rootfs <value>
   bootconfig_rw_index 0:bootconfig1 rootfs <value>

   example:

   - step2 returned "0":

     bootconfig_rw_index 0:bootconfig rootfs 1
     bootconfig_rw_index 0:bootconfig1 rootfs 1

   - step2 returned "1":

     bootconfig_rw_index 0:bootconfig rootfs 0
     bootconfig_rw_index 0:bootconfig1 rootfs 0

4. Reboot

Partition Layout (Stock FW, bootconfig(rootfs)=1):

0x000000000000-0x000000080000 : "0:SBL1"
0x000000080000-0x000000100000 : "0:MIBIB"
0x000000100000-0x000000140000 : "0:BOOTCONFIG"
0x000000140000-0x000000180000 : "0:BOOTCONFIG1"
0x000000180000-0x000000280000 : "0:QSEE"
0x000000280000-0x000000380000 : "0:QSEE_1"
0x000000380000-0x0000003c0000 : "0:DEVCFG"
0x0000003c0000-0x000000400000 : "0:DEVCFG_1"
0x000000400000-0x000000440000 : "0:CDT"
0x000000440000-0x000000480000 : "0:CDT_1"
0x000000480000-0x000000500000 : "0:APPSBLENV"
0x000000500000-0x000000640000 : "0:APPSBL"
0x000000640000-0x000000780000 : "0:APPSBL_1"
0x000000780000-0x000000880000 : "0:ART"
0x000000880000-0x000000900000 : "0:TRAINING"
0x000000900000-0x000003c40000 : "rootfs_1"
0x000003c40000-0x000003fc0000 : "Config"
0x000003fc0000-0x000007300000 : "rootfs"
0x000007300000-0x000007680000 : "Config_2"
0x000007680000-0x000007700000 : "idmkey"
0x000007700000-0x000007c00000 : "Reserved"
0x000007c00000-0x000007c80000 : "FWHEADER"
0x000007c80000-0x000007d00000 : "Factory"

Known Issues:

- This device has a Macronix MX35UF1G24AD SPI-NAND chip registered as
  oobsize=128 in Linux Kernel. But using BCH8 breaks I/O on the chip
  with the following errors, so this support uses BCH4 instead.

  [    1.542261] 0x000000480000-0x000000500000 : "0:appsblenv"
  [    1.547959] 1 fixed-partitions partitions found on MTD device 0:appsblenv
  [    1.551265] Creating 1 MTD partitions on "0:appsblenv":
  [    1.558096] 0x000000000000-0x000000040000 : "env-data"
  [    1.627282] u-boot-env-layout 79b0000.qpic-nand:flash@0:partitions:partition-0-appsblenv:partition@0:nvmem-layout: probe with driver u-boot-env-layout failed with error -74

  root@OpenWrt:~# strings /dev/mtdblock10
  [   77.806720] mtdblock: MTD device '0:appsblenv' is NAND, please consider using UBI block devices instead.
  [   77.807554] I/O error, dev mtdblock10, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 4 prio class 0
  [   77.815977] I/O error, dev mtdblock10, sector 8 op 0x0:(READ) flags 0x80700 phys_seg 3 prio class 0
  [   77.824721] I/O error, dev mtdblock10, sector 16 op 0x0:(READ) flags 0x80700 phys_seg 2 prio class 0
  [   77.834095] I/O error, dev mtdblock10, sector 24 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 0
  [   77.843278] I/O error, dev mtdblock10, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
  [   77.851577] Buffer I/O error on dev mtdblock10, logical block 0, async page read

Notes:

- This device has dual-boot feature and it's managed by the index in the
  0:bootconfig and 0:bootconfig1 partitions.

- There are through-holes on PCB for USB 2.0, but it cannot be accessed
  without disassembly of the housing. So it's not enabled in this
  support.

- WN-DAX3000GR has the "bt_fw" volume in the firmware UBI in addition to
  the volumes that will be removed in the section of ELECOM WRC-X3000GS2
  in /lib/upgrade/platform.sh.
  That volume is unnecessary for OpenWrt and add
  `remove_oem_ubi_volume bt_fw` to remove that volume when sysupgrade.
  (that function doesn't anything without errors if no specified volume)

MAC Addresses:

LAN    : 50:41:B9:xx:xx:64 (0:APPSBLENV, "ethaddr"/"eth1addr" (text))
WAN    : 50:41:B9:xx:xx:66 (0:APPSBLENV, "eth0addr" (text))
2.4 GHz: 50:41:B9:xx:xx:64 (0:APPSBLENV, "wifi0"    (text))
5 GHz  : 50:41:B9:xx:xx:65 (0:APPSBLENV, "wifi1"    (text))

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19053
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoqualcommax: make header length configurable on Build/mstc-header
INAGAKI Hiroshi [Tue, 3 Jun 2025 14:56:13 +0000 (23:56 +0900)] 
qualcommax: make header length configurable on Build/mstc-header

I-O DATA WN-DAX3000GR has a MSTC (Mitra Star Technology Corp.) specific
header with a different length than ELECOM WRC-X3000GS2.
Make the header length configurable by parameterizing on
Build/mstc-header.

- WRC-X3000GS2: 0x400
- WN-DAX3000GR: 0x480

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19053
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agouboot-tools: uboot-envtools: add support for I-O DATA WN-DAX3000GR
INAGAKI Hiroshi [Wed, 4 Jun 2025 20:14:24 +0000 (05:14 +0900)] 
uboot-tools: uboot-envtools: add support for I-O DATA WN-DAX3000GR

Add support for I-O DATA WN-DAX3000GR to update bootdelay variable while
sysupgrade.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19053
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoipq-wifi: update to Git HEAD (2025-06-11)
Robert Marko [Thu, 12 Jun 2025 08:53:36 +0000 (10:53 +0200)] 
ipq-wifi: update to Git HEAD (2025-06-11)

79ba11f2da5e qca9888: add TP-Link WA1201 v2 BDF
abf47841e7e4 qca9988: add BDFs for Xiaomi AIoT Router AC2350
07af197b77fa qca9988: add BDFs for Xiaomi AIoT Router AC2350
61dbb1c3d694 ipq5018: add BDF for I-O DATA WN-DAX3000GR
1d8452d844b9 qcn6122: add BDF for I-O DATA WN-DAX3000GR

Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoqualcommax: ipq50xx: correct fw memory mode for ipq5018 and qcn6122 wifi 19083/head
George Moussalem [Tue, 10 Jun 2025 10:45:55 +0000 (14:45 +0400)] 
qualcommax: ipq50xx: correct fw memory mode for ipq5018 and qcn6122 wifi

The reason fwmode 2 was used for ipq5018 and qcn6122 wifi was that
coldboot calibration doesn't work and causes the firmware to crach
during wifi bringup. Since coldboot calibration is now disabled in the
driver, all boards can now use their respective firmware memory mode, so
let's the property in all board DTS files accordingly.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19083
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agowifi: ath11k: disable coldboot calibration for ipq5018 and qcn6122
George Moussalem [Tue, 10 Jun 2025 10:41:54 +0000 (14:41 +0400)] 
wifi: ath11k: disable coldboot calibration for ipq5018 and qcn6122

Coldboot calibration does not work causes the firmware to crash during
wifi startup. So let's disable coldboot calibration until a solution is
found.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19083
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agobcm27xx: select I2C/SPI packages by default 19102/head
Álvaro Fernández Rojas [Tue, 10 Jun 2025 13:12:50 +0000 (15:12 +0200)] 
bcm27xx: select I2C/SPI packages by default

The I2C and SPI packages required for each RPi generation is different.
Therefore, in order to avoid confusion let's select them by default.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
7 weeks agorealtek: 6.12: refactor EEE for RTL8218B/D and RTL8214FC 18935/head
Markus Stockhausen [Tue, 3 Jun 2025 18:57:09 +0000 (14:57 -0400)] 
realtek: 6.12: refactor EEE for RTL8218B/D and RTL8214FC

Three different code paths for the same phy model. Now the bus
is prepared to handle c45 (mmd) read/writes correctly. Remove
the custom implementations and let generic kernel functions do
their best. To achieve this

- disable the PHY-mode EEE in rtl821x_config_init() as upstream does
- provide mmd read/write functions that avoid EEE via c45 over c22

While chaning the phy_driver functions sort them alphabetically.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: allow fiber media status to be read without lock
Markus Stockhausen [Tue, 3 Jun 2025 18:21:48 +0000 (14:21 -0400)] 
realtek: 6.12: allow fiber media status to be read without lock

rtl8214fc_media_is_fibre() will need to be run when bus lock is held.
Split the function into two versions.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: proper mdio c45 handling in DSA driver
Markus Stockhausen [Tue, 3 Jun 2025 14:46:00 +0000 (10:46 -0400)] 
realtek: 6.12: proper mdio c45 handling in DSA driver

As the mdio bus has been hardened and can now handle c45 requests
the DSA driver must honor that as well. For this

- add proper upstreamed bus read_c45 and write_c45 functions
- take over the disabled port mask from upstream bus

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: harden the mdio bus even more
Markus Stockhausen [Tue, 3 Jun 2025 14:41:47 +0000 (10:41 -0400)] 
realtek: 6.12: harden the mdio bus even more

With the follow up EEE patches the mdio bus will run c22 and c45
accesses during initial scan. Especially when accessing addresses
beyond the CPU port phy requests might fail in a way that cannot
be handled gratefully. Do two things

- do not allow access to addresses starting from cpu port
- set the scan disable bitmask to ports starting from cpu port

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: enhance mdio max port patch (once again)
Markus Stockhausen [Tue, 3 Jun 2025 14:35:29 +0000 (10:35 -0400)] 
realtek: 6.12: enhance mdio max port patch (once again)

Some bits where missed during the last enhancement of the mdio
patch. In the forthcoming patches the phy_mask will be populated
to avoid unwanted ports (>= cpu port) from being scanned. Add
additional locations where 32 bit values need to be converted
to 64 bits.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: allow mixed c22/c45 bus access
Markus Stockhausen [Mon, 2 Jun 2025 17:44:02 +0000 (13:44 -0400)] 
realtek: 6.12: allow mixed c22/c45 bus access

If mmd and normal phy ops are issued the bus is lost because
of wrong park page settings. Force it to 0x1f as in GPL.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: activate testing kernel
Markus Stockhausen [Thu, 29 May 2025 18:33:05 +0000 (14:33 -0400)] 
realtek: 6.12: activate testing kernel

Allow to build the new kernel.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: add missing include
Markus Stockhausen [Thu, 29 May 2025 18:22:38 +0000 (14:22 -0400)] 
realtek: 6.12: add missing include

The new kernel has relocated the definition of struct platform_device.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: align internal/external mac eee function names
Markus Stockhausen [Thu, 29 May 2025 18:04:37 +0000 (14:04 -0400)] 
realtek: 6.12: align internal/external mac eee function names

The DSA driver uses set_mac_eee() for the outside API while
the interal helper is called port_eee_set(). Align that.
Additionally do not call the internal helpers directly by
the function names but use the register assignments.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: refactor get_mac_eee
Markus Stockhausen [Thu, 29 May 2025 07:34:59 +0000 (03:34 -0400)] 
realtek: 6.12: refactor get_mac_eee

Upstream will get rid of the get_mac_eee() function in the DSA
driver and replace it by a boolean alternative. While we fill a
lot of data here (because of EEE bugs in the Realtek phy layer)
other DSA drivers only return if EEE is available or not for a
port. To make the next kernel upgrade easier follow that design.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: relocate R4K deactivation to late CPU init
Markus Stockhausen [Wed, 28 May 2025 17:41:32 +0000 (13:41 -0400)] 
realtek: 6.12: relocate R4K deactivation to late CPU init

To avoid unneeded interrupts the R4K timer is deactivated during
secondary cpu initialization. This is currently done during
phase init_secondary(). With the upgrade to 6.12 the kernel runs
a primary/secondary cpu timer/counter synchronization to verify the
proper setup in synchronise_count_slave(). That runs at a later
point in time and expects the secondary counter to be fully
functional. Finding a deactivated counter results in the following
messages:

WARNING: CPU: 1 PID: 0 at arch/mips/kernel/sync-r4k.c:99 check_counter_warp+0x220/0x254
Warning: zero counter calibration delta: 0 [max: 6500000]
Counter synchronization [CPU#0 -> CPU#1]:
Measured 278760029 cycles counter warp between CPUs

Relocate the deactivation to smp_finsh() at the end of the cpu
startup sequence. Additionally polish the startup code and remove
all unneeded parts.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: fix phy-mode for XGS1250-12 port 1-8
Markus Stockhausen [Wed, 28 May 2025 12:43:16 +0000 (08:43 -0400)] 
realtek: 6.12: fix phy-mode for XGS1250-12 port 1-8

Per IEEE 802.3 definition we have:
- parallel XGMII for single 10GBit ONLY links
- serial USGMII for 8 port 1GBit links (not known by kernel)
- serial USXGMII: for single/multiple links with a total bandwidth of 10GBit

The phy-mode of the first eight ports of the XGS1250-12 have always been
defined as XGMII (without S). This came from a confusion with the similar
named Realtek proprietary XSGMII (with S) mode that is basically 10GB SGMII.
From the above definition this is wrong but worked until kernel 6.6. With
the upgrade to 6.12 there is an enforced capabilities check within
phy_caps_from_interface() and link validation fails with

lan1: validation of xgmii with support 62ef and advertisement 62c0 failed: -EINVAL
lan1: failed to connect to PHY: -EINVAL
lan1: error -22 setting up PHY for tree 0, switch 0, port 0

Switch the ports to USXGMII as the most flexible option. This might be no
final solution but at least it better describes the phy/mac link.

Fixes 5b8b382df9a960d88 ("realtek: Add support for ZxXEL XGS1250-12 Switch")
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: adapt RTL9300 i2c bus & mux drivers
Markus Stockhausen [Wed, 28 May 2025 05:32:49 +0000 (01:32 -0400)] 
realtek: 6.12: adapt RTL9300 i2c bus & mux drivers

Fix minor compilation errors due to kernel changes.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: adapt platform patch
Markus Stockhausen [Tue, 27 May 2025 19:28:52 +0000 (15:28 -0400)] 
realtek: 6.12: adapt platform patch

Upstream has integrated the Realtek target into the generic MIPS
initialization and so MACH_REALTEK_RTL has gained some new features.
Especially:

- CONFIG_MACH_GENERIC_CORE generates central modules
- board-realtek module adds device specific extensions

The current downstream initialization works well and upgrading to
kernel 6.12 is not the right time to harmonize this. Modify the
MACH definitions to the current needs.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: drop validate from phylink_mac_ops
Markus Stockhausen [Tue, 27 May 2025 19:21:39 +0000 (15:21 -0400)] 
realtek: 6.12: drop validate from phylink_mac_ops

The validate function no longer exists in phylink_mac_ops. Remove
it for the internal ethernet interface. Instead provide some
meaningful mac capabilities.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: add mac capabilities to rtl83xx_phylink_get_caps()
Markus Stockhausen [Tue, 27 May 2025 19:13:07 +0000 (15:13 -0400)] 
realtek: 6.12: add mac capabilities to rtl83xx_phylink_get_caps()

Not only the link but also the mac capabilities are needed here.
Additionally do some alphabetical sorting.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: rename dsa functions/structures to conduit/user
Markus Stockhausen [Tue, 27 May 2025 18:59:13 +0000 (14:59 -0400)] 
realtek: 6.12: rename dsa functions/structures to conduit/user

The old upstream notation has been changed to something not so racist.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: replace ethtool_eee with ethtool_keee
Markus Stockhausen [Tue, 27 May 2025 18:35:53 +0000 (14:35 -0400)] 
realtek: 6.12: replace ethtool_eee with ethtool_keee

EEE functions are now called with ethtool_keee instead of
ethtool_eee. Replace all occurrences. This will fix function
signature checks but still produces compilation errors due
to structure changes.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: refresh patches with slightly changed anchors
Markus Stockhausen [Tue, 27 May 2025 18:17:05 +0000 (14:17 -0400)] 
realtek: 6.12: refresh patches with slightly changed anchors

Patches where fuzz had to be cleaned up.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: refresh patches with only source line changes
Markus Stockhausen [Tue, 27 May 2025 18:08:32 +0000 (14:08 -0400)] 
realtek: 6.12: refresh patches with only source line changes

All these patches needed no manual intervention and applied cleanly
with new source code positions.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: drop upstreamed otto timer
Markus Stockhausen [Tue, 27 May 2025 17:48:06 +0000 (13:48 -0400)] 
realtek: 6.12: drop upstreamed otto timer

Thanks to Chris Packham this driver got upstreamed. Drop the
downstream files and patches.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: restore config-6.6
Markus Stockhausen [Tue, 27 May 2025 13:13:03 +0000 (09:13 -0400)] 
realtek: 6.12: restore config-6.6

Automatically generated commit.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: create config-6.12 from config-6.6
Markus Stockhausen [Tue, 27 May 2025 13:12:22 +0000 (09:12 -0400)] 
realtek: 6.12: create config-6.12 from config-6.6

Automatically generated commit.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: 6.12: restore patches-6.6
Markus Stockhausen [Tue, 27 May 2025 13:11:03 +0000 (09:11 -0400)] 
realtek: 6.12: restore patches-6.6

Automatically generated commit.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18935
Signed-off-by: Robert Marko <robimarko@gmail.com>