]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
7 weeks agorealtek: eth: convert rteth_XXXX_hw_stop() to regmap
Markus Stockhausen [Thu, 23 Apr 2026 11:09:07 +0000 (13:09 +0200)] 
realtek: eth: convert rteth_XXXX_hw_stop() to regmap

Use regmap in the following functions

- rteth_838x_hw_stop()
- rteth_839x_hw_stop()
- rteth_930x_hw_stop()
- rteth_931x_hw_stop()

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23067
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agomediatek: filogic: Add new Router model ZBT-Z8106AX-S 22912/head
Jörg Seitz [Sun, 24 Aug 2025 04:51:11 +0000 (06:51 +0200)] 
mediatek: filogic: Add new Router model ZBT-Z8106AX-S

Device support for zbt-z8106ax-s

Specifications:

SoC: MediaTek MT7981B
RAM: 256MiB
Flash: Winbond SPI-NAND 128 MiB
Switch: 1 WAN, 4 LAN (Gigabit) MediaTek MT7531
Buttons: Reset
Power: DC 12V 1A
WiFi: MT7981B 2.4Ghz & 5Ghz
USB 3
M2 slot to hold LTE modem
1 nano SIM slot (user controllable)
Hardware watchdog (confirmed to work)

Router comes in a plastic tower with all antennas internal.
 - 4 antennas for LTE 4G/5G communication
 - 2 antennas for Wifi 2.4 GHz
 - 2 antennas for Wifi 5 GHz

Led Layout:

Power (green, user controllable, default set to OpenWrt Status)
Mobile (green, user controllable)
WLAN 2.4G (green, user controllable)
WLAN 5G (green, user controllable)

WAN (amber, user controllable, set to show eth1)
LAN1 (amber, hardware controlled)
LAN2 (amber, hardware controlled)
LAN3 (amber, hardware controlled)
LAN4 (amber, hardware controlled)

SIM Slot:

Controlled via exported GPIO named SIM.

echo "0" > /sys/class/gpio/sim/value
 - turns off sim slot labelled SIM

echo "1" > /sys/class/gpio/sim/value
 - turns on sim slot labelled SIM

---

Installation:

A. Through U-Boot menu:

- Prepare your connecting computer to use a static IP in
  network 192.168.1.0/24 like
  a) 192.168.1.10 netmask 255.255.255.0 (legacy notation)
  b) 192.168.1.10/24 (CIDR notation)
- Power down the router and hold in the Reset button.
- While holding in the button power up the router again.
- Hold the button in for 10 seconds and then release.
- Use your browser to go to 192.168.1.1
- If you see a GUI allowing for flashing firmware then you got the right spot.
- Upload the **Factory** image file.

Note: U-Boot GUI it can be used to recover from an incorrect firmware flash.

B. Through OpenWrt Dashboard:

If your router comes with OpenWrt preinstalled (modified by vendor),
you can easily upgrade by going to the dashboard (192.168.1.1) and
then navigate to "System" -> "Backup/Flash firmware"
Flash OpenWRT firmware.
Important: Take care to deselect (untick) option
"keep settings". Settings done by vendor are incompatible with
versions 24.10 or 25.12.

MAC Addresses:

MAC Addresses were found in Factory partition:

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

Hardware Watchdog:

Device features a GPIO controlled hardware watchdog.
Verfied by removing procd controlled watchdog and
seeing device rebooting.

---

Notes:
The zbt-z8106ax-s could be ordered from vendor with a variety of modems.
Mine came with a 4G LTE modem Quectel EC200A.
Quectel firmware was at EC200AEUHAR01A30M16.
Choices for ordering with 5G LTE were available.

Modem communication is set to ethernet control mode (ECM) by vendor.

Package modemmanager works fine with Quectel EC200A.
You may also decide to use FUjR/Qmodem github repository
to have it manage LTE modem.

Please take note that internal switch port named lan5 isn't
wired to LTE modem in model S as opposed to model T.
Just removing lan5 from DTS did cause unwanted reboots whenever
a cable is plugged into LAN ports 1-4. Disabling port lan5
in DTS however works fine. No unwanted reboots due to
plug/unplug cable into any lan or wan port.

Signed-off-by: Jörg Seitz <github.joeterminal@xoxy.net>
Link: https://github.com/openwrt/openwrt/pull/22912
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agomediatek: add GL.iNET GL-MT3600BE support 22476/head
Tianling Shen [Wed, 18 Mar 2026 09:49:56 +0000 (17:49 +0800)] 
mediatek: add GL.iNET GL-MT3600BE support

Hardware specification:
  SoC: MediaTek MT7987A 4x A53
  Flash: 512 MB SPI-NAND
  RAM: 512MB DDR4
  Ethernet: 2x 2.5GbE (built-in + RTL8221B)
  WiFi: MediaTek MT7990
  USB: 1x USB 3.0 port
  Button: Mode, Reset
  Power: Type-C PD 5/9/12V

Flash instructions:
  1. Power on the device with 'reset' key pressed for 5s
  2. Set static IP on your PC:
     IP 192.168.1.10/24, GW 192.168.1.1
  3. Visit http://192.168.1.1 and upload sysupgrade.bin

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/22476
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agomicrochipsw: use 6.18 as default and drop 6.12
Robert Marko [Fri, 24 Apr 2026 10:24:10 +0000 (12:24 +0200)] 
microchipsw: use 6.18 as default and drop 6.12

Now that 6.18 is stable there is no point in keeping 6.12 around.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 weeks agorockchip: update irq affinity for RK3528 devices 21770/head
Chukun Pan [Sat, 31 Jan 2026 10:10:15 +0000 (18:10 +0800)] 
rockchip: update irq affinity for RK3528 devices

Since DW PCIe can adjust interrupts on SoC that only support
MSI, adjust the interrupt of r8169 for the RK3528 devices.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/21770
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agogeneric: backport MSI affinity support for DW PCIe
Chukun Pan [Sun, 25 Jan 2026 15:18:02 +0000 (23:18 +0800)] 
generic: backport MSI affinity support for DW PCIe

Currently, the DesignWare PCIe driver cannot configure interrupts on
SoC that do not support MSIX. All MSI interrupts are handled by CPU0.
Backport MSI affinity support for the PCI dwc driver from linux-next,
so now we can adjust MSI interrupts to other CPU cores.

Tested on HINLINK H28K (RK3528) and OrangePi R2S (Ky X1).

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/21770
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agowifi-scripts: ucode: add missing fields for station/vlan schema 22617/head
Rany Hany [Mon, 20 Apr 2026 09:47:26 +0000 (12:47 +0300)] 
wifi-scripts: ucode: add missing fields for station/vlan schema

This adds the missing 'iface' field for both station and VLAN.
On VLAN, we add all network_config_attr to the schema as well
per wireless.uc.

Fixes: https://github.com/openwrt/openwrt/issues/22165
Signed-off-by: Rany Hany <rany_hany@riseup.net>
Link: https://github.com/openwrt/openwrt/pull/22617
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agowifi-scripts: ucode: add bridge_isolate and network_vlan to schema
Rany Hany [Thu, 26 Mar 2026 17:16:37 +0000 (19:16 +0200)] 
wifi-scripts: ucode: add bridge_isolate and network_vlan to schema

These were missing from schema. Add them.

Fixes: https://github.com/openwrt/openwrt/issues/22620
Signed-off-by: Rany Hany <rany_hany@riseup.net>
Link: https://github.com/openwrt/openwrt/pull/22617
[Reordered attributes]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agox86: enable HYPERV_VMBUS 22860/head
Rye Sears [Thu, 9 Apr 2026 00:58:51 +0000 (00:58 +0000)] 
x86: enable HYPERV_VMBUS

enable HYPERV_VMBUS in x86/generic and x86/64.

Fixes: #22846
Signed-off-by: Rye Sears <xlighting@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22860
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoairoha: disable afe by default for an7581 22660/head
Chukun Pan [Sat, 28 Mar 2026 08:19:20 +0000 (16:19 +0800)] 
airoha: disable afe by default for an7581

The audio should only be enabled when the sound
node is enabled. This fixes the following error:

an7581-audio 1fbe2200.afe: probe with driver an7581-audio failed with error -2

Fixes: 7b55651 ("airoha: enable I2S sound driver and add nodes for eMMC RFB board")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/22660
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agontfs: update to 2026-04-25 23090/head
Qingfang Deng [Sat, 25 Apr 2026 03:32:34 +0000 (11:32 +0800)] 
ntfs: update to 2026-04-25

Update to the latest version, and fix build on targets without
FS_POSIX_ACL.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23090
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoocteon: enable 6.18 testing kernel 23031/head
Andrew LaMarche [Tue, 21 Apr 2026 13:55:41 +0000 (13:55 +0000)] 
octeon: enable 6.18 testing kernel

Enable the 6.18 testing kernel for Octeon.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23031
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agokernel: crypto: fix build with Linux >= 6.18 after octeon-md5 removal
Andrew LaMarche [Wed, 22 Apr 2026 12:24:10 +0000 (12:24 +0000)] 
kernel: crypto: fix build with Linux >= 6.18 after octeon-md5 removal

Linux commit c9e5ac0 ("lib/crypto: mips/md5: Migrate optimized code into
library") removed the MIPS-Octeon-specific MD5 implementation
(octeon-md5.ko) and replaced it with an optimized library implementation
in lib/crypto.

As a result, CONFIG_CRYPTO_MD5_OCTEON and the module
arch/mips/crypto/octeon-md5.ko no longer exist in kernels >= 6.18.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23031
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agoocteon: refresh 6.18 patches
Andrew LaMarche [Tue, 21 Apr 2026 18:19:01 +0000 (18:19 +0000)] 
octeon: refresh 6.18 patches

Refresh patches for 6.18.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23031
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agoocteon: refresh 6.18 kernel config
Andrew LaMarche [Tue, 21 Apr 2026 14:01:57 +0000 (14:01 +0000)] 
octeon: refresh 6.18 kernel config

Add missing symbols for 6.18.

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23031
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agokernel/octeon: restore files for v6.12
Andrew LaMarche [Tue, 21 Apr 2026 13:18:04 +0000 (13:18 +0000)] 
kernel/octeon: restore files for v6.12

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: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23031
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agokernel/octeon: create files for v6.18 (from v6.12)
Andrew LaMarche [Tue, 21 Apr 2026 13:18:04 +0000 (13:18 +0000)] 
kernel/octeon: create files for v6.18 (from v6.12)

This is an automatically generated commit.

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

Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23031
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agokernel: hide kmod-pppox 23077/head
Qingfang Deng [Fri, 24 Apr 2026 08:08:34 +0000 (16:08 +0800)] 
kernel: hide kmod-pppox

The pppox module is a dependency of pppoe/pptp/pppol2tp and does not
have a separate Kconfig symbol.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23077
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agokernel: backport RTL8157 support to 6.18 23088/head
Aleksander Jan Bajkowski [Fri, 24 Apr 2026 20:35:44 +0000 (22:35 +0200)] 
kernel: backport RTL8157 support to 6.18

Backport support for the RTL8157. The RTL8157 is a low-cost chipset
designed for USB to 5Gb Ethernet adapters.

Tested on Sabrent NT-C5GA (RTL8157), Wavlink WL-NWU340G (RTL8157) and
UGREEN CM648 (RTL8156BG) adapters.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/23088
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorealtek: fix SMBus Rollball access 23049/head
Jan Hoffmann [Wed, 22 Apr 2026 15:48:20 +0000 (17:48 +0200)] 
realtek: fix SMBus Rollball access

The Rollball command byte needs to be written last. Otherwise the
controller might access the wrong register or write the wrong value.

Fixes: 1fc19bc06edc ("realtek: rtl93xx: mdio-smbus support for clause 45 and Rollball SFPs")
Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://github.com/openwrt/openwrt/pull/23049
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agogeneric: net: phy: realtek: don't disable MDIO address 0 for PHY in SFP module 23065/head
Jan Hoffmann [Thu, 23 Apr 2026 14:58:40 +0000 (16:58 +0200)] 
generic: net: phy: realtek: don't disable MDIO address 0 for PHY in SFP module

At least the XikeStor SKT-2.5G-100M SFP module seems to internally use
MDIO address 0 to access the PHY. This module allows accessing PHY
registers using Rollball protocol on address 0x51, and also provides
read-only C22 access on address 0x56. However, after disabling the
PHYAD0 configuration bit, only 0xffff can be read via both methods
(except for MMD device 30 which can still be accessed).

Since having MDIO address 0 enabled shouldn't do any harm on SFP modules
just leave the configuration bit alone in that case.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://github.com/openwrt/openwrt/pull/23065
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorealtek: mdio: fix "SMY" typo 23070/head
Markus Stockhausen [Thu, 23 Apr 2026 20:32:08 +0000 (22:32 +0200)] 
realtek: mdio: fix "SMY" typo

The defines should have been named SMI like everywhere else.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23070
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agorealtek: mdio: harden defines
Markus Stockhausen [Thu, 23 Apr 2026 20:30:04 +0000 (22:30 +0200)] 
realtek: mdio: harden defines

Add brackets to avoid silent bugs.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23070
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agokernel: rtl8261n: add post-reset MDIO stabilization delay 23076/head
Jonas Jelonek [Fri, 24 Apr 2026 09:07:34 +0000 (11:07 +0200)] 
kernel: rtl8261n: add post-reset MDIO stabilization delay

After the RTL8261N asserts a reset, the MDIO bus becomes temporarily
unavailable during the chip's reinitialization sequence. Any subsequent
read or write issued before the PHY has stabilized will fail.

Add a 30ms delay after triggering the reset to ensure the chip is reachable
via MDIO before resuming communication.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Link: https://github.com/openwrt/openwrt/pull/23076
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agokernel: rtl8261n: always configure as USXGMII
Sven Eckelmann [Fri, 24 Apr 2026 06:50:21 +0000 (08:50 +0200)] 
kernel: rtl8261n: always configure as USXGMII

In the past, all the configuration of SerDes and PHYs on the realtek
switches were done  using u-boot (`rtk init`). But since RTL930x switched
to SerDes configuration under Linux, the SoC side is no longer using the
Realtek-proprietary variant of USXGMII. The communication to the RTL8261N
PHYs on those switches broke because of this incompatibility.

Enabling the full initialization on `CONFIG_MACH_REALTEK_RTL` converts also
the PHY side to the standard USXGMII and therefore ensures that both sides
speak the same dialect.

Co-authored-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Link: https://github.com/openwrt/openwrt/pull/23076
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agokernel: rtl8261n: drop unreachable PHY register patch
Sven Eckelmann [Fri, 24 Apr 2026 06:50:21 +0000 (08:50 +0200)] 
kernel: rtl8261n: drop unreachable PHY register patch

The PHY register patch in question is gated by `CONFIG_MACH_REALTEK_RTL`,
has no documented/expected behavior, and is in practice unreachable:
`phy_patch()` is only called from `rtkphy_config_init()`, which is exits
(too) early for `CONFIG_MACH_REALTEK_RTL` builds.

Remove it as a cleanup step before enabling standard USXGMII configuration
for these PHYs.

Fixes: b77fa45d1278 ("kernel: fix rtl8261n driver for realtek")
Co-authored-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Link: https://github.com/openwrt/openwrt/pull/23076
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agowolfssl: update to 5.9.1 23072/head
Sander van Deijck [Fri, 24 Apr 2026 00:43:03 +0000 (02:43 +0200)] 
wolfssl: update to 5.9.1

For changes, see:
https://github.com/wolfSSL/wolfssl/releases/tag/v5.9.1-stable

This includes a fix for a critical (CVSS 9.3) vulnerability:
https://github.com/advisories/GHSA-f5h9-5q52-qrx7

Signed-off-by: Sander van Deijck <sander@vandeijck.com>
Link: https://github.com/openwrt/openwrt/pull/23072
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agomediatek: drop v6.12 and default to v6.18 22970/head
Daniel Golle [Fri, 17 Apr 2026 13:42:20 +0000 (14:42 +0100)] 
mediatek: drop v6.12 and default to v6.18

Switch to kernel v6.18 and drop v6.12.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
7 weeks agorealtek: rtl930x: add Hasivo S600WP-5GT-2SX-SE 22310/head
Carlo Szelinsky [Sat, 11 Apr 2026 15:11:25 +0000 (17:11 +0200)] 
realtek: rtl930x: add Hasivo S600WP-5GT-2SX-SE

This commit adds support for Hasivo S600WP-5GT-2SX-SE switch.

Device specification
--------------------
SoC Type:               Realtek RTL9303
RAM:                    128MB DDR3 SDRAM
Flash:                  Fudan FM25Q128A (16 MB)
Ethernet:               5x RTL8221B 10/100/1000/2500Mbps PHY (RJ45)
                        2x SFP+ 10G (I2C/DOM via bit-banged GPIO)
LEDs:                   1x power green (no control)
                        1x system green (via RTL9303 GPIO)
                        3x RJ45 LEDs/port (HC595 shift regs on LED SPI)
                                1x Green (1G link)
                                1x Green (10M/100M link)
                                1x Orange (2.5G link)
                        2x SFP+ LEDs/port (HC595 shift regs on LED SPI)
                                1x 10G link
                                1x 1G link
Button:                 Reset
USB ports:              None
Bootloader:             Realtek U-Boot 2011.12
PoE:                    1x HS104PTI for 802.3af/at/bt PoE (driver
                        will follow in a separate patch)

Installing OpenWrt
------------------
1. UART RJ45 requires soldering a connector to the empty footprint (RJ1).
   (Amphenol RJHSEE380 or similar)
2. Connect to UART 38400@8n1, using Cisco Console Rollover cable (RS232)
3. Enter bootloader by pressing esc key during boot
4. Enter password `Hs2021cfgmg`
5. Type `XXXX` to get into U-Boot
6. Increase baudrate: `setenv baudrate 115200`
7. Use serial transfer (Y modem) via minicom:
   `loady 0x84f00000`
   Then send the initramfs image via minicom's Y modem upload.
8. `bootm 0x84f00000`

Now you should be in OpenWrt, and can use sysupgrade to install.

Signed-off-by: Carlo Szelinsky <github@szelinsky.de>
Link: https://github.com/openwrt/openwrt/pull/22310
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoutil-linux: fix build on Linux v6.18 against musl 23059/head
Thomas Weißschuh [Thu, 23 Apr 2026 09:27:03 +0000 (11:27 +0200)] 
util-linux: fix build on Linux v6.18 against musl

Backport an upstream patch to avoid usages of an undefined
AT_HANDLE_FID.

Closes: https://github.com/openwrt/openwrt/issues/23058
Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/23059
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: pcs: switch SerDes polarity to {rx,tx}-polarity 23044/head
Jonas Jelonek [Wed, 22 Apr 2026 08:33:56 +0000 (08:33 +0000)] 
realtek: pcs: switch SerDes polarity to {rx,tx}-polarity

With the recent backport of the common PHY properties infrastructure
(phy-common-props and the phy_get_manual_{rx,tx}_polarity() helpers) to
OpenWrt, the generic `{rx,tx}-polarity` device tree properties are now
usable for the Realtek PCS driver. Switch the driver and all affected
boards from the local vendor-specific `realtek,pnswap-{rx,tx}` booleans
to the common properties.

Add a `config_polarity` SerDes op (implemented by RTL930x and RTL931x;
RTL838x/RTL839x polarity support not yet added) and a generic wrapper
that resolves the requested polarity via phy_get_manual_{rx,tx}_polarity()
and dispatches to the op. Variants without the op silently accept the
default polarity but warn when a non-default polarity is requested,
since that cannot be honored.

Move the polarity programming out of the variant setup_serdes callbacks
into rtpcs_pcs_config, so it runs before setup_serdes. This matches the
ordering used by the vendor SDK, which configures polarity first.

Update all board DTS files that previously used `realtek,pnswap-{rx,tx}`
to the new `{rx,tx}-polarity = <PHY_POL_INVERT>` property, and select
PHY_COMMON_PROPS from Kconfig.

Each SerDes now retains its DT node for later polarity lookup. Use
for_each_child_of_node_scoped for the iterator, and register a
devm_add_action_or_reset for each stored reference so it is released on
unbind or probe failure.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23044
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: eth: harden receive path 22884/head
Markus Stockhausen [Fri, 10 Apr 2026 20:02:59 +0000 (22:02 +0200)] 
realtek: eth: harden receive path

The hardware usually takes care that

- a packet is no larger than the available buffer
- has at least a FCS checksum of 4 bytes

Nevertheless be cautious and improve the existing
packet check. Just in case ...

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/22884
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agosunxi: enable 6.18 testing kernel
Zoltan HERPAI [Thu, 5 Feb 2026 14:13:00 +0000 (14:13 +0000)] 
sunxi: enable 6.18 testing kernel

The sunxi target now supports 6.18 kernel as testing.

Tested on:
 - Linksprite pcDuino2 (cortexa8/a10)
 - Olimex Olinuxino A20 Micro (cortexa7/a20)
 - OrangePi 2 (cortexa7/h3)
 - OrangePi Zero2 (cortexa53/h616)

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agosunxi: 6.18: refresh patches
Zoltan HERPAI [Thu, 5 Feb 2026 15:35:54 +0000 (15:35 +0000)] 
sunxi: 6.18: refresh patches

Refresh patches as required.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agosunxi: 6.18: add missing symbols
Zoltan HERPAI [Thu, 5 Feb 2026 15:27:47 +0000 (15:27 +0000)] 
sunxi: 6.18: add missing symbols

Add sunxi-related missing symbols that were found during 6.18 migration, and
reorder configs.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agokernel/sunxi: restore files for v6.12
Zoltan HERPAI [Thu, 25 Dec 2025 23:11:00 +0000 (23:11 +0000)] 
kernel/sunxi: restore files for v6.12

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: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agokernel/sunxi: create files for v6.18 (from v6.12)
Zoltan HERPAI [Thu, 25 Dec 2025 23:10:59 +0000 (23:10 +0000)] 
kernel/sunxi: create files for v6.18 (from v6.12)

This is an automatically generated commit.

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

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agobase-files: ipcalc.sh: get rid of `basename` dependency 23060/head
Andre Heider [Thu, 23 Apr 2026 08:38:06 +0000 (10:38 +0200)] 
base-files: ipcalc.sh: get rid of `basename` dependency

The netifd/dhcp flow uses this, and as uxc mounts netifd in a
container, this allows not mounting `basename` for just a usage.

References: https://github.com/openwrt/procd/pull/34
Suggested-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Andre Heider <a.heider@gmail.com>
7 weeks agomvebu: use libdeflate for gzip 23054/head
Rosen Penev [Sun, 19 Apr 2026 21:43:58 +0000 (14:43 -0700)] 
mvebu: use libdeflate for gzip

Small size reduction.

Tested with Turris Omnia.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23054
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoairoha: an7581: fix default package selection for Kite EVB device
Christian Marangi [Thu, 23 Apr 2026 15:04:33 +0000 (17:04 +0200)] 
airoha: an7581: fix default package selection for Kite EVB device

The Kite EVB device wrongly select an invalid package for NPU firmware
where the correct one should be the airoha-en7581-npu-firmware one.

Fix the wrong package to restore compilation of the Airoha target.

Fixes: 0cf516751af3 ("airoha: an7581: generalize eMMC DTS and add Kite variant")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
7 weeks agofirmware: better specify the supported WiFi chip for basic AN7581 NPU FW
Christian Marangi [Thu, 23 Apr 2026 15:01:09 +0000 (17:01 +0200)] 
firmware: better specify the supported WiFi chip for basic AN7581 NPU FW

The basic AN7581 NPU FW also supports WiFi offload for MT7992 WiFi chip.
Add this information in the package description to clarify this.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
7 weeks agox86: drop 6.12 support 22893/head
Mieczyslaw Nalewaj [Sat, 11 Apr 2026 20:59:01 +0000 (22:59 +0200)] 
x86: drop 6.12 support

Drop patches and configs for Linux 6.12.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/22893
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agox86: use kernel 6.18 by default
Mieczyslaw Nalewaj [Sat, 11 Apr 2026 20:53:30 +0000 (22:53 +0200)] 
x86: use kernel 6.18 by default

Switch to Linux kernel version 6.18.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/22893
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: enable 6.18 testing kernel 22922/head
Shiji Yang [Sat, 11 Apr 2026 00:52:16 +0000 (08:52 +0800)] 
lantiq: enable 6.18 testing kernel

The 6.18 testing kernel for lantiq target is ready now.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: update kmod-dsa-gswip module .ko path
Shiji Yang [Mon, 13 Apr 2026 12:32:35 +0000 (20:32 +0800)] 
lantiq: update kmod-dsa-gswip module .ko path

The source files were moved into dedicated directory.

Link: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.18.y&id=cb477c30512db29325c0503ba96a6158a61b7e7c
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: adapt to the 6.18 kernel to fix build errors
Shiji Yang [Thu, 16 Apr 2026 10:59:58 +0000 (18:59 +0800)] 
lantiq: adapt to the 6.18 kernel to fix build errors

devm_gpio_request() was removed since kernel 6.17. Convert it to
devm_gpio_request_one().

Link: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.18.y&id=a5589313383074c48a1b3751d592a6e084ae0573
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: refresh 6.18 kernel config files
Shiji Yang [Fri, 10 Apr 2026 15:07:02 +0000 (23:07 +0800)] 
lantiq: refresh 6.18 kernel config files

CONFIG_PAGE_BLOCK_MAX_ORDER was set to 10 as the page size is 4k.

All other kernel symbols are automatically refreshed by
`make kernel_oldconfig CONFIG_TARGET=target` and
`make kernel_oldconfig CONFIG_TARGET=subtarget`.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: refresh 6.18 kernel patches
Shiji Yang [Fri, 10 Apr 2026 15:06:46 +0000 (23:06 +0800)] 
lantiq: refresh 6.18 kernel patches

Manually resolve the patch conflicts on new LTS kernel.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: remove upstreamed patches
Shiji Yang [Fri, 10 Apr 2026 14:23:48 +0000 (22:23 +0800)] 
lantiq: remove upstreamed patches

They are included in the 6.18 kernel.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: restore kernel 6.12 config files and patches
Shiji Yang [Fri, 10 Apr 2026 14:21:15 +0000 (22:21 +0800)] 
lantiq: restore kernel 6.12 config files and patches

Copy patches and kernel configs from 6.18 kernel to restore the
default 6.12 kernel support files.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agolantiq: rename patchset and kernel configs to 6.18
Shiji Yang [Fri, 10 Apr 2026 14:20:11 +0000 (22:20 +0800)] 
lantiq: rename patchset and kernel configs to 6.18

This is a preparation for 6.18 kernel support. It can help us
track the files history by using the Git tool.

Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22922
Signed-off-by: Nick Hainke <vincent@systemli.org>
7 weeks agomodules: video: introduce DRM client setup module
Zoltan HERPAI [Fri, 17 Apr 2026 16:06:09 +0000 (18:06 +0200)] 
modules: video: introduce DRM client setup module

6.14 has introduced a DRM client setup library. Add kmod-drm-client-lib
to support it, and add it as a dependency to DRM modules which depend on it.

Link: https://github.com/openwrt/openwrt/pull/22975
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
7 weeks agoath79: add support for MikroTik RouterBOARD 960PGS 22164/head
Oskari Lemmela [Fri, 19 Nov 2021 05:36:22 +0000 (07:36 +0200)] 
ath79: add support for MikroTik RouterBOARD 960PGS

This patch adds support for the MikroTik RouterBOARD 960PGS (hEX
PoE/PowerBox Pro) router. The device has a USB 2.0 port and an SFP port for
adding optical fiber connectivity. The ports 2-5 can power other PoE
capable devices with the same voltage as applied to the unit.

Specifications:

- SoC: Qualcomm Atheros QCA9557
- Flash: 16 MB (SPI)
- RAM: 128 MB
- 1x Ethernet SFP: 1000
- 1x Ethernet RJ45: 10/100/1000 port with passive POE in
- 4x Ethernet RJ45: 10/100/1000 ports with 802.3af/at PoE out
- 1x USB 2.0 host port
- 1x reset button

See [1] and [2] for more details.

Flashing:
TFTP boot initramfs image and then perform sysupgrade. Follow common
MikroTik procedure as in https://openwrt.org/toh/mikrotik/common.

Link: https://mikrotik.com/product/RB960PGS
Link: https://mikrotik.com/product/RB960PGS-PB
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
Signed-off-by: Chester A. Unal <chester.a.unal@arinc9.com>
7 weeks agoath79: mikrotik: compile SWCONFIG and AR8216_PHY as modules
Chester A. Unal [Tue, 24 Feb 2026 13:39:36 +0000 (15:39 +0200)] 
ath79: mikrotik: compile SWCONFIG and AR8216_PHY as modules

Unset the SWCONFIG symbol and AR8216_PHY which selects SWCONFIG. Add
kmod-switch-ar8xxx, which enables AR8216_PHY, to DEFAULT_PACKAGES for the
subtarget. With this, swconfig driver will be now compiled as a module, as
kmod-switch-ar8xxx selects kmod-swconfig.

Refresh the config-default file for ath79/mikrotik while at it.

This change makes it possible to disable the swconfig driver for MikroTik
RouterBOARD 960PGS (hEX PoE/PowerBox Pro).

Signed-off-by: Chester A. Unal <chester.a.unal@arinc9.com>
7 weeks agogeneric: 6.18: sync MxL862xx driver with upstream Linux 23048/head
Daniel Golle [Wed, 22 Apr 2026 03:14:20 +0000 (04:14 +0100)] 
generic: 6.18: sync MxL862xx driver with upstream Linux

Swap pending with accepted patches, rebase remaining pending patches
on top of new upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
7 weeks agogeneric: 6.12: sync MxL862xx driver with upstream Linux
Daniel Golle [Wed, 22 Apr 2026 02:56:43 +0000 (03:56 +0100)] 
generic: 6.12: sync MxL862xx driver with upstream Linux

Swap pending with accepted patches, rebase remaining pending patches
on top of new upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
7 weeks agoimx: cortexa9: ventana, fix profiles names in profiles.json 22994/head
Mario Andrés Pérez [Sat, 18 Apr 2026 12:38:57 +0000 (14:38 +0200)] 
imx: cortexa9: ventana, fix profiles names in profiles.json

These two image profiles overwrite DEVICE_NAME making the two image
profiles appear with the same name "ventana" in the "profiles.json"
mixing ramdomly the two profiles.

Use BOARD_NAME instead to keep the two profiles names unique (orginal
DEVICE_NAME) hence generating a coherent "profiles.json".

Since there are image recipes hardconding DEVICE_NAME, change them to use
BOARD_NAME if defined, in order to preserve the previous names used in
those recipes.

Fixes: cbc8bcfbaa71fe0928bf07d29ec0fe6217fd51ad ("imx6: image: use vendor_model scheme")
Reported-by: Eric Fahlgren <ericfahlgren@gmail.com>
Signed-off-by: Mario Andrés Pérez <mapb_@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22994
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoutil-linux: update to 2.42 22878/head
Thomas Weißschuh [Fri, 10 Apr 2026 15:40:53 +0000 (17:40 +0200)] 
util-linux: update to 2.42

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

New:
0001-meson-test-for-statx-stx_mnt_id-in-sys-stat.h.patch

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/22878
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agotools: util-linux: update to 2.42
Thomas Weißschuh [Fri, 10 Apr 2026 15:30:38 +0000 (17:30 +0200)] 
tools: util-linux: update to 2.42

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

Remove upstreamed:
010-meson-curses.patch

New:
0001-pidutils-gracefully-handle-systems-without-sys-vfs.h.patch

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/22878
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agokernel: enable stmmac driver build for loongarch64 22923/head
Tianling Shen [Tue, 14 Apr 2026 03:18:44 +0000 (11:18 +0800)] 
kernel: enable stmmac driver build for loongarch64

This is required to build the motorcomm dwmac driver which is widely
used on loongson platforms.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/22923
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agokernel: backport Motorcomm YT6801 PCIe ethernet driver support
Tianling Shen [Thu, 26 Mar 2026 06:05:35 +0000 (14:05 +0800)] 
kernel: backport Motorcomm YT6801 PCIe ethernet driver support

Motorcomm YT6801 is a PCIe ethernet controller based on DWMAC4 IP. It
integrates an GbE phy, supporting WOL, VLAN tagging and various types
of offloading. It ships an on-chip eFuse for storing various vendor
configuration, including MAC address.

The PM and plat_data functions were slightly modified to build with
current kernel.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/22923
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agobuild: do not set CCACHE_COMPILERCHECK 22995/head
Hauke Mehrtens [Sat, 18 Apr 2026 17:47:01 +0000 (19:47 +0200)] 
build: do not set CCACHE_COMPILERCHECK

Stop overriding CCACHE_COMPILERCHECK from rules.mk and rely on
ccache's default, which hashes the compiler binary's mtime and
size.

For a local tree that is enough: the toolchain only changes when
it is rebuilt, and a rebuild updates mtime and size. Users who
want a stricter check can still set CCACHE_COMPILERCHECK in their
environment.

CI does not depend on this export either. The workflow writes a
secondary ccache.conf with

  compiler_check=string:<toolchain-commit-sha>

so the cache key is tied to the toolchain source revision. That
is both stricter than the previous "%compiler% -v -c" setting
and portable across runners, where compiler mtimes would not
match after restoring a cache archive.

Link: https://github.com/openwrt/openwrt/pull/22995
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 weeks agoqualcommax: ipq50xx: ax6000: enable pcie1 for QCA9887
chinawrj [Wed, 22 Apr 2026 12:41:59 +0000 (20:41 +0800)] 
qualcommax: ipq50xx: ax6000: enable pcie1 for QCA9887

The Xiaomi AX6000 has three radios:
  - IPQ5018 integrated 2.4 GHz (ath11k AHB, wifi0)
  - QCN9024 on PCIe0 (ath11k PCI, QCA8074-class 5 GHz)
  - QCA9887 on PCIe1 (ath10k, 5 GHz)

The DTS previously kept pcie1 disabled because the controller
could not bring the link up. The real cause was the PERST GPIO
polarity: the stock device-tree uses GPIO_ACTIVE_HIGH on GPIO18
for the QCA9887 card, while OpenWrt had GPIO_ACTIVE_LOW, leaving
the card held in reset.

With the correct polarity the PCIe1 link trains and the QCA9887
enumerates at 01:00.0. ath10k loads firmware-2.bin, registers
phy0 with mac80211, and provides a functional 5 GHz AP.

Tested on a reworked Xiaomi AX6000 with QCA9887 soldered in.
All three radios enumerate, load firmware and beacon
successfully; scan, association and data traffic confirmed on
each radio.

Signed-off-by: chinawrj <chinawrj@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23047
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: mdio: simplify regmap_update_bits 23039/head
Markus Stockhausen [Tue, 21 Apr 2026 19:50:17 +0000 (21:50 +0200)] 
realtek: mdio: simplify regmap_update_bits

Some occurrences of regmap_update_bits can be simplified by
using other regmap commands. Use set_bits/clear_bits/assign_bits
for better readability.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23039
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dsa: drop legacy table commands 23037/head
Markus Stockhausen [Tue, 21 Apr 2026 17:36:07 +0000 (19:36 +0200)] 
realtek: dsa: drop legacy table commands

All consumers of legacy table commands have been refactored and
use the rtl_table helpers. Drop unused code.

rtl839x_exec_tbl2_cmd() cannot be dropped as it is still used
in the qos code. Keep it for now.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23037
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dsa: convert rtl931x stp functions to table helpers
Markus Stockhausen [Tue, 21 Apr 2026 17:36:07 +0000 (19:36 +0200)] 
realtek: dsa: convert rtl931x stp functions to table helpers

rtldsa_931x_stp_get() and rtl931x_stp_set() use legacy table code.
Replace that with rtl_table_xxx() helpers.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23037
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dsa: convert rtl930x stp functions to table helpers
Markus Stockhausen [Tue, 21 Apr 2026 17:36:07 +0000 (19:36 +0200)] 
realtek: dsa: convert rtl930x stp functions to table helpers

rtldsa_930x_stp_get() and rtl930x_stp_set() use legacy table code.
Replace that with rtl_table_xxx() helpers.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23037
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dsa: convert rtl839x stp functions to table helpers
Markus Stockhausen [Tue, 21 Apr 2026 17:36:07 +0000 (19:36 +0200)] 
realtek: dsa: convert rtl839x stp functions to table helpers

rtldsa_839x_stp_get() and rtl839x_stp_set() use legacy table code.
Replace that with rtl_table_xxx() helpers.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23037
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dsa: convert rtl838x stp functions to table helpers
Markus Stockhausen [Tue, 21 Apr 2026 17:36:07 +0000 (19:36 +0200)] 
realtek: dsa: convert rtl838x stp functions to table helpers

rtldsa_838x_stp_get() and rtl838x_stp_set() use legacy table code.
Replace that with rtl_table_xxx() helpers.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23037
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: eth: convert hw_init() functions to regmap 23038/head
Markus Stockhausen [Tue, 21 Apr 2026 18:54:17 +0000 (20:54 +0200)] 
realtek: eth: convert hw_init() functions to regmap

Use regmap in the four target specific hw_init() functions.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23038
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: eth: convert rteth_839x_setup_notify_ring_buffer to regmap
Markus Stockhausen [Tue, 21 Apr 2026 18:38:37 +0000 (20:38 +0200)] 
realtek: eth: convert rteth_839x_setup_notify_ring_buffer to regmap

Another cleanup of legacy sw() code.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23038
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: eth: convert hw_en_rxtx to regmap for RTL93xx
Markus Stockhausen [Tue, 21 Apr 2026 18:27:42 +0000 (20:27 +0200)] 
realtek: eth: convert hw_en_rxtx to regmap for RTL93xx

Another two functions that are cleaned from the legacy sw() macros.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23038
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dts: drop EXTERNAL_SFP_PHY macro 23036/head
Markus Stockhausen [Tue, 21 Apr 2026 17:25:18 +0000 (19:25 +0200)] 
realtek: dts: drop EXTERNAL_SFP_PHY macro

The EXTERNAL_SFP_PHY macro is very strange. It has attributes
sfp and media but is not linked to any SFP definition. There
is nothing that the kernel can evaluate better than the classic
PHY_C22 macro.

Remark! For the current D-Link DGS-1210 consumers this macro
should be converted to a PHY_C22_SFP in the future. As of now
there is no hardware to identify the proper gpios and define
and verify the corresponding SFP ports. Add a TODO comment
where needed.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23036
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agorealtek: dts: convert EXTERNAL_SFP_PHY_FULL to PHY_C22_SFP
Markus Stockhausen [Tue, 21 Apr 2026 17:25:18 +0000 (19:25 +0200)] 
realtek: dts: convert EXTERNAL_SFP_PHY_FULL to PHY_C22_SFP

Several EXTERNAL macros have been removed in the past. There is
no need to distinguish if a phy is built into the SoC or is
attached externally.

Do the same for EXTERNAL_SFP_PHY_FULL. This macro denotes a phy
that has a SFP port attached to it. This is usually RTL8214FC
based. To be consistent with other macros name it PHY_C22_SFP.
While we are here make use of the new port/phy notation.

So PHY_C22_SFP(p, n, s) gives

- p: the overall port number
- n: the phy address on the current bus
- s: the sfp identifier

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23036
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agoomnia-mcutool: build as C99 23042/head
Rosen Penev [Sun, 19 Apr 2026 22:24:12 +0000 (15:24 -0700)] 
omnia-mcutool: build as C99

GCC15 defaults to C23, which does not work here.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23042
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 weeks agotoolchain: gcc: 14/15: fix libcody compilation with GCC16
Robert Marko [Wed, 22 Apr 2026 14:48:18 +0000 (16:48 +0200)] 
toolchain: gcc: 14/15: fix libcody compilation with GCC16

libcody will fail to build if building using a GCC16 host compiler, so
backport the upstream fix.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 weeks agogeneric: filter: add RUSTC symbols
Robert Marko [Wed, 22 Apr 2026 14:43:00 +0000 (16:43 +0200)] 
generic: filter: add RUSTC symbols

These symbols depend on rustc version and is autodetected and set, so make
sure to filter them out.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
7 weeks agokernel: video: fix x86/geode build 23013/head
John Audia [Sun, 19 Apr 2026 19:47:59 +0000 (15:47 -0400)] 
kernel: video: fix x86/geode build

Add missing options to fix geode build failure.

Co-authored-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23013
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agogeneric: 6.18: import some SFP quirks 23032/head
Daniel Golle [Tue, 21 Apr 2026 14:38:16 +0000 (15:38 +0100)] 
generic: 6.18: import some SFP quirks

Import upstream and pending patches implementing SFP quirks.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 weeks agogeneric: 6.18: import updated standalone PCS handling
Daniel Golle [Tue, 21 Apr 2026 02:26:14 +0000 (03:26 +0100)] 
generic: 6.18: import updated standalone PCS handling

Import pending series introducing support for standalone PCS drivers.

This has previously already been used by the airoha target, and is
also the base for the closer-to-upstream patches for MediaTek MT7988
10G SerDes support.

In order to not having to diverge from upstream also backport series
for standardized handling for PHY and PCS SerDes pair polarity.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 weeks agompc85xx: enable 6.18 testing kernel 22732/head
Nick Hainke [Sat, 11 Apr 2026 18:32:44 +0000 (20:32 +0200)] 
mpc85xx: enable 6.18 testing kernel

The mpc85xx now supports 6.18 kernel as testing.

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agokernel: other: fix ptp-qoriq build with Linux >= 6.18
Nick Hainke [Sun, 12 Apr 2026 11:23:15 +0000 (13:23 +0200)] 
kernel: other: fix ptp-qoriq build with Linux >= 6.18

Linux renamed ptp-qoriq.ko to ptp_qoriq.ko in 6.18.

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agokenrel: crypto: fix build with Linux >= 6.18 after md5-ppc removal
Nick Hainke [Thu, 2 Apr 2026 15:57:40 +0000 (17:57 +0200)] 
kenrel: crypto: fix build with Linux >= 6.18 after md5-ppc removal

Linux commit 09371e1349c9 ("lib/crypto: powerpc/md5: Migrate optimized code into library")
removed the PowerPC-specific MD5 implementation (md5-ppc.ko) and
replaced it with an optimized library implementation in lib/crypto.

As a result, CONFIG_CRYPTO_MD5_PPC and the module
arch/powerpc/crypto/md5-ppc.ko no longer exist in kernels >= 6.18.

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agompc85xx: 6.18: update kernel symbols
Nick Hainke [Wed, 1 Apr 2026 19:01:37 +0000 (21:01 +0200)] 
mpc85xx: 6.18: update kernel symbols

Add required 6.18 kernel symbols. Also update kernel config by running
make kernel_oldconfig.

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agompc85xx: 6.18: refresh patches
Nick Hainke [Wed, 1 Apr 2026 18:33:50 +0000 (20:33 +0200)] 
mpc85xx: 6.18: refresh patches

Refresh patches for the 6.18 kernel.

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agokernel/mpc85xx: restore files for v6.12
Nick Hainke [Sat, 11 Apr 2026 09:56:05 +0000 (11:56 +0200)] 
kernel/mpc85xx: restore files for v6.12

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

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agokernel/mpc85xx: create files for v6.18 (from v6.12)
Nick Hainke [Sat, 11 Apr 2026 09:56:04 +0000 (11:56 +0200)] 
kernel/mpc85xx: create files for v6.18 (from v6.12)

This is an automatically generated commit.

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

Link: https://github.com/openwrt/openwrt/pull/22732
Signed-off-by: Nick Hainke <vincent@systemli.org>
8 weeks agod1: drop support for 6.12 23035/head
Zoltan HERPAI [Tue, 21 Apr 2026 13:26:29 +0000 (13:26 +0000)] 
d1: drop support for 6.12

Drop support for 6.12 by removing config and patches.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 weeks agod1: switch to 6.18
Zoltan HERPAI [Tue, 21 Apr 2026 13:25:54 +0000 (13:25 +0000)] 
d1: switch to 6.18

Make 6.18 the default kernel.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 weeks agod1: add proper overlay support
Zoltan HERPAI [Tue, 21 Apr 2026 13:23:49 +0000 (13:23 +0000)] 
d1: add proper overlay support

Add f2fs support into the kernel, otherwise the overlay f2fs
will not be created.

[    7.611817] loop0: detected capacity change from 0 to 212992
[    7.638471] loop0: detected capacity change from 212992 to 206208
[    7.757259] mount_root: failed to mount -t f2fs /dev/loop0 /tmp/overlay: No such device

Fixes: https://github.com/openwrt/openwrt/commit/1e7950a45de593354a508d80a39951b440336ab7
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 weeks agostarfive: enable 6.18 testing kernel
Zhihao Xu [Tue, 17 Feb 2026 12:11:44 +0000 (20:11 +0800)] 
starfive: enable 6.18 testing kernel

Enable 6.18 as testing kernel.

Link: https://github.com/openwrt/openwrt/pull/22063
Signed-off-by: Zhihao Xu <ngc7331@outlook.com>
[Tested on VF1/VF2:]
Tested-by: Zoltan HERPAI <wigyori@uid0.hu>
8 weeks agostarfive: update kernel symbols for v6.18
Zhihao Xu [Tue, 17 Feb 2026 12:11:47 +0000 (20:11 +0800)] 
starfive: update kernel symbols for v6.18

Drop symbols removed in Linux 6.18 and add newly introduced symbols.

Also handle symbols that are moved out of or into the generic:
- `#CONFIG_ARCH_SOPHGO is not set` is moved into generic [1]

[1] https://github.com/openwrt/openwrt/commit/d3bf8ada022f0dc997e52e6a9d948a6ef05dc230

Signed-off-by: Zhihao Xu <ngc7331@outlook.com>
8 weeks agostarfive: refresh e24 driver patch for v6.18
Zhihao Xu [Tue, 17 Feb 2026 12:11:48 +0000 (20:11 +0800)] 
starfive: refresh e24 driver patch for v6.18

- Use ida_alloc(), ida_free() api instead of old ida_simple_* [1], [2]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5ade60dda43c8906d4554374226c2eb11cc2ffba
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=c8a09fc9664f79eeb66cdf4a2a34d5b6a239b727

Signed-off-by: Zhihao Xu <ngc7331@outlook.com>
8 weeks agostarfive: refresh patches for v6.18
Zhihao Xu [Tue, 17 Feb 2026 12:11:46 +0000 (20:11 +0800)] 
starfive: refresh patches for v6.18

Refreshed patches for starfive/patches-6.18
by running make target/linux/refresh.

Signed-off-by: Zhihao Xu <ngc7331@outlook.com>
8 weeks agostarfive: manually refresh patches for v6.18
Zhihao Xu [Tue, 17 Feb 2026 12:11:45 +0000 (20:11 +0800)] 
starfive: manually refresh patches for v6.18

Manually refresh patches:
- 0004-spi-spl022-Get-and-deassert-reset-in-probe.patch
- 0007-driver-mailbox-Add-mailbox-driver.patch
- 0009-uart-8250-Add-dw-auto-flow-ctrl-support.patch
- 0013-drivers-nvme-Add-precheck-and-delay-for-CQE-pending-.patch
- 0014-riscv-Optimize-memcpy-with-aligned-version.patch

Signed-off-by: Zhihao Xu <ngc7331@outlook.com>
8 weeks agokernel/starfive: restore files for v6.12
Zhihao Xu [Tue, 17 Feb 2026 12:11:40 +0000 (20:11 +0800)] 
kernel/starfive: restore files for v6.12

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: Zhihao Xu <ngc7331@outlook.com>
8 weeks agokernel/starfive: create files for v6.18 (from v6.12)
Zhihao Xu [Tue, 17 Feb 2026 12:11:24 +0000 (20:11 +0800)] 
kernel/starfive: create files for v6.18 (from v6.12)

This is an automatically generated commit.

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

Signed-off-by: Zhihao Xu <ngc7331@outlook.com>
8 weeks agoscripts: add git_commit to profiles.json
Paul Spooren [Mon, 20 Apr 2026 11:46:13 +0000 (19:46 +0800)] 
scripts: add git_commit to profiles.json

Right now we only have the special getver.sh output (i.e. r32802-f505120278)
instead of the actual, full git hash. Offer the full hash for downstream
tooling, specifically the KernelCI.

Signed-off-by: Paul Spooren <mail@aparcar.org>
8 weeks agomediatek: fix MAC address assignment for ZBT Z8102AX V2 23016/head
Xiao Qian [Mon, 20 Apr 2026 09:09:27 +0000 (17:09 +0800)] 
mediatek: fix MAC address assignment for ZBT Z8102AX V2

label: f8:5e:3c:99:95:c0

wifi-2.4G f8 5e 3c 99 95 be
wifi-5.8G f8 5e 3c 99 95 bf
eth0-lan  f8 5e 3c 99 95 c0
eth1-wan  f8 5e 3c 99 95 c1

:~# hexdump -C /dev/mtd2 | more
00000000  81 79 00 00 f8 5e 3c 99  95 be f8 5e 3c 99 95 bf  |.y...^<....^<...|
00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000020  00 00 00 00 f8 5e 3c 99  95 c1 f8 5e 3c 99 95 c0  |.....^<....^<...|
00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

Signed-off-by: Xiao Qian <qxooqx@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23016
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 weeks agorealtek: eth: regmap refactoring 23006/head
Markus Stockhausen [Sun, 19 Apr 2026 09:30:58 +0000 (11:30 +0200)] 
realtek: eth: regmap refactoring

Refactor rteth_hw_ring_setup() and rteth_839x_hw_en_rxtx().

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