]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
18 hours agotools/meson: update to 1.11.2 24560/head
Rosen Penev [Thu, 30 Jul 2026 01:41:24 +0000 (18:41 -0700)] 
tools/meson: update to 1.11.2

Remove upstreamed patch and refresh others.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24560
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
18 hours agomediatek: mt7622: drop unused file_type variable 24531/head
Semih Baskan [Mon, 3 Aug 2026 00:38:01 +0000 (03:38 +0300)] 
mediatek: mt7622: drop unused file_type variable

platform_do_upgrade() assigns file_type and never reads it. The call also uses
the argument order from before 715634e6d144, so it returns "unknown" rather than
the real type and would mislead anyone who started using it.

No functional change.

Signed-off-by: Semih Baskan <strst.gs@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24531
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
18 hours agobcm53xx: fix sysupgrade losing config on NAND devices
Semih Baskan [Sun, 2 Aug 2026 06:54:44 +0000 (09:54 +0300)] 
bcm53xx: fix sysupgrade losing config on NAND devices

The check that decides whether the new rootfs is a UBI image passes one argument
where 715634e6d144 now expects two. Without the extraction command the subshell
runs nothing, the magic comes back empty and the check fails. sysupgrade then
falls back to writing the whole image over the firmware partition, which cannot
carry sysupgrade.tgz into the new rootfs_data volume. After the reboot the
settings are gone, as if -n had been passed, and the UBI erase counters go with
them.

Affects bcm53xx NAND devices flashed with a trx based image, from 24.10.0-rc1
onwards.

The fix lives in the firmware doing the flashing, so upgrading from an affected
build loses the config one last time. Every upgrade from a fixed build onwards
keeps it.

Build tested on main with kernel 6.18, Asus RT-N18U, three consecutive
sysupgrades, config preserved every time.

Fixes: 715634e6d144 ("base-files: upgrade: nand: use "cmd" argument for extracting command")
Link: https://github.com/openwrt/openwrt/issues/21024
Link: https://github.com/openwrt/openwrt/issues/21655
Signed-off-by: Semih Baskan <strst.gs@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24531
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
19 hours agokernel: add support for HeYangTek HYF1GQ4UDACAE SPI-NAND 23742/head
Aleksei Sviridkin [Wed, 10 Jun 2026 10:38:10 +0000 (13:38 +0300)] 
kernel: add support for HeYangTek HYF1GQ4UDACAE SPI-NAND

The HeYangTek HYF1GQ4UDACAE is a 1 Gbit (128 MiB) SLC SPI-NAND with
2048 + 64 byte pages and on-die 4-bit / 512-byte ECC (JEDEC ID 0xc9),
found among others on some Keenetic KN-3411 (Buddy 6) units.

The driver is accepted upstream and sits in the MTD tree heading for
Linux 7.3, so it goes to backport-6.18 as the upstream commit
a837468386 ("mtd: spinand: add support for HeYangTek HYF1GQ4UDACAE").

The Etron and Dosilicon spinand patches are refreshed because the
backport applies before them and touches the same spinand-objs line.
Other SPI-NAND patches in the MediaTek, Airoha, EcoNet and Qualcommax
targets are refreshed for the shifted core offsets.

Signed-off-by: Aleksei Sviridkin <f@lex.la>
Link: https://github.com/openwrt/openwrt/pull/23742
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
19 hours agomold: bump to 2.42.0 24672/head
Carsten Schuette [Tue, 11 Aug 2026 17:38:04 +0000 (19:38 +0200)] 
mold: bump to 2.42.0

Update mold to 2.42.0

Changelog:
https://github.com/rui314/mold/releases/tag/v2.42.0

Signed-off-by: Carsten Schuette <schuettecarsten@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/24672
Signed-off-by: Robert Marko <robimarko@gmail.com>
19 hours agokernel: fix kmod-mdio-gpio dependencies for econet target 24710/head
Shiji Yang [Thu, 13 Aug 2026 14:19:20 +0000 (22:19 +0800)] 
kernel: fix kmod-mdio-gpio dependencies for econet target

Add missing dependent package kmod-of-mdio to fix build error:

Package kmod-mdio-gpio is missing dependencies for the following libraries:
of_mdio.ko

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24710
Signed-off-by: Robert Marko <robimarko@gmail.com>
19 hours agokernel: fix kmod-mdio-devres dependencies for econet target
Shiji Yang [Thu, 13 Aug 2026 11:01:50 +0000 (19:01 +0800)] 
kernel: fix kmod-mdio-devres dependencies for econet target

Add missing dependent package kmod-of-mdio to fix build error:

Package kmod-mdio-devres is missing dependencies for the following libraries:
of_mdio.ko

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24710
Signed-off-by: Robert Marko <robimarko@gmail.com>
19 hours agoramips: mt7621: add TL-R605 v1 as alternative name for TP-Link ER605 v1 24682/head
Charles Joynson [Tue, 11 Aug 2026 23:12:36 +0000 (19:12 -0400)] 
ramips: mt7621: add TL-R605 v1 as alternative name for TP-Link ER605 v1

This was the original name for the TP-Link ER605 v1 before rebranding.
Hardware is identical. Adds DEVICE_ALT0 entries for the original branding.

Signed-off-by: Charles Joynson <ctjoynson@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24682
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
19 hours agorealtek: clocksource: backport upstream patch for __raw reads & writes 24170/head
Rustam Adilov [Fri, 10 Jul 2026 13:34:30 +0000 (18:34 +0500)] 
realtek: clocksource: backport upstream patch for __raw reads & writes

Backport the upstream patch for realtek clocksource driver that
changes register access to instead use __raw_readl and __raw_writel
to not cause unnecessary byteswaps with SWAP_IO_SPACE enabled.

Signed-off-by: Rustam Adilov <adilov@tutamail.com>
Link: https://github.com/openwrt/openwrt/pull/24170
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
20 hours agobcm27xx: clean up stray config-6.18/config-6.12 entries 24645/head
Joshua Covington [Sun, 9 Aug 2026 15:44:02 +0000 (15:44 +0000)] 
bcm27xx: clean up stray config-6.18/config-6.12 entries

Remove stray/redundant lines from the shared kernel config fragments,
in both config-6.18 and config-6.12:

- CONFIG_COMMON_CLK_RP1_SDIO is listed twice (the second copy has a
  double space before "is not set", which is why dedup tooling never
  caught it).
- CONFIG_WS2812_PIO_RP1, CONFIG_PWM_PIO_RP1, and CONFIG_RP1_PIO are
  each the KCONFIG of a kmod package in modules/other.mk, so
  gen_kconfig_overrides() already emits "# ... is not set" for all
  three whenever their package is unselected, independently of these
  fragments.

No functional change.

Signed-off-by: Joshua Covington <joshuacov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24645
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
20 hours agobcm27xx: move bcm27xx-sound package to sound.mk
Joshua Covington [Sun, 9 Aug 2026 14:03:25 +0000 (14:03 +0000)] 
bcm27xx: move bcm27xx-sound package to sound.mk

KernelPackage/bcm27xx-sound lives under SOUND_MENU and provides
onboard audio support, but the package definition itself was
misplaced in other.mk. Move it to sound.mk alongside the other
audio-related kernel packages. No functional change.

Signed-off-by: Joshua Covington <joshuacov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24645
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
20 hours agobcm27xx: add kmod-rp1-pio-uart package
Joshua Covington [Sun, 9 Aug 2026 13:58:06 +0000 (13:58 +0000)] 
bcm27xx: add kmod-rp1-pio-uart package

Add a KernelPackage for CONFIG_SERIAL_RP1_PIO_UART, a software UART
implemented on the RP1 PIO block with DMA-driven TX/RX and a PIO
interrupt for break detection. Only 8N1 with no hardware flow control
is supported.

The package follows the same pattern as the other RP1 PIO consumers
(kmod-pwm-pio-rp1, kmod-ws2812-pio-rp1): it depends on kmod-rp1-pio
and is only available on bcm2712. Guard on 6.18, since the driver is
not available on 6.12.

Signed-off-by: Joshua Covington <joshuacov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24645
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
28 hours agokernel: xhci: fix USB3 port events with a single roothub 24547/head
Semih Baskan [Mon, 3 Aug 2026 02:44:59 +0000 (05:44 +0300)] 
kernel: xhci: fix USB3 port events with a single roothub

USB3 port events are dropped whenever the controller has only one roothub.
The check that guards them treats a missing shared hcd as proof the hcd was
removed, which stopped being true with upstream commit 4736ebd7fcaf ("usb:
host: xhci-plat: omit shared hcd if either root hub has no ports"). A
controller whose USB2 root hub has no ports gets a single roothub and never
has a shared one, so every SuperSpeed event is thrown away and nothing
enumerates even though the port reports the device:

  0x006a1203 Powered Connected Enabled Link:U0 PortSpeed:4

Broadcom Northstar is such a controller. USB3 works there up to 5.15 and
stops from 5.19 onwards.

Tested on an Asus RT-N18U with kernel 6.18, seven SuperSpeed enumerations,
USB2 unaffected on both ports.

Link: https://github.com/openwrt/openwrt/issues/19592
Signed-off-by: Semih Baskan <strst.gs@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24547
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
30 hours agotools/sed: update to 4.10 24572/head
Rosen Penev [Thu, 30 Jul 2026 01:46:08 +0000 (18:46 -0700)] 
tools/sed: update to 4.10

Remove upstreamed patch.

Remove HOST_CONFIGURE_VARS. These are not needed any more.
ac_cv_search_setfilecon was removed completely and the others are guarded
by if test "$with_selinux" != no; then now.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24572
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
31 hours agolinux-firmware: update to 20260810
John Audia [Mon, 10 Aug 2026 20:13:12 +0000 (16:13 -0400)] 
linux-firmware: update to 20260810

% git log --no-merges --pretty=oneline --abbrev-commit 20260622...20260810
063e840eb6a5 amdgpu: update vangogh firmware
2b6994bdaf08 amdgpu: update VPE 6.1.1 firmware
5647ab9de0b8 amdgpu: update VCN 4.0.6 firmware
e41fbeddca6b amdgpu: update PSP 14.0.1 firmware
385ed4e463c2 amdgpu: update GC 11.5.1 firmware
3cf314d753f1 amdgpu: update VPE 6.1.0 firmware
b7580590a882 amdgpu: update VCN 4.0.5 firmware
fb07c4c1bff7 amdgpu: update PSP 14.0.0 firmware
a0244fc1e51e amdgpu: update GC 11.5.0 firmware
450931767e23 amdgpu: update renoir firmware
17ee8fdf9196 amdgpu: update yellow carp firmware
1333a13b10d9 amdgpu: update raven2 firmware
8fbade3e02ad amdgpu: update raven firmware
cdca61c3e725 amdgpu: update VCN 3.1.2 firmware
f31b5279b92f amdgpu: update PSP 13.0.5 firmware
396203550e8b amdgpu: update GC 10.3.6 firmware
7e20ec1d4147 amdgpu: update picasso firmware
560ea6eef5c9 amdgpu: update PSP 13.0.11 firmware
d03eaf0ed21d amdgpu: update GC 11.0.4 firmware
021748a2d063 amdgpu: update VCN 4.0.2 firmware
6432d86afe8b amdgpu: update PSP 13.0.4 firmware
1302f408cef1 amdgpu: update GC 11.0.1 firmware
d9abb168e11e amdgpu: update VCN 5.0.0 firmware
bf0ab55575c5 amdgpu: update SMU 14.0.3 firmware
6011e4e72220 amdgpu: update PSP 14.0.3 firmware
561beb53dd4c amdgpu: update GC 12.0.1 firmware
9ce98c647c44 amdgpu: update SMU 14.0.2 firmware
fcf0f40b91fb amdgpu: update PSP 14.0.2 firmware
a6b213877ca8 amdgpu: update GC 12.0.0 firmware
c07514a7b1ad amdgpu: update vcn 4.0.4 firmware
7819871f1ff3 amdgpu: update SMU 13.0.7 firmware
a1e2435547e0 amdgpu: update PSP 13.0.7 firmware
520300e89c9f amdgpu: update GC 11.0.2 firmware
616b105723c5 amdgpu: update SMU 13.0.10 firmware
08d80954b310 amdgpu: update SDMA 6.0.3 firmware
adb04851a983 amdgpu: update PSP 13.0.10 firmware
e8c258ab8762 amdgpu: update GC 11.0.3 firmware
4d370ad31dcf amdgpu: update VCN 4.0.0 firmware
87245e269b39 amdgpu: update SMU 13.0.0 firmware
d18869d26f30 amdgpu: update PSP 13.0.0 firmware
59ab535919b4 amdgpu: update GC 11.0.0 firmware
9f1eb5124635 amdgpu: update beige goby firmware
e3e45091597e amdgpu: update dimgrey cavefish firmware
7df10898a825 amdgpu: update navy flounder firmware
7b262e1ddce5 amdgpu: update sienna cichlid firmware
f1a2554fa8a9 amdgpu: update navi14 firmware
da93e66cc40a amdgpu: update navi12 firmware
b5cbed93dce0 amdgpu: update navi10 firmware
23e6cdf04093 amdgpu: add PSP 13.0.15 firmware
498b56c257a0 amdgpu: update VCN 5.0.1 firmware
db4689b9cbf5 amdgpu: update PSP 13.0.12 firmware
14bb47b3d95d amdgpu: update GC 9.5.0 firmware
0971e871e2c8 amdgpu: update PSP 13.0.14 firmware
614d087d80d5 amdgpu: update GC 9.4.4 firmware
86de753572ed amdgpu: update PSP 14.0.5 firmware
f4560ccaae54 amdgpu: update GC 11.5.3 firmware
b61e451e21d9 amdgpu: update VPE 6.1.3 firmware
b590b5cc96c9 amdgpu: update PSP 14.0.4 firmware
afa73dfce0b6 amdgpu: update GC 11.5.2 firmware
9a40a2a0d209 amdgpu: update green sardine firmware
19ef23d2f01c amdgpu: update arcturus firmware
efbaf51d2536 amdgpu: update VCN 4.0.3 firmware
1e7be58e5976 amdgpu: update PSP 13.0.6 firmware
dc41a59a607c amdgpu: update GC 9.4.3 firmware
9eacb0eecb19 amdgpu: update aldebaran firmware
3ea09d09ebc5 linux-firmware: update firmware for MT7922 WiFi device
1b8e17a34716 morsemicro: add firmware for mm8108 support
796029ba95ac ath10k: WCN3990 hw1.0: update board-2.bin
222b46fad22d linux-firmware: Update firmware for an8811hb 2.5G ethernet phy
4291fa65d305 xe: Update GUC to v70.72.1 for BMG, LNL, PTL, NVL-S
f997b2832a0f mediatek MT7922: update bluetooth firmware to 20260724143815
e3743e36a1fc airoha: update AN7583 NPU firmwares to version 0.5
dbe44d7f98ff linux-firmware: Add firmware for new project
68e5d7dc9f41 qcom: Add gpu firmwares for Eliza chipset
bb7c02330655 cirrus: cs35l57: Add firmware for Cirrus Amps for some Samsung laptops
ebd5656443f6 rtw89: 8922d: add fw 0.35.113.2
1d737d9cb97d qcom: venus-5.4: fix vp9 decoder assertion failure
c0dbea210940 qla2xxx: Add ql2900_fw.bin firmware for 29xx adapters
cefc3e9ed0a3 qcom: Update qdsp6sw firmware for shikra platform
495465e0e774 amdgpu: DMCUB updates for various ASICs
3c12682c1d3e intel_vpu: Update NPU firmware
b20d3b461730 qcom: Update DSP firmware for qcs8300 platform
43cc9de7f754 linux-firmware: Add firmware for new soundwire projects
9f04ff1e6690 rtw88: add firmware v41.0.0 for RTL8723B
5dbe9737a58f linux-firmware: Update AMD cpu microcode
c410f2d2706b linux-firmware: Add firmware file for Intel BlazarIW
a17cf7dce1e7 linux-firmware: Update firmware file for Intel BlazarU core
b33e6a8d48a0 linux-firmware: Update firmware file for Intel BlazarI core
1d052c175dd7 linux-firmware: Update firmware file for Intel Scorpius core
1168e26f7731 amdgpu: DMCUB updates for various ASICs
eca4f58a491f amdgpu: DMCUB updates for various ASICs
9bc90ae3a3f0 qcom: add ADSP firmware for hawi platform
f328d8c751ab powervr: add firmware for Imagination Technologies BXM-4-64 GPU
0b1b0d6f1623 qcom: Update DSP firmware for sa8775p platform
dc065e7d9a30 xe: Release GuC firmware for NVL-S
b81cba4304c7 cirrus: cs35l56: Update firmware for the ASUS UX5406SA
b2306fcd2b75 qcom: vpu: add Gen2 firmware binary for Purwa
ea557820eaac cirrus: cs42l45: Update CS42L45 SDCA codec firmware for Dell laptops
bd651de1f551 QCA: Add Bluetooth firmware for WCN6855 ROM 1.0
2ab4ce216003 iwlwifi: add Bz/Sc FW for core24.60-33 release
8eb7bc3078cf iwlwifi: Add Hr/Gf firmware for core24.60-33 release
5abccaee1247 iwlwifi: update ty/So/Ma firmwares for core24.60-33 release
75692adea893 iwlwifi: update cc/Qu/QuZ firmwares for core24.60-33 release
670795153af5 cirrus: cs35l56: Add firmware for Cirrus Amps for a few Dell laptops
ee726ccf6631 docs: address feedback on LICENSE-CRITERIA.md
424f54e3c966 Adjust statement on existing firmware
94136c3e7305 docs: add LICENSE-CRITERIA.md as project licensing policy
e0a3f55f139c ueagle-atm: sadly drop unlicensed files
a426d141265e linux-firmware: qcom: sync audioreach firmwares from v1.0.4 build
1d172a788a72 QCA: Update Bluetooth QCA6698 firmware to 2.1.2-00072
e3e36153ce3f amdgpu: DMCUB updates for various ASICs
a16ce5c674f0 linux-firmware: Add firmware for new projects
d36d53563e47 rtw89: 8852a: add TX power track R34
0ae79f3a658e linux-firmware: Update AMD SEV firmware

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/24659
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
31 hours agouboot-zynq: bump to 2026.04 24659/head
Zoltan HERPAI [Fri, 7 Aug 2026 07:59:30 +0000 (07:59 +0000)] 
uboot-zynq: bump to 2026.04

While at it, replace the SPI MAC address read patch with a rebased
series from the Digilent u-boot repository. It should be noted that
this feature is still not upstreamed. Refresh patches as required.

As most of the zynq boards are merged into xilinx_zynq_virt, add
UBOOT_CONFIG to the respective boards in the Makefile.

Compile-tested: all Zynq boards
Runtime-tested: Antminer S9

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
31 hours agoramips: add support for ASUS RT-N65U 24343/head
Andrej Valek [Fri, 30 Dec 2022 14:33:30 +0000 (15:33 +0100)] 
ramips: add support for ASUS RT-N65U

ASUS RT-N65U is a 2.4/5 GHz band 11n (Wi-Fi 4) router, based on RT3883.

Specification:
- CPU1: Ralink RT3883 @ 500MHz, WiSoC 5GHz
- CPU2: Ralink RT3352 @ 400MHz, WiSoC 2.4GHz
- RAM1: 128MB
- RAM2: 16MB
- Flash: Macronix MX25L12805D (16MB)
- WLAN: Ralink RT3883 (5GHz 3T3R), Ralink RT3352 (2.4GHz 2T2R)
- Switch: Realtek RTL8367RB
- 4x 10/100/1000 Mbps Ethernet
- 1x 10/100/1000 Mbps WAN
- USB: ASMedia ASM1042 USB 3.0 Controller
- PMU: UTC UZ1086L-ADJ
- 6x LED, 2x button

Installation (TFTP):
1. Power off the router.
2. Press and hold the Reset button.
3. Power on the router.
4. Wait 5 seconds, then release the Reset button.
5. Connect your PC to the router with Ethernet cable.
6. Configure a static IP address in the `192.168.1.0/24` subnet (except `192.168.1.1`).
7. Configure your TFTP client to use binary (octet) transfer mode.
8. Upload the firmware image (OpenWrt, stock, or Padavan) to `192.168.1.1`.
   The TFTP server accepts any filename.
9. Wait for the firmware flashing process to complete.

WARNING: Flashing the stock firmware after using Padavan may brick
your router due to configuration partition incompatibility.

MAC address layout:
- Wi-Fi 2.4GHz & WAN: label MAC
- Wi-Fi 5GHz & LAN: label MAC + 4

MTD layout:
```
mtd0: 00030000 00010000 "u-boot"
mtd1: 00010000 00010000 "config"
mtd2: 00010000 00010000 "factory"
mtd3: 00fb0000 00010000 "firmware"
mtd4: 001ee3b3 00010000 "kernel"
mtd5: 00dc1c4d 00010000 "rootfs"
mtd6: 00960000 00010000 "rootfs_data"
```

Known issues:
- The RT3352 2.4 GHz iNIC is unsupported because it requires a
  proprietary firmware blob and kernel support
- The Wi-Fi LEDs cannot be disabled independently because they share
  the LED power rail controlled by GPIO10

This work is based on the earlier draft support by Andrej Valek.

Tested by 4PDA users

Signed-off-by: Andrej Valek <andy@skyrain.eu>
Signed-off-by: Andrey Trishin <zatrit@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24343
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
31 hours agokernel: rtl8367b: add support for RTL8367RB with `ver:2000`
Andrey Trishin [Mon, 27 Jul 2026 05:28:13 +0000 (08:28 +0300)] 
kernel: rtl8367b: add support for RTL8367RB with `ver:2000`

This RTL8367RB variant was found in the ASUS RT-N65U v2.60.
The router revision `v2.60` is not tied to `num:6000 ver:2000`,
as units with `num:6000 ver:1000` have also been confirmed.

Reported-by: Andrej Valek <andy@skyrain.eu>
Tested-by: Andrej Valek <andy@skyrain.eu>
Signed-off-by: Andrey Trishin <zatrit@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24343
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
32 hours agowolfssl: update to 5.9.2 24700/head
Sander van Deijck [Wed, 12 Aug 2026 23:26:01 +0000 (01:26 +0200)] 
wolfssl: update to 5.9.2

Release notes:
https://github.com/wolfSSL/wolfssl/releases/tag/v5.9.2-stable

This is a security release fixing 32 CVEs (6 High, 15 Med, 11 Low).
Many of them apply to the configuration built here: --enable-opensslall
and --enable-opensslextra are unconditional, and TLS 1.3, session
tickets and OCSP stapling default to y.

Fixes CVEs:
- CVE-2026-11310 (High)
- CVE-2026-11999 (High)
- CVE-2026-6679 (High)
- CVE-2026-55958 (High)
- CVE-2026-55960 (High)
- CVE-2026-55961 (High)
- CVE-2026-6731 (Med)
- CVE-2026-6091 (Med)
- CVE-2026-6094 (Med)
- CVE-2026-6329 (Med)
- CVE-2026-6330 (Med)
- CVE-2026-8720 (Med)
- CVE-2026-10097 (Med)
- CVE-2026-10098 (Med)
- CVE-2026-10592 (Med)
- CVE-2026-7532 (Med)
- CVE-2026-6291 (Med)
- CVE-2026-7511 (Med)
- CVE-2026-11703 (Med)
- CVE-2026-55962 (Med)
- CVE-2026-55964 (Med)
- CVE-2026-6092 (Low)
- CVE-2026-6331 (Low)
- CVE-2026-6681 (Low)
- CVE-2026-10512 (Low)
- CVE-2026-6678 (Low)
- CVE-2026-7531 (Low)
- CVE-2026-6325 (Low)
- CVE-2026-6412 (Low)
- CVE-2026-6450 (Low)
- CVE-2026-12340 (Low)
- CVE-2026-55967 (Low)

OCSP responder authorization is now strictly enforced per RFC 6960
4.2.2.2. The CheckOcspResponderChain() fallback, which accepted any
responder certificate issued by an ancestor of the target's issuer,
was removed. Setups relying on an indirectly issued OCSP responder
will start to fail validation.

Refreshed patches.

Signed-off-by: Sander van Deijck <sander@vandeijck.com>
Link: https://github.com/openwrt/openwrt/pull/24700
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
43 hours agoairoha: an7583: enable USB on Nokia XG-040G-MF 14052/head 24609/head
Vitaliy Sochnev [Fri, 7 Aug 2026 20:02:02 +0000 (21:02 +0100)] 
airoha: an7583: enable USB on Nokia XG-040G-MF

The board has one USB 2.0 and one USB 3.0 port, both powered from a
5V rail switched by GPIO 30. The device tree already carried the whole
USB description commented out, waiting for SoC support.

Uncomment the 3.3V/5V regulators, the usbport LED triggers and the xHCI
node, enable the USB PHY, and add the LED trigger and regulator kmods to
the image.

Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24609
Signed-off-by: Robert Marko <robimarko@gmail.com>
43 hours agoairoha: an7583: build USB support into the kernel
Vitaliy Sochnev [Fri, 7 Aug 2026 20:01:40 +0000 (21:01 +0100)] 
airoha: an7583: build USB support into the kernel

The AN7583 has a single xHCI controller, the same block as on AN7581 and
the MediaTek SoCs. Build the host controller and its glue driver into the
kernel instead of shipping them as modules: the module route needs a
subtarget dependency in KernelPackage/usb3 plus kmod-usb3 in the
DEVICE_PACKAGES of every board that has USB ports, which is a roundabout
way of getting two drivers loaded.

Boards without USB ports carry the code as well, but they are not size
constrained.

Suggested-by: Robert Marko <robert.marko@sartura.hr>
Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24609
Signed-off-by: Robert Marko <robimarko@gmail.com>
43 hours agoairoha: an7583: add USB nodes to SoC dtsi
Vitaliy Sochnev [Fri, 7 Aug 2026 20:01:18 +0000 (21:01 +0100)] 
airoha: an7583: add USB nodes to SoC dtsi

Add the xHCI controller and the USB PHY node. The single controller
exposes two USB 2.0 ports and one USB 3.0 port, all served by one PHY
block: two U2 subnodes at offset 0x0/0x1000 and one U3 subnode that
needs the SCU to switch the shared serdes between USB and HSGMII.

Both nodes are left disabled, boards enable them as needed.

Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24609
Signed-off-by: Robert Marko <robimarko@gmail.com>
43 hours agoairoha: add support for AN7583 USB PHY
Vitaliy Sochnev [Fri, 7 Aug 2026 20:00:49 +0000 (21:00 +0100)] 
airoha: add support for AN7583 USB PHY

The AN7581 USB PHY driver can't be reused on AN7583: the SoC has a
single USB PHY block driving two U2 ports and one U3 port, and both the
PLL init sequence and the U3 calibration differ.

Add the AN7583 USB PHY driver from Christian Marangi, with the PCIe PHY
part dropped (the AN7583 PCIe serdes has no DT node yet) and five bugs
fixed: an uninitialized "ret" passed to dev_err_probe(); a NULL check on
syscon_regmap_lookup_by_phandle(), which returns an ERR_PTR on failure;
a missing per-instance offset in u2_set_mode(), which made it write the
first U2 port's register regardless of the PHY it was called on; an
off-by-one bound in parse_subnode() allowing a write past the end of
priv->phys[]; and a discarded return value in phy_init(), which
swallowed the U3 calibration failure reported by u3_init().

Enable the driver on the an7583 subtarget. The an7581 subtarget keeps
its own PHY_AIROHA_USB driver untouched.

Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24609
Signed-off-by: Robert Marko <robimarko@gmail.com>
43 hours agoairoha: an7583: add DT binding for AN7583 USB PHY
Vitaliy Sochnev [Sun, 9 Aug 2026 16:28:50 +0000 (17:28 +0100)] 
airoha: an7583: add DT binding for AN7583 USB PHY

The airoha,an7583-usb-phy compatible added by the USB PHY driver had no
matching binding document. The AN7581 equivalent ships one as a separate
patch (220-05), which is also where the AIROHA_USB2_MONCLK_SEL* defines
used by an7583.dtsi come from.

The AN7583 binding is not simply "same as AN7581": the SoC has a single
PHY block with four named reg regions, per-port child nodes carrying
#phy-cells, and airoha,scu on the USB 3.0 child rather than on the PHY
node itself.

The AIROHA_USB2_MONCLK_SEL* defines are reused from the AN7581 binding
header, as the values are identical on AN7583.

Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24609
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agolantiq: xrx200: skip DSL configuration on AVM 5490/5491 24652/head
Aleksander Jan Bajkowski [Mon, 29 Apr 2024 12:12:04 +0000 (14:12 +0200)] 
lantiq: xrx200: skip DSL configuration on AVM 5490/5491

Skip the DSL configuration since AVM 5490 and 5491 support fiber instead
of DSL. The DSL configuration overwrites the WAN port configuration.

Fixes: 48b2df5a4164 ("lantiq: add support for AVM Fritzbox 5490/5491")
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/24652
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agolantiq: xrx200: fix fiber port support on AVM 5490/5491
Aleksander Jan Bajkowski [Mon, 10 Aug 2026 13:07:43 +0000 (15:07 +0200)] 
lantiq: xrx200: fix fiber port support on AVM 5490/5491

The fiber port on the AVM 5490/5491 is only partially working. Frames are sent
correctly. Most received frames are dropped due to an invalid FCS. It turns out
that delays are needed between the MAC and the PHY. This commit enables RGMII
delays on the PHY side. Traffic now flows in both directions.

Fiber port topology:
SWITCH<-----RGMII----->PHY<-----SGMII----->SFP/SFF cage

Tested on the AVM 5490. On the other end is a network card with a 1000Base-BX10
SFP module (HiKivision HK-SFP-1.25G-20-1550).

The fiber port on the AVM5491 should also work. The AVM 5490 and 5491 share the
same PCB and are almost identical. The only difference is that the AVM5491 has
a standard SFP cage with an external GPON module, while the 5490 has a soldered
1000Base-BX SFF module.

Fixes: 48b2df5a4164 ("lantiq: add support for AVM Fritzbox 5490/5491")
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/24652
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agolibubox: update to Git HEAD (2026-07-21) 24678/head
Hauke Mehrtens [Tue, 11 Aug 2026 20:48:09 +0000 (22:48 +0200)] 
libubox: update to Git HEAD (2026-07-21)

17f527fb6c30 ustream: allow freeing the stream from within notify callbacks
e7608b69283d blobmsg: use flexible-array member in blobmsg_name()

Link: https://github.com/openwrt/openwrt/pull/24678
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agouhttpd: update to Git HEAD (2026-08-03) 24680/head
Hauke Mehrtens [Tue, 11 Aug 2026 20:46:05 +0000 (22:46 +0200)] 
uhttpd: update to Git HEAD (2026-08-03)

f6c2fcfa539d client: cap cumulative header count and bytes per request
4f307a2156f3 client: verify chunk data is followed by CRLF before resyncing
628a073fef44 listen: set IP_FREEBIND so binding to a not-yet-present address works
0910904b75a3 client: reject empty chunk size lines in chunked transfer parsing
893fed8577d7 client: use strict chunk size parsing to fix issue #3
8867514f51fa client: fix parse_chunksize() return type and stale comment
daa5078b959b client: reject invalid header names to prevent request smuggling
69f9cabd0d7d http: use chartypes table consistently, drop ctype.h
003cd188b8f9 http: further consolidate character classification and header parsing
f682ccabee9e client: parse and discard chunked trailer sections, use enum chunked_state
e76736e5676f ubus: guard params type in uh_ubus_send_request()
42e30caa704e ubus: set d->free unconditionally to fix url_path leak
d6205aad6176 client: move unread-body guard into uh_request_done()
3c48b9e17d20 ubus: release client refcount on successful /ubus/subscribe
d0b89eb7c70b utils: strip trailing whitespace from header field-values
067466662368 file: dereference symlinks when looking up MIME type
c54ba119cf54 lua, ucode: use buffered stdio for script output
60f64bec40c8 tls: add SNI-based redirect support

This closes five published security advisories, three of them rated
high: an unauthenticated header-accumulation memory-exhaustion DoS,
an out-of-bounds write via ubus params type confusion, a url_path
leak, a CL.0 request smuggling desync and a leaked client refcount
that wedges the listener.

Fixes: https://github.com/openwrt/uhttpd/issues/3
Fixes: https://github.com/openwrt/uhttpd/issues/5
Fixes: https://github.com/openwrt/uhttpd/issues/10
Fixes: https://github.com/openwrt/uhttpd/issues/11
Fixes: https://github.com/openwrt/uhttpd/issues/14
Fixes: https://github.com/openwrt/uhttpd/issues/17
Closes: https://github.com/openwrt/uhttpd/issues/19
Link: https://github.com/openwrt/uhttpd/security/advisories/GHSA-vhx4-3p5q-m59q
Link: https://github.com/openwrt/uhttpd/security/advisories/GHSA-2mpg-6wp5-435p
Link: https://github.com/openwrt/uhttpd/security/advisories/GHSA-83vv-qrc6-h3hx
Link: https://github.com/openwrt/uhttpd/security/advisories/GHSA-c2wg-hcff-hqrm
Link: https://github.com/openwrt/uhttpd/security/advisories/GHSA-wvgh-cm54-q6f6
Link: https://github.com/openwrt/openwrt/pull/24680
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agounetmsg: fix TCP_USER_TIMEOUT socket option level 24595/head
Chad Monroe [Fri, 7 Aug 2026 01:43:05 +0000 (18:43 -0700)] 
unetmsg: fix TCP_USER_TIMEOUT socket option level

The ucode socket module exports no SOL_TCP so setopt() was called
with level 0 and silently failed. This left inter-node connections
without the 5 second user timeout. A peer that stopped reading
could then stall a blocking channel write forever, deadlocking
every unetmsgd in the mesh along with their local clients.

Use IPPROTO_TCP and warn when setopt fails.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24595
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agohostapd: update to 2.12 24599/head
Ivan Pavlov [Fri, 7 Aug 2026 07:04:50 +0000 (10:04 +0300)] 
hostapd: update to 2.12

Update on 2.12 release tag

Manually edit patches:
- 601-ucode_support.patch

Remove upstreamed patches:
- 060-nl80211-fix-reporting-spurious-frame-events.patch
  https://git.w1.fi/cgit/hostap/commit/?id=d6cda78252b4daefaab3f045fb5ae11fb7189939

All other patches refreshed automatically

Signed-off-by: Ivan Pavlov <AuthorReflex@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24599
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: bump 6.18 to 6.18.44 24551/head
Shiji Yang [Mon, 10 Aug 2026 00:19:58 +0000 (08:19 +0800)] 
kernel: bump 6.18 to 6.18.44

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

New kconfig symbol:
- EROFS_FS_ZIP_LZMA_DEFAULT_MAX_STREAMS[1]

All patches are automatically refreshed.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.44&id=5aaa06dfc10f8398c8807453dbec738ea9af10e4
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: bump 6.12 to 6.12.103
Shiji Yang [Mon, 10 Aug 2026 00:19:52 +0000 (08:19 +0800)] 
kernel: bump 6.12 to 6.12.103

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

New kconfig symbol:
- EROFS_FS_ZIP_LZMA_DEFAULT_MAX_STREAMS[1]

All patches are automatically refreshed.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.103&id=0c676903cb2a61992ded8e7907609cc6b0f11744
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agoairoha: use coherent DMA for NPU mailbox buffers
Daniel Pawlik [Tue, 4 Aug 2026 13:45:57 +0000 (15:45 +0200)] 
airoha: use coherent DMA for NPU mailbox buffers

On EN7581 + MT7996, 6f884eb (DMA_BIDIRECTIONAL mailbox map) can make
WLAN_FUNC_GET_WAIT_NPU_VERSION read as 0.0 despite MBOX success.

Allocate one device-managed coherent bounce buffer per NPU core at
probe and reuse it under the existing per-core mailbox lock. That also
keeps the buffer valid if the NPU completes a write after a mailbox
timeout.

Link: https://patchwork.kernel.org/project/linux-mediatek/patch/20260809152813.585797-1-pawlik.dan@gmail.com/
Assisted-by: Cursor:composer-2
Signed-off-by: Daniel Pawlik <pawlik.dan@gmail.com>
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: bump 6.18 to 6.18.43
Shiji Yang [Mon, 3 Aug 2026 11:22:14 +0000 (19:22 +0800)] 
kernel: bump 6.18 to 6.18.43

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

Upstream merged patches:
- generic/backport-6.18/625-v7.0-ppp-enable-TX-scatter-gather.patch[1]
- generic/pending-6.18/303-powerpc-85xx-Add-fsl-ifc-to-common-device-ids.patch[2]
- bcm27xx/patches-6.18/0866-drm-v3d-Reach-the-GMP-through-the-hub-registers-on-V.patch[3]

Manually rebased patches:
- bcm27xx/patches-6.18/0282-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch[4]
- bcm27xx/patches-6.18/0283-xhci-quirks-add-link-TRB-quirk-for-VL805.patch[4]
- bcm27xx/patches-6.18/0284-usb-xhci-add-VLI_SS_BULK_OUT_BUG-quirk.patch[4]
- bcm27xx/patches-6.18/0285-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch[4]

New kconfig symbol:
- GPU_BUDDY [5]

Obsolete kconfig symbol:
- DRM_LIB_RANDOM [5]

All other patches are automatically refreshed.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.42&id=cb9d3e0b55699979b4f4cc333d641edc764056ad
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.42&id=c1bbd0a6906b8d06f1f28a5e1b6d243c81c1f8fa
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.42&id=a096a6aba601152a45d4e272207bd37e03ca3f92
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.42&id=fe7892d46921ee56b135779d32c40cb462e6c6c5
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.42&id=65677f7a20c48cf9ed02c56db389cc327d2b61b2
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Co-authored-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/24551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: bump 6.12 to 6.12.102
Shiji Yang [Mon, 3 Aug 2026 10:57:22 +0000 (18:57 +0800)] 
kernel: bump 6.12 to 6.12.102

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

Upstream merged patches:
- generic/backport-6.12/620-v6.15-ppp-use-IFF_NO_QUEUE-in-virtual-interfaces.patch[1]
- generic/backport-6.12/621-v6.17-ppp-convert-to-percpu-netstats.patch[2]
- generic/backport-6.12/625-v7.0-ppp-enable-TX-scatter-gather.patch[3]
- generic/pending-6.12/303-powerpc-85xx-Add-fsl-ifc-to-common-device-ids.patch[4]

Manually rebased patches:
- bcm27xx/patches-6.12/950-0006-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch[5]
- bcm27xx/patches-6.12/950-0333-xhci-quirks-add-link-TRB-quirk-for-VL805.patch[5]
- bcm27xx/patches-6.12/950-0334-usb-xhci-add-VLI_SS_BULK_OUT_BUG-quirk.patch[5]
- bcm27xx/patches-6.12/950-0335-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch[5]

New kconfig symbol:
- GPU_BUDDY [6]

Obsolete kconfig symbol:
- DRM_LIB_RANDOM [6]

All other patches are automatically refreshed.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.101&id=cc92d8e5753da5d4e8fbc3a3a1742b1646492099
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.101&id=fa4e1dad10e78f96876784c3e1b5566da59e7d90
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.101&id=ff24b5075329f2f8d36a16cf156cf27458997660
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.101&id=3612dccaa22bcc75fd10ceb14aef60d693567cf3
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.101&id=c4657f5438fb8c2dfbe6e23b28f2a2bd5aaf8116
[6] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.101&id=1c44c262a0c2dfd083dc00308d6488d23b58b59e
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agoqualcommbe: disable kernel config symbol VIDEO_QCOM_IRIS
Shiji Yang [Mon, 10 Aug 2026 00:10:02 +0000 (08:10 +0800)] 
qualcommbe: disable kernel config symbol VIDEO_QCOM_IRIS

This symbol was introduced in the 6.18 LTS kernel, and we must
explicitly disable it to fix build halt.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24551
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agoairoha: configure network activity LEDs for Nokia XG-040G-MD 24673/head
Mikhail Zhilkin [Mon, 10 Aug 2026 16:19:23 +0000 (19:19 +0300)] 
airoha: configure network activity LEDs for Nokia XG-040G-MD

Set up network device LEDs for lan2, lan3, and lan4 interfaces on
the Nokia XG-040G-MD board to display network TX and RX activity.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24673
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agoramips: iptime,t5004: fix U-Boot environment size 24530/head
Myeongjae SONG [Tue, 4 Aug 2026 16:35:08 +0000 (01:35 +0900)] 
ramips: iptime,t5004: fix U-Boot environment size

The U-Boot environment data on the ipTIME T5004 occupies one
128 KiB NAND erase block.

The nvmem layout specified an environment size of 0x1000.
This caused CRC32 validation to fail and prevented the MAC
address cells from being created.

Set env-size to 0x20000 to match the U-Boot environment data
size used for CRC validation.

Fixes: 8dd95cc6b532 ("ramips: iptime,t5004: use nvmem for ubootenv")
Signed-off-by: Myeongjae SONG <devparlair@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/24530
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
2 days agomediatek: filogic: fix sysupgrade for Wavlink WL-WNT100X3 24684/head
Fil Dunsky [Wed, 12 Aug 2026 03:14:46 +0000 (06:14 +0300)] 
mediatek: filogic: fix sysupgrade for Wavlink WL-WNT100X3

The stock layout of the WL-WNT100X3 splits the SPI-NAND into
bl2/u-boot-env/factory/fip/ubi/hw and the sysupgrade image is a
sysupgrade-tar that has to be unpacked into the "ubi" partition.

The board was however added to the default_do_upgrade() case, which
writes the image to ${PART_NAME:-image}, i.e. to the "firmware" MTD
partition that does not exist on this device:

  find_mtd_index firmware -> []
  mtd: Could not open mtd device: firmware

mtd fails, do_stage2 exits before flashing anything and the board
reboots into the old firmware without a visible error, so every
OpenWrt-to-OpenWrt sysupgrade looks like a silent no-op. Only the
initial installation works, since that one is performed by the sysupgrade
of the vendor firmware.

Drop the entry so the board falls through to the generic
nand_do_upgrade() case with CI_UBIPART defaulting to "ubi", like the
identically partitioned WL-WN586X3B.

The WL-WNT100X3 (OpenWrt U-Boot layout) variant uses fit_do_upgrade()
and is not affected.

Fixes: 829d432ecda3 ("mediatek: add support for Wavlink WL-WNT100X3")
Signed-off-by: Fil Dunsky <filipp.dunsky@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24684
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agombedtls: update to 3.6.7 24131/head
Magnus Kroken [Tue, 11 Aug 2026 20:33:15 +0000 (22:33 +0200)] 
mbedtls: update to 3.6.7

This version fixes security issues and bugs.

Security fixes:
* Fix a side channel in RSA PKCS#1 v1.5 decryption. (CVE-2026-50587)
* Fix a bug where transcript-hash computation errors during TLS 1.2 extended master secret calculation could be ignored instead of causing the handshake to fail. (CVE-2026-50581)
* Fix a TLS 1.3 server-side error-handling bug affecting session ticket generation. (CVE-2026-50640)
* Fix renegotiation failing and potentially causing a buffer overflow in DTLS when badmac_limit is enabled. (CVE-2026-50713)
* Reject ChaCha20 operations that would make the 32-bit block counter wrap around, which could otherwise reuse keystream and compromise confidentiality. (CVE-2026-50584)
* Fixed a TLS 1.3 record-boundary validation issue that could allow unauthenticated plaintext data to be processed across a key change.
* Fix a possible buffer overflow in mbedtls_ecdh_calc_secret() (CVE-2026-35336)
* Fix a remote buffer overflow in (D)TLS with ECDHE-PSK cipher suites when CBC is disabled. (CVE-ID-50580)
* Fix a side channel in ECC computations that allows a powerful local attacker (typically, untrusted OS attacking a secure enclave) to fully recover long-term secret keys). (CVE-2026-54435)
* Fix a potential information disclosure in TLS 1.2 servers using session tickets. (CVE-2026-50586)
* Fix timing side channel in RSA key generation, prime generation and primality testing, on platforms where division is not constant-time.
* Fix a 1-byte buffer overread when parsing a malformed ECC public key in the PK module. (CVE-2026-50583)
* Fix an out-of-bounds read when parsing TLS 1.2 ECJPAKE ServerKeyExchange messages. (CVE-2026-50588)
* Fix a use-after-free/double-free risk in mbedtls_pkcs7_free() when reusing an mbedtls_pkcs7 context across parse -> free -> parse -> free cycles. (CVE-2026-50579)
* PKCS7 now rejects weak hash algorithms (RIPEMD160, MD5, SHA-1, SHA-224, SHA3-224) on signature verification.
* Improved documentation of mbedtls_ssl_conf_sig_algs() to emphasize that this function only sets signature algorithms that are enforced during TLS key exchange and not on certificate verification. (CVE-2026-54441)
* Ensure 'dtls_srtp_info' field from 'mbedtls_ssl_context' is properly zeroized when mbedtls_ssl_session_reset() is called. (CVE-2026-50585)
* Fix a bug where mbedtls_ssl_read() and mbedtls_ssl_write() could return 1 instead of an error code if the random generator failed when a server called these functions before the end of a TLS 1.3 handshake.
* Fix TLS 1.3 clients to reject a HelloRetryRequest whose selected group was not advertised in the original ClientHello. (CVE-2026-25832)
* Fix two bugs in the X.509 certificate parser that caused some inputs with a malformed basicConstraints extension to be accepted. (CVE-2026-49300)

Full release notes: https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-3.6.7

Remove backported upstream patches that are included in this release.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24131
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agorealtek: set power management mode 24550/head
Russell Senior [Mon, 3 Aug 2026 02:18:38 +0000 (19:18 -0700)] 
realtek: set power management mode

Discovered that EnGenius EWS2910P v1 appears to require a Set Power
Management Mode command for the port control to function.  Ensure
that the power management mode is set to dynamic power management
mode with priority. This should be safe for all gen1 and gen2 boards,
issue a warning if an error is detected.

Signed-off-by: Russell Senior <russell@personaltelco.net>
Link: https://github.com/openwrt/openwrt/pull/24550
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agobcm53xx: ea9200: use network LED trigger 22223/head
Rosen Penev [Thu, 6 Aug 2026 01:43:13 +0000 (18:43 -0700)] 
bcm53xx: ea9200: use network LED trigger

The LED controls the state of all wireless interfaces. Use the new
network LED trigger to control this.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22223
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agobcm53xx: backport various fixes
Rosen Penev [Sat, 28 Feb 2026 23:43:13 +0000 (15:43 -0800)] 
bcm53xx: backport various fixes

Several fixes made it upstream. Backport them.

Also add some local fixes.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22223
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agoramips: mt7621: add support for TP-Link ER605 v1 24331/head
Charles Joynson [Sat, 8 Aug 2026 04:50:30 +0000 (00:50 -0400)] 
ramips: mt7621: add support for TP-Link ER605 v1

This commit adds support for TP-Link ER605 v1. Like its successor the
ER605 v2, the MAC address can only be found in the tddp partition.

Hardware specifications:
- CPU: MediaTek MT7621DAT (880 MHz, 2 cores)
- CPU type: MIPS 1004Kc
- Flash: 16 MiB (GigaDevice GD25Q127CSIG)
- RAM: 128 MiB
- LAN speed: 1GbE
- LAN ports: 4
- WAN speed: 1GbE
- WAN ports: 1
- Serial: 4-pin header, unpopulated, 3.3V TTL, (115200 8N1)
- Power: 9 VDC, 0.85 A
- LEDs: Power (Green), System (Green)
- Button: RESET

Factory firmware (v1.2.0 Build 20220114 Rel.76871):
root@ER605:~# ubus call system board
{
"kernel": "3.10.108",
"hostname": "ER605",
"system": "MT7621",
"model": "mtk-apsoc-demo",
"release": {
"distribution": "OpenWrt",
"version": "Barrier Breaker",
"revision": "unknown",
"codename": "barrier_breaker",
"target": "ramips\/generic",
"description": "OpenWrt Barrier Breaker 14.07"
}
}

Factory partitions:
0x000000000000-0x000000040000 : "bootloader"
0x000000040000-0x000000070000 : "bootloader-fs"
0x000000070000-0x000000080000 : "extra-para"
0x000000080000-0x000000200000 : "kernel"
0x000000200000-0x000000df0000 : "rootfs"
0x000000df0000-0x000000e10000 : "panic-oops"
0x000000e10000-0x000000e20000 : "partition-table"
0x000000e20000-0x000000e30000 : "device-info"
0x000000e30000-0x000000e40000 : "support-list"
0x000000e40000-0x000000e50000 : "firmware-info"
0x000000e50000-0x000000e60000 : "tddp"
0x000000e60000-0x000000e80000 : "log"
0x000000e80000-0x000001000000 : "rootfs_data"
0x000000000000-0x000001000000 : "firmware"

New OpenWrt partitions:
...
0x000000080000-0x000000df0000 : "firmware"
...
0x000000e80000-0x000001000000 : "rootfs_data_back"

MAC addresses:
 - label/LAN = 'option macaddr' from factory tddp partition
 - WAN = label MAC + 1

Installation:
Split initramfs into 2 parts for writing to the kernel and rootfs
partitions on live device, leave http server up for sysupgrade.

dd if=initramfs-kernel.bin of=kernel-part.bin bs=64k count=24
dd if=initramfs-kernel.bin of=rootfs-part.bin bs=64k skip=24
md5sum kernel-part.bin rootfs-part.bin
python3 -m http.server -d . 8080

Downgrade to TP-Link firmware v1.3.1 or less if running v1.3.2.

From the web UI, open "System Tools" and select "Diagnostics".
Enable "Remote Assistance" and login as root.

tplink_label_mac=01:23:45:67:89:AB
tplink_username=admin
echo -n "$tplink_label_mac$tplink_username" | md5sum | cut -c1-16
ssh \
  -o "KexAlgorithms=+diffie-hellman-group1-sha1" \
  -o "HostKeyAlgorithms=+ssh-rsa" \
  root@192.168.0.1

Download partial initramfs binaries to /tmp and verify checksums match.

cd /tmp
wget http://192.168.0.20:8080/kernel-part.bin
wget http://192.168.0.20:8080/rootfs-part.bin
md5sum kernel-part.bin rootfs-part.bin

Write partial initramfs binaries to kernel and rootfs.

mtd -e kernel write kernel-part.bin kernel
mtd -r -e rootfs write rootfs-part.bin rootfs

Login to OpenWrt initramfs as root.

ssh root@192.168.1.1

Erase firmware partition and perform sysupgrade.

mtd erase firmware
sysupgrade -n -p http://192.168.1.111:8080/squashfs-sysupgrade.bin

Signed-off-by: Charles Joynson <ctjoynson@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24331
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agobase-files: add mtd_get_mac_uci_config()
Charles Joynson [Sat, 8 Aug 2026 04:40:01 +0000 (00:40 -0400)] 
base-files: add mtd_get_mac_uci_config()

Add mtd_get_mac_uci_config() for reading a MAC address from a UCI-style
config stored in an MTD partition. This is needed to support the
TP-Link ER605 v1; the existing UBI helper already covers the ER605 v2.
Also refactor common sed logic into a shared helper used by both
variants and drop the redundant cat pipe.

TP-Link ER605 v2 device support is unaffected. The one and only MAC
address on the tddp partition for v1/v2 is the label MAC address.

Signed-off-by: Charles Joynson <ctjoynson@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24331
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agokernel: backport quirk for Horaco SFP+ Copper module 24559/head
Aleksander Jan Bajkowski [Sun, 5 Jul 2026 15:39:39 +0000 (17:39 +0200)] 
kernel: backport quirk for Horaco SFP+ Copper module

Backport quirks for Horaco SFP+ Copper modules. This module support
RollBall protocol.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/24559
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agorealtek: rtl930x: add PoE support for Hasivo F1100WP-4SX-4XGT 24643/head
Lars Gierth [Sun, 9 Aug 2026 14:46:05 +0000 (16:46 +0200)] 
realtek: rtl930x: add PoE support for Hasivo F1100WP-4SX-4XGT

Manage the HS104 behind the STC8 MCU, register the LEDs, attach the PSE PIs.

Signed-off-by: Lars Gierth <larsg@systemli.org>
Link: https://github.com/openwrt/openwrt/pull/24643
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agorealtek: rtl930x: add STC8 MCU support for Hasivo F1100W/WP-4SX-4XGT
Lars Gierth [Sun, 9 Aug 2026 14:44:16 +0000 (16:44 +0200)] 
realtek: rtl930x: add STC8 MCU support for Hasivo F1100W/WP-4SX-4XGT

This MCU is present on most Hasivo devices and controls basic things
such as watchdog, sensor, and RTC if available.
On devices with PoE PSE support, it also controls the PSE chip and LEDs.

One funny detail is that while the watchdog is present on most Hasivo devices
and (unless armed) resets the whole device, here it only resets the PoE LEDs.
The PoE LEDs reset and blink twice every 75s, even if PoE is unmanaged or off.

Signed-off-by: Lars Gierth <larsg@systemli.org>
Link: https://github.com/openwrt/openwrt/pull/24643
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agorealtek: rtl930x: split PoE variant off of Hasivo F1100W-4SX-4XGT
Lars Gierth [Sun, 9 Aug 2026 14:10:25 +0000 (16:10 +0200)] 
realtek: rtl930x: split PoE variant off of Hasivo F1100W-4SX-4XGT

Now that there's the potential for PoE support on this device,
we make the PoE variant its own device, so that later commits can add
the respective device tree items.

While at it, be explicit about the real SoC in the root compatible.

Signed-off-by: Lars Gierth <larsg@systemli.org>
Link: https://github.com/openwrt/openwrt/pull/24643
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: SDG-8733A: reset the radio through pcie3 24352/head
Chad Monroe [Tue, 11 Aug 2026 03:02:00 +0000 (20:02 -0700)] 
mediatek: filogic: SDG-8733A: reset the radio through pcie3

GPIO 9 is the reset input of the MT7995 radio module, active low.
The old description used it as a PERST line on pcie0 with active
high polarity, so the port reset toggled the module reset at the
wrong time and with the wrong polarity.

Describe it as wifi-reset-gpios on pcie3, the port wired to the
module reset. The PCIe controller then releases the module from
reset before link training, with a 100 ms delay.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: limit USB to USB2
Chad Monroe [Tue, 11 Aug 2026 03:01:34 +0000 (20:01 -0700)] 
mediatek: filogic: mt-stuart: limit USB to USB2

USB3 SuperSpeed signaling interferes with the 6 GHz radio. Disable
the SuperSpeed port on ssusb1 with mediatek,u3p-dis-msk; the port
then runs at USB2 speed.

Stop enabling ssusb0 and its xs-phy. Nothing connects to them on
these boards.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: SDG-8733A: point label-mac-device at wan
Chad Monroe [Tue, 11 Aug 2026 03:01:17 +0000 (20:01 -0700)] 
mediatek: filogic: SDG-8733A: point label-mac-device at wan

The MAC address on the product label is the base MAC, mfginfo
cell 0. On this board gmac2 (wan) uses cell 0. The alias pointed
at gmac1 (lan), which uses cell 1, so the reported label MAC did
not match the label.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: SDG-8733A: describe the LAN LEDs per hardware
Chad Monroe [Tue, 11 Aug 2026 03:00:59 +0000 (20:00 -0700)] 
mediatek: filogic: SDG-8733A: describe the LAN LEDs per hardware

The board has three LAN LEDs: white on GPIO 59, amber on GPIO 60
and green on GPIO 68. The old description listed two GPIO LEDs
with swapped colors and drove the green LED from the internal
2.5G PHY.

Describe all three as GPIO LEDs and set the netdev triggers to
match: white 2.5G, green 1G, amber 100M. Drop the PHY LED node
and the LED pinctrl state: the PHY LED pad (2p5gbe_led0, pin 68)
now works as the green LED GPIO, so the PHY drives no LED.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: use in-band-status on usxgmii links
Chad Monroe [Tue, 11 Aug 2026 03:00:06 +0000 (20:00 -0700)] 
mediatek: filogic: mt-stuart: use in-band-status on usxgmii links

The USXGMII links to the AQR113C PHYs signal link state and rate
adaptation in-band. Set managed "in-band-status" so phylink tracks
the PCS state instead of a fixed link.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: drive fan from AQR113C temperature
Chad Monroe [Tue, 11 Aug 2026 02:59:44 +0000 (19:59 -0700)] 
mediatek: filogic: mt-stuart: drive fan from AQR113C temperature

The AQR113C PHYs run hot and sit away from the SoC sensor. Export
the PHY hwmon sensor as a thermal sensor and add a thermal zone per
AQR113C on all three boards. The zones drive the fan with trips at
108/104/100/90/80/40 C.

Set critical-action "reboot" so a runaway zone restarts the board
instead of an unclean thermal shutdown. Raise the trip hysteresis
from 2 C to 4 C to stop the fan from cycling near a trip point.
Stop passive polling; the zones use active cooling only.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: move AQR113C reset to MDIO bus level
Chad Monroe [Tue, 11 Aug 2026 02:57:56 +0000 (19:57 -0700)] 
mediatek: filogic: mt-stuart: move AQR113C reset to MDIO bus level

Each board wires one reset line that resets the AQR113C PHYs as a
group: GPIO 71 on SDG-8733/SDG-8734 and GPIO 62 on SDG-8733A.
Describe that line as the MDIO bus reset with the same assert and
deassert times.

Drop the per-PHY reset-gpios. On SDG-8733 the second AQR113C
claimed GPIO 62, which is not connected on that board.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: restructure SmartRG MT7988 device trees
Chad Monroe [Tue, 11 Aug 2026 02:56:59 +0000 (19:56 -0700)] 
mediatek: filogic: restructure SmartRG MT7988 device trees

Replace mt7988a-smartrg-mt-stuart.dtsi with layered dtsi files.
The existing 3 boards assemble from shared building blocks instead
of include-then-delete:

 * mt798x-smartrg-common.dtsi: thermal trip/cooling-map macros
 * mt798x-smartrg-factory.dtsi: eMMC factory/mfginfo nvmem layout
 * mt7988-smartrg-base.dtsi: PMIC, regulators, eMMC, ramoops,
   console, watchdog, reset button
 * mt7988-smartrg-sysled.dtsi: system LED controller and aliases
 * mt7988-smartrg-mt-stuart-gsw.dtsi: built-in switch as lan2-4
   with the per-port PHY LEDs
 * mt7988-smartrg-wifi-pcie3.dtsi / -wifi-mt7995.dtsi: radio second
   PCIe function and pcie0 radio wiring for SDG-8733A
 * mt7988a-smartrg-mt-stuart-phase1.dtsi plus per-model pair dtsi
   for SDG-8733 (AQR113C WAN) and SDG-8734 (SFP+ WAN)

No functional change is intended. Nodes for hardware that a board
does not have are no longer instantiated on that board: the
unstuffed WAN PHY on SDG-8734, unused pin groups per model, and
the PHY LED setup of the disabled switch on SDG-8733A.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: drop pci=pcie_bus_perf bootarg
Chad Monroe [Tue, 11 Aug 2026 02:49:49 +0000 (19:49 -0700)] 
mediatek: filogic: mt-stuart: drop pci=pcie_bus_perf bootarg

The parameter came from the vendor SDK. The default kernel MPS and
MRRS configuration works correctly on these boards. The parameter
gives no measured benefit.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: fix dtc warnings
Chad Monroe [Tue, 11 Aug 2026 02:49:32 +0000 (19:49 -0700)] 
mediatek: filogic: mt-stuart: fix dtc warnings

Rename the system LED children to led@1..led@4. The nodes have a
reg property, so dtc wants unit addresses. The sysled driver names
the LEDs from the label property, which does not change.

Remove #address-cells and #size-cells from the eMMC card@0 node.
The node has no children with a reg property.

No functional change.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agomediatek: filogic: mt-stuart: remove stale device tree nodes
Chad Monroe [Tue, 11 Aug 2026 02:48:56 +0000 (19:48 -0700)] 
mediatek: filogic: mt-stuart: remove stale device tree nodes

No Mt. Stuart model has SLIC voice hardware or SPI NAND flash.
Remove the SLIC gpio-exports and the spi0/spi_nand nodes.

Remove phy-connection-type where phy-mode gives the same value.

Remove the pcie1 pinctrl properties. They are identical to the
SoC defaults in mt7988a.dtsi.

No functional change.

Signed-off-by: Chad Monroe <chad@monroe.io>
Link: https://github.com/openwrt/openwrt/pull/24352
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agorealtek: dts: specify rtl9303 soc compatible on two Hasivo boards 24648/head
Andrew LaMarche [Sun, 9 Aug 2026 20:34:49 +0000 (20:34 +0000)] 
realtek: dts: specify rtl9303 soc compatible on two Hasivo boards

S1100W-8XGT-SE and S1100WP-8XGT-SE have realtek,rtl930x-soc in their
compatibles. Specify realtek,rtl9303-soc to be explicit.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24648
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
3 days agouboot-sifiveu: bump to 2026.04
Zoltan HERPAI [Fri, 7 Aug 2026 08:35:47 +0000 (08:35 +0000)] 
uboot-sifiveu: bump to 2026.04

Remove upstreamed patches and refresh remaining ones as required.

Compile-tested: sifiveu/*, d1/*
Runtime-tested: sifiveu/unleashed, sifiveu/unmatched, d1/nezha

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
3 days agoopensbi: bump to v1.9
Zoltan HERPAI [Fri, 7 Aug 2026 14:45:57 +0000 (14:45 +0000)] 
opensbi: bump to v1.9

While at it, move away from using dated builds to release tags.

Compile-tested: sifiveu/*, d1/*
Runtime-tested: sifiveu/unleashed, sifiveu/unmatched, d1/nezha

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
3 days agouboot-airoha: update an7583 patches 24646/head
Mikhail Kshevetskiy [Sun, 9 Aug 2026 18:39:30 +0000 (21:39 +0300)] 
uboot-airoha: update an7583 patches

The same patches were submitted to upstream U-Boot.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/24646
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agouboot-airoha: update pinctrl driver to match linux-7.3
Mikhail Kshevetskiy [Sun, 9 Aug 2026 18:25:48 +0000 (21:25 +0300)] 
uboot-airoha: update pinctrl driver to match linux-7.3

U-Boot airoha pinctrl code was synced with linux-pinctrl/for-next
(future linux-7.3) branch.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/24646
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agoairoha: an7581: dts: update number of available gpios
Mikhail Kshevetskiy [Sun, 9 Aug 2026 18:57:14 +0000 (21:57 +0300)] 
airoha: an7581: dts: update number of available gpios

AN7581 SoC have more GPIOs. PCIE reset pins can be muxed to gpio,
so we have 50 GPIOs instead of 47.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/24646
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agoairoha: update pinctrl driver to match linux-7.3
Mikhail Kshevetskiy [Sun, 9 Aug 2026 18:10:17 +0000 (21:10 +0300)] 
airoha: update pinctrl driver to match linux-7.3

Changes are based on linux-pinctrl/for-next (future linux-7.3) branch.
Existing pinctrl patches were adapted for upstream driver.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Link: https://github.com/openwrt/openwrt/pull/24646
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agoairoha: npu: load the firmware without the sysfs fallback 24593/head
Vitaliy Sochnev [Fri, 7 Aug 2026 10:09:49 +0000 (11:09 +0100)] 
airoha: npu: load the firmware without the sysfs fallback

The NPU driver maps a missing firmware file to -EPROBE_DEFER, so that it
can be retried once the rootfs carrying /lib/firmware is mounted. That
mapping holds only while request_firmware() reports -ENOENT, and it does
not when the sysfs fallback is in play: the request goes to a userspace
helper, blocks for the full 60 second loading_timeout and comes back as
-ETIMEDOUT, which dev_err_probe() then turns into a hard failure. The
board boots a minute slower and ends up with no NPU at all, so no
hardware flow offloading either.

Our own config disables FW_LOADER_USER_HELPER for the target, but that
is not a dependable guard: LEDS_LP55XX_COMMON selects it, so any build
that pulls in kmod-leds-lp55xx-common - every image built with
ALL_KMODS, snapshots included - gets it back, and generic's
FW_LOADER_USER_HELPER_FALLBACK=y then arms the fallback.

Add a patch switching the driver to request_firmware_direct(), which
sets FW_OPT_NOFALLBACK_SYSFS and so reports -ENOENT whatever the
firmware loader is configured to do.

request_firmware_direct() also sets FW_OPT_NO_WARN, so the "Direct
firmware load for airoha/en7581_npu_rv32.bin failed with error -2"
line goes away together with the fallback. There is no variant that
skips the fallback but keeps the warning. While the probe is being
deferred that message was noise, but on a board where the firmware
package is genuinely missing it was the only hint naming the file.

Measured on a Nokia XG-040G-MD with FW_LOADER_USER_HELPER=y and
FW_LOADER_USER_HELPER_FALLBACK=y forced on, the two images differing
only by this patch:

  without:  2.477 fallback -> 64.555 -ETIMEDOUT -> probe failed -110,
            preinit at 69.6s, NPU unbound
  with:     no fallback and no warning at all, NPU fw version 1456.62
            at 3.665s, preinit at 7.6s

Note the fallback is still compiled in and forced in both cases; the
patch does not disable it, it only keeps the driver from falling into
it.

The patch carries Fixes: 23290c7bc190 ("net: airoha: Introduce Airoha
NPU support") and Cc: stable@vger.kernel.org, so it can be dropped once
it lands upstream and reaches us through a stable update.

Link: https://lore.kernel.org/netdev/20260807024125.434055-1-sochnev.v.74@gmail.com/
Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24593
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agoairoha: an7581: reserve NPU Wi-Fi regions only on Wi-Fi boards
Vitaliy Sochnev [Fri, 7 Aug 2026 10:09:40 +0000 (11:09 +0100)] 
airoha: an7581: reserve NPU Wi-Fi regions only on Wi-Fi boards

an7581.dtsi reserves five no-map regions for the NPU and hands all of
them to the npu node. Four of them - pkt, tx-pkt, tx-bufid and ba,
110 MiB plus 26 KiB - are consumed only by
airoha_npu_wlan_init_memory(), which the mt76 NPU layer calls when it
attaches an Airoha-offloaded Wi-Fi chip. To run its firmware and to
offload flows the NPU needs the binary region alone, and the driver
looks that one up by index rather than by name.

Boards that bind no Wi-Fi chip to the NPU therefore lose 110 MiB of
DRAM for nothing, and they lose it whether or not the NPU probes at
all: the memory is carved out by the reserved-memory node itself. On
AN7581 that is both Nokia XG-040G-MD variants. an7583.dtsi already does
this correctly and reserves npu_binary only.

Move the four regions into a new an7581-npu-wlan.dtsi and include it
from the two NPU overlays the Wi-Fi boards already pull in, so that the
regions and the full memory-region list follow the Wi-Fi chip instead
of the SoC.

an7581-evb includes the new overlay directly instead. It declares two
mediatek,mt76 nodes with airoha,npu and enables the NPU, but pins no
particular chip because the card goes into a PCIe slot, so it is the
one board using the offload that pulls in neither NPU overlay.

Keep the ba region on all four Wi-Fi boards even though it is described
as MT7996-only. It is already optional in the driver, but narrowing it
down to MT7996 would change behaviour on Kite, so leave that for a
separate change.

Verified by building the device trees before and after: the DTBs of
an7581-evb, an7581-evb-emmc-eagle, an7581-evb-emmc-kite,
an7581-nokia-valyrian and an7581-w1700k-ubi are byte for byte
identical, while an7581-nokia_xg-040g-md and an7581-nokia_xg-040g-md-ubi
each shrink by 376 bytes and lose the four regions.

Tested on a Nokia XG-040G-MD. Reserved memory drops from 197296K to
84400K and MemTotal rises from 325900 kB to 438736 kB, 110 MiB given
back. The NPU still comes up on the binary region alone and reports
"NPU fw version: 1456.62", so dropping the four regions costs the board
neither the NPU nor its flow offloading. Not tested on Wi-Fi hardware,
where the argument rests on the DTBs being unchanged.

Signed-off-by: Vitaliy Sochnev <sochnev.v.74@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24593
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 days agoarm-trusted-firmware-airoha: sync an7581-bl31 BUILD_DEVICES with bl2 24626/head
xiao bo [Sun, 9 Aug 2026 14:44:59 +0000 (22:44 +0800)] 
arm-trusted-firmware-airoha: sync an7581-bl31 BUILD_DEVICES with bl2

an7581-bl31 BUILD_DEVICES list was incomplete and missed:
 - airoha_an7581-evb-emmc-eagle
 - airoha_an7581-evb-emmc-kite
 - nokia_valyrian
 - nokia_xg-040g-md-ubi

These devices are present in an7581-bl2 but missing for bl31.
When building these targets, an7581‑bl31 package is never built,
causes FIP failure "fopen ...an7581‑bl31.lzma: No such file or directory".

Sync an7581‑bl31 BUILD_DEVICES to exactly match an7581‑bl2.

Fixes: https://github.com/openwrt/openwrt/commit/467c5b90ba1140dcdabc2e2e203c1d91fca9963e
Signed-off-by: xiao bo <peterwillcn@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24626
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 days agoairoha: fix AN7581 chainloader U-Boot filename
Robert Marko [Sun, 9 Aug 2026 10:58:49 +0000 (12:58 +0200)] 
airoha: fix AN7581 chainloader U-Boot filename

The uboot-airoha package now stages compressed U-Boot images using the
u-boot.lzma suffix. The AN7581 chainloader still looks for the previous
u-boot.bin.lzma filename and consequently falls back to a nonexistent
uncompressed image.

Use the staged u-boot.lzma filename when generating the chainloader FIT.

Fixes: 94a21b3fe9bd ("uboot-airoha: move FIP generation to target and enable autoselection")
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
5 days agoairoha: fix U-Boot artifacts for AN7581 eMMC boards
Robert Marko [Sun, 9 Aug 2026 10:50:08 +0000 (12:50 +0200)] 
airoha: fix U-Boot artifacts for AN7581 eMMC boards

The AN7581 eMMC Eagle and Kite boards use the shared an7581_rfb
U-Boot build, which produces artifacts with the rfb suffix. The image
recipes instead look for nonexistent per-device rfb-emmc-eagle and
rfb-emmc-kite artifacts.

Use the shared rfb artifacts for both boards so their preloader and
BL31/U-Boot FIP artifacts can be generated.

Fixes: 94a21b3fe9bd ("uboot-airoha: move FIP generation to target and enable autoselection")
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
5 days agouboot-airoha: use separate DTB for Nokia XG-040G-MD
Robert Marko [Sun, 9 Aug 2026 10:33:43 +0000 (12:33 +0200)] 
uboot-airoha: use separate DTB for Nokia XG-040G-MD

CONFIG_OF_EMBED is intended for debugging and is not recommended for
production devices. Remove it from the Nokia XG-040G-MD defconfig so
Kconfig selects CONFIG_OF_SEPARATE, consistent with the other Airoha
boards.

The existing default device tree and u-boot.bin build target ensure that
the separate DTB is built and appended to the deployable U-Boot image.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
5 days agoarm-trusted-firmware-airoha: fix BL2 packing on Debian 11
Robert Marko [Sun, 9 Aug 2026 09:21:46 +0000 (11:21 +0200)] 
arm-trusted-firmware-airoha: fix BL2 packing on Debian 11

Debian 11 ships coreutils 8.32, whose cksum does not support the
-a crc32b option. This leaves crc empty and causes the subsequent shell
arithmetic expression to fail.

Use Python's built-in binascii.crc32 implementation instead. Python 3 is
already required by the OpenWrt build system and produces the same CRC-32
value before the existing final XOR.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
6 days agorealtek: dts: add missing soc compatible to two Hasivo boards 24615/head
Carlo Szelinsky [Sat, 8 Aug 2026 10:02:28 +0000 (12:02 +0200)] 
realtek: dts: add missing soc compatible to two Hasivo boards

Both boards only list their board compatible in the root node, so they
do not match the realtek MIPS machine and hang early during boot.

Fixes: 7cc31af7bdd4 ("realtek: convert to generic machine initialization")
Signed-off-by: Carlo Szelinsky <github@szelinsky.de>
Link: https://github.com/openwrt/openwrt/pull/24615
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
6 days agouboot-airoha: move FIP generation to target and enable autoselection
Christian Marangi [Thu, 16 Jul 2026 18:38:44 +0000 (20:38 +0200)] 
uboot-airoha: move FIP generation to target and enable autoselection

Move FIP handling to target now that we compile ATF. This is to have always
in sync new ATF and new U-Boot if one of the 2 is already compiled.

Also add HIDDEN ops to enable autoselection of the U-Boot for the required
target. This is needed to prevent user to deselect the U-Boot package
causing failure on ARTIFACTS generation.

Drop precompiled BL2 and BL31 as they can be now compiled from source.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24257
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agopackages/boot: add arm-trusted-firmware-airoha
Christian Marangi [Thu, 16 Jul 2026 18:13:35 +0000 (20:13 +0200)] 
packages/boot: add arm-trusted-firmware-airoha

Add support for compiling Airoha ATF, based on a modified version of the
TF-A based on 2.10.

The package will clone the base TF-A and apply the modified source and
pre-compiled objects (DDR calibration, eFUSE handling, TX/RX path...) to
correctly compile.

An helper script is added to implement the same format used for special BL2
handling. BL2 is composed of 3 sub-phase with a initial BL21, a BL22 that
loads a LZMA decompressor and BL23 that actually calibrate and loads BL31
ATF.

Also a special flash_table is used to handle SPI-NAND externally to the
BL2, a special Host target is added for that.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24257
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agoairoha: add missing CONFIG_AIROHA_CPU_PM_DOMAIN
Daniel Schwierzeck [Fri, 7 Aug 2026 11:30:45 +0000 (13:30 +0200)] 
airoha: add missing CONFIG_AIROHA_CPU_PM_DOMAIN

The kernel config refresh done with commit
ada7ded disabled the Airoha PM Domain driver
due to the broken Kconfig dependency fixed with an earlier commit.

Add the missing symbol to enable the driver again. Also do a another
kernel config refresh to resolve some dependent PM domain symbols.

Fixes: ada7ded ("airoha: an7583: refresh kernel config")
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
6 days agoairoha: an7581: add airoha,chip-scu phandle to scuclk node
Daniel Schwierzeck [Tue, 7 Jul 2026 15:35:17 +0000 (17:35 +0200)] 
airoha: an7581: add airoha,chip-scu phandle to scuclk node

The clk-en7523 driver tries to look up the chip-scu regmap via the
"airoha,chip-scu" phandle first. If absent, it falls back to a
compatible-based lookup with syscon_regmap_lookup_by_compatible().

The AN7583 DTSI already had the phandle but AN7581 did not, relying
on the fallback instead. Add it so the DT explicitly describes the
connection and both platforms use the same lookup path.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
6 days agoairoha: fix cpufreq probe failure
Daniel Schwierzeck [Wed, 8 Jul 2026 13:43:44 +0000 (15:43 +0200)] 
airoha: fix cpufreq probe failure

dev_pm_domain_attach_list() returns the number of attached PM domains
on success (a positive count), or a negative error code on failure.
The airoha-cpufreq driver checks 'if (ret)' which treats a successful
attachment as an error.

Fix by checking 'if (ret < 0)' like all other users of this API.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
6 days agoairoha: make PM domain driver working for AN7583
Daniel Schwierzeck [Fri, 17 Jul 2026 09:26:45 +0000 (11:26 +0200)] 
airoha: make PM domain driver working for AN7583

Add SoC compatible for AN7583 to PM domain driver (the cpufreq driver
already has it).

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
6 days agoairoha: fix Kconfig dependency issue with PM Domain driver
Daniel Schwierzeck [Wed, 8 Jul 2026 12:08:09 +0000 (14:08 +0200)] 
airoha: fix Kconfig dependency issue with PM Domain driver

The AIROHA_CPU_PM_DOMAIN option was added inside the MediaTek PM Domains
menu, which depends on ARCH_MEDIATEK || COMPILE_TEST. Since Airoha
platforms use ARCH_AIROHA, the menu is invisible during kernel
configuration, silently dropping AIROHA_CPU_PM_DOMAIN. This breaks
running `make kernel_menuconfig`.

Add ARCH_AIROHA to the menu dependency so that this option and its
dependencies (PM_GENERIC_DOMAINS, PM_GENERIC_DOMAINS_OF) remain
enabled on Airoha targets.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
7 days agorealtek: board: some family check cleanups 24588/head
Rustam Adilov [Thu, 6 Aug 2026 15:41:58 +0000 (20:41 +0500)] 
realtek: board: some family check cleanups

The prom initialization is a bit of a mess now with all these
model and soc family checks. And realtek_read_model() function
is the worst offender of all as it goes through all of the model
info register from different SoCs just to read details from one
of them.

We can make use of the .data property in realtek_of_match to
clean things up so that each soc family has its own way of
initialization and reading model details.

Create a struct that will be used for that and add all of the
soc data structs for all chip families.

With all that, remove realtek_read_model() function and most
of the soc_info.family checks in various functions.

In addition, add the rtl960x compatibles along as well so that
rtl960x model info details has somewhere to be used. RTL8198D
is also added as it is part of RTL9607C family.

Signed-off-by: Rustam Adilov <adilov@tutamail.com>
Link: https://github.com/openwrt/openwrt/pull/24588
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
7 days agorealtek: dts: fix up the wrong soc compatibles
Rustam Adilov [Fri, 7 Aug 2026 15:56:36 +0000 (20:56 +0500)] 
realtek: dts: fix up the wrong soc compatibles

Some rtl9302 based boards use the realtek,rtl838x-soc compatible
in their device tree instead of the correct realtek,rtl9302-soc.

This is also the case for main rtl931x and rtl930x device tree files.

In preperation for utilizing device data in the board-realtek, fix
this up now so that these boards don't end up breaking due to incorrect
prom initialization caused by rtl838x-soc compatible.

Signed-off-by: Rustam Adilov <adilov@tutamail.com>
Link: https://github.com/openwrt/openwrt/pull/24588
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
7 days agogeneric: 6.18: disable CONFIG_SND_SOC_AN7581
Robert Marko [Fri, 7 Aug 2026 17:24:09 +0000 (19:24 +0200)] 
generic: 6.18: disable CONFIG_SND_SOC_AN7581

Instead of putting in the target config where each refresh drops it,
lets disable it in the generic config.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 days agoairoha: an7583: fix ethernet breakage on Nokia XG-040G-MF 24606/head
Mikhail Zhilkin [Fri, 7 Aug 2026 11:25:47 +0000 (14:25 +0300)] 
airoha: an7583: fix ethernet breakage on Nokia XG-040G-MF

Recent upstream cleanups moved switch port labels to the board level and
disabled switch ports/PHYs by default on the AN7583 SoC dtsi. This broke
ethernet on the Nokia XG-040G-MF since its board DTS was not updated to
explicitly configure and enable them.

Fix this by explicitly enabling gsw_port2-4 along with their respective
PHYs and restoring the "lan2", "lan3", and "lan4" port labels.

Fixes: ce55cdde26a9 ("airoha: an7583: move the switch port label from soc-level to board-level")
Fixes: d2698d325b68 ("airoha: an7583: disable all switch ports and PHYs by default")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24606
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agozynq: enable writable MMC on Antminer S9
Zoltan HERPAI [Fri, 7 Aug 2026 16:12:09 +0000 (16:12 +0000)] 
zynq: enable writable MMC on Antminer S9

Disable write-protection on sdhci0, similar to the upstream
U-boot DTS. This also enables (obviously) the working overlayfs.

Link: https://github.com/openwrt/openwrt/issues/24602
Fixes: e050bb7946 ("zynq: add Bitmain Antminer S9 control board support")
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 days agoairoha: pinctrl: fix AN7583 eMMC pinmux
Robert Marko [Fri, 7 Aug 2026 11:47:57 +0000 (13:47 +0200)] 
airoha: pinctrl: fix AN7583 eMMC pinmux

The SCU IOMUX reset puts AN7583 pins 45-47 into GPIO mode. These pins
are shared with eMMC, but the generic eMMC function group only enables
the eMMC mode bit and leaves the GPIO overrides active, preventing the
card from initializing.

Add an AN7583-specific eMMC function group that also clears the GPIO
mode bits for the shared pins.

Fixes: d0110a25ed ("airoha: add pinctrl fixes for AN7581 and AN7583")
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 days agoairoha: an7581/7583: build-in I2C support
Robert Marko [Fri, 7 Aug 2026 10:49:59 +0000 (12:49 +0200)] 
airoha: an7581/7583: build-in I2C support

There is no reason to add a custom kmod which is not even an7581
specific as its just the regular Mediatek MT7621 I2C driver.

So, simply enable the driver in kernel configs, drop the inclusion
per-board and remove the kmod definition.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 days agoairoha: an7581: refresh config
Robert Marko [Fri, 7 Aug 2026 10:47:43 +0000 (12:47 +0200)] 
airoha: an7581: refresh config

Refresh the an7581 kernel config by running:
make kernel_menuconfig CONFIG_TARGET=subtarget

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 days agoairoha: an7583: refresh config
Robert Marko [Mon, 3 Aug 2026 11:05:18 +0000 (13:05 +0200)] 
airoha: an7583: refresh config

Refresh the kernel config via kernel_menuconfig CONFIG_TARGET=subtarget.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 days agokernel: fix stale HIFIBERRY_STUDIO symbol, add TOUCHSCREEN_ST7123 24275/head
Joshua Covington [Sun, 2 Aug 2026 11:30:03 +0000 (11:30 +0000)] 
kernel: fix stale HIFIBERRY_STUDIO symbol, add TOUCHSCREEN_ST7123

The Kconfig symbol backing the HiFiBerry Studio driver was renamed
from SND_BCM2708_SOC_HIFIBERRY_STUDIO_DAC8X to
SND_BCM2708_SOC_HIFIBERRY_STUDIO. Update to the new symbol name.

Also add the new CONFIG_TOUCHSCREEN_ST7123 symbol, disabled by
default, to the generic config.

Signed-off-by: Joshua Covington <joshuacov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24275
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
7 days agobcm27xx: drop dwcmshc_remove() timeout_clk disable
Joshua Covington [Sun, 2 Aug 2026 11:18:40 +0000 (11:18 +0000)] 
bcm27xx: drop dwcmshc_remove() timeout_clk disable

The quilt rebase of
0299-mmc-sdhci-of-dwcmshc-define-sdio-timeout-clocks.patch matched
the wrong occurrence of the two clk_disable_unprepare() calls for
pltfm_host->clk and priv->bus_clk, which appear both in
dwcmshc_probe()'s error path and in dwcmshc_remove(). This added a
clk_disable_unprepare(pltfm_host->timeout_clk) call inside
dwcmshc_remove() that is present in neither mainline Linux nor
raspberrypi/linux's rpi-6.18.y.

Drop it for now rather than carry an unverified addition. If it
turns out timeout_clk does need disabling on remove, it can be
reinstated with a clear rationale.

Fixes: 7105bec48f27 ("kernel: bump 6.18 to 6.18.40")
See: https://github.com/openwrt/openwrt/pull/24419

Signed-off-by: Joshua Covington <joshuacov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24275
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
7 days agobcm27xx: update patches up to Git HEAD (2026-08-02)
Joshua Covington [Sun, 2 Aug 2026 12:03:42 +0000 (12:03 +0000)] 
bcm27xx: update patches up to Git HEAD (2026-08-02)

These patches were generated from:
https://github.com/raspberrypi/linux/commits/rpi-6.18.y
Patches were generated from the diff between linux kernel branch linux-6.18.y
and rpi-6.18.y from raspberry pi kernel source:

git format-patch -N linux-6.18.y..rpi-6.18.y (HEAD)
(HEAD -> 825dba6c63eeb40a62699d1f8a4aa3f02b0eaf49) as of 20260802
"Commit: pinctrl: bcm2835: Enable strict pinmux mode"

Exceptions:
- github workflow patches
- applied and reverted patches
- README patches
- (def)configs
- patches merged upstream

Patches refreshed against current OpenWrt-kernel.

Signed-off-by: Joshua Covington <joshuacov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24275
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
7 days agoairoha: an7583: remove SFP nodes from SoC DTSI 24264/head
Daniel Schwierzeck [Tue, 30 Jun 2026 12:56:16 +0000 (14:56 +0200)] 
airoha: an7583: remove SFP nodes from SoC DTSI

SFP nodes are board-specific and do not belong in the SoC-level DTSI.
Remove them entirely since the AN7583 EVB boards do not reference them.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24264
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoairoha: an7583: correct LED node names
Daniel Schwierzeck [Tue, 30 Jun 2026 12:56:16 +0000 (14:56 +0200)] 
airoha: an7583: correct LED node names

Use the standard 'led' node name for GPIO LEDs as required by the
devicetree specification.

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
[ adapted from commit f5bf8c2b9482 ("airoha: correct led nodename") ]
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24264
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoairoha: an7583: move the switch port label from soc-level to board-level
Daniel Schwierzeck [Tue, 30 Jun 2026 12:56:16 +0000 (14:56 +0200)] 
airoha: an7583: move the switch port label from soc-level to board-level

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

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
[ adapted from commit e2f7ad08c765 ("airoha: move the switch port label from soc-level to ...-") ]
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24264
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agoairoha: an7583: disable all switch ports and PHYs by default
Daniel Schwierzeck [Tue, 30 Jun 2026 12:56:16 +0000 (14:56 +0200)] 
airoha: an7583: disable all switch ports and PHYs by default

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

Signed-off-by: Ziyang Huang <hzyitc@outlook.com>
[ adapted from commit 007aa5a51ce8 ("airoha: disable all switch port and phy by default") ]
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24264
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agomediatek: add support Teralink TL3020 24518/head
Fil Dunsky [Fri, 12 Jun 2026 18:15:27 +0000 (21:15 +0300)] 
mediatek: add support Teralink TL3020

This commit adds support for Teralink TL3020 256mb wireless router.

Specification
-------------
- SoC       : MediaTek MT7981B dual-core ARM Cortex-A53
- RAM       : DDR3 256 MiB (ESMT M15T2G16128A, DDR3-1866)
- Flash     : SPI-NAND 256 MiB (Winbond W25M02GV)
- WLAN      : MediaTek MT7976 2.4/5 GHz Wi-Fi 6
- Ethernet  : MediaTek MT7531 switch, 1x WAN + 3x LAN 10/100/1000 Mbps
              (2.5GbE uplink via gmac0)
- USB       : 1x USB 2.0 Type-A (power enable on GPIO 14)
- Buttons   : WPS, Reset
- LEDs      : 7x blue, 1x red
- UART      : 4-pin header on PCB
  - assignment  : 3.3V, GND, TX, RX
  - settings    : 115200n8
- Power     : 12 VDC, 1.5 A (barrel jack)

MAC addresses
-------------
EEPROM MAC is same for all the devices, but there is a `config2` partition
with unique MAC addresses:

| Interface | MAC source                                 |
|-----------|--------------------------------------------|
| LAN       | config2, offset 0x707 (ASCII, "lanmac")    |
| WAN       | config2, offset 0x787 (ASCII, "wanmac")    |
| WLAN 2.4G | config2, offset 0x68a (ASCII, "wifi2gmac") |
| WLAN 5G   | config2, offset 0x60a (ASCII, "wifi5gmac") |

The LAN MAC (gmac0) is the one printed on the device label.

Installation
------------
Factory bootloader is locked to 64mb partition layout, so OpenWrt U-Boot
has to be flashed first. Steps 1, 2 and 4 are run from a shell on the
stock firmware, where the 'bl2' and 'fip' partitions are writable - in
OpenWrt they are read-only, so the procedure cannot be repeated from
OpenWrt. Back up both partitions before overwriting them:

    mtd read bl2 /tmp/bl2.bin
    mtd read fip /tmp/fip.bin

1. Upload OpenWrt 'bl31-uboot.fip' and 'preloader.bin' images to the /tmp
   dir of the router using scp protocol
2. Write fip and bl2 (replace bootloader):

    mtd write /tmp/openwrt-mediatek-filogic-teralink_tl3020-256mb-bl31-uboot.fip fip
    mtd write /tmp/openwrt-mediatek-filogic-teralink_tl3020-256mb-preloader.bin bl2

3. Place OpenWrt
   'openwrt-mediatek-filogic-teralink_tl3020-256mb-initramfs-recovery.itb'
   image on the tftp server (IP: 192.168.1.254)
4. Erase 'ubi' partition and reboot the router:

    mtd erase ubi
    reboot

5. U-Boot automatically boots the OpenWrt recovery image from the tftp
   server to the RAM
6. Upload OpenWrt
   'openwrt-mediatek-filogic-teralink_tl3020-256mb-squashfs-sysupgrade.itb'
   image to the /tmp dir of the router (IP: 192.168.1.1) using scp
   protocol
7. Connect to the router using ssh and run:

    ubidetach -p /dev/mtd5; ubiformat /dev/mtd5 -y; ubiattach -p /dev/mtd5
    ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB
    ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB
    sysupgrade -n openwrt-mediatek-filogic-teralink_tl3020-256mb-squashfs-sysupgrade.itb

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

Reverting to stock firmware requires writing the 'bl2' and 'fip' backups
taken above back with 'mtd write', then flashing the stock image; without
those backups there is no way back, because the stock bootloader cannot
be downloaded from the vendor.

Signed-off-by: Fil Dunsky <filipp.dunsky@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/24518
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
7 days agoramips: mt7530: compile swconfig code conditionally 24574/head
Mieczyslaw Nalewaj [Wed, 5 Aug 2026 05:38:51 +0000 (07:38 +0200)] 
ramips: mt7530: compile swconfig code conditionally

Wrap all swconfig-specific code in mt7530.c with #if IS_ENABLED(CONFIG_SWCONFIG),
including struct switch_dev, the vlan/port mapping tables and all
switch_dev_ops callbacks. Register access helpers (mt7530_r32/w32), the
PSC/HWTRAP definitions, and the small set of swconfig-only register
macros and MIB tables further up the file remain unconditional - the
latter two are unused-but-harmless when swconfig is disabled and are
left alone to keep the diff focused.

When swconfig is not compiled in, the driver performs only minimal
hardware init (disables MAC learning on all ports, applies the HWTRAP
fixup) and skips switch registration, mirroring the existing behaviour
of the "mediatek,no-swconfig" device tree property. This removes the
need for that property when building DSA-only images. The property is
still honoured whenever CONFIG_SWCONFIG is enabled (built-in or as a module).

A distinct log message is used for the compile-time case, to
distinguish it from the runtime "mediatek,no-swconfig" case in dmesg.
Also switch the existing runtime "swconfig disabled" message from
pr_info() to dev_info(), changing its dmesg prefix from "mt7620: " /
"mt7530: " to the device's own prefix.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/24574
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>