]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
2 weeks agorealtek: pcs: rtl930x: drop superfluous debug prints 23288/head
Jonas Jelonek [Sun, 10 May 2026 18:44:30 +0000 (18:44 +0000)] 
realtek: pcs: rtl930x: drop superfluous debug prints

The RTL930x calibration code is especially chatty. There are debug
prints for every start and end of a section corresponding to the
sections the SDK uses. In the end, this doesn't help a user much and
just wastes CPU cycles. Moreover it doesn't help in understand what is
done there. As a first step, drop "start" and "end" prints but preserve
their meaning as comments.

While at it, slightly adjust two other prints and drop one confusing
print.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23288
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: pcs: rtl930x: reduce chattiness and reg ops
Jonas Jelonek [Sat, 9 May 2026 21:25:51 +0000 (21:25 +0000)] 
realtek: pcs: rtl930x: reduce chattiness and reg ops

There is no need to be extra chatty for simple writes which set a single
bit. As a nice side effect, without the prints there's no need to have
open-coded register access when there a helper that covers that.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23288
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: pcs: rtl931x: reduce chattiness
Jonas Jelonek [Sat, 9 May 2026 20:31:46 +0000 (20:31 +0000)] 
realtek: pcs: rtl931x: reduce chattiness

The SerDes setup code for RTL931x still has a lot of debug prints as
pr_info from former times. A lot has changed and we don't need that
rather useless chattiness anymore. We reached a state where we have a
standalone setup of most hardware modes. The registers printed are still
"documented" in rtpcs_931x_sds_config_hw_mode and
rtpcs_93xx_sds_config_cmu. For every other issues we rely on comparison
of full SerDes dumps instead of cherry-picked registers.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23288
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: add support for Zyxel XMG1915-10EP 23218/head
Jonas Jelonek [Tue, 28 Apr 2026 21:24:01 +0000 (21:24 +0000)] 
realtek: add support for Zyxel XMG1915-10EP

Specifications
==============

- SoC: RTL9302C
- Flash: 32 MiB SPI NOR flash
- RAM: 256 MiB
- Ethernet: 8x 10/100/1000/2500 Mbps (RTL8224)
- PoE: 802.3 af/at/bt on 8x RJ45 ports
    - 60W per port, 130W total budget
- SFP: 2x SFP+ cages
- UART: 1x 4 pins serial header, 115200 bauds, 8n1, 3.3v logic levels,
        pinout: unused (top), TX, RX, GND (bottom)
- Buttons: 1x "Restore" button, 1x "LED mode" button

MAC address
===========

Single MAC address derived from board partition with vendor-specific
format. MAC address is 70:49:a2:xx:xx:xx and applied to all switch
ports.

PoE
===

PoE is supported by realtek-poe package. To make it work, additional
options in the realtek-poe configuration file /etc/config/poe must be
set:

    config globals
            option force_baudrate '115200'
    option force_dialect 'realtek'

Disclaimer
==========

Flashing OpenWrt will overwrite BootExtension + ZyNOS. BootExtension
functionality is not available anymore then. The U-boot/Bootbase still
has some limited functionality which can be used in emergency cases.

Installation
============

Simple web upgrade:

1. Take the OpenWrt factory.bin image generated by the build.

2. In the ZyNOS web UI, login and go to Maintenance -> Firmware Upgrade.

3. Under "Boot Image", make sure the Config Boot Image is set to 1. In
   other words, make sure the switch booted from firmware image 1 or it
   will do so on next reboot.
   This is crucial, otherwise OpenWrt cannot boot.

4. Below, select and upload the factory.bin image. After clicking
   upgrade, the image will be flashed.

5. After flashing has finished, reboot the switch. It will now boot into
   OpenWrt.

U-Boot
======

This device ships with U-boot masked as Bootbase. After the device is
powered, a DRAM test is performed. Spamming $ during that test will drop
you into a shell after test finished. You'll have a limited command set
at first.

Unlocking the shell with [1] or [2] will give you a normal U-boot
command set. From here, you can perform initramfs boot or recovery.

Initramfs boot:
> loady 0x82000000 + go 0x82000000

Recovery:
> upgradeY image2 0x82000000 115200

Return to stock firmware
========================

1. Download the firmware for the switch from Zyxel website.

2. Unzip the download, there should be a .bin file with a alphanumeric
   name.

3. Upload this file to running OpenWrt.

4. Run (use -F since the image doesn't have image metadata):

   > sysupgrade -F <stock-firmware>.bin

5. Wait for the sysupgrade to succeed and the switch reboot. At the next
   boot, ZyNOS should come up again.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23218
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: dts: rtl930x: add pinctrl and pinmux for UART1
Jonas Jelonek [Thu, 30 Apr 2026 21:32:29 +0000 (21:32 +0000)] 
realtek: dts: rtl930x: add pinctrl and pinmux for UART1

RTL930x SoCs have a second serial interface UART1 which is exposed on
dual-function pins shared with JTAG. The SoC defaults to the JTAG
functionality after reset. Similar to existing pinmux registers, there's
a separate register for that where a selector decides about JTAG vs
UART.

Add a now pinctrl node for that register and a pinmux node to enable
UART1 functionality. Reference the pinmux in the (by default disabled)
uart1 node. Without this, UART1 doesn't work when it is actually needed.
This is e.g. the case with some PoE-capable switch where the PSE MCU
communicates with the SoC via UART instead of I2C.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23218
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: make Zyxel XMG1915-10E generic for whole family
Jonas Jelonek [Tue, 28 Apr 2026 20:53:52 +0000 (20:53 +0000)] 
realtek: make Zyxel XMG1915-10E generic for whole family

The XMG1915 is a switch family with multiple variants sharing nearly
all hardware (same SoC, PHYs, SFP cages, LEDs) and mainly differing
in PoE and minor details.

In preparation for adding further variants, move the bulk of the
device tree into a shared rtl9302_zyxel_xmg1915.dtsi and reduce the
per-device dts to the device identity (compatible, model) plus any
variant-specific nodes.

For images, factor a Device/zyxel_xmg1915 template holding the shared
build settings so per-device definitions only need DEVICE_MODEL.

No functional change for XMG1915-10E.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23218
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: support web vendor upgrade for XMG1915-10E
Jonas Jelonek [Tue, 28 Apr 2026 21:21:23 +0000 (21:21 +0000)] 
realtek: support web vendor upgrade for XMG1915-10E

So far the XMG1915-10E used the rt-loader-bootbase recipe which
produces a separate loader.bin and only allows installation/upgrade
from the CLI side, not via the Zyxel web UI.

Switch to the standard zyxel_zynos image recipe shared with the other
Zyxel rtl930x devices. The loader now lives inside the 'factory'
parent partition introduced in the previous commit, so the resulting
single sysupgrade image can be flashed both from the vendor web UI
and via sysupgrade. Hook the device into the existing xs1930 case in
platform.sh which sets PART_NAME=factory and calls default_do_upgrade.

This makes the installation and revert procedure in 94607d6285cc
("realtek: add support for Zyxel XMG1915-10E") mostly obsolete and
partly not working anymore (due to different build images that are
emitted).

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23218
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: fix Zyxel XMG1915-10E partition layout
Jonas Jelonek [Tue, 28 Apr 2026 21:00:24 +0000 (21:00 +0000)] 
realtek: fix Zyxel XMG1915-10E partition layout

When support for this device was added, the partition layout was defined
in a way that doesn't use space as intended and wastes quite a lot of
it.

(1) firmware partition starts at offset 0x1260000. This is the second
    partition/B partition in the A/B scheme used by Zyxel. While the
    commit mentions the image is written to A, the firmware partition
    is defined in the B space.
(2) firmware partition only ~16MB in size. The device has a total of
    32MB of flash. The vendor uses an A/B scheme but OpenWrt doesn't use
    it. Thus, OpenWrt can make use of the full available space.
(3) loader partition too big. Other devices using rt-loader explicitly
    in a partition use a size of 0x10000. This is more than enough
    already. The device here uses 0x30000 which is mostly wasted.

Those issues are fixed accordingly. While at it, move partitions 'loader'
and 'firmware' into a parent partition 'factory'. This is a preparation
for adding web upgrade support for this device.

Fixes: 94607d6285cc ("realtek: add support for Zyxel XMG1915-10E")
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23218
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: sync target configs after JUMP_LABEL changes 23293/head
Mieczyslaw Nalewaj [Mon, 11 May 2026 06:44:41 +0000 (08:44 +0200)] 
kernel: sync target configs after JUMP_LABEL changes

CONFIG_JUMP_LABEL is no longer meant to be set explicitly in target
kernel configs after 3be02c118f0d ("kernel: enable static key").

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/23293
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: add reverse lookup bus/phy to port 23230/head
Markus Stockhausen [Wed, 6 May 2026 20:19:41 +0000 (22:19 +0200)] 
realtek: mdio: add reverse lookup bus/phy to port

Until now there is a O(n) loop that looks up a port for a
given bus/phy combination. This is slow for high port count
devices (RTL839x and RTL931x). Implement a efficient reverse
lookup table for that.

While we are here adapt tiny bits of the documentation to
better reflect the driver logic after the recent refactoring.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: drop memset
Markus Stockhausen [Wed, 6 May 2026 19:52:52 +0000 (21:52 +0200)] 
realtek: mdio: drop memset

Use modern compound literal assignment instead.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: convert to modern fwnode helpers
Markus Stockhausen [Wed, 6 May 2026 19:32:47 +0000 (21:32 +0200)] 
realtek: mdio: convert to modern fwnode helpers

Upstream is slowly converting from "of_" to "fwnode_" handling.
This is a more modern and generic approach. Make use of it.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: change prefix from "rtmdio_" to "rtmd_"
Markus Stockhausen [Wed, 6 May 2026 18:05:36 +0000 (20:05 +0200)] 
realtek: mdio: change prefix from "rtmdio_" to "rtmd_"

The long prefix distracts the reader from the real variables,
functions and defines. Shorten it to "rtmd_" that is not
used by any other upstream driver.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: harden rtmdio_get_phy_info()
Markus Stockhausen [Wed, 6 May 2026 14:25:05 +0000 (16:25 +0200)] 
realtek: mdio: harden rtmdio_get_phy_info()

Improve error checking and code flow.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: refactor register handling
Markus Stockhausen [Wed, 6 May 2026 11:44:59 +0000 (13:44 +0200)] 
realtek: mdio: refactor register handling

Until now the driver works as follows:

- low level functions do a bulk write
- high level functions have device specific structures

Turn this upside down and hide the register logic in the low
level functions. To achieve this:

- add a register map to each device
- change the low level write to use this map
- use only one common unique command structure
- use the command structure in the high level functions

While we are here fix the RTL838x access patterns. The read
functions do not need to set the bitmask.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: cleanup defines
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: cleanup defines

Convert hexadecimal defines to lowercase and remove unneeded
brackets like upstream mdio does. While we are here remove
unused RTMDIO_DATA_MASK macro.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: improve set_port_ability() readability
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: improve set_port_ability() readability

Hide the bit mangling in meaningful macros and use similar
coding for both RTL93xx targets.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: harden setup_polling()
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: harden setup_polling()

Polling setup silently discards regmap return codes. Change function
signature and add error checking to all regmap commands.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: port naming cleanups
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: port naming cleanups

Be consistent with the rest of the code and make clear when the
driver accesses ports. For this rename num_phys to num_ports.
Additionally make the device specific port numbers a define and
use them in the configuration structure.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: move masks below their registers
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: move masks below their registers

In the define section there are still some masks that are not sorted
into the corresponding register. Move them around.

- This makes clear that C22 and command data share a register
- Add a prefix to the PHY_PATCH_DONE mask to align with rest of code

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: convert bit mask calculations to macros
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: convert bit mask calculations to macros

There are still some cryptic bit mask calculations. Replace them
with their register/field names for better readability.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: add helper that disables polling
Markus Stockhausen [Tue, 5 May 2026 17:05:21 +0000 (19:05 +0200)] 
realtek: mdio: add helper that disables polling

Each device specific implementation disables the hardware polling
differently. Harmonize this by providing a central helper. With
this

- disable polling at the very beginning
- remove unneeded sleeping (SDK does not need it too)
- add checks for regmap returncodes

Especially for RTL839x avoid to disable hardware polling at all.
It is enough that the port specific polling is disabled during
configuration.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23230
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agouhttpd: update to Git HEAD (2026-04-21) 23029/head
Paul Spooren [Tue, 21 Apr 2026 05:28:48 +0000 (13:28 +0800)] 
uhttpd: update to Git HEAD (2026-04-21)

506e24987b97 ubus: unregister ubus subscriber on HTTP client disconnect
e619cb04cddb client: use base-10 parsing for Content-Length header

While at it, use SPDX license tags

Fixes: https://github.com/openwrt/uhttpd/issues/1
Signed-off-by: Paul Spooren <mail@aparcar.org>
Link: https://github.com/openwrt/openwrt/pull/23029
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agolibubox: update to Git HEAD (2026-05-03) 23212/head
Hauke Mehrtens [Sun, 3 May 2026 20:21:05 +0000 (22:21 +0200)] 
libubox: update to Git HEAD (2026-05-03)

895f92164b66 uloop: add ULOOP_PRIORITY support for EPOLLPRI events
f9b1f3ff17ba uloop: revert my flag changes from the ULOOP_PRIORITY change
2982bfb1c325 blob: fix wrong type for realloc result in blob_buffer_grow()
78c20f6c8579 json_script: convert recursive __json_script_file_free() to iterative
e7c13bf8cbca usock: fix off-by-one in nanosecond normalization in poll_restart()
68b3f1588de4 uloop: usock: add error checking for fcntl and remove duplicate include
03821f942c49 uloop: fix undefined behavior in signal bit operations for signals > 32
e6e6fd83e26d blobmsg: fix policy name length overflow and add bounds check in blobmsg_parse()
d30b9cc1a02d usock: fix integer overflow in timeout calculations
406e342bb900 udebug: fix double off-by-one in udebug_entry_vprintf()
700eca0bac66 blobmsg_json: fix integer overflow in blobmsg_puts()
6351fe552162 blobmsg_json: floor strbuf size and tighten the post-format guard
58b6543f1b25 blobmsg: fix unsigned integer overflow in blobmsg_alloc_string_buffer()
d7a3ae699df0 blobmsg: use correct byte-order macro when setting BLOB_ATTR_EXTENDED
23c6618a5b90 blobmsg_json: fix double format string to avoid truncation and data loss
1edf1d704e76 jshn: fix integer overflow and type confusion in jshn_parse_file
9b488010c4a7 utils: fix integer overflow in __calloc_a()
40a87f734b94 blob: fix integer overflow in buffer growth functions
02fccb465651 blob: use size_t for blob_memdup() length
0fa612ca08f7 json_script: avoid alloca() on attacker-controlled pattern length
8c9862b6921b blobmsg: fix integer overflow in blobmsg_realloc_string_buffer()
5fbef5bb94fb ustream: avoid INT_MAX overflow on malloc in ustream_vprintf()
1501e60e5554 md5: detect read errors in md5sum() instead of returning a bogus hash

Link: https://github.com/openwrt/openwrt/pull/23212
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agox86/base-files: add support for CloudGenix ION 2000 23114/head
Raylynn Knight [Mon, 27 Apr 2026 02:44:09 +0000 (22:44 -0400)] 
x86/base-files: add support for CloudGenix ION 2000

The CloudGenix ION 2000 is a discontinued entry-level SD-WAN appliance,
a rebranded Lanner FW-7525 based on the Intel Atom C2XXX family of processors
with 4 integrated GbE ports and 2 additional I210 GbE ports. It can often be
found on eBay starting below USD 30.

Specs:
* CPU: Intel Atom C2558 @2.4GHz (Quad-core)
* RAM: 1x 4GB DDR3 SO-DIMM
* Storage: 1x Compact Flash,
      1x 420GB SATA 3.0 SSD
* Ethernet: 6x GbE RJ-45
* USB: 2x USB 2.0
* PCI: 1x Mini-PCIe slot
* Power: 12V/5A

The device's BIOS is password-protected, and the password somehow hasn't leaked,
but OpenWrt can be successfully booted by overwriting the stock OS on the boot
media.

See https://forum.openwrt.org/t/report-openwrt-on-cloudgenix-ion-2000/249315
for more details.

The two I210 NICs and integrated NICs are pinned to their
PCIe paths to ensure consistent interface ordering matching
the physical port layout with eth0 assigned to controller and
acting as WAN with remaining devices as LAN.

Signed-off-by: Raylynn Knight <rayknight@me.com>
Link: https://github.com/openwrt/openwrt/pull/23114
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoairoha: disable IPSEC 23269/head
Aleksander Jan Bajkowski [Sat, 9 May 2026 10:16:24 +0000 (12:16 +0200)] 
airoha: disable IPSEC

Disable IPSEC by default. If needed, install required packages.

Reduce compressed image size by 80 kB.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/23269
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: convert phy0tpt to led-sources 21004/head
Rosen Penev [Sat, 13 Dec 2025 00:07:42 +0000 (16:07 -0800)] 
ath79: convert phy0tpt to led-sources

Makes it a lot clearer what phy1tpt is, especially since it differs
between ath10k and ath9k.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21004
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: fix label-mac-device for wmac 21035/head
Rosen Penev [Thu, 4 Dec 2025 03:15:05 +0000 (19:15 -0800)] 
ath79: fix label-mac-device for wmac

It appears 683-of_net-add-mac-address-to-of-tree.patch relies on the
mac-address nvmem property being present. wmac itself doesn't need it as
it takes it from the eeprom but label-mac-device needs it.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21035
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: alfa: remove label mac override
Rosen Penev [Sat, 22 Jun 2024 18:22:53 +0000 (11:22 -0700)] 
ath79: alfa: remove label mac override

This is already done in dts.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21035
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: fritz300e: awk-1137c: remove label-mac-device
Rosen Penev [Thu, 4 Dec 2025 04:37:14 +0000 (20:37 -0800)] 
ath79: fritz300e: awk-1137c: remove label-mac-device

This is already done in userspace. In addition, it's hard to do in nvmem
as they rely on non standard locations.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21035
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: cf-e380ac-v2: fix wrong label-mac-device
Rosen Penev [Thu, 4 Dec 2025 04:35:12 +0000 (20:35 -0800)] 
ath79: cf-e380ac-v2: fix wrong label-mac-device

This is a ceiling mount AP with only one ethernet port. eth0 is
specified in the dts but not eth1.

Fixes: 935a63c ("ath79: add support for COMFAST CF-E380AC v2")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21035
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoeconet: en7528: add USB support 22498/head
Ahmed Naseef [Thu, 19 Mar 2026 11:55:28 +0000 (15:55 +0400)] 
econet: en7528: add USB support

Add USB host support for EN7528 SoC:

- New phy-en7528-usb driver with U2 slew rate calibration and U3
  RX impedance tuning, based on GPL vendor code and the Airoha
  AN7581 USB PHY driver
- xHCI LTSSM timing quirk for TD 6.5 compliance (patch 915)
- USB PHY and xHCI DTS nodes with IPPC register mapping
- VBUS power via regulator-fixed for DASAN H660GM-A
- Enable USB, xHCI, PHY, and regulator kernel configs

Signed-off-by: Ahmed Naseef <naseefkm@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22498
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: sound: fix kmod-sound-midi2 packaging 23265/head
Mieczyslaw Nalewaj [Fri, 8 May 2026 17:31:41 +0000 (19:31 +0200)] 
kernel: sound: fix kmod-sound-midi2 packaging

kmod-sound-midi2 expects sound/core/snd-ump.ko, but
CONFIG_SND_UMP=y builds it in-kernel rather than as
a module. Replace the forced built-in setting with
plain CONFIG_SND_UMP so the module can be packaged
correctly.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/23265
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomediatek: cudy nand: fix wrong nmbm configuration 22832/head
Mikhail Zhilkin [Tue, 7 Apr 2026 16:53:33 +0000 (19:53 +0300)] 
mediatek: cudy nand: fix wrong nmbm configuration

Nmbm is mistakenly enabled on ubootmod builds of nand Cudy routers:
------------------------------------------------------------------------
[    0.923433] spi-nand spi0.0: calibration result: 0x3
[    0.928485] spi-nand spi0.0: ESMT SPI NAND was found.
[    0.933560] spi-nand spi0.0: 128 MiB, block size: 128 KiB, page size:
2048, OOB size: 64
[    1.828275] Signature not found
-------------------------------------------------------------------------

This commit disables nmbm for such builds.

Fixes: eb6dd61 ("mediatek: add cudy wr3000h-v1 ubootmod")
Fixes: cfc17e8 ("mediatek: add cudy wr3000e-v1 ubootmod")
Fixes: 6b3b7c7 ("mediatek: add cudy wr3000p-v1 ubootmod")
Fixes: b7b4938 ("mediatek: add cudy wr3000s-v1 ubootmod")
Fixes: 15df98f ("mediatek: add ubootmod layout for Cudy WBR3000UAX v1")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22832
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomediatek: add support for Qihoo 360T7 (UBI layout) 22797/head
Mikhail Zhilkin [Sun, 5 Apr 2026 10:47:38 +0000 (13:47 +0300)] 
mediatek: add support for Qihoo 360T7 (UBI layout)

This commit adds support for Qihoo 360T7 (UBI layout).

Aims
----
1. +20 MB additional free space for the packages
2. More reliable storage for the factory and fip partitions (in UBI)

Install (from non-UBI OpenWrt)
------------------------------
1. Navigate http://192.168.1.1/ and download mtd backups
2. Upgrade OpenWrt with installer initramfs image (force upgrade, don't
   keep settings). Wait until OpenWrt reboots and until installer:
   - Prepare new factory partition
   - Format new ubi
   - Make ubi volumes
   - Write new fip and bl2
3. Navigate http://192.168.1.1/ and Upgrade with OpenWrt 'sysupgrade.bin'
   image (don't keep settings)

Installer
---------
Based on OpenWrt UBI Installer Image Generator for Linksys E8450 and
Belkin RT3200
Link: https://github.com/dangowrt/owrt-ubi-installer
Ready installer image
Link: https://github.com/csharper2005/owrt-ubi-installer/tree/qihoo/bin
Installer script
Link: https://github.com/csharper2005/owrt-ubi-installer/blob/qihoo/files/
installer/install.sh

Committing to the parent Daniel's repository is not yet possible because
there are no official images and imagebuilder for Qihoo 360T7 (UBI) yet.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22797
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agouboot-mediatek: add Qihoo 360T7 (UBI) support
Mikhail Zhilkin [Sun, 5 Apr 2026 10:46:25 +0000 (13:46 +0300)] 
uboot-mediatek: add Qihoo 360T7 (UBI) support

This commit adds U-Boot for Qihoo 360T7 (UBI layout).

Aims:
1. +20 MB additional free space for the packages;
2. More reliable storage for the factory and fip partitions (in UBI).

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22797
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoatf-mediatek: add mt7981 UBI DDR3-1866 build
Mikhail Zhilkin [Sat, 4 Apr 2026 13:49:26 +0000 (16:49 +0300)] 
atf-mediatek: add mt7981 UBI DDR3-1866 build

The mt7981 UBI DDR3-1866 build is required for Qihoo 360T7 (UBI).

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22797
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: filogic: fix wrong dts file permission
Mikhail Zhilkin [Sat, 4 Apr 2026 13:53:16 +0000 (16:53 +0300)] 
mediatek: filogic: fix wrong dts file permission

The mt7981b-mercusys-mr85x.dts has redundant executable bit (755 instead
of 644). Fix it.

Fixes: b2648d8 ("mediatek: add support for Mercusys MR85X")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22797
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: filogic: Qihoo 360T7: fix DDR3 rate
Mikhail Zhilkin [Sat, 4 Apr 2026 13:41:36 +0000 (16:41 +0300)] 
mediatek: filogic: Qihoo 360T7: fix DDR3 rate

According to the datasheet GigaDevice GDP1BFLM-CB is 1866 Mbps DDR3 chip.
This commit reduces DDR3 rate from 2133 to 1866 Mbps.

Link: https://static6.arrow.com/aropdfconversion/c24b4942a41810a1c921df04a
99d72101eb8cd30/ds-00843-gdp1bflm-rev1.0.pdf
Fixes: c51eb17 ("uboot-mediatek: add Qihoo 360T7 support")
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22797
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: enable static key 23073/head
Qingfang Deng [Fri, 24 Apr 2026 01:44:32 +0000 (09:44 +0800)] 
kernel: enable static key

Enable static key (jump label) on all supported architectures. This
lowers overhead and stress on the branch prediction of the CPU and
generally makes the kernel faster.

Signed-off-by: Qingfang Deng <dqfext@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23073
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: fix typo in SPDX header (GL-2.0 -> GPL-2.0) 23168/head
Hauke Mehrtens [Thu, 30 Apr 2026 21:25:00 +0000 (23:25 +0200)] 
mediatek: fix typo in SPDX header (GL-2.0 -> GPL-2.0)

Add a missing P in the license header.

Link: https://github.com/openwrt/openwrt/pull/23168
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agolantiq: vr200: switch to nvmem eeprom 23115/head
Rosen Penev [Mon, 27 Apr 2026 02:47:59 +0000 (19:47 -0700)] 
lantiq: vr200: switch to nvmem eeprom

mediatek,mtd-eeprom predates nvmem and is being phased out.

At first glance, it looks like it's doing something useful with its
big-endian binding. However on further inspection, big-endian is handled
in the same function that mediatek,mtd-eeprom is handled. In addition,
the older mtd_read way of extracting the firmware byteswaps the data
on big endian hosts which big-endian byteswaps back. nvmem does not do
such byteswapping.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23115
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorockchip: refresh kernel patches
Hauke Mehrtens [Sat, 9 May 2026 11:39:34 +0000 (13:39 +0200)] 
rockchip: refresh kernel patches

This was not refresh before because of a merge race.

Fixes: 4c942c06b8f0 ("kernel: bump 6.18 to 6.18.27")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agosunxi: add T113-S3 support
Zoltan HERPAI [Mon, 9 Feb 2026 09:34:37 +0000 (09:34 +0000)] 
sunxi: add T113-S3 support

The Allwinner T113-s3 (sun8i) SoC features a dual-core Cortex-A7 ARM CPU and
128MB of DDR3 memory in the same physical package. It supports industrial
temperature ranges. Most of the IP blocks are shared with the D1/D1s core.
There are multiple variants of the SoC, which may vary in the included memory
size, with some of them including a C906 RISC-V co-processor.

Boards supported:
 - MangoPi MQDual T113
   - wireless-only (RTL8723DS)

 - MYIR MYD-YT113 eMMC
   - 1Gbit ethernet (Motorcomm YT8531 PHY)
   - 4GByte eMMC
   - M.2-type slot for 4G/5G cards, plus 2x SIM slot
   - USB 2.0 ports
   - GPIO/I2C/SPI/CAN ports
   - FNLink 6131 (rtl8733bu) wifi module

 - MYIR MYD-YT113 SPI
   - Same as above but with 256Mbyte SPI-NAND flash instead of eMMC

 - Rongpin RP-T113
   - 100Mbit ethernet (ICplus IP101GR PHY)
   - miniPCIe slot for 4G cards, plus 1x SIM slot
   - 3x USB 2.0 ports
   - RTL8723BS wireless
   - HYM8563 RTC
   - GPIO/I2C/SPI/CAN ports

 - Olimex T113-Olinuxino
   - 100Mbit ethernet (ICplus IP101GR)
   - UEXT connector (GPIO/I2C/SPI ports)
   - 1x USB 2.0
   - audio jack, LEDC

Installation:
Use the standard sunxi installation to an SD-card.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 weeks agokernel: bump 6.18 to 6.18.28 23252/head
John Audia [Fri, 8 May 2026 08:53:15 +0000 (04:53 -0400)] 
kernel: bump 6.18 to 6.18.28

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

No patches rebased via update_kernel.sh

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23252
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: bump 6.18 to 6.18.27
John Audia [Thu, 7 May 2026 11:31:59 +0000 (07:31 -0400)] 
kernel: bump 6.18 to 6.18.27

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

Manually rebased:
  pending-6.18/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch

All other patches automatically rebased via update_kernel.sh

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23252
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: bump 6.12 to 6.12.87 23253/head
John Audia [Fri, 8 May 2026 09:06:41 +0000 (05:06 -0400)] 
kernel: bump 6.12 to 6.12.87

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

No patches automatically rebased via update_kernel.sh

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23253
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: bump 6.12 to 6.12.86
John Audia [Thu, 7 May 2026 11:52:08 +0000 (07:52 -0400)] 
kernel: bump 6.12 to 6.12.86

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

Removed upstreamed:
  mvebu/patches-6.12/101-arm64-dts-marvell-uDPU-add-ethernet-aliases.patch[1]

Manually rebased:
  pending-6.12/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch

All other patches automatically rebased via update_kernel.sh

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.86&id=e58e97c1441ecbc1f153795f5857e725ebb96bdf

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/23253
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agorockchip: add kernel 6.18 as testing kernel 23139/head
Tianling Shen [Tue, 28 Apr 2026 07:21:39 +0000 (15:21 +0800)] 
rockchip: add kernel 6.18 as testing kernel

Add kernel 6.18 as testing kernel.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/23139
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agorockchip: refresh kernel 6.18 configs
Tianling Shen [Tue, 28 Apr 2026 07:21:14 +0000 (15:21 +0800)] 
rockchip: refresh kernel 6.18 configs

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

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/23139
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agorockchip: refresh kernel 6.18 patches
Tianling Shen [Tue, 28 Apr 2026 07:14:32 +0000 (15:14 +0800)] 
rockchip: refresh kernel 6.18 patches

Remove upstreamed patches and refresh remaining ones.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/23139
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agorockchip: restore files for v6.12
Tianling Shen [Tue, 28 Apr 2026 04:04:23 +0000 (12:04 +0800)] 
rockchip: 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: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/23139
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agorockchip: create files for v6.18 (from v6.12)
Tianling Shen [Tue, 28 Apr 2026 04:04:23 +0000 (12:04 +0800)] 
rockchip: 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: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/23139
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agoipq40xx: enable testing kernel for ipq40xx 22930/head
Til Kaiser [Fri, 23 Jan 2026 20:32:59 +0000 (21:32 +0100)] 
ipq40xx: enable testing kernel for ipq40xx

KERNEL_TESTING_PATCHVER:=6.18

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agokernel: lantiq: vrx518_tc: replace EXTRA_CFLAGS with ccflags-y
Til Kaiser [Tue, 28 Apr 2026 20:29:36 +0000 (22:29 +0200)] 
kernel: lantiq: vrx518_tc: replace EXTRA_CFLAGS with ccflags-y

Replace EXTRA_CFLAGS with ccflags-y to fix builds on Linux 6.18.

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agokernel: lantiq: vrx518_ep: replace EXTRA_CFLAGS with ccflags-y
Til Kaiser [Thu, 16 Apr 2026 12:40:33 +0000 (14:40 +0200)] 
kernel: lantiq: vrx518_ep: replace EXTRA_CFLAGS with ccflags-y

Replace EXTRA_CFLAGS with ccflags-y to fix builds on Linux 6.18.

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agoipq40xx: add gpio pin function patch
Til Kaiser [Mon, 13 Apr 2026 08:50:56 +0000 (10:50 +0200)] 
ipq40xx: add gpio pin function patch

Add a qcom pinctrl fix for ipq4019 that marks the gpio
function as a GPIO pin function.

With Linux 6.18 strict pinmuxing, ipq40xx can otherwise
hit conflicts when pins muxed to "gpio" are later
requested by GPIO consumers. [1]

This patch fixes that at the driver level and avoids DTS-side
workarounds, same as it is done for other Qualcomm boards. [2]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=cc85cb96e2e4
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=480dc1952404

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agoipq40xx: update kernel symbols for v6.18
Til Kaiser [Thu, 29 Jan 2026 15:11:20 +0000 (16:11 +0100)] 
ipq40xx: update kernel symbols for v6.18

Drop symbols removed in Linux 6.18 and add newly introduced symbols.
Additionally, restore CONFIG_PAGE_BLOCK_MAX_ORDER=10.

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agoipq40xx: refresh IPQ4019 switch patch for v6.18
Til Kaiser [Sun, 1 Feb 2026 15:42:46 +0000 (16:42 +0100)] 
ipq40xx: refresh IPQ4019 switch patch for v6.18

Linux 6.18 adjusts the DSA/phylink integration and removes a couple of
interfaces used by the out-of-tree IPQ4019 built-in switch support.

Update the qca8k-ipq4019 patch to match the new APIs:
- move phylink callbacks to phylink_mac_ops and switch to phylink_config
  [1], [2]
- adapt pcs_get_state() to the new signature [3]
- drop get_mac_eee() from dsa_switch_ops [4]
- switch platform_driver from .remove_new to .remove [5]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=636d022cd586b94aa4334e1d9b2558f821d58c2e
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=539770616521e5b046ca7612eb79ba11b53edb1d
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=c6739623c91bb3d6e9b20e05afbe69a2664f2d70
[4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=2fa8b4383d24c1c788528ed4377d9f07c6c10227
[5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=e70140ba0d2b1a30467d4af6bcfe761327b9ec95

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agokernel/ipq40xx: refresh patches for v6.18
Til Kaiser [Sun, 1 Feb 2026 15:04:04 +0000 (16:04 +0100)] 
kernel/ipq40xx: refresh patches for v6.18

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

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agokernel/ipq40xx: restore files for v6.12
Til Kaiser [Fri, 27 Feb 2026 19:46:15 +0000 (20:46 +0100)] 
kernel/ipq40xx: 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: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agokernel/ipq40xx: create files for v6.18 (from v6.12)
Til Kaiser [Fri, 27 Feb 2026 19:46:15 +0000 (20:46 +0100)] 
kernel/ipq40xx: 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: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/22930
Signed-off-by: Nick Hainke <vincent@systemli.org>
2 weeks agoath79: move label-mac-device out of dtsi 22907/head
Rosen Penev [Wed, 8 Apr 2026 04:20:00 +0000 (21:20 -0700)] 
ath79: move label-mac-device out of dtsi

A script was ran that checks the label-mac-device node to see if it has
nvmem definitions as label-mac-device requires nvmem.

This is mostly a change to make the script happy. No indended functional
difference.

Add a change to qca9533_yuncore_cpe830.dts adding an nvmem definition to
wmac. Seems to have been some kind of oversight where it's specified in
nvmem but not used. label-mac-device needs an NVMEM definition.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22907
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: engenius: remove userspace label mac 17329/head
Rosen Penev [Sat, 22 Jun 2024 18:24:35 +0000 (11:24 -0700)] 
ath79: engenius: remove userspace label mac

Can be handled easily in dts.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17329
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agolibmnl: assign PKG_LICENSE_FILES 23257/head
Wei-Ting Yang [Fri, 8 May 2026 05:53:55 +0000 (13:53 +0800)] 
libmnl: assign PKG_LICENSE_FILES

Ref: https://git.netfilter.org/libmnl/tree/COPYING

Signed-off-by: Wei-Ting Yang <williamatcg@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23257
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agointel-microcode: fix dirty build
Sander Schutten [Wed, 15 Jan 2025 08:38:17 +0000 (08:38 +0000)] 
intel-microcode: fix dirty build

rebuilding x86 did fail in an existing build directory
mkdir fails if the folder exists already

Signed-off-by: Sander Schutten <schutten@hotmail.com>
Signed-off-by: Florian Maurer <fmaurer@disroot.org>
2 weeks agowifi-scripts: fix basic_rate mapping in supplicant ucode
Florian Maurer [Tue, 14 Apr 2026 23:05:45 +0000 (01:05 +0200)] 
wifi-scripts: fix basic_rate mapping in supplicant ucode

The ucode migration wrote "basic_rate" into the wpa_supplicant network
block, but that is not a valid wpa_supplicant network field, causing:

  Line 15: unknown network field 'basic_rate'.
  failed to parse network block.

Map UCI basic_rate to the correct wpa_supplicant fields, matching the
behavior of the legacy shell script (hostapd.sh):

  - mesh mode:  mesh_basic_rates (space-separated, 100 kb/s units)
  - sta/adhoc:  rates            (comma-separated Mbps)

Link: https://github.com/openwrt/openwrt/commit/a854d833eabdbc3b42065927c136d75b981a1021
Signed-off-by: Florian Maurer <f.maurer@outlook.de>
[fix commit message link]
Signed-off-by: David Bauer <mail@david-bauer.net>
2 weeks agoath79: wlr-7100: move to tiny target
Tomasz Maciej Nowak [Mon, 4 May 2026 17:48:41 +0000 (19:48 +0200)] 
ath79: wlr-7100: move to tiny target

On 25.12.0 the device has not enough free blocks to initialize overlay.
Move the device to tiny target and consume backup with storage
partitions, which were previously unused. This operation will reclaim
~800 KiB of flash memory. OEM used storage partition for configuration,
while backup was used to store copy of U-Boot environment and copy of
calibration data.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2 weeks agoath79: wlr-7100: wire up 5GHz WLAN LED
Tomasz Maciej Nowak [Mon, 4 May 2026 17:48:40 +0000 (19:48 +0200)] 
ath79: wlr-7100: wire up 5GHz WLAN LED

Allows to light it up on 5GHz WLAN activation.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2 weeks agoath79: wlr-7100: fix MAC assignment
Tomasz Maciej Nowak [Mon, 4 May 2026 17:48:39 +0000 (19:48 +0200)] 
ath79: wlr-7100: fix MAC assignment

Partially revert 5e3a602def72. Unfortunately the ethaddr value in U-Boot
environment is enclosed in double quotes which makes it longer than
ETH_ALEN, thus nvmem returns EINVAL. Switch back to handling the MAC
addresses in user space.

Fixes: 5e3a602def72 ("ath79: sitecom,wlrx100: use nvmem")
Reviewed-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2 weeks agoath79: use led-sources for WMAC 23191/head
Rosen Penev [Sat, 2 May 2026 21:41:43 +0000 (14:41 -0700)] 
ath79: use led-sources for WMAC

The ath9k driver creates an ath9k LED by default. Instead of having a
non functional LED, configure it properly and remove the extra as it's
not needed.

It's also a bit funny matching against phy0 and phy1 when both differ
between ath9k and ath10k.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23191
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: fap-221-b: revert led-sources change
Rosen Penev [Sun, 3 May 2026 21:14:32 +0000 (14:14 -0700)] 
ath79: fap-221-b: revert led-sources change

Normally WMAC handles 2.4ghz on ath79 devices. Some older units though
handle 5ghz on WMAC and 2.4ghz on pcie. This can be seen by the
frequemcy limits placed on each interface.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23191
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: qca953x: use led-sources for WMAC
Rosen Penev [Sat, 24 May 2025 23:02:54 +0000 (16:02 -0700)] 
ath79: qca953x: use led-sources for WMAC

The ath9k driver creates an ath9k LED by default. Instead of having a
non functional LED, configure it properly and remove the extra as it's
not needed.

It's also a bit funny matching against phy0 and phy1 when both differ
between ath9k and ath10k.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23191
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: qca955x: use led-sources for WMAC
Rosen Penev [Sun, 25 May 2025 00:40:41 +0000 (17:40 -0700)] 
ath79: qca955x: use led-sources for WMAC

The ath9k driver creates an ath9k LED by default. Instead of having a
non functional LED, configure it properly and remove the extra as it's
not needed.

It's also a bit funny matching against phy0 and phy1 when both differ
between ath9k and ath10k.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23191
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: remove led-sources for 1
Rosen Penev [Sun, 30 Nov 2025 23:19:29 +0000 (15:19 -0800)] 
ath79: remove led-sources for 1

In ath9k, 1 is specified as the default GPIO unless matched to a
specific device. None of these match to anything and use 1 anyway.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23191
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: convert phy1tpt to led-sources
Rosen Penev [Sun, 30 Nov 2025 22:52:18 +0000 (14:52 -0800)] 
ath79: convert phy1tpt to led-sources

Makes it a lot clearer what phy1tpt is, especially since it differs
between ath10k and ath9k.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23191
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agopcre2: fix PKG_LICENSE_FILES after upstream rename 23164/head
Michael Pfeifroth [Thu, 30 Apr 2026 12:00:47 +0000 (14:00 +0200)] 
pcre2: fix PKG_LICENSE_FILES after upstream rename

PCRE2 10.47 renamed LICENCE to LICENCE.md. Update PKG_LICENSE_FILES
to match the actual filename in the source tarball.

Signed-off-by: Michael Pfeifroth <michael.pfeifroth@westermo.com>
Link: https://github.com/openwrt/openwrt/pull/23164
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mach/prom: add identifiers to soc_info structure 23173/head
Markus Stockhausen [Fri, 1 May 2026 08:02:16 +0000 (10:02 +0200)] 
realtek: mach/prom: add identifiers to soc_info structure

SoC name and system type identifiers are currently separated from
the soc_info structure. This gives no benefit. Relocate that info
into the structure where it belongs.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23173
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomalta: drop 6.12 support 22868/head
Mieczyslaw Nalewaj [Thu, 9 Apr 2026 18:20:39 +0000 (20:20 +0200)] 
malta: drop 6.12 support

Drop config for Linux 6.12.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/22868
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomalta: use kernel 6.18 by default
Mieczyslaw Nalewaj [Thu, 9 Apr 2026 18:18:33 +0000 (20:18 +0200)] 
malta: 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/22868
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: fix lz4 initramfs creation 23239/head
Andre Heider [Mon, 7 Jul 2025 16:21:06 +0000 (18:21 +0200)] 
kernel: fix lz4 initramfs creation

lz4c expects the target filename, provide it.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23239
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: pcs: rtl93xx: share IP mode register write 23213/head
Jonas Jelonek [Mon, 27 Apr 2026 10:34:27 +0000 (10:34 +0000)] 
realtek: pcs: rtl93xx: share IP mode register write

RTL930x and RTL931x program the same physical SerDes IP mode field
(page 0x1f reg 0x09, bits 11:7 hold the 5-bit mode value, bit 6 is
the "force mode" enable), but did so via two unrelated code paths:
RTL930x kept the force bit separate from the value in a __set helper,
while RTL931x had it baked into each switch-case constant.

Add a shared rtpcs_93xx_sds_set_ip_mode() that takes the rtpcs_sds_mode
enum, looks up the 5-bit value from the existing sds_hw_mode_vals
table, and writes value | force-bit in one place.

Convert both variants:
 - RTL930x: drop __rtpcs_930x_sds_set_ip_mode and the manual table
   lookup; __rtpcs_930x_sds_get_ip_mode is replaced by the shared
   rtpcs_93xx_sds_get_ip_mode, which reverse-looks the raw register
   value up in sds_hw_mode_vals[] and returns the matching enum
   rtpcs_sds_mode (or -ENOENT for an unmapped raw value). The
   wrapper that orchestrates power, CMU, state machine and rx-reset
   around the mode write is renamed to rtpcs_930x_sds_apply_ip_mode
   for clarity.
 - RTL931x: drop the per-mode switch and the leftover pr_info debug
   print; rename the symerr-clear + MAC-OFF + IP-mode-write wrapper
   to rtpcs_931x_sds_apply_ip_mode.

rtpcs_930x_sds_reconfigure_to_pll() now goes through the new shared
get/set helpers: it saves the current IP mode as an enum on entry
and restores it via the enum-taking setter after the PLL reconfigure.
This changes behavior by mapping the raw mode setting through the
hardware mode table, effectively blocking unknown modes which might be
set by bootloader or somewhere else. This is intended and might uncover
unknown behavior instead of hiding it.

As a side-effect, QSGMII is now properly set too for RTL931x. Most code
paths anyway already had support for this mode, but it was missing from
the mode setting.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23213
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoipq-wifi: fix sorting 23216/head
Christoph Krapp [Mon, 4 May 2026 08:03:21 +0000 (10:03 +0200)] 
ipq-wifi: fix sorting

Signed-off-by: Christoph Krapp <achterin@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23216
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: add calibration variant for TP-Link EAP225-Wall v2
Christoph Krapp [Mon, 4 May 2026 07:23:13 +0000 (09:23 +0200)] 
ath79: add calibration variant for TP-Link EAP225-Wall v2

Now that we have a board file, add calibration variant for TP-Link
EAP225-Wall v2 and add ipq-wifi package for it.

Tested-by: Alexander <52272120+alexxela1337@users.noreply.github.com>
Signed-off-by: Christoph Krapp <achterin@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23216
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoipq-wifi/ath10k: fix 5GHz radio detection on TP-Link EAP225-Wall v2
Christoph Krapp [Mon, 4 May 2026 07:22:06 +0000 (09:22 +0200)] 
ipq-wifi/ath10k: fix 5GHz radio detection on TP-Link EAP225-Wall v2

Add IPQ Wifi entry for ath79 TP-Link EAP225-Wall v2.

Signed-off-by: Christoph Krapp <achterin@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23216
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoipq-wifi: update to Git HEAD (2026-05-05)
Robert Marko [Thu, 7 May 2026 09:10:49 +0000 (11:10 +0200)] 
ipq-wifi: update to Git HEAD (2026-05-05)

fc4cf4873873 qca9888: add TP-Link EAP225-Wall v2 BDF

Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: image: reset COMPILE between devices 23226/head
Jonas Jelonek [Thu, 30 Apr 2026 10:55:36 +0000 (10:55 +0000)] 
realtek: image: reset COMPILE between devices

Device/zyxel_zynos sets COMPILE := loader-$(1).bin to drive the
standalone rt-loader build, but include/image.mk's Device/Init does
not reset COMPILE between TARGET_DEVICES iterations. When a non-zynos
device follows a zynos device, the stale COMPILE entry survives and
Device/Build/compile registers a second recipe for the previous
device's loader-*.bin target. Make warns about the override and the
second (wrong) recipe wins.

Reset COMPILE in Device/Default so each device starts with a clean
slate.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23226
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: image: pin FLASH_ADDR per device
Jonas Jelonek [Thu, 30 Apr 2026 10:54:33 +0000 (10:54 +0000)] 
realtek: image: pin FLASH_ADDR per device

FLASH_ADDR is referenced inside Build/rt-loader-standalone but is not
listed in DEVICE_VARS, so include/image.mk's Device/Export does not
emit a per-target FLASH_ADDR := <value> assignment for the standalone
loader recipe. At recipe expansion time $(FLASH_ADDR) therefore
resolves to whatever value the last device in TARGET_DEVICES set
globally, which is not necessarily the value belonging to the loader
being built.

This currently happens to produce correct binaries only because every
device that sets FLASH_ADDR within a given subtarget shares the same
value, so the leaked global matches by coincidence.

Add FLASH_ADDR to DEVICE_VARS so each loader recipe captures its own
device's address.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23226
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agotreewide: remove unused archs leftovers 23240/head
Andre Heider [Wed, 23 Apr 2025 11:04:15 +0000 (13:04 +0200)] 
treewide: remove unused archs leftovers

These are all unused by the current targets, clean up and stop
irritating the user with irrelevant grep results.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23240
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agostarfive: 6.18: update LED aliases
Zoltan HERPAI [Tue, 5 May 2026 22:41:54 +0000 (22:41 +0000)] 
starfive: 6.18: update LED aliases

Between 6.12 and 6.18, a 'blank' led_status_power has been added into
jh7110-common.dtsi. Update the patches responsible for adding the LED
aliases and add functionality for this LED entry.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 weeks agostarfive: 6.12: drop CRYPTO_USER_API_*
Zoltan HERPAI [Mon, 4 May 2026 14:02:30 +0000 (14:02 +0000)] 
starfive: 6.12: drop CRYPTO_USER_API_*

These are not needed by any driver directly, and can be used
via modules if needed.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2 weeks agostarfive: 6.18: drop CRYPTO_USER_API_*
Zoltan HERPAI [Mon, 4 May 2026 14:01:49 +0000 (14:01 +0000)] 
starfive: 6.18: drop CRYPTO_USER_API_*

These are not needed by any driver directly, and can be used
via modules if needed.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
3 weeks agorealtek: eth: sort and rename defines 23145/head 23152/head
Markus Stockhausen [Tue, 28 Apr 2026 19:16:38 +0000 (21:16 +0200)] 
realtek: eth: sort and rename defines

Several defines still use the old prefix and are not sorted
alphabetically. Rearange the header file and the configuration
structures.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23145
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agorealtek: patches: simplify dsa/phy port hacks 23186/head
Markus Stockhausen [Fri, 1 May 2026 17:22:28 +0000 (19:22 +0200)] 
realtek: patches: simplify dsa/phy port hacks

The mdio driver has found a simple way to handle phy addresses
for all devices with upstream kernel defaults. Remove all unneeded
hacks from the corresponding patch and reword it.

While we are here increase DSA_MAX_PORTS to 56 to match RTL931x.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23186
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agorealtek: mdio: harden phy address check
Markus Stockhausen [Fri, 1 May 2026 17:21:10 +0000 (19:21 +0200)] 
realtek: mdio: harden phy address check

As of now RTL839x devices have never more than 32 devices on one
mdio bus. Harden the phy address check during probing.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23186
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agorealtek: dts: adapt RTL839x mdio bus topology
Markus Stockhausen [Fri, 1 May 2026 17:04:01 +0000 (19:04 +0200)] 
realtek: dts: adapt RTL839x mdio bus topology

The RTL839x actually has two mdio busses.

- mdio bus 0 serves ports 0..23
- mdio bus 1 serves ports 24..51

This is baked into hardware and cannot be changed during mdio driver
setup with any register write. With the recent changes the driver
handles ports, phys and busses in a more logical way. So a port X
is assigned to a bus Y and a phy Z (on that bus). This gives a
mapping like

- port 16 <=> bus 0, address 16
- port 32 <=> bus 1, address 8

This unique assignment is used in the mdio driver as follows:

- Request to read bus 1, address 8
- Lookup corresponding port = 32
- Read from port 32

Looking at RTL839x it becomes clear that bus/phy => port lookup can
be achieved in multiple different ways. The simple reason is, that
for this device the driver cannot setup the smi topology. It is
baked into the hardware. So adding a "virtual" second bus does not
change the hardware access but allows to keep phy addresses below 32.
Making an example

mdio_bus0 {
  PHY_C22(40, 40)
}

resolves to port 40. But the same can be achieved with

mdio_bus1 {
  PHY_C22(40, 16)
}

In the first case the kernel sees bus/phy = 0/40 and in the second
case it sees bus/phy = 1/16. Both result in the access to the same
phy device on hardware port 40.

Use this analogy for RTL839x devices to match the real hardware
topology. For this change the existing dts and

- activate mdio bus 1 in rtl839x.dtsi
- rearrange devices with ports 24..51 to make use of bus 1

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23186
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agorealtek: hwmon: backport lm75 alert polarity patches 23232/head
Markus Stockhausen [Tue, 5 May 2026 18:06:12 +0000 (20:06 +0200)] 
realtek: hwmon: backport lm75 alert polarity patches

The lm75 alert polarity active-high patch has been accepted upstream.
Replace the downstream version. Additionally add an upstream bugfix
that was identified during the implementation.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/23232
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agofirmware-utils: update to Git HEAD (2026-05-04) 23221/head
Jonas Jelonek [Mon, 4 May 2026 17:36:06 +0000 (17:36 +0000)] 
firmware-utils: update to Git HEAD (2026-05-04)

d21804addba6 add XikeStor SKS7300 image generation utility
7806c09361d2 mkzynfw: add board definitions for Zyxel XMG1915 switches
1a4153f4c701 mkzynfw: add board definitions for XGS1930 series

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23221
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agompc85xx: unify wrapper address of simple image devices 23121/head
Edward Chow [Mon, 27 Apr 2026 03:13:51 +0000 (11:13 +0800)] 
mpc85xx: unify wrapper address of simple image devices

The wrapper address of simple image devices should have been changed
at commit 6a8b831 , but only TL-WDR4900 and BR200-WP are changed at
that time, and now the wrapper address changes are split among patches
for specific devices. More importantly, commit 6a8b831 forgot to
change Enterasys WS-AP3715i, causing
https://github.com/openwrt/openwrt/issues/23112 .

This commit will gather the change of wrapper address of simple image
devices into a dedicated patch file.

Tested: Both WS-AP3715i and TL-WDR4900 v1 boot well.

Fixes: https://github.com/openwrt/openwrt/issues/23112
Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/23121
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agompc85xx: ws-ap3715i: use libdeflate-gzip for kernel
Edward Chow [Wed, 29 Apr 2026 21:52:10 +0000 (05:52 +0800)] 
mpc85xx: ws-ap3715i: use libdeflate-gzip for kernel

The simpleImage contains a payload already compressed with lzma-based
xz (by default), so further compressing it with lzma will often make
the result larger. On the contrary, compressing these simpleImages
with gzip can make the result smaller, so replace lzma with
libdeflate-gzip to compress kernel for ws-ap3715i.

Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/23121
Signed-off-by: Robert Marko <robimarko@gmail.com>