openwrt/openwrt.git
11 days agorealtek: ethernet: Avoid usage of unsafe strcpy
Sven Eckelmann [Sun, 23 Nov 2025 14:10:41 +0000 (15:10 +0100)]
realtek: ethernet: Avoid usage of unsafe strcpy

strcpy doesn't check the length of the destination buffer. And strlcpy
would not make sure to null-terminate the destination buffer.

Even when it is clear that this string will fit in the currrent buffer, it
is just best practice to avoid strcpy.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: dsa: Avoid misleading 'case' indentation
Sven Eckelmann [Sun, 23 Nov 2025 14:07:28 +0000 (15:07 +0100)]
realtek: dsa: Avoid misleading 'case' indentation

The case statements should be at the same indentation level as the switch.
Having different levels makes it harder to spot where the next case starts.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: pcs: Use "unused" attribute helper
Sven Eckelmann [Sun, 23 Nov 2025 14:01:14 +0000 (15:01 +0100)]
realtek: pcs: Use "unused" attribute helper

In the Linux kernel, it is preferred not to use compiler specific
attributes but instead utilize the kernel specific helpers.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: pcs: Drop return on end of void functions
Sven Eckelmann [Sun, 23 Nov 2025 13:54:27 +0000 (14:54 +0100)]
realtek: pcs: Drop return on end of void functions

There is nothing to return from a void function. And it doesn't change the
execution flow. The return at the end of a void function is therefore just
a NOP.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: dsa: Drop extra space before printed newline
Sven Eckelmann [Sun, 23 Nov 2025 13:52:22 +0000 (14:52 +0100)]
realtek: dsa: Drop extra space before printed newline

The white space is not visibible when it is printed. It might have been
added by accident to the format string.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Avoid line continuations in quoted strings
Sven Eckelmann [Sun, 23 Nov 2025 13:44:11 +0000 (14:44 +0100)]
realtek: Avoid line continuations in quoted strings

It is preferred to have the whole quoted string on a single line to make it
easier to find these lines in the source code (while grep'ing). And since
these quotes are inside  a string, they will also add unwanted whitespaces.

At the same time, add the missing newine at the end of the `pr_debug`
lines.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: mdio: Drop extern declaration for internal function
Sven Eckelmann [Sun, 23 Nov 2025 13:31:12 +0000 (14:31 +0100)]
realtek: mdio: Drop extern declaration for internal function

There is no external component using these functions and these functions
are local to the current translation unit. These functions can therefore be
declared static.

The currently unused *_field functions were kept because they might be used
in the future.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Keep extern declaration in headers
Sven Eckelmann [Sun, 23 Nov 2025 13:12:52 +0000 (14:12 +0100)]
realtek: Keep extern declaration in headers

The common declarations should not be spread around in different source
files but kept inside the header files. This is unfortunately currently not
the best place to store them because soc_info is actually from non-DSA
code. But it is at least better than having them in diffent source files.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Fix block comment style
Sven Eckelmann [Sun, 23 Nov 2025 12:23:52 +0000 (13:23 +0100)]
realtek: Fix block comment style

In net code, it is preferred to have block comments which

* either are one line: `/* ... */`
* multiple lines with:
  - starting with the first comment line directly: `/* ...`
  - each line is intended with the first asterisk: ` * ...`
  - the last line is just the end of the comment:  ` */`

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Avoid braces around single statement blocks
Sven Eckelmann [Sun, 23 Nov 2025 12:17:31 +0000 (13:17 +0100)]
realtek: Avoid braces around single statement blocks

The Linux kernel coding style prefers not to use braces around blocks which
are only one statement long.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Fix order of "static" + "inline" keywords
Sven Eckelmann [Sun, 23 Nov 2025 12:11:17 +0000 (13:11 +0100)]
realtek: Fix order of "static" + "inline" keywords

THe correct order (which the rest of the code is using) is "static inline".

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Drop out-of-memory messages
Sven Eckelmann [Sun, 23 Nov 2025 11:59:54 +0000 (12:59 +0100)]
realtek: Drop out-of-memory messages

The kernel already complains loud enough to inform about an out-of-memory
situation. It is recommended not to add extra logging for *alloc errors.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Fix SPDX license lines in headers
Sven Eckelmann [Sun, 23 Nov 2025 11:57:49 +0000 (12:57 +0100)]
realtek: Fix SPDX license lines in headers

Headers must use block-style comments to avoid problems with non-C
programming languages which try to use this header file.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Remove extern from function declarations
Sven Eckelmann [Sun, 23 Nov 2025 11:49:24 +0000 (12:49 +0100)]
realtek: Remove extern from function declarations

In contrast to variables, functions don't need extern declarations. It is
also preferred in the kernel not to use extern in front of function
declarations.

The extern+static parts in clk-rtl83xx.c were skipped because they are a
little bit unexpected ("extern *_dram_set_rate" are never used, "static
_sram_set_rate" are used but should from the C code perspective always be
NULL). This is left for an interested reader with the correct test HW and
some interests to dig in the code from commit 4850bd887c3a ("realtek: add
RTL83XX clock driver") for the *_dram_set_rate -> *_sram_set_rate
relocation and how these SRAM function pointers are set in this translation
unit.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Enclose complex macros in parentheses
Sven Eckelmann [Sun, 23 Nov 2025 11:43:28 +0000 (12:43 +0100)]
realtek: Enclose complex macros in parentheses

The macros will be inserted as is by the pre-compiler into places which
uses them. This can cause weird effects because this can break the syntax
or the ordering of operations. Just adding parentheses can avoid a lot of
these unexpected effects.

(for even more complex, multi-expression macros, `do {...} while (0)` is
required).

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: Prefer linux/* includes over asm/* ones
Sven Eckelmann [Sun, 23 Nov 2025 11:37:20 +0000 (12:37 +0100)]
realtek: Prefer linux/* includes over asm/* ones

It is preferred in the Linux kernel to include the "normal" linux/*
include files instead of the asm includes files when available.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20906
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agokernel: bump 6.12 to 6.12.59
John Audia [Mon, 24 Nov 2025 10:30:24 +0000 (05:30 -0500)]
kernel: bump 6.12 to 6.12.59

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

All patches automatically rebased.

Build system: x86/64
Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64-glibc
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64-glibc (Intel N150)

Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20916
Signed-off-by: Hauke Mehrtens <[email protected]>
11 days agorealtek: dsa: Build check size of drop counter names
Sven Eckelmann [Mon, 24 Nov 2025 07:54:30 +0000 (08:54 +0100)]
realtek: dsa: Build check size of drop counter names

The commit 1cfd45ae0bad ("realtek: Add debugfs support for RTL9300") caused
previously an out of bounds access on the array holding the names of drop
counters (and incorrect names in the output) fur RTL839x because of a
missing comma. To avoid such situation in the future, calculate the size of
the array during compilation. And to ensure that this count matches the
actual number of counters in HW, compare this number during compile time
with the expected value.

Suggested-by: Hauke Mehrtens <[email protected]>
Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20905
Signed-off-by: Robert Marko <[email protected]>
11 days agorealtek: dsa: rtl839x: Fix incorrect drop counter names
Sven Eckelmann [Sun, 23 Nov 2025 14:42:20 +0000 (15:42 +0100)]
realtek: dsa: rtl839x: Fix incorrect drop counter names

The counter names "CFM" and "VLAN_IGR_FLTR" were not separated by a comma
in the `rtl839x_drop_cntr` array. As result, these two headers were merged
to a single header "CFMVLAN_IGR_FLTR" and everything after that was shifted
by one. The last name (for the 45th counter) was also not defined and was
therefore accessing data outside the array.

Fixes: 1cfd45ae0bad ("realtek: Add debugfs support for RTL9300")
Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20905
Signed-off-by: Robert Marko <[email protected]>
12 days agotoolchain: binutils: update to 2.45.1
Nick Hainke [Sun, 23 Nov 2025 09:40:12 +0000 (10:40 +0100)]
toolchain: binutils: update to 2.45.1

Release Notes:
- https://sourceware.org/pipermail/binutils/2025-November/145592.html

Signed-off-by: Nick Hainke <[email protected]>
12 days agolibxml2: update to 2.15.1
Nick Hainke [Sun, 23 Nov 2025 08:53:44 +0000 (09:53 +0100)]
libxml2: update to 2.15.1

Update to latest release. Location of cmake files changed.

Link: https://github.com/openwrt/openwrt/pull/20880
Signed-off-by: Nick Hainke <[email protected]>
12 days agobinutils: update to 2.45.1
Nick Hainke [Sun, 23 Nov 2025 09:32:14 +0000 (10:32 +0100)]
binutils: update to 2.45.1

Patches automatically refreshed.

Release Notes:
- 2.45.1: https://sourceware.org/pipermail/binutils/2025-November/145592.html
- 2.45.0: https://lists.gnu.org/archive/html/info-gnu/2025-07/msg00009.html
- 2.44.0: https://lists.gnu.org/archive/html/info-gnu/2025-02/msg00001.html
- 2.43.0: https://lists.gnu.org/archive/html/info-gnu/2024-08/msg00001.html

Link: https://github.com/openwrt/openwrt/pull/20884
Signed-off-by: Nick Hainke <[email protected]>
12 days agolibbsd: update to 0.12.2
Nick Hainke [Sun, 23 Nov 2025 11:11:50 +0000 (12:11 +0100)]
libbsd: update to 0.12.2

Update to latest release.

Link: https://github.com/openwrt/openwrt/pull/20899
Signed-off-by: Nick Hainke <[email protected]>
12 days agomediatek: filogic: increase flash speed on ASUS TUF AX6000
Aleksander Jan Bajkowski [Sun, 27 Jul 2025 17:19:42 +0000 (19:19 +0200)]
mediatek: filogic: increase flash speed on ASUS TUF AX6000

This commit increases the SPI bus frequency from 20 to 52 MHz. Reduces boot
time by 2s. Below is a performance comparison.

Before:
root@OpenWrt:~# dd if=/dev/mtd1 of=/dev/null bs=10M count=1 status=progress
10485760 bytes (10 MB, 10 MiB) copied, 1.68404 s, 6.2 MB/s

After:
root@OpenWrt:~# dd if=/dev/mtd1 of=/dev/null bs=10M count=1 status=progress
10485760 bytes (10 MB, 10 MiB) copied, 0.819222 s, 12.8 MB/s

Taken from PR #18752 as each device should be tested individually, so I have
created a separate PR for this.

Signed-off-by: Sky Huang <[email protected]>
Signed-off-by: Aleksander Jan Bajkowski <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20853
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agomediatek: filogic: add factory image for Asus TUF-AX4200
Jan Hoffmann [Thu, 20 Nov 2025 17:24:44 +0000 (18:24 +0100)]
mediatek: filogic: add factory image for Asus TUF-AX4200

The initramfs.trx image can be flashed from the web interface of factory
firmware.

Unfortunately, the default boot command of the bootloader does not load
the ramdisk in the FIT image. This means that the image can only be
built when the option TARGET_ROOTFS_INITRAMFS_SEPARATE is disabled.

Tested with firmware 3.0.0.4.388_33965 (U-Boot 2022.10 / 2.0.0.5).

Signed-off-by: Jan Hoffmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20841
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agokernel: add support for Fudan Micro FM25S01BI3 SPI-NAND
Mikhail Zhilkin [Sat, 22 Nov 2025 16:18:36 +0000 (19:18 +0300)]
kernel: add support for Fudan Micro FM25S01BI3 SPI-NAND

Add support for Fudan Micro FM25S01BI3 SPI NAND.
Link: https://www.fmsh.com/nvm/FM25S01BI3_ds_eng.pdf
Signed-off-by: Mikhail Zhilkin <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20872
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agokernel: fix QE bit for Fudan Micro FM25S01A SPI-NAND
Mikhail Zhilkin [Sat, 22 Nov 2025 16:05:52 +0000 (19:05 +0300)]
kernel: fix QE bit for Fudan Micro FM25S01A SPI-NAND

According to datasheet (http://eng.fmsh.com/nvm/FM25S01A_ds_eng.pdf)
there is no QE (Quad Enable) bit for FM25S01A flash, so remove it.

Signed-off-by: Mikhail Zhilkin <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20872
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agofilogic: add support for Netgear EAX17
Jascha Sundaresan [Thu, 18 Sep 2025 18:32:41 +0000 (22:32 +0400)]
filogic: add support for Netgear EAX17

Hardware
--------

SOC:   MediaTek MT7981
RAM:   512MB DDR4
FLASH: 128MB SPI-NAND
WIFI:  Mediatek MT7915 (integrated) 2x2 802.11ax 2.4 / 5 GHz
ETH:   Mediatek MT7981 internal 1 GbE PHY
UART:  3V3 115200 8N1 (Pinout silkscreened / Do not connect VCC)

Installation
------------

1. Download the OpenWrt initramfs image. Copy the image to a TFTP server
2. Connect the TFTP server to the EAX17. Conect to the serial console,
   interrupt the autoboot process by pressing '0' when prompted.
3. Download & Boot the OpenWrt initramfs image.

   $ tftpboot openwrt.bin
   $ bootm

4. Wait for OpenWrt to boot. Transfer the sysupgrade image to the device
   using scp and install using sysupgrade.

   $ sysupgrade -n <path-to-sysupgrade.bin>

Signed-off-by: Jascha Sundaresan <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20354
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agomediatek: add support for WAVLINK WL-WN536AX6 Rev a
Qing W. [Sun, 23 Nov 2025 06:03:37 +0000 (01:03 -0500)]
mediatek: add support for WAVLINK WL-WN536AX6 Rev a

Product name: Wavlink WL-WN536AX6 Rev a "Mighty LX2"
link: https://www.wavlink.com/en_us/product/WL-WN536AX6.html
Specifications:
SOC: MT7986AV
RAM: 512MB DDR4
Flash: 128MB SPI NAND
Ports: 4 LAN (1G) & 1 WAN (2.5G)
WIFI: MT7976PN + MT7975N
LEDs: 8 (STATUS, WIFI, WAN, LAN1, LAN2, LAN3, LAN4, PWR)
USB: 1 (3.0)

MAC table, same as stock firmware:
LAN: 80:3F:5D:xx:xx:x1 partition "hw" at 0x44e (ASCII)
WAN: 80:3F:5D:xx:xx:x2 partition "hw" at 0x460 (ASCII)
2G: 80:3F:5D:xx:xx:x3
5G: 80:3F:5D:xx:xx:x4

* Installation with OEM WebUI:

Note: Make sure PC is connected on LAN1 port. The OEM firmware has an unknown root password and settings are kept after upgrading firmware. Therefore, a customized Openwrt firmware is needed to remove the root password on login, by adding `passwd -d root` to /etc/init.d/bootcount. The WebUI does a filename check so the customized firmware is named accordingly.

1. Download modified firmware file `WAVLINK_WN536AX6-A_M36AX6_V250320-WO-437baca-modified.bin` from https://github.com/ses1er/firmware-misc/tree/main/wavlink/wl-wn536ax6a
2. Log into WebUI on default IP: http://192.168.20.1
3. Browse to More (top menu) -> System -> Firmware Upgrade.
4. Under `Local Upgrade` section, check the device to be upgraded and upload downloaded modified firmware. Click `UPLOAD FILE`, then `APPLY`
5. Wait about 2 minutes (ignore progress bar), and browse to http://192.168.20.1. You should see LUCI login page. Username is root and no password.
6. Browse to `System -> Backup/Flash Firmware`, click on `Flash Image`, click `Browse` and locate `openwrt-mediatek-filogic-wavlink_wl-wn536ax6-a-squashfs-sysupgrade.bin` file.
7. Uncheck `Keep settings and retain the current configuration` and click `Continue`.
8. Router will now be set to IP 192.168.1.1 which is the Openwrt default.

* Installation with UART:

Note: Having UART connected while cold booting the device will result in a kernel panic when initializing wifi. I've found this workaround:
1. Power off the device and ensure UART is not connected to PC.
2. Power up the device, when lights come on, plug in UART.
3. Warm boots and soft restarts will not cause kernel panic for the duration of device being powered on. Repeat steps for subsequent cold boots.

1. Configure TFTP server with IP 192.168.1.66. Copy `openwrt-mediatek-filogic-wavlink_wl-wn536ax6a-initramfs.itb` to TFTP root.
2. Interrupt boot by pressing 0.
3. Run the following in Uboot console: `setenv serverip 192.168.1.66; setenv ipaddr 192.168.1.1; tftpboot 0x46000000 openwrt-mediatek-filogic-wavlink_wl-wn536ax6-a-initramfs.itb; bootm`
4. Transfer `openwrt-mediatek-filogic-wavlink_wl-wn536ax6-a-squashfs-sysupgrade.bin` to device:
   (`scp -O openwrt-mediatek-filogic-wavlink_wl-wn536ax6-a-squashfs-sysupgrade.bin [email protected]:/tmp/`)
5. Run the following on device: `sysupgrade -n /tmp/openwrt-mediatek-filogic-wavlink_wl-wn536ax6-a-squashfs-sysupgrade.bin`

Signed-off-by: Qing W. <[email protected]>
Tested-by: Martin Blumenstingl <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20760
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agolibunistring: update to 1.4.1
Nick Hainke [Sun, 23 Nov 2025 11:18:13 +0000 (12:18 +0100)]
libunistring: update to 1.4.1

Release Notes:
https://fossies.org/linux/libunistring/ChangeLog

Link: https://github.com/openwrt/openwrt/pull/20902
Signed-off-by: Nick Hainke <[email protected]>
12 days agojansson: update to 2.14.1
Nick Hainke [Sun, 23 Nov 2025 11:15:26 +0000 (12:15 +0100)]
jansson: update to 2.14.1

Release Notes:
https://github.com/akheron/jansson/releases/tag/v2.14.1

Link: https://github.com/openwrt/openwrt/pull/20901
Signed-off-by: Nick Hainke <[email protected]>
12 days agompfr: update to 4.2.2
Nick Hainke [Sun, 23 Nov 2025 11:05:53 +0000 (12:05 +0100)]
mpfr: update to 4.2.2

Release Notes:
https://www.mpfr.org/mpfr-current/

Link: https://github.com/openwrt/openwrt/pull/20898
Signed-off-by: Nick Hainke <[email protected]>
12 days agonettle: update to 3.10.2
Nick Hainke [Sun, 23 Nov 2025 10:57:39 +0000 (11:57 +0100)]
nettle: update to 3.10.2

Release Notes:
https://lists.gnu.org/archive/html/info-gnu/2025-06/msg00006.html

Link: https://github.com/openwrt/openwrt/pull/20896
Signed-off-by: Nick Hainke <[email protected]>
12 days agolibusb: update to 1.0.29
Nick Hainke [Sun, 23 Nov 2025 11:01:56 +0000 (12:01 +0100)]
libusb: update to 1.0.29

Release Notes:
- https://github.com/libusb/libusb/releases/tag/v1.0.29
- https://github.com/libusb/libusb/releases/tag/v1.0.28

Link: https://github.com/openwrt/openwrt/pull/20897
Signed-off-by: Nick Hainke <[email protected]>
12 days agomediatek: use dt-bindings drive strength macros for ipTIME AX7800M-6E
Donghyun Ko [Sun, 23 Nov 2025 10:01:21 +0000 (19:01 +0900)]
mediatek: use dt-bindings drive strength macros for ipTIME AX7800M-6E

Replace hardcoded numbers with the dt-bindings drive strength macros
defined in "dt-bindings/pinctrl/mt65xx.h".

Signed-off-by: Donghyun Ko <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20894
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agorealtek: Cleanup tab vs spaces for indentation
Sven Eckelmann [Sun, 23 Nov 2025 10:29:11 +0000 (11:29 +0100)]
realtek: Cleanup tab vs spaces for indentation

Sources files should used for the proper indentation:

* use tabs instead of 8 spaces
* spaces should never directly before a tab
* no whitespace characters at the end of a line

These rules were partially not followed in various source files.

Signed-off-by: Sven Eckelmann <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20895
Signed-off-by: Hauke Mehrtens <[email protected]>
12 days agogperf: update to 3.3
Nick Hainke [Sun, 23 Nov 2025 09:46:30 +0000 (10:46 +0100)]
gperf: update to 3.3

Release Notes:
- 3.3: https://savannah.gnu.org/news/?id=10758
- 3.2: https://savannah.gnu.org/news/?id=10747

Link: https://github.com/openwrt/openwrt/pull/20886
Signed-off-by: Nick Hainke <[email protected]>
12 days agolibbpf: update to 1.6.2
Nick Hainke [Sun, 23 Nov 2025 09:05:45 +0000 (10:05 +0100)]
libbpf: update to 1.6.2

Release Notes:
- 1.6.2: https://github.com/libbpf/libbpf/releases/tag/v1.6.2
- 1.6.1: https://github.com/libbpf/libbpf/releases/tag/v1.6.1
- 1.6.0: https://github.com/libbpf/libbpf/releases/tag/v1.6.0
- 1.5.1: https://github.com/libbpf/libbpf/releases/tag/v1.5.1

Link: https://github.com/openwrt/openwrt/pull/20882
Signed-off-by: Nick Hainke <[email protected]>
12 days agolibtool: update to 2.5.4
Nick Hainke [Sun, 23 Nov 2025 08:41:25 +0000 (09:41 +0100)]
libtool: update to 2.5.4

Release Notes:
- 2.5.0: https://savannah.gnu.org/news/?id=10631
- 2.5.1: https://savannah.gnu.org/news/?id=10660
- 2.5.2: https://savannah.gnu.org/news/?id=10669
- 2.5.3: https://savannah.gnu.org/news/?id=10676
- 2.5.4: https://savannah.gnu.org/news/?id=10693

Link: https://github.com/openwrt/openwrt/pull/20879
Signed-off-by: Nick Hainke <[email protected]>
12 days agobusybox: backport hexdump fix for Big Endian systems
Álvaro Fernández Rojas [Sun, 23 Nov 2025 16:07:05 +0000 (17:07 +0100)]
busybox: backport hexdump fix for Big Endian systems

hexdump isn't working properly on some Big Endian systems, producing
incorrect output such as:
  hexdump -vn 5 -e '"fd" 1/1 "%02x:" 2/2 "%x:"' /dev/urandom
  fdff:542c0054:17920017:
Which should be:
  fdff:542c:1792:

This breaks the default ULA prefix generation on some systems. See:
https://github.com/openwrt/openwrt/issues/19844

The issue has already been fixed upstream, so we can backport the fix:
https://git.busybox.net/busybox/commit/libbb/dump.c?id=f5c7cae55fc3e19d074198bc12152486067ea8c7

Signed-off-by: Álvaro Fernández Rojas <[email protected]>
12 days agolibpcre2: Default enable JIT support for aarch64
Christian Lachner [Sun, 23 Nov 2025 09:48:47 +0000 (10:48 +0100)]
libpcre2: Default enable JIT support for aarch64

JIT support in pcre2 allows for extra performance for regex operations in
applications that support it. As outlined in
https://pcre.org/current/doc/html/pcre2jit.html#SEC2 64-bit ARM is
supported.

I tested this on an GL.Inet MT6000 which is an aarch64 device and to my
knowledge everything works as expected. The primary application I tested
this on was haproxy, which makes use pcre for several operations.

If there are no known downsides or known breakages I suggest to
default-enable this feature for aarch64.

Signed-off-by: Christian Lachner <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20891
Signed-off-by: Christian Marangi <[email protected]>
13 days agotoolchain: gcc: add fanalyzer config option
Nick Hainke [Wed, 10 May 2023 01:53:34 +0000 (03:53 +0200)]
toolchain: gcc: add fanalyzer config option

Add gcc config option for fanalyzer. As a result of this option, a static
analysis of the program flow is conducted, allowing interprocedural paths
to be identified and warnings to be issued if problems are identified.

Link: https://github.com/openwrt/openwrt/pull/12576
Signed-off-by: Nick Hainke <[email protected]>
13 days agorefpolicy: update to 2.20250923
Nick Hainke [Sat, 22 Nov 2025 07:20:50 +0000 (08:20 +0100)]
refpolicy: update to 2.20250923

Changelog:
  Notable Changes
  - Several updates and fixes for systemd
  - Add new permissions and policy capabilities
  - Drop reiserfs support (it was removed in kernel 6.13)

  New Modules
  - bubblewrap
  - incus
  - kanidm
  - seatd
  - opensnitch

Refresh patch:
- 100-no-docs.patch

Link: https://github.com/openwrt/openwrt/pull/20861
Signed-off-by: Nick Hainke <[email protected]>
13 days agoselinux-policy: update to 2.8.3
Nick Hainke [Sat, 22 Nov 2025 07:11:34 +0000 (08:11 +0100)]
selinux-policy: update to 2.8.3

Changelog:
b1d7050 README
13f78a8 nlbwmon fix
9a98b2b ratelimit and nlbwmon rules
a193e4b adds nlbwmon skel
b5672a0 README: adds nlbwmon to wish list
2058100 adds radius and uam unreserved port
026b712 ratelimit for busybox ip
7661081 adds ratelimit sysagent skel and update README
3bea826 luci and rpcserver apk related
ba8607d all sys agents can use inherited ssh server pipes
24b9396 README: adds some more items to wish list
da7a02c ttyxperm: adds TIOCSERGETLSR
2fce9ee Revert "file_contexts.subs_dist: order matters with libselinux 3.8"
9a13714 file_contexts.subs_dist: order matters with libselinux 3.8
a148827 README update
9d9a1ff iproute2 ip: ip mptcp monitor
cf7efdc envtools: setenv

Link: https://github.com/openwrt/openwrt/pull/20859
Signed-off-by: Nick Hainke <[email protected]>
13 days agodtc: update to 1.7.2
Nick Hainke [Sat, 22 Nov 2025 06:58:55 +0000 (07:58 +0100)]
dtc: update to 1.7.2

Changelog:
2d10aa2 Bump version to v1.7.2
48795c8 pylibfdt: Don't emit warnings from swig generate C code
838f11e fdtoverlay: provide better error message for missing `/__symbols__`
d1e2384 pylibfdt/libfdt.i: Use SWIG_AppendOutput
18aa49a Escape spaces in depfile with backslashes.
f9968fa libfdt.h: whitespace consistency fixups
9b5f65f libfdt.h: typo and consistency fixes

Link: https://github.com/openwrt/openwrt/pull/20858
Signed-off-by: Nick Hainke <[email protected]>
13 days agotools/squashfs4: update to 4.7.4
Nick Hainke [Thu, 20 Nov 2025 20:29:27 +0000 (21:29 +0100)]
tools/squashfs4: update to 4.7.4

Remove upstreamed patches:
- 0001-mksquashfs-fix-build-for-big-endian-architectures.patch
- 0002-gzip_wrapper-fix-byte-swapping-prototype.patch
- 0003-mksquashfs-fix-regression-introduced-by-SEEK_DATA-op.patch

Link: https://github.com/openwrt/openwrt/pull/20843
Signed-off-by: Nick Hainke <[email protected]>
13 days agotools: libressl: update to 4.2.1
Nick Hainke [Sun, 27 Jul 2025 17:08:38 +0000 (19:08 +0200)]
tools: libressl: update to 4.2.1

Changelog:
- 3.8.0: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.8.0-relnotes.txt
- 3.8.1: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.8.1-relnotes.txt
- 3.8.2: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.8.3-relnotes.txt
- 3.8.4: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.8.4-relnotes.txt
- 3.9.0: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.9.0-relnotes.txt
- 3.9.1: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.9.1-relnotes.txt
- 3.9.2: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.9.2-relnotes.txt
- 4.0.0: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-4.0.0-relnotes.txt
- 4.1.0: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-4.1.0-relnotes.txt
- 4.2.0: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-4.2.0-relnotes.txt
- 4.2.1: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-4.2.1-relnotes.txt

Further add patches:
- 010-static.patch
- 011-fix-linking.patch

Link: https://github.com/openwrt/openwrt/pull/19562
Signed-off-by: Nick Hainke <[email protected]>
13 days agotools/llvm-bpf: update to 21.1.6
Nick Hainke [Sat, 22 Nov 2025 13:46:30 +0000 (14:46 +0100)]
tools/llvm-bpf: update to 21.1.6

Release Notes:
- https://discourse.llvm.org/t/llvm-21-1-6-released
- https://discourse.llvm.org/t/llvm-21-1-5-released
- https://discourse.llvm.org/t/llvm-21-1-4-released
- https://discourse.llvm.org/t/llvm-21-1-3-released
- https://discourse.llvm.org/t/llvm-21-1-2-released
- https://discourse.llvm.org/t/llvm-21-1-1-released
- https://discourse.llvm.org/t/llvm-21-1-0-released
- https://discourse.llvm.org/t/llvm-20-1-7-released

Link: https://github.com/openwrt/openwrt/pull/20870
Signed-off-by: Nick Hainke <[email protected]>
13 days agobpftool: update to 7.6.0
Nick Hainke [Thu, 20 Nov 2025 20:46:05 +0000 (21:46 +0100)]
bpftool: update to 7.6.0

Release Notes:
- https://github.com/libbpf/bpftool/releases/tag/v7.6.0

Link: https://github.com/openwrt/openwrt/pull/20846
Signed-off-by: Nick Hainke <[email protected]>
13 days agotools/dwarves: update to 1.31
Nick Hainke [Thu, 20 Nov 2025 20:39:33 +0000 (21:39 +0100)]
tools/dwarves: update to 1.31

Upstream switched to tar.xz.

Release Notes:
- https://github.com/acmel/dwarves/releases/tag/v1.30
- https://github.com/acmel/dwarves/releases/tag/v1.31

Link: https://github.com/openwrt/openwrt/pull/20845
Signed-off-by: Nick Hainke <[email protected]>
13 days agotools/libdeflate: update to 1.25
Nick Hainke [Thu, 20 Nov 2025 20:34:17 +0000 (21:34 +0100)]
tools/libdeflate: update to 1.25

Changelog:
- Update to v1.25 (2025-10-31): no fixes or improvements, only the build
  harness maintenance.

Link: https://github.com/openwrt/openwrt/pull/20844
Signed-off-by: Nick Hainke <[email protected]>
13 days agoat91: refresh kernel-config sama7
Goetz Goerisch [Mon, 21 Jul 2025 12:54:15 +0000 (14:54 +0200)]
at91: refresh kernel-config sama7

refreshed running make kernel_oldconfig CONFIG_TARGET=subtarget

Signed-off-by: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoat91: refresh kernel-config sama5
Goetz Goerisch [Mon, 21 Jul 2025 11:14:27 +0000 (13:14 +0200)]
at91: refresh kernel-config sama5

refreshed running make kernel_oldconfig CONFIG_TARGET=subtarget

Signed-off-by: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoat91: refresh kernel-config sam9x
Goetz Goerisch [Mon, 21 Jul 2025 09:32:28 +0000 (11:32 +0200)]
at91: refresh kernel-config sam9x

refreshed running make kernel_oldconfig CONFIG_TARGET=subtarget

Signed-off-by: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoat91: add missing KConfig for sam9x sama5
Goetz Goerisch [Sun, 20 Jul 2025 08:12:19 +0000 (10:12 +0200)]
at91: add missing KConfig for sam9x sama5

CONFIG_DRM_MICROCHIP_LVDS_SERIALIZER needs to be added

Signed-off-by: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoat91: enable testing kernel 6.12
Goetz Goerisch [Sat, 19 Jul 2025 21:27:49 +0000 (23:27 +0200)]
at91: enable testing kernel 6.12

enable kernel 6.12 as testing

Signed-off-by: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoat91: Restore kernel files for v6.6
Goetz Goerisch [Sat, 19 Jul 2025 21:25:53 +0000 (23:25 +0200)]
at91: 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: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoat91: Create kernel files for v6.12 (from v6.6)
Goetz Goerisch [Sat, 19 Jul 2025 21:25:53 +0000 (23:25 +0200)]
at91: 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: Goetz Goerisch <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19471
Signed-off-by: Christian Marangi <[email protected]>
13 days agoucode: update to Git HEAD (2025-11-19)
Hauke Mehrtens [Fri, 21 Nov 2025 01:08:09 +0000 (02:08 +0100)]
ucode: update to Git HEAD (2025-11-19)

8567eef4d3a5 examples/execute-file: free program
292e0f87cbf7 examples: free syntax_error
fd5889028f5e Revert "nl80211: read all pending event messages"
80a88b852620 types: add ucv_string_alloc helper function

The removed patch was applied upstream.

Link: https://github.com/openwrt/openwrt/pull/20850
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoomap: drop support for kernel 6.6
Christian Marangi [Fri, 21 Nov 2025 22:45:15 +0000 (23:45 +0100)]
omap: drop support for kernel 6.6

Drop support for kernel 6.6 as now kernel 6.12 is set as default kernel
version.

Link: https://github.com/openwrt/openwrt/pull/20857
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoomap: switch to kernel 6.12
Christian Marangi [Fri, 21 Nov 2025 22:44:45 +0000 (23:44 +0100)]
omap: switch to kernel 6.12

Move the omap target to kernel 6.12 by default.

Link: https://github.com/openwrt/openwrt/pull/20857
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoimx: drop support for kernel 6.6
Christian Marangi [Fri, 21 Nov 2025 22:42:09 +0000 (23:42 +0100)]
imx: drop support for kernel 6.6

Drop support for kernel 6.6 as now kernel 6.12 is set as default kernel
version.

Link: https://github.com/openwrt/openwrt/pull/20856
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoimx: switch to kernel 6.12
Christian Marangi [Fri, 21 Nov 2025 22:41:28 +0000 (23:41 +0100)]
imx: switch to kernel 6.12

Move the imx target to kernel 6.12 by default.

Link: https://github.com/openwrt/openwrt/pull/20856
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoapm821xx: drop support for kernel 6.6
Christian Marangi [Fri, 21 Nov 2025 22:39:36 +0000 (23:39 +0100)]
apm821xx: drop support for kernel 6.6

Drop support for kernel 6.6 as now kernel 6.12 is set as default kernel
version.

Link: https://github.com/openwrt/openwrt/pull/20855
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoapm821xx: switch to kernel 6.12
Christian Marangi [Fri, 21 Nov 2025 22:38:18 +0000 (23:38 +0100)]
apm821xx: switch to kernel 6.12

Move the apm821xx target to kernel 6.12 by default.

Link: https://github.com/openwrt/openwrt/pull/20855
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agopackage: drop creating spurious tmp directory in feed directory
Christian Marangi [Sat, 22 Nov 2025 09:01:55 +0000 (10:01 +0100)]
package: drop creating spurious tmp directory in feed directory

In implementing APK support it seems a a leftover was never removed that
creates an unused tmp directory in the package feed directory.

Drop it as it's not used anywhere. What is actually needed is the
creation of the $$(PDIR_$(1)) directory for the feed package directory
in the bin/packages directory.

This was a side effect of using INSTALL_DIR on $$(PDIR_$(1))/tmp that
indirectly creates the $$(PDIR_$(1)) parent directory.

Fixes: d788ab376f85 ("build: add APK package build capabilities")
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoRevert "package: drop creating spurious tmp directory in feed directory"
Christian Marangi [Sat, 22 Nov 2025 08:58:26 +0000 (09:58 +0100)]
Revert "package: drop creating spurious tmp directory in feed directory"

This reverts commit cea8507dccc9f677d3d4ed926fc568becfb554d4.

This actually cause package pack error on every package outside the
target directory.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoapk: update to 3.0.0-rc8
Rosen Penev [Fri, 21 Nov 2025 00:59:55 +0000 (16:59 -0800)]
apk: update to 3.0.0-rc8

Added compatibility patch for LibreSSL 4.0.

Refreshed other patches.

Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20851
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agopackage: drop creating spurious tmp directory in feed directory
Christian Marangi [Fri, 21 Nov 2025 22:32:26 +0000 (23:32 +0100)]
package: drop creating spurious tmp directory in feed directory

In implementing APK support it seems a a leftover was never removed that
creates an unused tmp directory in the package feed directory.

Drop it as it's not used anywhere.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agogeneric: 6.12: backport b53 patches from netdev-next
Álvaro Fernández Rojas [Wed, 19 Nov 2025 08:42:20 +0000 (09:42 +0100)]
generic: 6.12: backport b53 patches from netdev-next

These patches have been accepted in netdev-next for linux v6.19.

2b3013ac0302 net: dsa: b53: add support for bcm63xx ARL entry format
300f78e8b6b7 net: dsa: b53: add support for 5389/5397/5398 ARL entry format
a7e73339ad46 net: dsa: b53: move ARL entry functions into ops struct
e0c476f325a8 net: dsa: b53: split reading search entry into their own functions
1716be6db04a net: dsa: b53: provide accessors for accessing ARL_SRCH_CTL
bf6e9d2ae1db net: dsa: b53: move writing ARL entries into their own functions
4a291fe72267 net: dsa: b53: move reading ARL entries into their own function
a6e4fd38bf2f net: dsa: b53: b53_arl_read{,25}(): use the entry for comparision

Signed-off-by: Álvaro Fernández Rojas <[email protected]>
2 weeks agogeneric: 6.12: backport b53 patches from v6.18
Álvaro Fernández Rojas [Wed, 19 Nov 2025 08:21:39 +0000 (09:21 +0100)]
generic: 6.12: backport b53 patches from v6.18

These patches have been accepted for linux v6.18.

e57723fe536f net: dsa: b53: properly bound ARL searches for < 4 ARL bin chips
674b34c4c770 net: dsa: b53: fix ageing time for BCM53101
89eb9a62aed7 net: dsa: b53: fix reserved register access in b53_fdb_dump()
61730ac10ba9 net: dsa: b53: mmap: Implement bcm63268 gphy power control
7f95f04fe190 net: dsa: b53: mmap: Add gphy port to phy info for bcm63268
5ac00023852d net: dsa: b53: mmap: Implement bcm63xx ephy power control
e8e13073dff7 net: dsa: b53: mmap: Add register layout for bcm6368
c251304ab021 net: dsa: b53: mmap: Add register layout for bcm6318
aed2aaa3c963 net: dsa: b53: mmap: Add syscon reference and register layout for bcm63268
fcf02a462fab net: dsa: b53: Define chip IDs for more bcm63xx SoCs
be7a79145d85 net: dsa: b53: Add phy_enable(), phy_disable() methods
762e7e174da9 net: dsa: tag_brcm: do not mark link local traffic as offloaded

Signed-off-by: Álvaro Fernández Rojas <[email protected]>
2 weeks agogeneric: 6.12: reorganize b53 patches
Álvaro Fernández Rojas [Wed, 19 Nov 2025 18:21:44 +0000 (19:21 +0100)]
generic: 6.12: reorganize b53 patches

A considerable amount of b53 patches has been backported to 6.12, so we
can rename and group the remaining ones.

Signed-off-by: Álvaro Fernández Rojas <[email protected]>
2 weeks agorpcd: update to Git HEAD (2025-11-10)
Hauke Mehrtens [Fri, 21 Nov 2025 01:07:06 +0000 (02:07 +0100)]
rpcd: update to Git HEAD (2025-11-10)

483263c7b0cd file: append "target" for symbolic links

Link: https://github.com/openwrt/openwrt/pull/20849
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agouci: update to Git HEAD (2025-11-18)
Hauke Mehrtens [Fri, 21 Nov 2025 01:05:40 +0000 (02:05 +0100)]
uci: update to Git HEAD (2025-11-18)

b65c091a09a9 github: ci: disable json-c tests
e1ab90c510ce github: ci: add tests
8022b2e4d010 uci: add a simple build script
dec51f48a114 github: ci: add cmake build and source directories
238963f48c84 github: ci: add powerpc arch
ebb3a01a0b01 build: install uci
5bea13572325 github: ci: add MIPS64, PowerPC64 and RISCV64

Link: https://github.com/openwrt/openwrt/pull/20848
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoubus: update to Git HEAD (2025-11-18)
Hauke Mehrtens [Fri, 21 Nov 2025 01:06:26 +0000 (02:06 +0100)]
ubus: update to Git HEAD (2025-11-18)

966c82b2197c github: ci: disable json-c tests
c4d7aff97bbe github: ci: add tests
00010b8af022 ubus: add a simple build script
1eab20d6cda2 github: ci: add cmake build and source directories
f79ddca64806 github: ci: add powerpc arch
5c7eea7fc090 build: install ubus
2737da3819fe github: ci: add MIPS64, PowerPC64 and RISCV64

Link: https://github.com/openwrt/openwrt/pull/20847
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agokernel: mtdsplit_h3c_vfs: Fix build
Hauke Mehrtens [Fri, 21 Nov 2025 20:33:26 +0000 (21:33 +0100)]
kernel: mtdsplit_h3c_vfs: Fix build

Fix a recently introduces compile problem.

Fixes: 2acf18bf4deb ("kernel: mtdsplit_h3c_vfs: use -ENOENT instead of -ENODEV")
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agomac80211: fix netns crash
Janusz Dziedzic [Mon, 17 Nov 2025 11:42:30 +0000 (11:42 +0000)]
mac80211: fix netns crash

[  201.286070] CPU: 0 UID: 0 PID: 34 Comm: kworker/u8:1 Tainted: G S         O       6.12.51 #0
[  201.294509] Tainted: [S]=CPU_OUT_OF_SPEC, [O]=OOT_MODULE
[  201.299812] Hardware name: Bananapi BPI-R64 (DT)
[  201.304422] Workqueue: netns cleanup_net
[  201.308347] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[  201.315304] pc : cfg80211_switch_netns+0x270/0x2d0 [cfg80211]
[  201.321086] lr : cfg80211_switch_netns+0x26c/0x2d0 [cfg80211]
[  201.326846] sp : ffffffc081143ca0
[  201.330153] x29: ffffffc081143ca0 x28: 61c8864680b583eb x27: 0000000000000000
[  201.337287] x26: ffffffc080c46000 x25: ffffff8000d28800 x24: ffffffc081143d80
[  201.344421] x23: ffffff800834e360 x22: ffffffc080d6b280 x21: ffffffc07904aeb8
[  201.351554] x20: ffffff800834c200 x19: ffffff8005e90000 x18: 0000000000000000
[  201.358688] x17: 0000000000000000 x16: 000000000000001d x15: ffffffc081143cf8
[  201.365821] x14: ffffff8005703600 x13: 00000000000003bb x12: 0000000000000000
[  201.372955] x11: 00000000000000c0 x10: 0000000000000000 x9 : ffffffc081143bd0
[  201.380088] x8 : 0000000000000000 x7 : 7f7f7f7f7f7f7f7f x6 : 1f1f1f1f1f1f6348
[  201.387222] x5 : 0000000000000004 x4 : ffffff8000ce8000 x3 : 0000000000000000
[  201.394355] x2 : 0000000000000000 x1 : ffffff8005e90800 x0 : 00000000ffffffea
[  201.401489] Call trace:
[  201.403926]  cfg80211_switch_netns+0x270/0x2d0 [cfg80211]
[  201.409340]  ops_exit_list+0x40/0x80
[  201.412910]  cleanup_net+0x344/0x558
[  201.416480]  process_one_work+0x174/0x300
[  201.420489]  worker_thread+0x278/0x430
[  201.424234]  kthread+0xd8/0xdc
[  201.427283]  ret_from_fork+0x10/0x20

Fixes: e005cdea1028 ("mac80211: update to version 6.16")
Signed-off-by: Janusz Dziedzic <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20829
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoramips: add support for ipTIME AX2002MESH
Myoung Ha, Ji [Wed, 29 Oct 2025 07:29:48 +0000 (16:29 +0900)]
ramips: add support for ipTIME AX2002MESH

ipTIME AX2002MESH is an 802.11ax (Wi-Fi 6) router based on
MediaTek MT7621 SoC.

Specifications:
- SoC: MediaTek MT7621, MIPS 1004Kc, 880 MHz
- RAM: 128 MiB
- Flash: NAND 128 MiB (ESMT PSU1GA30DT)
- WLAN: MediaTek MT7915E
  - 2.4 GHz: ax/b/g/n
  - 5 GHz: ac/ax/n
- Ethernet:
  - LAN: MediaTek MT7530, 2x 1GbE
  - WAN: MediaTek SoC built-in, 1x 1GbE
- UART: J4 header, 115200 8N1
  - Pinout: [3V3] [TX] [RX] [GND]
- Button: Reset
- LEDs: 6 LEDs
  - 1x CPU (Amber)
  - 1x WLAN 5GHz (Amber)
  - 1x WLAN 2.4GHz (Amber)
  - 2x LAN (Amber)
  - 1x WAN (Amber)
- Power: DC 12V/1A

MAC addresses:
| Interface | MAC               | Algorithm                 |
|:----------|:-----------------:|:--------------------------|
| WLAN 2.4G | 58:86:94:XX:XX:34 | label                     |
| WAN       | 58:86:94:XX:XX:35 | label + 1                 |
| LAN       | 58:86:94:XX:XX:37 | label + 3                 |
| WLAN 5G   | 5A:86:94:XX:XX:37 | label + 3 with LA bit set |
- The WLAN 2.4G MAC address (label) is stored in factory partition, 0x4

Installation:
- Stock web interface:
  1. Flash the **initramfs-factory** image through the web page.
  2. Boot into OpenWrt and perform sysupgrade with **sysupgrade** image.
- Recovery mode:
  1. Turn on the device and press the Reset button more than 10 seconds
     to enter recovery mode.
  2. Access the recovery web interface at 192.168.0.1/24 and flash the
     **initramfs-factory** image.
  3. Boot into OpenWrt and perform sysupgrade with **sysupgrade** image.

Signed-off-by: Myoung Ha, Ji <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20584
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agomediatek: add support for Imou HX21
Jahidul Islam [Wed, 12 Nov 2025 18:32:31 +0000 (00:32 +0600)]
mediatek: add support for Imou HX21

This board is also as known as LC-HX3001

Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: Foresee F35SQA001G 128 MB SPI-NAND
  RAM: 256MB DDR3
  Ethernet: 4x 10/100/1000 Mbps
  Switch: MediaTek MT7531AE
  WiFi: MediaTek MT7976C
  Button: Reset, Mesh
  Power: DC 12V 1A

Gain SSH access:
Method 1:
1. Connect UART Adapter to the router
2. UART pins are enabled, set the root password with passwd command
   start the dropbear instance on port 22

Method 2:
1. Login into web interface, and restore the router with SSH enabled configuration.
2. After reboot Default Web interface password will be 12345678
   SSH password is empty

Flash instructions:
1. Connect to HX21, backup everything, especially 'Factory' part.
3. Write new FIP:
   mtd write openwrt-mediatek-filogic-hx_21-bl31-uboot.fip FIP
4. Set static IP on your PC:
   IP 192.168.1.254/24, GW 192.168.1.1
5. Serve OpenWrt initramfs image using TFTP server.
6. Wait for TFTP recovery to complete.
7. After OpenWrt has booted, perform sysupgrade.
8. To write new BL2
   Install mtd-rw
   opkg update && opkg install kmod-mtd-rw
   insmod mtd-rw i_want_a_brick=1
   mtd write openwrt-mediatek-filogic-imou_hx21-preloader.bin bl2

Signed-off-by: Jahidul Islam <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20753
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoath79: re-enable build of TP-Link RE355 v1, RE450 v1 and RE450 v2
Radek Dostál [Sun, 9 Nov 2025 17:38:15 +0000 (18:38 +0100)]
ath79: re-enable build of TP-Link RE355 v1, RE450 v1 and RE450 v2

With previous patches these devices have only 128 KiB less space than
RE450 v3. It may be even possible to revert commit 65b6f1c1b251 ("ath79:
move TP-Link RE450 v1 & v2 and RE355 v1 to tiny target") but that was
not done as the device has only 8 MiB flash and will eventually run out of
it anyway.

Signed-off-by: Radek Dostál <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20709
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoath79: switch TP-Link RE355 v1, RE450 v1 and RE450 v2 to mtd-concat
Radek Dostál [Sun, 9 Nov 2025 17:31:47 +0000 (18:31 +0100)]
ath79: switch TP-Link RE355 v1, RE450 v1 and RE450 v2 to mtd-concat

This patch utilizes unused and empty flash space in the original partition
layout and increase maximum image size by 1664 KiB.

Tested on RE450v1 by running sysupgrade with build of size 5697 KiB and
checking that df shows 1988 1K-blocks for "/overlay".

Inspired by commit ebd5e5fb5359 ("ramips: switched TP-Link RE305 v1 to new
partition layout").

Signed-off-by: Radek Dostál <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20709
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoath79: reduce config partition size for RE450 v1 and RE355 v1 to 0x20000
Radek Dostál [Sun, 9 Nov 2025 16:35:51 +0000 (17:35 +0100)]
ath79: reduce config partition size for RE450 v1 and RE355 v1 to 0x20000

Dump of content of my RE450 v1 showed, that there are valid data only
up to 0x10420. Everything after is just 0xFF. This will also make
partition table identical to qca9563_tplink_re450-v2.dts, which seems
to be logical.

Signed-off-by: Radek Dostál <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20709
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agoramips: add support for D-Link DIR-2660 A2
Marcin Leksmark [Thu, 11 Sep 2025 14:40:20 +0000 (16:40 +0200)]
ramips: add support for D-Link DIR-2660 A2

This patch adds support for D-Link DIR-2660 A2.
Based on the commit: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=b5dd746cbb1aaf91f4b68e9f3eda97413550d904,

Both devices look identical, except for the A1/A2 designation.
You can safely install the A1 firmware for the A2 – I've been testing it for several months as a DUMB AP – without any problems.

Specifications:
* SoC: MediaTek MT7621AT
* RAM: 256 MB (DDR3)
* Flash: 128 MB (NAND)
* WiFi: MediaTek MT7615N (x2)
* Switch: 1 WAN, 4 LAN (Gigabit)
* Ports: 1 USB 2.0, 1 USB 3.0
* Buttons: Reset, WPS
* LEDs: Power (white/orange), Internet (white/orange), WiFi 2.4G (white),
        WiFi 5G (white), USB 3.0 (white), USB 2.0 (white)

Notes:
* WiFi 2.4G and WiFi 5G LEDs are wired directly to the wireless chips

Installation:
* D-Link Recovery GUI: power down the router, press and hold the reset
  button, then re-plug it. Keep the reset button pressed until the power
  LED starts flashing orange, manually assign a static IP address under
  the 192.168.0.xxx subnet (e.g. 192.168.0.2) and go to http://192.168.0.1

* Some modern browsers may have problems flashing via the Recovery GUI,
  if that occurs consider uploading the firmware through cURL:

    curl -v -i -F "[email protected]" 192.168.0.1

Signed-off-by: Marcin Leksmark <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20020
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agokernel: mtdsplit_minor: use -ENOENT instead of -ENODEV
Christian Marangi [Thu, 20 Nov 2025 22:41:30 +0000 (23:41 +0100)]
kernel: mtdsplit_minor: use -ENOENT instead of -ENODEV

New linux version will check the return code of parser on subpartitions.
The only valid case for skipping a parser with an error is -ENOENT.

Change the relevant entry to -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoRevert "kernel: mtdsplit_minor: return 0 if not fatal"
Christian Marangi [Thu, 20 Nov 2025 22:40:00 +0000 (23:40 +0100)]
Revert "kernel: mtdsplit_minor: return 0 if not fatal"

This reverts commit ade045084bd3f86969eaf0b35234aaa01e430fe1.

Skipping parser for subpartition will be handled now with -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agokernel: mtdsplit_uimage: use -ENOENT instead of -ENODEV
Christian Marangi [Thu, 20 Nov 2025 22:30:32 +0000 (23:30 +0100)]
kernel: mtdsplit_uimage: use -ENOENT instead of -ENODEV

New linux version will check the return code of parser on subpartitions.
The only valid case for skipping a parser with an error is -ENOENT.

Change the relevant entry to -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoRevert "kernel: mtdsplit_uimage: return 0 if not fatal"
Christian Marangi [Thu, 20 Nov 2025 22:28:44 +0000 (23:28 +0100)]
Revert "kernel: mtdsplit_uimage: return 0 if not fatal"

This reverts commit a51359aafde18b7e809842b4b4c31c78f5fa0c51.

Skipping parser for subpartition will be handled now with -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agokernel: mtdsplit_h3c_vfs: use -ENOENT instead of -ENODEV
Christian Marangi [Thu, 20 Nov 2025 22:24:01 +0000 (23:24 +0100)]
kernel: mtdsplit_h3c_vfs: use -ENOENT instead of -ENODEV

New linux version will check the return code of parser on subpartitions.
The only valid case for skipping a parser with an error is -ENOENT.

Change the relevant entry to -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoRevert "kernel: mtdsplit_h3c_vfs: return 0 for non-fatal errors"
Christian Marangi [Thu, 20 Nov 2025 22:22:30 +0000 (23:22 +0100)]
Revert "kernel: mtdsplit_h3c_vfs: return 0 for non-fatal errors"

This reverts commit 6fa1775348d5415129db12c05a993c8571c867c2.

Skipping parser for subpartition will be handled now with -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agokernel: generic: mtdsplit_seil: use -ENOENT instead of -ENODEV
Christian Marangi [Thu, 20 Nov 2025 22:19:24 +0000 (23:19 +0100)]
kernel: generic: mtdsplit_seil: use -ENOENT instead of -ENODEV

New linux version will check the return code of parser on subpartitions.
The only valid case for skipping a parser with an error is -ENOENT.

Change the relevant entry to -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoRevert "kernel: generic: mtdsplit_seil: return 0 instead of -ENODEV"
Christian Marangi [Thu, 20 Nov 2025 22:18:08 +0000 (23:18 +0100)]
Revert "kernel: generic: mtdsplit_seil: return 0 instead of -ENODEV"

This reverts commit 5aab294726f35d8515945484cbee951655cdfe90.

Skipping parser for subpartition will be handled now with -ENOENT.

Signed-off-by: Christian Marangi <[email protected]>
2 weeks agomediatek: fix ubi size for zbtlink zbt z8102ax v2
Tianling Shen [Thu, 13 Nov 2025 13:41:30 +0000 (21:41 +0800)]
mediatek: fix ubi size for zbtlink zbt z8102ax v2

According to the factory uboot and firmware[1], the ubi size is set
to 512 MiB (0x20000000) and it exceeds the size of the flash, after
that the uboot and kernel resizes it to 114.5 MiB (0x7280000) instead
of 114.125 MiB (0x7220000). The mismatch of the ubi size causes
kernel fails to read ubi volumes and throws panic.

Trim whitespaces while at it.

1. https://github.com/immortalwrt/immortalwrt/issues/2123#issuecomment-3523744128

Fixes: c908fc7d9591 ("mediatek: add support for Zbtlink ZBT-Z8102AX v2")
Signed-off-by: Tianling Shen <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20769
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agomediatek: add Zyxel NWA90AX PRO model identifier
James Davis [Thu, 13 Nov 2025 15:51:49 +0000 (08:51 -0700)]
mediatek: add Zyxel NWA90AX PRO model identifier

Adds the 81E1 model identifier for the Zyxel NWA90AX Pro to allow factory flashing to these devices.

Device tree output of the latest OEM firmware upgrade
-----------------------------------------------------
/dts-v1/;

/ {
        timestamp = <0x6860779e>;
        description = [00];
        compat-models = [81 e1 ff ff ff ff ff ff ff ff];
        fw_version = "7.10(###.3)";

        images {

Device tree of the OpenWRT factory firmware after change
--------------------------------------------------------
/dts-v1/;

/ {
        timestamp = <0x68f513d9>;
        description = "Zyxel FIT (Flattened Image Tree)";
        compat-models = [80 e1 81 e1 ff ff ff ff ff ff];
        fw_version = "9.99(###.1)";
        address-cells = <0x01>;

        images {

Fixes: e34e874a11f0 ("mediatek: add support for Zyxel NWA90AX PRO")
Signed-off-by: James Davis <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20759
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agomediatek: add support for ipTIME AX3000SE
Donghyun Ko [Wed, 12 Nov 2025 20:02:47 +0000 (05:02 +0900)]
mediatek: add support for ipTIME AX3000SE

Specification
-------------
- SoC       : MediaTek MT7981BA dual-core ARM Cortex-A53 1.3GHz
- RAM       : DDR3 256Mbytes, ESMT M15T2G16128A
- Flash     : 128Mbytes NAND Flash, ESMT F50L1G41LB
- WLAN      : MediaTek MT7976CN dual-band Wi-Fi 6
  - 2.4GHz  : b/g/n/ax, MU-MIMO
  - 5GHz    : a/n/ac/ax, MU-MIMO
- Ethernet  : MediaTek MT7531AE
  - LAN     : 10/100/1000 Mbps x4
  - WAN     : 10/100/1000 Mbps x1
- UART      : 1x4 pin header hole on PCB
  - 3.3V, RX, GND, TX (115200, 8N1)
- Buttons   : WPS, Reset
- LEDs      : 1x CPU (Amber/Blue)
              1x Wi-Fi (Amber/Blue)
              1x WAN activity (Amber/Blue)
              4x LAN activity (Amber/Blue)
- Power     : 12VDC, 1A (Center positive polarity)

Note: The LED color is amber or blue, depending on your router's color
(black/white).

MAC address
-----------
+-----------+-------------------+-----------+
| Interface | MAC               | Algorithm |
+-----------+-------------------+-----------+
| WLAN 2.4G | B0:38:6C:xx:xx:xx | label     |
| WLAN 5G   | B2:38:6C:4x:xx:xx |           |
| WAN       | B0:38:6C:xx:xx:xx | label + 1 |
| LAN       | B0:38:6C:xx:xx:xx | label + 3 |
+-----------+-------------------+-----------+
The WLAN 2.4G MAC address was found in 'Factory' partition, 0x4

Installation
------------
1. Download the OEM recovery software (ipTIME Firmware Wizard (11ac))
   from the manufacturer's website
2. Download the *squashfs-factory.bin file from the OpenWrt website
3. Press a reset button, and power up the router (keep pressing the reset button)
4. Wait more than 10 seconds until the CPU LED stop blinking
5. Connect the router (LAN port) to the PC
6. Run the OEM recovery software and follow the instructions
7. Select the *squashfs-factory.bin file during the router recovery process
8. Wait for the router to boot from *squashfs-factory.bin

Limitation: Triggering the WLAN LED for activity on both phy0 (2.4GHz) and phy1 (5GHz)
----------
Currently, the UCI doesn't support triggering a single LED for activity
on multiple WLAN interfaces. As a temporary workaround, the LED is
configured to only indicate activity on `phy1`. If you wish to monitor
`phy0` instead, you must change the device from `phy1-ap0` to `phy0-ap0`
in the LuCI LED configuration.

Signed-off-by: Donghyun Ko <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20771
Signed-off-by: Hauke Mehrtens <[email protected]>
2 weeks agouboot-airoha: update to v2025.10
Mikhail Kshevetskiy [Mon, 13 Oct 2025 04:43:31 +0000 (07:43 +0300)]
uboot-airoha: update to v2025.10

Changes:
 * removed upstreamed patches,
 * rebased local patches,
 * fix en7581_evb/an7583_evb booting issues
 * enable position independent code

Signed-off-by: Mikhail Kshevetskiy <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20400
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoairoha: spi: update en7523 airoha snfi patches & dts
Mikhail Kshevetskiy [Sun, 12 Oct 2025 12:00:13 +0000 (15:00 +0300)]
airoha: spi: update en7523 airoha snfi patches & dts

Use latest patch version

Signed-off-by: Mikhail Kshevetskiy <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20400
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoairoha: an7581: enable NPU by default
Ziyang Huang [Sun, 19 Oct 2025 12:26:32 +0000 (20:26 +0800)]
airoha: an7581: enable NPU by default

There is no reason not to do this.

Use the following commands to enable hardware offloading:
    uci set firewall.@defaults[0].flow_offloading='1'
    uci set firewall.@defaults[0].flow_offloading_hw='1'
    uci commit

Signed-off-by: Ziyang Huang <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20484
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoairoha: fix PHY_DETACH_NO_HW_RESET patch panic
Balázs Triszka [Tue, 11 Nov 2025 23:00:27 +0000 (00:00 +0100)]
airoha: fix PHY_DETACH_NO_HW_RESET patch panic

Fix kernel panic caused by downstream PHY_DETACH_NO_HW_RESET patch.

[   20.994001] airoha_eth 1fb50000.ethernet wan: validation of usxgmii with support 00,00000000,00000000,00006000 and advertisement 00,00000000,00000000,00006000 failed: -EINVAL
[   21.058106] Unable to handle kernel access to user memory outside uaccess routines at virtual address 00000000000000b8
[   21.068879] Mem abort info:
[   21.071684]   ESR = 0x0000000096000005
[   21.075436]   EC = 0x25: DABT (current EL), IL = 32 bits
[   21.080790]   SET = 0, FnV = 0
[   21.083854]   EA = 0, S1PTW = 0
[   21.086997]   FSC = 0x05: level 1 translation fault
[   21.091931] Data abort info:
[   21.094829]   ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000
[   21.100359]   CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[   21.105419]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[   21.110762] user pgtable: 4k pages, 39-bit VAs, pgdp=0000000091bc8000
[   21.117218] [00000000000000b8] pgd=0800000084ee9003, p4d=0800000084ee9003, pud=0800000084ee9003, pmd=0000000000000000
[   21.127892] Internal error: Oops: 0000000096000005 [#1] SMP
[   21.133483] Modules linked in: pppoe ppp_async nft_fib_inet nf_flow_table_inet pppox ppp_generic nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nft_redir nft_quota nft_numgen nft_nat nft_masq nfte
[   21.191941] CPU: 3 UID: 0 PID: 1882 Comm: netifd Tainted: G           O       6.12.57 #0
[   21.200046] Tainted: [O]=OOT_MODULE
[   21.203534] Hardware name: Gemtek W1700K (DT)
[   21.207892] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   21.214861] pc : phy_detach+0xe8/0x194
[   21.218628] lr : phy_detach+0xe4/0x194
[   21.222387] sp : ffffffc0823ebae0
[   21.225702] x29: ffffffc0823ebae0 x28: ffffff8005451c00 x27: 0000000000000000
[   21.232846] x26: 0000000000000000 x25: 0000000000001003 x24: ffffffc080cf8240
[   21.239990] x23: 0000000000001002 x22: ffffff807fc527f8 x21: ffffffc080c93318
[   21.247125] x20: ffffff8001cfc000 x19: ffffff80036f7000 x18: ffffff8012cde323
[   21.254269] x17: 303a302d30333537 x16: 000000000000000e x15: 0000005139b64de4
[   21.261413] x14: 0000000000000001 x13: ffffff80020b46c0 x12: 0000000000000001
[   21.268550] x11: ffffff80020b46c0 x10: ffffff8005451cc0 x9 : ffffff807dbf5200
[   21.275694] x8 : ffffff80020b46c0 x7 : ffffff80010a8ed0 x6 : 0000000000000000
[   21.282838] x5 : 00000000000013f8 x4 : 0000000000000000 x3 : ffffff8005451c00
[   21.289983] x2 : 0000000000000000 x1 : ffffff8005451c00 x0 : 0000000000000000
[   21.297128] Call trace:
[   21.299575]  phy_detach+0xe8/0x194
[   21.302988]  phylink_fwnode_phy_connect+0x194/0x1c0
[   21.307874]  phylink_of_phy_connect+0x18/0x20
[   21.312248]  airoha_dev_open+0x44/0x2b0
[   21.316094]  __dev_open+0xe8/0x15c
[   21.319505]  __dev_change_flags+0x154/0x1c0
[   21.323698]  dev_change_flags+0x20/0x64
[   21.327541]  dev_ifsioc+0x28c/0x444
[   21.331032]  dev_ioctl+0x290/0x4b8
[   21.334434]  sock_ioctl+0x31c/0x444
[   21.337923]  __arm64_sys_ioctl+0x354/0xe60
[   21.342020]  invoke_syscall.constprop.0+0x58/0xec
[   21.346725]  do_el0_svc+0x3c/0xd4
[   21.350041]  el0_svc+0x18/0x60
[   21.353097]  el0t_64_sync_handler+0x118/0x124
[   21.357455]  el0t_64_sync+0x150/0x154

Make sure the phydev have a driver before asserting a signal or we would
dereference a NULL address.

Signed-off-by: Balázs Triszka <[email protected]>
[ improve commit description ]
Link: https://github.com/openwrt/openwrt/pull/20740
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoairoha: backport and fix pinctrl driver
Chukun Pan [Wed, 12 Nov 2025 15:18:09 +0000 (23:18 +0800)]
airoha: backport and fix pinctrl driver

Backport changes to the pinctrl driver to bring it closer to
the upstream version. Also fix the bug in the pinctrl driver:

pinctrl-airoha ...pinctrl: invalid function mdio in map table

Fixes: bd7f5b3 ("airoha: replace AN7583 pinctrl patch with upstream version")
Signed-off-by: Chukun Pan <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20770
Signed-off-by: Christian Marangi <[email protected]>
2 weeks agoairoha: reorder I2C and UART patches
Chukun Pan [Mon, 3 Nov 2025 15:01:28 +0000 (23:01 +0800)]
airoha: reorder I2C and UART patches

The I2C and UART patch numbers are duplicates
of other patches, so reordered them.

Signed-off-by: Chukun Pan <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/20770
Signed-off-by: Christian Marangi <[email protected]>