]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
2 weeks agorealtek: add SerDes PCS driver 20075/head
Markus Stockhausen [Wed, 17 Sep 2025 18:22:25 +0000 (14:22 -0400)] 
realtek: add SerDes PCS driver

Until now the the SerDes configuration is realized with helper functions
scattered around the DSA and PHY driver. Give them a new home as a PCS
driver.

The target design is as follows:

- dsa driver manages switch
- pcs driver manages SerDes on high level (this commit)
- mdio driver manages SerDes on low level

This driver adds the high level SerDes access via PCS. It makes use of
the low level mdio SerDes driver to access the registers.

Remark: This initial version provides exactly all phylink_pcs_ops that
are currently part of the DSA driver. So this can be swapped in one of
the next commits as a drop in replacement. To make use of it something
like this is needed:

...
ports = of_get_child_by_name(node, "ethernet-ports");
if (!ports)
return -EINVAL;

for_each_available_child_of_node(ports, port) {
pcs_node = of_parse_phandle(port, "pcs-handle", 0);
of_property_read_u32(port, "reg", &port_nr)) {

priv->pcs[port_nr] = rtpcs_create(dev, pcs_node, port_nr);
}
...

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20075
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: DTS: add macro for switch port with SerDes
Markus Stockhausen [Thu, 18 Sep 2025 09:10:50 +0000 (05:10 -0400)] 
realtek: DTS: add macro for switch port with SerDes

In the future the PCS & DSA drivers will lookup the SerDes of a
switch port via pcs-handle (like upstream does). Provide a macro
that allows to expand the existing port definitions. To link a
SerDes to port simply do

Either in short form:

replace SWITCH_PORT(0, 1, qsgmii)
with    SWITCH_PORT_SDS(0, 1, 3, qsgmii) (Link to SerDes 3)

Or in long form:

port@24 {
reg = <24>;
label = "lan25";
pcs-handle = <&serdes4>; (Link to SerDes 4)
phy-handle = <&phy24>;
phy-mode = "1000base-x";
managed = "in-band-status";
sfp = <&sfp0>;
};

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20075
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: timer: replace downstream with upstream patches 20097/head
Markus Stockhausen [Fri, 19 Sep 2025 19:35:05 +0000 (15:35 -0400)] 
realtek: timer: replace downstream with upstream patches

The fixes for the dying timers were finally accepted upstream.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20097
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: tl-wdr4900-v2: set ath9k led-pin 18905/head
Rosen Penev [Sun, 25 May 2025 01:02:14 +0000 (18:02 -0700)] 
ath79: tl-wdr4900-v2: set ath9k led-pin

Instead of having two LED entries that supposedly control the same
thing, set the pin properly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18905
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agotreewide: remove of_gpio.h 20076/head
Rosen Penev [Thu, 18 Sep 2025 01:44:21 +0000 (18:44 -0700)] 
treewide: remove of_gpio.h

of_gpio.h is deprecated in upstream Linux and may be removed soon. Get
ahead of things and remove it. Most of these drivers already use the
gpiod API.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20076
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoramips: add support for Qding QC202 17471/head
Coia Prant [Tue, 10 Dec 2024 15:18:13 +0000 (23:18 +0800)] 
ramips: add support for Qding QC202

This is a smart door lock device equipped with OpenWrt 14.07 OEM
modified version Qdwrt

The OEM has closed down, This commit is intended to maximize the
remaining value of these devices. It can flash OpenWrt to become
an AP

Specification:
- SoC: MediaTek MT7628NN
- Flash: 8 MB
- RAM: 64 MB
- Power: DC 5V - 25V
- Ethernet: 1 x RJ45 (10/100 Mbps)
- Wireless radio: 802.11n 2.4g-only
- On-Board LED:
  Status 1: GPIO/43 active-low
  Status 2: GPIO/44 active-low
  Power: AlwaysOn
- Button:
  WPS / RESET: GPIO/14  active-low
- Bluetooth: CC2541 via UART1 (ttyS1) and GPIO/26-29
- RFID: MF RC522 on I2C@28
- RTC: DS1339 on I2C@68
- Shell (via CON1 cable)
  - LED (Swipe card area):
     -  Green  GPIO/3  active-high
     -  Red    GPIO/11 active-high
  - Matrix keypad: (active-low)
                 GPIO/20 GPIO/21 GPIO/19 (Rows)
        GPIO/24        1       2       3
        GPIO/25        4       5       6
        GPIO/22        7       8       9
        GPIO/23     BACK       0   ENTER
        (Cols)
- UART: 1 x UART on PCB - 57600 8N1
- GPIO Relay: GPIO/42 active-high
- GPIO Buzzer: GPIO/15 active-high

Warning:
The original firmware does not use the device tree.
This device tree is written based on the content of /sys/devices/platform
and has been tested

Note:
- On the device, matrix keypad rows actually are columns, and the columns actually are rows
- The key code of the CLEAR key of the matrix keypad is BACK in the original firmware.

Issue:
- No drivers in mainline kernel for RFID and Bluetooth.

Flash Instruction:
Using SSH/Telnet:
1. Connect the board to the computer via RJ45 Ethernet
2. Login 10.10.10.1 with root password "szqdingnet123" (SSH Port 22, Telnet Port 9900)
3. Download openwrt firmware on the computer.
4. Setup a http server on computer. And use wget download openwrt firmware from computer
5. Use command "mtd -r write openwrt-ramips-mt76x8-qding_qc202-squashfs-sysupgrade.bin firmware"
   to flash

Using U-Boot WebUI:
1. Configure PC with a static IP address 10.10.10.2/24.
2. Open http://10.10.10.1
3. Use "mkqdimg -B qc202 -f openwrt-ramips-mt76x8-qding_qc202-squashfs-sysupgrade.bin" to
   make image.
4. Upload factory.bin via U-Boot WebUI.

Original Firmware Dump / More details:
https://blog.gov.cooking/archives/research-qianding-smart-locker-and-flash.html

Original U-Boot firmware image tools:
https://gitlab.com/CoiaPrant/mkqdimg

Signed-off-by: Coia Prant <coiaprant@gmail.com>
Tested-by: Coia Prant <coiaprant@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17471
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agokernel: add kmod-input-matrix-keypad package
Coia Prant [Fri, 21 Mar 2025 16:13:57 +0000 (00:13 +0800)] 
kernel: add kmod-input-matrix-keypad package

This module contains driver for GPIO driven matrix keypad.

Signed-off-by: Coia Prant <coiaprant@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17471
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoramips: add support for AsiaRF AP7621-004 Rev. 3 19944/head
Elwin Huang [Fri, 5 Sep 2025 01:56:29 +0000 (09:56 +0800)] 
ramips: add support for AsiaRF AP7621-004 Rev. 3

Specification:

- SoC           : MediaTek MT7621AT, dual-core 880 MHz MIPS CPU
- RAM           : DDR3 512 MB (Micron MT41K256M16TW-107)
- Flash         : SPI-NOR 16 MB (MACRONIX MX25L12835FM2I-10G)
- Ethernet      : 5 port GbE Switch
    - LAN :
        3x RJ-45 Port
        1x PHD Connector (2x5 pin, pitch 2.0 mm)
    - WAN :
        1x RJ-45 Port
- LED           : 8x LEDs
    1x Power (Blue)
    2x MiniPCIe (Orange)
    1x M.2 B Key (Red)
    4x Ethernet activity (White)
- UART          : 1x4 pin header on PCB [J1]
    - arrangement : 3.3V, TX, RX, GND
    - settings    : 57600, 8n1
- Button        : 2x (Reset, WPS)
- USB           : 1x USB 2.0
- Socket       :
    2x MiniPCIe (PCIe Gen2)
    1x M.2 B key (PCIe Gen2 + USB 3.0)
    1x MicroSD
    1x SIM Card
- Power         : 12V DC, 1A

MAC addresses :
    LAN:        00:0A:52:xx:xx:xx   (Factory, 0xe000)
    WAN:        00:0A:52:xx:xx:xx   (Factory, 0xe006)

Flash instruction through LuCI:

This device is flashed OpenWRT base firmware with this target.
The LuCI webpage is integrated in default for upgrading.

Flash instruction through u-boot:

1. Prepare the TFTP server on PC.
2. Connect uart to PC, select "2. Upgrade firmware" in u-boot menu.
3. Select "0 - TFTP client (Default)", input client IP, server IP, flashed bin file path
4. Wait about 60 seconds to complete flashing

Signed-off-by: Elwin Huang <s09289728096@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19944
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agorealtek: fix dts warnings. 20091/head
Markus Stockhausen [Fri, 19 Sep 2025 08:57:21 +0000 (04:57 -0400)] 
realtek: fix dts warnings.

Currently following warnings are given

dts/rtl930x.dtsi:166.4-23: Warning (reg_format):
/switchcore@1b000000/i2c@36c:reg: property has invalid length
(8 bytes) (#address-cells == 2, #size-cells == 1)

Obviously default address-cells size is fixed to 64 bit. Align
with upstream and override address size to 32 bit.

Suggested-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20091
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 UART2 node 20090/head
George Moussalem [Fri, 19 Sep 2025 05:50:01 +0000 (09:50 +0400)] 
qualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 UART2 node

Add node to support the second UART node controller in IPQ5018.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20090
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agouqmi: Increase PKG_RELEASE
Hauke Mehrtens [Thu, 18 Sep 2025 23:54:13 +0000 (01:54 +0200)] 
uqmi: Increase PKG_RELEASE

Make sure that the package gets updated after the last fix.

Fixes: cd20ae44f22d ("uqmi: fix data-format parsing")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: add support for AsiaRF AP7622-WH1 19962/head
Elwin Huang [Fri, 5 Sep 2025 13:37:32 +0000 (21:37 +0800)] 
mediatek: add support for AsiaRF AP7622-WH1

- SoC           : MediaTek MT7622A, dual-core 1.35 Ghz ARM Cortex-A53 CPU
- RAM           : DDR3 512 MiB (Nanya NT5CC256M16ER-EKI)
- Flash         : SPI-NAND 128 MiB (Winbond W25N01GVZEIG)
- Ethernet      : 5 port Switch
    - LAN :
        4x 10/100/1000 Mbps RJ-45 Port
    - WAN :
        1x 10/100/1000 Mbps RJ-45 Port
- LED           : 10x LEDs
    1x Power (Blue, GPIO)
    1x WiFi (Green, GPIO)
    2x MiniPCIe (Orange)
    1x M.2 B Key (Red)
    5x Ethernet activity (White)
- UART          : 1x4 pin header on PCB [J19]
    - arrangement : 3.3V, TX, RX, GND
    - settings    : 115200, 8n1
- Button        : 2x (Reset, WPS)
- GPS           : 1x (Quectel L76-L)
- WiFi          : 2x
    WiFi 4 (MediaTek MT7622A)
    WiFI HaLow (AsiaRF MM610X-001)
- BT            : BT 4.2/BLE 5.0 (MediaTek MT7622A)
- Socket        :
    2x MiniPCIe (PCIe Gen2 + USB 2.0) with extra SPI interface (NI)
    1x M.2 B key (USB 3.0)
    1x SIM Card
    1x USB-A (USB 2.0)
- Power         : 12V DC, 1A

MAC addresses :
    WLAN:       00:0A:52:xx:xx:xx   (Factory, 0x6)
    LAN:        00:0A:52:xx:xx:xx   (Factory, 0x7fff4)
    WAN:        00:0A:52:xx:xx:xx   (Factory, 0x7fffa)

Note: To use SPI interface on mPCIe slot, weld 4x 0402 0R resistors on [R832-835] or [R960-963]
mPCIe mapping:
    45# - SPI_CLK
    47# - SPI_MISO
    49# - SPI_MOSI
    51# - SPI_CSN

Flash instruction through LuCI:

This device is flashed OpenWRT base firmware with this target.
The LuCI webpage is integrated in default for upgrading.

Flash instruction through u-boot:

1. Prepare the TFTP server on PC.
2. Connect uart to PC, select "2. System Load Linux Kernel then write to Flash via TFTP." in u-boot menu.
3. input flashed bin file path, server IP, client IP
4. Wait about 20 seconds to complete flashing

Signed-off-by: Elwin Huang <s09289728096@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19962
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agouqmi: fix data-format parsing
David Bauer [Sun, 14 Sep 2025 09:07:38 +0000 (11:07 +0200)] 
uqmi: fix data-format parsing

wda-get-data-format now returns an object instead of a single string.
Account for this change when reading the packet data format.

Suggested-by: Sebastian Ertz (https://github.com/sebastianertz)
Signed-off-by: David Bauer <mail@david-bauer.net>
2 weeks agomediatek: filogic: add Keenetic Sprinter (KN-3711) support 19633/head
Vladimir Epifantsev [Sat, 6 Sep 2025 17:01:34 +0000 (20:01 +0300)] 
mediatek: filogic: add Keenetic Sprinter (KN-3711) support

Specification:
    SoC: Mediatek MT7981BA
    RAM: 512 MB DDR4 RAM
    Flash: Winbond W25N01GV 128 MB SPI-NAND (dual boot on OEM)
    WiFi: MT7976CN DBDC AX
    Switch: MediaTek MT7531AE (3x LAN Gigabit ports) + Internal Gbe Phy (1x WAN Gigabit port)
    GPIO: 4x LED (power, internet, fn, wifi), 2x buttons (wps, reset), 1x switch (mesh)

UART Interface:
    Pins: VCC, TX, RX, NC, GND
    Settings: 115200, 8N1

Flashing via TFTP:
    1. Connect your PC and router to the first LAN port, configure PC interface using IP 192.168.1.2, mask 255.255.255.0
    2. Save the factory image of the OpenWRT firmware, renamed to KN-3711_recovery.bin, on the TFTP server
    3. Hold the reset button and power up the device
    4. Keep the button pressed until the status LED starts blinking

Signed-off-by: Vladimir Epifantsev <volatilefield@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19633
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoeconet: Add basic USB support with Mass Storage 20050/head
Caleb James DeLisle [Sun, 14 Sep 2025 17:23:47 +0000 (17:23 +0000)] 
econet: Add basic USB support with Mass Storage

The EN751221 has an XHCI that is compatible with MT7621.
While there is setup logic in the vendor code for both
EN751221 and MT7621, but MT7621 does not use it in mainline
or OpenWRT, and it appears to work correctly with EN751221.

Include SCSI / Mass Storage because many EcoNet devices
contain a builtin USB SD-Card reader.

Signed-off-by: Caleb James DeLisle <cjd@cjdns.fr>
Link: https://github.com/openwrt/openwrt/pull/20050
[Remove usb storage kmod from smartfiber_xp8421-b]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoramips: add support for Zbtlink ZBT-WG108 19966/head
Nickolay Goppen [Sat, 6 Sep 2025 13:40:31 +0000 (16:40 +0300)] 
ramips: add support for Zbtlink ZBT-WG108

Specification:

CPU: MediaTek MT7621 (880 MHz)
Flash size: 16 MB NOR SPI
RAM size: 128 MB
Bootloader: Breed
Wireless: MT7612EN 2x2 802.11an+ac(5 GHz)
Wireless: MT7603EN 2x2 bgn(2.4 GHz)
Ethernet: 1 x WAN (10/100/1000Mbps) and 4 x LAN (10/100/1000 Mbps)
USB: 1x 2.0 Type-A port
External storage: 1x microSD (SDXC) slot
UART: console (115200 baud)
LEDs: Power, Wan, Lan 1-4, WiFi 2.4G, WiFi 5G
Buttons: Reset

How to install:
The original firmware is OpenWrt, so sysupgrade can be used.

Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
Link: https://github.com/openwrt/openwrt/pull/19966
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoairoha: add missing Kconfig entry on 6.12 20087/head
Aleksander Jan Bajkowski [Thu, 18 Sep 2025 17:15:46 +0000 (19:15 +0200)] 
airoha: add missing Kconfig entry on 6.12

This commit adds the missing Kconfig entry. It was accidentally
omitted previously.

Fixes: 440b85f5b102 ("airoha: an7581: enable uart baudrate control")
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/20087
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoopenssl: Backport fix for OpenSSL 3.5.2 and 3.0.17 regression 20074/head
Hauke Mehrtens [Wed, 17 Sep 2025 17:55:50 +0000 (19:55 +0200)] 
openssl: Backport fix for OpenSSL 3.5.2 and 3.0.17 regression

Fixes segmentation faults in openssl. This problem was introduced in
version 3.5.2 and 3.0.17. Backport a fix from the OpenSSL 3.5 branch.

Link: https://forum.openwrt.org/t/openssl-3-0-17-libcrypto-segmentation-faults-regression/240650/9
Link: https://github.com/openssl/openssl/issues/28171
Link: https://github.com/openssl/openssl/commit/c4c92f3e8aff38d75047847ded940e1b3f9b688f
Fixes: 223c1de963df ("openssl: update to 3.5.2")
Link: https://github.com/openwrt/openwrt/pull/20074
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoodhcpd: update to Git HEAD (2025-09-16)
Ted Hess [Thu, 18 Sep 2025 17:01:14 +0000 (13:01 -0400)] 
odhcpd: update to Git HEAD (2025-09-16)

c9816de148cc odhcpd: support multiple per-client MAC addresses

Signed-off-by: Ted Hess <thess@kitschensync.net>
2 weeks agoairoha: an7581: enable uart baudrate control 20049/head
Aleksander Jan Bajkowski [Sun, 14 Sep 2025 15:38:24 +0000 (17:38 +0200)] 
airoha: an7581: enable uart baudrate control

The baud rate control on Airoha does not function properly. This
patch enables the inactive code responsible for this. The UART2
baud rate is correct. HSUART3 operates at twice the requested
baud rate. The same problem exists in the current code, so this
doesn't introduce any regression. Support for baud rates higher
than 460800 is still required. This will be added in the future.

Tested on Gemtek W1700k. UART2 and HSUART3 are working fine.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/20049
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: bump 6.12 to 6.12.47 20003/head
John Audia [Thu, 11 Sep 2025 19:43:04 +0000 (15:43 -0400)] 
kernel: bump 6.12 to 6.12.47

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

No patches needed to be rebased.

Build system: x86/64
Build-tested: Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, x86/64-glibc
Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, x86/64-glibc

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/20003
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agox86: config: add CONFIG_MITIGATION_VMSCAPE=y
John Audia [Thu, 11 Sep 2025 19:37:51 +0000 (15:37 -0400)] 
x86: config: add CONFIG_MITIGATION_VMSCAPE=y

Introduced in the 6.12.47 update, set this new mitigation option to
be enabled. See: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/x86/Kconfig?id=v6.12.47&id2=v6.12.46

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/20003
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: bump 6.12 to 6.12.46
John Audia [Wed, 10 Sep 2025 07:53:23 +0000 (03:53 -0400)] 
kernel: bump 6.12 to 6.12.46

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

Removed upstreamed:
backport-6.12/600-01-v6.14-net-dsa-add-hook-to-determine-whether-EEE-is-support.patch[1]
generic-backport/600-02-v6.14-net-dsa-provide-implementation-of-.support_eee.patch[2]
generic/backport-6.12/610-02-v6.14-net-dsa-b53-bcm_sf2-implement-.support_eee-method.patch[3]
generic/backport-6.12/610-05-v6.16-net-dsa-b53-do-not-enable-EEE-on-bcm63xx.patch[4]
generic/backport-6.12/621-proc-fix-missing-pde_set_flags.patch[5]
generic/pending-6.12/742-net-ethernet-mtk_eth_soc-fix-tx-vlan-tag-for-llc-pac.patch[6]

Manually rebased:
bcm27xx/patches-6.12/950-0347-net-macb-Also-set-DMA-coherent-mask.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.46&id=f7976772b16a7da725f9156c5ab6472ba22e3bc0
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.46&id=cda6c5c095e1997e63ed805ed3191f3d2af806a0
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.46&id=b765b9ee4e5a82e9d0e5d0649bf031e8a8b90b3d
4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.46&id=3fbe3f4c57fda09f32e13fa05f53a0cc6f500619
5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.46&id=3eebe856d09b6bdd8df99eb67203c831f23e21d7
6. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.46&id=f8b4b6f7c2bbfa33e50b8cc946c161172cdefbd5

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/20003
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: whr-g301n: remove custon wifi LED 20023/head
Rosen Penev [Thu, 11 Sep 2025 23:48:59 +0000 (16:48 -0700)] 
ath79: whr-g301n: remove custon wifi LED

The driver makes its own ath9k LED which handles everything.

Simplifies DTS slightly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20023
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoath79: whr-g301n: use nvmem for eeprom
Rosen Penev [Thu, 11 Sep 2025 23:46:53 +0000 (16:46 -0700)] 
ath79: whr-g301n: use nvmem for eeprom

Userspace handling for this is deprecated.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20023
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: register SerDes bus so it can be looked up 20078/head
Markus Stockhausen [Thu, 18 Sep 2025 06:35:32 +0000 (02:35 -0400)] 
realtek: mdio: register SerDes bus so it can be looked up

The upcoming PCS driver will lookup the SerDes mdio bus via
of_mdio_find_bus() and the devicetree. This is only possible
with proper registration via devm_of_mdiobus_register().

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20078
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: Simplify backing SerDes calculation
Markus Stockhausen [Thu, 18 Sep 2025 05:53:22 +0000 (01:53 -0400)] 
realtek: mdio: Simplify backing SerDes calculation

No need two write a dedicated 1:1 mapping function and link that
for all the targets except RTL931x. Combine everything into a generic
helper and reduce the configuration structure.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20078
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: fix non-debug SerDes builds
Markus Stockhausen [Thu, 18 Sep 2025 05:34:27 +0000 (01:34 -0400)] 
realtek: mdio: fix non-debug SerDes builds

The new SerDes mdio driver produces the following compilation
error in non-debug builds.

drivers/net/mdio/mdio-realtek-otto-serdes.c:72:12:
error: 'rtsds_sds_to_mmd' defined but not used [-Werror=unused-function]
   72 | static int rtsds_sds_to_mmd(int sds_page, int sds_regnum)
      |            ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Move the function into the debug section.

Fixes: 7a7ee72c4d306e7 ("realtek: mdio: add SerDes driver")
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20078
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agointel-microcode: update to 20250812 20045/head
John Audia [Sun, 14 Sep 2025 06:16:41 +0000 (02:16 -0400)] 
intel-microcode: update to 20250812

New upstream release. Debian changelog:
* New upstream microcode datafile 20250812 (closes: #1110983, #1112168)
- Mitgations for INTEL-SA-01249 (processor Stream Cache):
  CVE-2025-20109: Improper Isolation or Compartmentalization in the
  stream cache mechanism for some Intel Processors may allow an
  authenticated user to potentially enable escalation of privilege via
  local access.  Intel also disclosed that several processors models
  had already received this mitigation on the previous microcode
  release, 20250512.
- Mitigations for INTEL-SA-01308:
  CVE-2025-22840: Sequence of processor instructions leads to
  unexpected behavior for some Intel Xeon 6 Scalable processors may
  allow an authenticated user to potentially enable escalation of
  privilege via local access.
- Mitigations for INTEL-SA-01310 (OOBM services module):
  CVE-2025-22839: Insufficient granularity of access control in the
  OOB-MSM for some Intel Xeon 6 Scalable processors may allow a
  privileged user to potentially enable escalation of privilege via
  adjacent access.
- Mitigations for INTEL-SA-01311 (Intel TDX):
  CVE-2025-22889: Improper handling of overlap between protected
  memory ranges for some Intel Xeon 6 processors with Intel TDX may
  allow a privileged user to potentially enable escalation of
  privilege via local access.
- Mitigations for INTEL-SA-01313:
  CVE-2025-20053: Improper buffer restrictions for some Intel Xeon
  Processor firmware with SGX enabled may allow a privileged user to
  potentially enable escalation of privilege via local access.
  CVE-2025-21090: Missing reference to active allocated resource for
  some Intel Xeon processors may allow an authenticated user to
  potentially enable denial of service via local access.
  CVE-2025-24305: Insufficient control flow management in the Alias
  Checking Trusted Module (ACTM) firmware for some Intel Xeon
  processors may allow a privileged user to potentially enable
  escalation of privilege via local access.
- Mitigations for INTEL-SA-01367 (Intel SGX, TDX):
  CVE-2025-26403: Out-of-bounds write in the memory subsystem for some
  Intel Xeon 6 processors when using Intel SGX or Intel TDX may allow
  a privileged user to potentially enable escalation of privilege via
  local access.
  CVE-2025-32086: Improperly implemented security check for standard
  in the DDRIO configuration for some Intel Xeon 6 Processors when
  using Intel SGX or Intel TDX may allow a privileged user to
  potentially enable escalation of privilege via local access.
- Fixes for unspecified functional issues on several Intel Core and
  Intel Xeon processor models.
* Updated microcodes:
  sig 0x000606a6, pf_mask 0x87, 2025-03-11, rev 0xd000410, size 309248
  sig 0x000606c1, pf_mask 0x10, 2025-03-06, rev 0x10002e0, size 301056
  sig 0x000806f8, pf_mask 0x87, 2025-04-04, rev 0x2b000643, size 592896
  sig 0x000806f7, pf_mask 0x87, 2025-04-04, rev 0x2b000643
  sig 0x000806f6, pf_mask 0x87, 2025-04-04, rev 0x2b000643
  sig 0x000806f5, pf_mask 0x87, 2025-04-04, rev 0x2b000643
  sig 0x000806f4, pf_mask 0x87, 2025-04-04, rev 0x2b000643
  sig 0x000806f8, pf_mask 0x10, 2025-04-08, rev 0x2c000401, size 625664
  sig 0x000806f6, pf_mask 0x10, 2025-04-08, rev 0x2c000401
  sig 0x000806f5, pf_mask 0x10, 2025-04-08, rev 0x2c000401
  sig 0x000806f4, pf_mask 0x10, 2025-04-08, rev 0x2c000401
  sig 0x000a06a4, pf_mask 0xe6, 2025-03-19, rev 0x0025, size 140288
  sig 0x000a06d1, pf_mask 0x95, 2025-05-15, rev 0x10003d0, size 1667072
  sig 0x000a06d1, pf_mask 0x20, 2025-05-15, rev 0xa000100, size 1638400
  sig 0x000a06f3, pf_mask 0x01, 2025-05-03, rev 0x3000362, size 1530880
  sig 0x000b06a2, pf_mask 0xe0, 2025-02-24, rev 0x4129, size 224256
  sig 0x000b06a3, pf_mask 0xe0, 2025-02-24, rev 0x4129
  sig 0x000b06a8, pf_mask 0xe0, 2025-02-24, rev 0x4129
  sig 0x000b06d1, pf_mask 0x80, 2025-05-21, rev 0x0123, size 80896
  sig 0x000c0662, pf_mask 0x82, 2025-05-14, rev 0x0119, size 90112
  sig 0x000c06a2, pf_mask 0x82, 2025-05-14, rev 0x0119
  sig 0x000c0652, pf_mask 0x82, 2025-05-14, rev 0x0119
  sig 0x000c0664, pf_mask 0x82, 2025-05-14, rev 0x0119
  sig 0x000c06f2, pf_mask 0x87, 2025-04-15, rev 0x210002b3, size 564224
  sig 0x000c06f1, pf_mask 0x87, 2025-04-15, rev 0x210002b3

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: x86/64-glibc (Intel N150 PC)

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/20045
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: fix longdata-aps256 wan port to work in factory bootloader 20039/head
Roy H [Tue, 16 Sep 2025 03:25:36 +0000 (10:25 +0700)] 
ath79: fix longdata-aps256 wan port to work in factory bootloader

In first commit I successfully bring WAN port into ethernet switch,
without realizing that I was using custom bootloader. But if using
original bootloader it do not works. WAN port in original bootloader
is tied to using its own GMAC.

This fix is made so this firmware will be compatible with orignal
bootloader, so the user can directly flash from stock firmware without
changing anything.

Signed-off-by: Roy H <roy@altbytes.com>
Link: https://github.com/openwrt/openwrt/pull/20039
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoath79: tiny: tplink: add nvmem and fix 20024/head
Rosen Penev [Fri, 12 Sep 2025 00:31:07 +0000 (17:31 -0700)] 
ath79: tiny: tplink: add nvmem and fix

Despite having the same tplink.dtsi file, there are differences in wifi

Move wifi nodes out of dtsi to make it clear what the chipset is and
what calibration size should be used.

While at it, change to use led-sources to simplify LED setup.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20024
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: mdio: add SerDes driver 20062/head
Markus Stockhausen [Mon, 15 Sep 2025 16:08:53 +0000 (12:08 -0400)] 
realtek: mdio: add SerDes driver

Until now the SerDes access is realized with some helper functions
in the mdio bus. These were moved around a lot and had no real home.
End that temporary solution to move them where they belong.

The target design for the different Realtek drivers is as follows:

- dsa driver manages switch
- pcs driver manages SerDes on high level (to be developed)
- mdio driver manages SerDes on low level (this commit)

This driver adds the low level SerDes access via mdio. For debugging
purposes the user can interact with the SerDes in different ways.

First, there is a debug interface in
/sys/kernel/debug/realtek_otto_serdes/serdes.X/registers.
With that a dump of all registers can be shown.

> cat /sys/kernel/debug/realtek_otto_serdes/serdes.4/registers
Back SDS  4:   00   01   02   03   04   05   06   07   08
SDS        : 0C03 0F00 7060 7106 074D 0EBF 0F0F 0359 5248
SDS_EXT    : 0000 0000 85FA 8C6D 5CCC 0000 20D8 0003 79AA
...

Second, one can read/write registers via the mmd functions of the
mdio command line tool. Important to know: The registers are accessed
on the vendor specific MDIO_MMD_VEND1 device address (=30). Additionally
the SerDes page and register are concatenated into the the mmd register.
Top 8 bits are SerDes page and bottom 8 bits are SerDEs register.
E.g.

- mmd 0x0206 : SerDes page 0x02, SerDes register 0x06
- mmd 0x041f : SerDes page 0x04, SerDes register 0x1f

Read register 0x02 on page 0x03 of SerDes 0
> mdio realtek-serdes-mdio mmd 0:30 raw 0x0302

Write register 0x12 on page 0x02 of SerDes 1
> mdio realtek-serdes-mdio mmd 1:30 raw 0x0212 0x2222

For now this driver is only defined in the devicetree and activated
in the kernel build. There is no current consumer but at least
the debugging interface is available. Cleanup of the currently used
SerDes functions will come later.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20062
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: ethernet: drop open coding 20030/head
Markus Stockhausen [Fri, 12 Sep 2025 11:14:25 +0000 (07:14 -0400)] 
realtek: ethernet: drop open coding

There is some open coding in the ethernet driver. Drop
that and use kernel helpers instead.

- Use napi_gro_receive() instead of local skb list
- Use skb_put_data() instead of skb_put() plus memcpy()
- Use netdev_alloc_skb_ip_align() instead of manual alignment

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20030
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agorealtek: Increase verbosity in rtldsa_fib4_add()/rtldsa_fib4_del() 20029/head
Markus Stockhausen [Fri, 12 Sep 2025 09:55:47 +0000 (05:55 -0400)] 
realtek: Increase verbosity in rtldsa_fib4_add()/rtldsa_fib4_del()

L3 routing in Realtek switches is some magic voodoo. Especially
the syslog messages are not helpful at all for error diagnosis. As
a first step refactor rtldsa_fib4_add() and rtldsa_fib4_del() to
get some idea what is going on. For this add a helper function
rtldsa_fib4_check() for basic sanity checks and logging.

Do not only increase verbosity but fix some coding as well.

- Drop leftover checks for subnet 192.168.100.x
- Better detection of broadcast routes
- clearer MAC/VLAN formatting
- sort variables descending
- rename 1 char variable "r" to "route"
- change log helpers from pr...() to dev_...()

Before:

[    5.640463] rtl83xx_fib_event_work_do: FIB4 default rule failed
[    5.647164] rtl83xx_fib_event_work_do: FIB4 default rule failed
[   13.975386] rtl83xx_fib_event_work_do: FIB4 failed
[   13.981456] rtl83xx_fib_event_work_do: FIB4 failed
[   13.986906] rtl83xx_fib_event_work_do: FIB4 failed
[   18.455777] rtl83xx_fib4_del: no such gateway: 0.0.0.0
[   18.470993] rtl83xx_fib4_del: no such gateway: 0.0.0.0
[   18.476839] rtl83xx_fib4_del: no such gateway: 0.0.0.0

After:

[   13.812501] rtl83xx-switch switch@1b000000: add IPv4 route 192.168.1.1/32 (VLAN 0, MAC 80:00:37:74:80:00)
[   13.823501] rtl83xx-switch switch@1b000000: lower interface lan1 not found
[   13.831371] rtl83xx-switch switch@1b000000: fib_add() failed
[   13.848157] rtl83xx-switch switch@1b000000: add IPv4 route 192.168.1.255/32 (VLAN 0, MAC 80:00:37:74:80:00)
[   13.859264] rtl83xx-switch switch@1b000000: skip loopback/broadcast address
[   13.883086] rtl83xx-switch switch@1b000000: add IPv4 route 192.168.1.0/24 (VLAN 0, MAC 80:00:37:74:80:00)
[   13.894051] rtl83xx-switch switch@1b000000: lower interface lan1 not found
[   13.902009] rtl83xx-switch switch@1b000000: fib_add() failed
[   18.342938] rtl83xx-switch switch@1b000000: delete IPv4 route 192.168.1.0/24 (VLAN 0, MAC 80:00:37:74:80:00)
[   18.354162] rtl83xx-switch switch@1b000000: no such gateway: 0.0.0.0
[   18.361483] rtl83xx-switch switch@1b000000: fib_del() failed
[   18.378327] rtl83xx-switch switch@1b000000: delete IPv4 route 192.168.1.255/32 (VLAN 0, MAC 80:00:37:74:80:00)
[   18.389736] rtl83xx-switch switch@1b000000: skip loopback/broadcast address
[   18.419856] rtl83xx-switch switch@1b000000: delete IPv4 route 192.168.1.1/32 (VLAN 0, MAC 80:00:37:74:80:00)
[   18.431160] rtl83xx-switch switch@1b000000: no such gateway: 0.0.0.0
[   18.438452] rtl83xx-switch switch@1b000000: fib_del() failed
[   54.570217] rtl83xx-switch switch@1b000000: add IPv4 route 192.168.2.71/32 (VLAN 1, MAC d8:ec:5e:5b:7d:a1)
[   54.581329] rtl83xx-switch switch@1b000000: route hashtable extended for gw 0.0.0.0
[   54.638792] rtl83xx-switch switch@1b000000: add IPv4 route 192.168.2.255/32 (VLAN 1, MAC d8:ec:5e:5b:7d:a1)
[   54.649913] rtl83xx-switch switch@1b000000: skip loopback/broadcast address
[   54.780897] rtl83xx-switch switch@1b000000: add IPv4 route 192.168.2.0/24 (VLAN 1, MAC d8:ec:5e:5b:7d:a1)
[   54.791883] rtl83xx-switch switch@1b000000: route hashtable extended for gw 0.0.0.0

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20029
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel: 6.12: refresh patches for airoha/econet on 6.12.45 20073/head
Leo Barsky [Wed, 17 Sep 2025 16:01:59 +0000 (13:01 -0300)] 
kernel: 6.12: refresh patches for airoha/econet on 6.12.45

Refresh patches 6.12 for airoha and econet

Fixes: 122135b964 ("airoha: an7581: add support for kernel 6.12")
Fixes: 73d0f92460 ("kernel: Add new platform EcoNet MIPS")
Signed-off-by: Leo Barsky <leobrsky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/20073
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 I2C node 20070/head
George Moussalem [Wed, 17 Sep 2025 05:56:49 +0000 (09:56 +0400)] 
qualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 I2C node

Use upstreamed patch for adding the QUP3 I2C node.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/20070
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoucode: ubus: add shared global connection to uloop
Felix Fietkau [Wed, 17 Sep 2025 10:27:00 +0000 (12:27 +0200)] 
ucode: ubus: add shared global connection to uloop

Fixes issues with registering objects

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agoairoha: an7581: add support for kernel 6.12 19038/head
Kenneth Kasilag [Sat, 13 Sep 2025 10:47:21 +0000 (10:47 +0000)] 
airoha: an7581: add support for kernel 6.12

Enable kernel 6.12 as the testing kernel for airoha.

This first commit will largely maintain feature-parity with kernel 6.6.

DTS changes are backwards-compatible with kernel 6.6.

Tested to flash and boot on Gemtek W1700K (#17869).

Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me>
Link: https://github.com/openwrt/openwrt/pull/19038
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel/airoha: Restore kernel files for v6.6
Kenneth Kasilag [Sat, 13 Sep 2025 09:32:19 +0000 (09:32 +0000)] 
kernel/airoha: Restore kernel files for v6.6

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

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

Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me>
Link: https://github.com/openwrt/openwrt/pull/19038
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agokernel/airoha: Create kernel files for v6.12 (from v6.6)
Kenneth Kasilag [Sat, 13 Sep 2025 09:32:19 +0000 (09:32 +0000)] 
kernel/airoha: Create kernel files for v6.12 (from v6.6)

This is an automatically generated commit.

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

Signed-off-by: Kenneth Kasilag <kenneth@kasilag.me>
Link: https://github.com/openwrt/openwrt/pull/19038
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoipq-wifi: update to Git HEAD (2025-09-16)
Robert Marko [Tue, 16 Sep 2025 15:19:23 +0000 (17:19 +0200)] 
ipq-wifi: update to Git HEAD (2025-09-16)

c40198780e44 qca9888: add BDF for TP-Link Archer C60 v1
Link: https://github.com/openwrt/firmware_qca-wireless/pull/67
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq807x: use label MAC to set addresses for wireless interfaces 18759/head
Paweł Owoc [Fri, 16 May 2025 15:53:46 +0000 (17:53 +0200)] 
qualcommax: ipq807x: use label MAC to set addresses for wireless interfaces

Use label MAC to set addresses for wireless interfaces
for Linksys MX4200v2 and MX4300.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18759
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq807x: use ascii-env driver for Linksys MX devices
Paweł Owoc [Wed, 7 May 2025 17:05:46 +0000 (19:05 +0200)] 
qualcommax: ipq807x: use ascii-env driver for Linksys MX devices

ascii-env driver allows reading mac addresses directly from devinfo partition from dts level.

Additionally label mac address have been set.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18759
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agogemini: Add module for VSC73xx switches
Linus Walleij [Sun, 12 Jan 2025 00:37:20 +0000 (01:37 +0100)] 
gemini: Add module for VSC73xx switches

This adds the Vitesse VSC73xx DSA switch modules to the two
Gemini devices that have them.

Link: https://github.com/openwrt/openwrt/pull/20057
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2 weeks agokernel: netdevices: Create Vitesse DSA switch packages
Linus Walleij [Sun, 12 Jan 2025 00:32:35 +0000 (01:32 +0100)] 
kernel: netdevices: Create Vitesse DSA switch packages

This adds kernel packages for the Vitesse VSC73XX switches.

I have split the switch into explicit SPI and platform integrated
variants as it's quite a bit of code.

Link: https://github.com/openwrt/openwrt/pull/20057
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2 weeks agomediatek: refresh patches
Daniel Golle [Mon, 15 Sep 2025 16:11:20 +0000 (17:11 +0100)] 
mediatek: refresh patches

Refresh patch which was accidentally without non-confrming style and
not matching line numbers.
Also add patch description by copying the description of the commit
in OpenWrt, so the patch can be applied using `git am` and is ready
for upstream submission.

Fixes: afcec128c5 ("mediatek: add support for trng on mt7988a")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 weeks agomediatek: add support for trng on mt7988a 20058/head
Marcos Alano [Mon, 15 Sep 2025 01:32:12 +0000 (22:32 -0300)] 
mediatek: add support for trng on mt7988a

Add support for trng on mt7988a.

Tested on Banana Pi BPI-R4.

Signed-off-by: Marcos Alano <marcoshalano@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patches for adding ipq5018 CMN PLL support 19890/head
George Moussalem [Tue, 19 Aug 2025 14:51:59 +0000 (18:51 +0400)] 
qualcommax: ipq50xx: backport upstreamed patches for adding ipq5018 CMN PLL support

Use upstreamed patches for adding IPQ CMN PLL driver support and its
node and clocks to the DTS accordingly.

In addition, set clock-div and clock-mult properties instead of the
frequency itself for the XO board clock in all board files as it's
converted to a fixed factor clock.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19890
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 crypto node
George Moussalem [Tue, 19 Aug 2025 14:24:19 +0000 (18:24 +0400)] 
qualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 crypto node

Use upstreamed patch for adding the crypto nodes.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19890
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 PRNG node
George Moussalem [Tue, 19 Aug 2025 14:14:47 +0000 (18:14 +0400)] 
qualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 PRNG node

Use upstreamed patch for adding the PRNG node.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19890
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 SPI nand support
George Moussalem [Tue, 19 Aug 2025 14:05:25 +0000 (18:05 +0400)] 
qualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 SPI nand support

Use upstreamed patch for adding the SPI nand node.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19890
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patches for adding ipq5018 GE PHY support
George Moussalem [Tue, 19 Aug 2025 12:39:06 +0000 (16:39 +0400)] 
qualcommax: ipq50xx: backport upstreamed patches for adding ipq5018 GE PHY support

Use upstreamed patch for adding driver support and the the mdio and phy
nodes.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19890
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agoqualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 tsens node
George Moussalem [Fri, 15 Aug 2025 05:30:40 +0000 (09:30 +0400)] 
qualcommax: ipq50xx: backport upstreamed patch for adding ipq5018 tsens node

Use upstreamed patch for adding the tsens node.

Temperature sensors are enabled by default, therefore remove explicit
enablement in board files.

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19890
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 weeks agomt76: update to Git HEAD (2025-09-15)
Felix Fietkau [Mon, 15 Sep 2025 07:53:54 +0000 (09:53 +0200)] 
mt76: update to Git HEAD (2025-09-15)

904abc93b7d7 wifi: mt76: mt7996: fix setting beacon protection keys
75cd7c365b26 wifi: mt76: mt7996: fix memory leak on mt7996_mcu_sta_key_tlv error
587012a43306 wifi: mt76: mt7996: delete vif keys when requested
e995f6198d8b wifi: mt76: mt7996: fix key add/remove imbalance
5b0cbb058089 wifi: mt76: mt7996: fix updating beacon protection with beacons enabled
bba7ae0b1a68 wifi: mt76: mt7996: drop connac mcu wtbl clear
1383b5548fd7 wifi: mt76: use altx queue for offchannel tx on connac+
fd4c0858e58d wifi: mt76: mt7996: disable promiscuous mode by default
a9d21b7ece99 wifi: mt76: mt7996: remove the mem_total field of STA_REC_BF command
e88deeb14596 wifi: mt76: mt7996: set VTA in txwi
a06461861f4a wifi: mt76: mt7996: fill User Priority in skb->priority for rx packets
d17519baab77 wifi: mt76: improve phy reset on hw restart
ddbe1f6eb25f wifi: mt76: abort scan/roc on hw restart
6745cece7a07 wifi: mt76: mt7996: reset station links on hardware restart
d4a79d50ffc6 wifi: mt76: mt7996: reset interface links on hardware restart
9b770cb3dacd wifi: mt76: mt76_eeprom_override to int
6467af3bcf11 wifi: mt76: mt7921u: Add VID/PID for Netgear A7500

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agoucode: ubus: simplify sharing a global connection state
Felix Fietkau [Sun, 14 Sep 2025 15:07:53 +0000 (17:07 +0200)] 
ucode: ubus: simplify sharing a global connection state

Add connection methods as global functions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2 weeks agoucode: update to Git HEAD (2025-08-26)
Felix Fietkau [Sun, 14 Sep 2025 15:04:44 +0000 (17:04 +0200)] 
ucode: update to Git HEAD (2025-08-26)

2ae08749a87e ucode: add padding to uc_resource_ext_t
7931bd901222 socket: add socket.pair()
4cd07cd66ab3 socket: add socket.open()
6350e6383ff3 struct: implement X and Z formats for hex and base64 coding
e632e6da1fbc vm: fix potential eyond end of array accesses
a7ead3169ebf resolv: properly handle multiple TXT strings
9d782ea4af63 math: Add an optional range to rand()

Fixes: https://github.com/jow-/ucode/issues/315
Fixes: https://github.com/jow-/ucode/issues/321
Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 weeks agokernel: kmod-dsa-ks8995: Backport DSA patches 20056/head
Linus Walleij [Sat, 6 Sep 2025 20:39:05 +0000 (22:39 +0200)] 
kernel: kmod-dsa-ks8995: Backport DSA patches

Converts the KS8995 "phy" driver to a proper DSA switch.
Currently the upstream only supports the "none" tag
but this is a good improvement already.

Make the old module depend on kernel 6.6 and the new
one depend on !6.6.

The Realtek RTL8261n patch needs to be refreshed
because of textual dependencies.

Realtek RTL838x DSA and phy patches also have textual
dependencies and need to be refreshed.

The Mediatek in-flight DSA patch and related patches
also need to be rebased and refreshed.

Link: https://github.com/openwrt/openwrt/pull/19970
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
3 weeks agogeneric: fix typo in swconfig driver patch 14929/head 20040/head
Chukun Pan [Wed, 6 Aug 2025 14:08:20 +0000 (22:08 +0800)] 
generic: fix typo in swconfig driver patch

Fix typo in CONFIG_RTL8367B_PHY description.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/20040
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: add missing eeprom for ipTIME AX3000M 20044/head
Rhnn Hur [Sun, 14 Sep 2025 04:36:53 +0000 (13:36 +0900)] 
mediatek: add missing eeprom for ipTIME AX3000M

This change fixes the eeprom load failure while on boot

Signed-off-by: Rhnn Hur <hurrhnn@icmp.kr>
Link: https://github.com/openwrt/openwrt/pull/20044
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agobcm27xx: Add padding after writing rootfs to image. 19997/head
Orne Brocaar [Tue, 9 Sep 2025 09:04:59 +0000 (10:04 +0100)] 
bcm27xx: Add padding after writing rootfs to image.

This addresses #9113 by adding up to 1MB padding after writing the
rootfs image. On boot mount_root will probe for existing filesystems
after the rootfs image data. Without overwriting the initial free
space left on the rootfs partition, OpenWrt might incorrectly detect
an exising filesystem and fails to mount it, resulting in a bricked
device as the overlayfs will not be mountend and settings will not be
available.

Fixes #9113.

Signed-off-by: Orne Brocaar <info@brocaar.com>
Link: https://github.com/openwrt/openwrt/pull/19997
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agouboot-mediatek: update Airoha EN8811H driver 20000/head
Tianling Shen [Tue, 9 Sep 2025 14:20:49 +0000 (22:20 +0800)] 
uboot-mediatek: update Airoha EN8811H driver

Use the version sent to upstream U-Boot[1], which has much better
code quality and also works better (without packet loss).

The `en8811h_read_fw` func is adapted to use current read logic.

1. https://lore.kernel.org/u-boot/20250720122852.22563-1-lucienzx159@gmail.com/

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/20000
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agoodhcpd: update to Git HEAD (2025-08-26) 20022/head
David Härdeman [Thu, 11 Sep 2025 21:38:11 +0000 (23:38 +0200)] 
odhcpd: update to Git HEAD (2025-08-26)

2859741d971e dhcpv4: store reqopts as uint8_t
6d342cc03bf7 odhcpd: add DNR (RFC 9463) support
c89b8b3f2ff3 odhcpd: make the IPv6 RA DNR lifetime configurable
066b3dc6ec1a netlink: fix a memory leak
171140e90b6a odhcpd: add a helper function for addr6/prefix parsing
5585b969c18f router: move pref64 calculations to the config stage
4308384748be dhcpv6: add ipv6 pxe support
6e1ad492cef5 router: replace ssize_t with size_t

Signed-off-by: David Härdeman <david@hardeman.nu>
Link: https://github.com/openwrt/openwrt/pull/20022
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agorealtek: rtl931x: rename SerDes read/write helpers 20034/head
Markus Stockhausen [Fri, 12 Sep 2025 19:51:15 +0000 (15:51 -0400)] 
realtek: rtl931x: rename SerDes read/write helpers

During SerDes rework the helper functions were temporarily
renamed to ..._new(). Fix the leftovers by

- giving the functions a new rtsds_ prefix nad
- dropping the _new appendix.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20034
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agomediatek: add support for ipTIME AX7800M-6E 19763/head
Donghyun Ko [Fri, 1 Aug 2025 06:01:07 +0000 (15:01 +0900)] 
mediatek: add support for ipTIME AX7800M-6E

Specification
-------------
- SoC       : MediaTek MT7986AV quad-core ARM Cortex-A53 2GHz
- RAM       : DDR4 512Mbytes, Nanya Technology NT5AD256M16E4
- Flash     : 128Mbytes NAND Flash, ESMT F50L1G41LB
- WLAN      : MediaTek MT7976DAN, MediaTek MT7916AN, MediaTek MT7976AN
  - 2.4GHz  : b/g/n/ax, Multi User MIMO
  - 5GHz    : a/n/ac/ax, Multi User MIMO
  - 6GHz    : ax, Multi User MIMO
- Ethernet  : 10/100/1000 Mbps x4, LAN (MediaTek MT7531AE)
              10/100/1000/2500 Mbps x1, WAN (MaxLinear GPY211C0VC)
- UART      : 1x4 pin header on PCB
  - [J1] 3.3V, TX, RX, GND (115200, 8N1)
- Buttons   : WPS, Reset
- Switches  : Rfkill Slide Switch
- USB       : 1x USB 3.0 (MediaTek MT7986AV peripheral)
- FAN       : 1x Fan (off - slow - fast)
- LEDs      : 1x Power (Blue)
              1x CPU (Blue)
              1x Wi-Fi 6GHz (Blue)
              1x Wi-Fi 5GHz (Blue)
              1x Wi-Fi 2.4GHz (Blue)
              4x LAN activity (Blue)
              1x WAN activity (Blue)
              1x USB 3.0 (Blue)
- Power     : 12VDC, 3.5A (Center positive polarity)

MAC address
-----------
+-----------+-------------------+------------------------+
| Interface | MAC               | Algorithm              |
+-----------+-------------------+------------------------+
| WLAN 2.4G | 58:86:94:xx:xx:xx | label1                 |
| WLAN 5G   | 5A:86:94:xx:xx:xx | label2 with LA Bit set |
| WLAN 6G   | 5A:86:94:xx:xx:xx | label1 with LA Bit set |
| WAN       | 58:86:94:xx:xx:xx | label1 + 1             |
| LAN       | 58:86:94:xx:xx:xx | label1 + 3             |
+-----------+-------------------+------------------------+
The WLAN 2.4G MAC address (label1) was found in 'Factory' partition, 0xA0004
The WLAN 5G MAC address (label2) was found in 'Factory' partition, 0x4

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

Note: The router will automatically reboot if no file is uploaded within
55 seconds.

Fan Control
------------
The fan speed is controlled by writing a value from 0 to 2 to the
`fan1_target` file.

```
cd /sys/devices/platform/gpio-fan/hwmon/hwmon2

echo '0' > fan1_target // off
echo '1' > fan1_target // slow
echo '2' > fan1_target // fast
```

Limitation: Enabling Wi-Fi 6E
----------
Wi-Fi 6E (6GHz) does not work out of the box on LuCI.
After installation, you need to configure a few settings in the `radio1`
and `default_radio1` sections of the `/etc/config/wireless`.
Once you have made these changes, you can enable and use Wi-Fi 6E.

In the `radio1` section, you need to add three common options:
- band: must be set to `6g`
- country: a valid country code for the 6GHz band
- channel: a preferrend scanning channel (PSC) for 6GHz

In the `default_radio1` section, you need to add the SSID and key:
- ssid: The public name of your Wi-Fi network
- key: The Wi-Fi password
- encryption: must be set to either `sae` for WPA3 or `owe` for OWE
  (open network)

Example:

```
config wifi-device 'radio1'
        ...
        option band '6g'
        option country 'KR'
        option channel '37'
        ...

config wifi-iface 'default_radio1'
        ...
        option ssid 'my_wifi_6e_name'
        option key 'my_strong_password1234'
        option encryption 'sae'
        ...
```

Note: A list of all the 6GHz PSC channels:

```
5, 21, 37, 53, 69, 85, 101, 117, 133, 149, 165, 181, 197, 213, and 229
```

Limitation: Maximum Transmit Power
----------
The maximum transmit power is currently broken. In the drop-down menu,
you can only choose between "driver default" and "255 dBm (2147493647
mW)". There is currently no workaround for the issue. Please leave the
maximum transmit power set to "driver default".

Signed-off-by: Donghyun Ko <nyankosoftware@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19763
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: add driver for HW-RNG v2 20011/head
Daniel Golle [Thu, 11 Sep 2025 00:43:24 +0000 (01:43 +0100)] 
mediatek: add driver for HW-RNG v2

Add driver for hardware random number generator found in MT7981, MT7988
and MT7987. This gives us a fast source of high-quality random numbers
on those platforms.

root@OpenWrt:~# cat /dev/hwrng | rngtest -c 10000
rngtest 6.17
Copyright (c) 2004 by Henrique de Moraes Holschuh
This is free software; see the source for copying conditions.  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

rngtest: starting FIPS tests...
rngtest: bits received from input: 200000032
rngtest: FIPS 140-2 successes: 9988
rngtest: FIPS 140-2 failures: 12
rngtest: FIPS 140-2(2001-10-10) Monobit: 2
rngtest: FIPS 140-2(2001-10-10) Poker: 0
rngtest: FIPS 140-2(2001-10-10) Runs: 4
rngtest: FIPS 140-2(2001-10-10) Long run: 6
rngtest: FIPS 140-2(2001-10-10) Continuous run: 0
rngtest: input channel speed: (min=616.108; avg=11979.007; max=19531250.000)Kibits/s
rngtest: FIPS tests speed: (min=1.859; avg=82.116; max=83.656)Mibits/s
rngtest: Program run time: 18629928 microseconds

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 weeks agokernel: bump 6.6 to 6.6.106 20013/head
Goetz Goerisch [Fri, 12 Sep 2025 04:09:17 +0000 (06:09 +0200)] 
kernel: bump 6.6 to 6.6.106

All patches autorefreshed.

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20013
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agokernel: bump 6.6 to 6.6.105
Goetz Goerisch [Thu, 11 Sep 2025 05:18:34 +0000 (07:18 +0200)] 
kernel: bump 6.6 to 6.6.105

removed upstreamed patches:
generic/backport-6.6/621-proc-fix-missing-pde_set_flags.patch [1]
generic/pending-6.6/742-net-ethernet-mtk_eth_soc-fix-tx-vlan-tag-for-llc-pac.patch [2]

all other patches autorefreshed.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.105&id=698abcf08818cb7bafb978f4c9f6674d6a825d10
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.105&id=61b80fbdc0726317f72f9074e10126e0eb0e49c5

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20013
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoeconet: Clean up kernel config and move subtarget devices into own file 20027/head
Caleb James DeLisle [Fri, 12 Sep 2025 06:43:21 +0000 (06:43 +0000)] 
econet: Clean up kernel config and move subtarget devices into own file

The kernel config accidentally contains CONFIG_UBIFS_FS_AUTHENTICATION
which select a number of other unnecessary components, remove them.

The target has at least two subtargets, only one is currently
implemented. Move the Device builds into a file for this subtarget.

Signed-off-by: Caleb James DeLisle <cjd@cjdns.fr>
Link: https://github.com/openwrt/openwrt/pull/20027
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoCI: labeler: Add econet 20033/head
Hauke Mehrtens [Fri, 12 Sep 2025 15:01:32 +0000 (17:01 +0200)] 
CI: labeler: Add econet

Add new econet target to github labeler.

Link: https://github.com/openwrt/openwrt/pull/20033
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorealtek: drop HSGMII patch 20002/head
Markus Stockhausen [Wed, 10 Sep 2025 05:59:35 +0000 (01:59 -0400)] 
realtek: drop HSGMII patch

Now that HSGMII is not used any longer drop the patch
the invents this mode.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20002
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorealtek: drop usage of proprietary HSGMII mode
Markus Stockhausen [Wed, 10 Sep 2025 05:37:08 +0000 (01:37 -0400)] 
realtek: drop usage of proprietary HSGMII mode

The only consumers of the Realtek HSGMII (2.5G SGMII) mode were
the RTL8226/RTL8221B PHYs. These have been converted to dynamic
SGMII/2500base-x mode switching. Drop the leftovers of the mode
implementation.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/20002
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorealtek: dts: rearrange mdio-bus below mdio-controller 19986/head
Markus Stockhausen [Mon, 8 Sep 2025 09:53:16 +0000 (05:53 -0400)] 
realtek: dts: rearrange mdio-bus below mdio-controller

The mdio controller got its own dts node with a dedicated bus node.
Until now it still searches the phy nodes in the ethernet node.

Change the driver so it searches the nodes at the right location.
For this to work move the phy nodes in all dts/dtsi over to the new
bus node. Use the following replacement rule:

Replace old full declaration

&ethernet0 {
  mdio-bus {
    ...
  };
};

and old abbreviated declaration

&mdio {
  ...
};

simply with the new declaration

&mdio_bus0 {
  ...
};

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19986
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorealtek: mdio: convert mdio bus to new device nodes and compatibles
Markus Stockhausen [Mon, 8 Sep 2025 09:19:30 +0000 (05:19 -0400)] 
realtek: mdio: convert mdio bus to new device nodes and compatibles

The mdio controller has now its own target specific device nodes. This
is much closer to upstream notation. Adapt the driver to make use of it.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19986
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorealtek: dts: add mdio controller device nodes
Markus Stockhausen [Mon, 8 Sep 2025 05:51:21 +0000 (01:51 -0400)] 
realtek: dts: add mdio controller device nodes

Until now the mdio bus is a subnode of the ethernet device. This
coupling is different from upstream and wrong. Ethernet and mdio
are different devices. Additionally differentiate between mdio
controller and mdio bus. To make it clear:

- There is one mdio controller
- With up to 4 busses (on RTL93xx)

Prepare new mdio controller and bus nodes with SoC specific compatibles.
These will be used later when refactoring the mdio driver probing.

Remark! For now only define the first bus for the RTL93xx targets.
So the driver still relies on "rtl9300,smi-address = <x y>;". It will
need much more refactoring to get totally aligned with upstream.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19986
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorealtek: rtl931x: align SerDes access with other targets 19973/head
Markus Stockhausen [Sun, 7 Sep 2025 12:46:16 +0000 (08:46 -0400)] 
realtek: rtl931x: align SerDes access with other targets

While converting the RTL931x SerDes code to the new frontend
access methods, the target specific workarounds where left in
place. The old functions were kept and the phy/sds mapping
was unchanged too. It is time to clean this up

- drop the old functions
- reuse the existing read/write logic
- harden the new functions

For now keep the function naming rtmdio_...__new() as is. This
will be changed in a future commit.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19973
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agokernel: mtk_eth_soc: zero-initialize PPE flow tables
Felix Fietkau [Fri, 12 Sep 2025 12:39:48 +0000 (14:39 +0200)] 
kernel: mtk_eth_soc: zero-initialize PPE flow tables

Prevents invalid flow table data from leaking across reboots

Fixes: https://github.com/openwrt/openwrt/issues/19895
Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 weeks agonetifd: update to Git HEAD (2025-09-12)
Felix Fietkau [Fri, 12 Sep 2025 09:29:00 +0000 (11:29 +0200)] 
netifd: update to Git HEAD (2025-09-12)

2a85440bcd82 netifd: fix misplaced ")"

Fixes: https://github.com/openwrt/netifd/issues/54
Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 weeks agoethtool: update to 6.15 20021/head
John Audia [Thu, 11 Sep 2025 19:26:21 +0000 (15:26 -0400)] 
ethtool: update to 6.15

Version 6.15 - 29-Aug-2025

* netlink: fix missing headers in text output
* netlink: fix print_string when the value is NULL

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/20021
Signed-off-by: Nick Hainke <vincent@systemli.org>
3 weeks agokernel: r8127: update to v11.015.00 20017/head
Álvaro Fernández Rojas [Thu, 11 Sep 2025 11:15:16 +0000 (13:15 +0200)] 
kernel: r8127: update to v11.015.00

Changelog: https://github.com/openwrt/rtl8125/compare/11.014.00...11.015.00

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 weeks agokernel: r8126: update to v10.016.00 20019/head
Álvaro Fernández Rojas [Thu, 11 Sep 2025 11:11:59 +0000 (13:11 +0200)] 
kernel: r8126: update to v10.016.00

Changelog: https://github.com/openwrt/rtl8126/compare/10.015.00...10.016.00

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 weeks agokernel: r8125: update to v9.016.01 20018/head
Álvaro Fernández Rojas [Thu, 11 Sep 2025 11:11:11 +0000 (13:11 +0200)] 
kernel: r8125: update to v9.016.01

Changelog: https://github.com/openwrt/rtl8125/compare/9.016.00...9.016.01

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 weeks agoath79: add nvmem handling for AR9285 devices 19863/head
Rosen Penev [Fri, 29 Aug 2025 23:28:54 +0000 (16:28 -0700)] 
ath79: add nvmem handling for AR9285 devices

They have the same 0x200 calibration size.

Added various compatible lines in various places to make it clear what
device we're talking about.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19863
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoath79: fix calibration size for AR9285
Rosen Penev [Mon, 16 Dec 2024 22:15:08 +0000 (14:15 -0800)] 
ath79: fix calibration size for AR9285

These devices use AR9285, which uses 1f8 as the calibration size, not
440 like newer chips do. Actually the driver mandates a minimum of 200.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19863
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoeconet: Add new target TP-Link Archer VR1200v (v2) 19021/head
Caleb James DeLisle [Mon, 1 Sep 2025 10:21:10 +0000 (10:21 +0000)] 
econet: Add new target TP-Link Archer VR1200v (v2)

The TP-Link Archer VR1200v (v2) is a low end DSL modem based on the
EcoNet EN751221 processor platform.

While it does have an unlocked bootloader, the factory upgrade feature
requires a cryptographic signature so flashing from the web UI is not
feasible.

The Archer VR1200v (v2) uses a dual-image layout. I have chosen to reuse
this to support dual-boot between OpenWRT and the factory firmware.

Flashing instructions (from bootloader):

Build and then locate the squashfs-sysupgrade.bin image file
Get the length of that file in hex: printf '%X\n' "$(stat -c%s the-file-squashfs-sysupgrade.bin)"
Connect to device with xmodem capability, e.g. picocom --send-cmd lsx -vv -b 115200 /dev/ttyUSB0
Switch device on and press a key within 3 seconds, you should get to a `bldr>` prompt
Type: xmdm 80020000 <file length hex>
Quickly start xmodem and send the file, in picocom that is ctrl+a ctrl+s <paste-the-file-name> enter If the transfer fails to start, wait 30 seconds to a minute for the bootloader prompt to return and then try the command again.
Once the transfer has completed successfully, type the following flash 80000 80020000 <file length hex>
Type `re` or simply restart the device to boot into OpenWRT

Signed-off-by: Caleb James DeLisle <cjd@cjdns.fr>
Link: https://github.com/openwrt/openwrt/pull/19021
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoeconet: Add new target SmartFiber XP8421-B
Caleb James DeLisle [Mon, 1 Sep 2025 10:10:56 +0000 (10:10 +0000)] 
econet: Add new target SmartFiber XP8421-B

The SmartFiber XP8421-B is a fiber modem which is available for $20 online
and has 512MB of memory, 256MB of SPI NAND flash and 2 USB 2.0 ports in
addition to ethernet, wifi and XPON.

Because EcoNet is not currently producing evaluation boards, the XP8421-B
stands in as a convenient, low cost, off-the-shelf, representitive example
of the capabilities of the EN751221 econet processor. This is also the
example board that is included in the upstream Linux patchset.

The XP8421-B, and apparently many other devices of this platform, use a
dual-image layout. I have chosen to reuse this to support dual-boot between
OpenWRT and the factory firmware. Certain design decisions were made with
the goal of not overwriting data that is used by the factory OS.

This commit also introduces a utility for switching between OS_A and OS_B
which are used for OpenWRT and Factory OS respectively.

Flashing instructions (from bootloader):

Build and then locate the squashfs-tclinux.trx image file
Get the length of that file in hex: printf '%X\n' "$(stat -c%s the-file-squashfs-tclinux.trx)"
Connect to device with xmodem capability, e.g. picocom --send-cmd lsx -vv -b 115200 /dev/ttyUSB0
Switch device on and press a key within 3 seconds
Enter bootloader username and password: telecomadmin nE7jA%5m
Type: xmdm 80020000 <file length hex>
Quickly start xmodem and send the file, in picocom that is ctrl+a ctrl+s <paste-the-file-name> enter If the transfer fails to start, wait 30 seconds to a
minute for the bootloader prompt to return and then try the command again.
Once the transfer has completed successfully, type the following flash 80000 80020000 <file length hex>
Type go or simply restart the device to boot into OpenWRT

Signed-off-by: Caleb James DeLisle <cjd@cjdns.fr>
Link: https://github.com/openwrt/openwrt/pull/19021
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agokernel: Add new platform EcoNet MIPS
Caleb James DeLisle [Mon, 1 Sep 2025 10:09:22 +0000 (10:09 +0000)] 
kernel: Add new platform EcoNet MIPS

EcoNet EN75xx is a big endian MIPS platform used in XPON (fiber),
DSL, and SIM (3g/4g) applications. Complete GPL vender SDKs exist
for this platform, but are based on Linux 2.6.

The bulk of this submission has already been accepted upstream:
https://patchwork.kernel.org/project/linux-mips/list/?series=960479&state=*

This platform uses a bootloader that is derived from old TrendChip
code. This bootloader implements a frustratingly complex Bad Block
Table which is implemented here in en75_bmt.c

This BMT is not upstreamed because it depends on mtk_bmt framework
which likewise is not upstreamed.

This BMT system rewrites block indexes in flash and if the bootloader
considers it to be corrupted, it will attempt to automatically rebuild
on boot. So without implementing the algorithm, you can't safely use
the disk at all.

Signed-off-by: Caleb James DeLisle <cjd@cjdns.fr>
Link: https://github.com/openwrt/openwrt/pull/19021
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agouboot-envtools: use ubootenv_add_mtd function 19967/head
Paweł Owoc [Sat, 6 Sep 2025 17:45:58 +0000 (19:45 +0200)] 
uboot-envtools: use ubootenv_add_mtd function

Use ubootenv_add_mtd function for:
- Teltonika RUTC50
- Yuncore AX830

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19967
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorockchip: add Lunzn FastRhino R66S support 19990/head
Tianling Shen [Mon, 8 Sep 2025 13:54:55 +0000 (21:54 +0800)] 
rockchip: add Lunzn FastRhino R66S support

Hardware
--------
RockChip RK3568 ARM64 (4 cores)
1/2GB LPDDR4 RAM
2x 2500 Base-T (PCIe, r8125b)
1 LED (Power)
1 Button (Reset)
Micro-SD Slot
2x USB 3.0 Port
12V DC Jack

Installation
------------
Uncompress the OpenWrt sysupgrade and write it to a micro SD card using
dd.

Tested-by: Francisco G Luna <frangonlun@gmail.com>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/19990
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agouboot-rockchip: add Fastrhino R66S support
Tianling Shen [Mon, 8 Sep 2025 13:50:33 +0000 (21:50 +0800)] 
uboot-rockchip: add Fastrhino R66S support

Add support for the Lunzn FastRhino R66S board.

Tested-by: Francisco G Luna <frangonlun@gmail.com>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/19990
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoopenssl: correct PKG_LICENSE_FILES 19999/head
Linus Kardell [Tue, 9 Sep 2025 14:24:55 +0000 (16:24 +0200)] 
openssl: correct PKG_LICENSE_FILES

Point to correct file name.

Signed-off-by: Linus Kardell <linus.kardell@infobric.com>
Link: https://github.com/openwrt/openwrt/pull/19999
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agolibxml2: correct PKG_LICENSE_FILES
Linus Kardell [Tue, 9 Sep 2025 14:24:26 +0000 (16:24 +0200)] 
libxml2: correct PKG_LICENSE_FILES

Point to correct file name.

Signed-off-by: Linus Kardell <linus.kardell@infobric.com>
Link: https://github.com/openwrt/openwrt/pull/19999
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorkbin: rename tpl-only target 19998/head
Tianling Shen [Tue, 9 Sep 2025 10:18:54 +0000 (18:18 +0800)] 
rkbin: rename tpl-only target

No need to copy ATF blob again.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/19998
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agorkbin: bump to latest git HEAD
Tianling Shen [Tue, 9 Sep 2025 10:08:07 +0000 (18:08 +0800)] 
rkbin: bump to latest git HEAD

Improved memory detection and stability.

Tested-by: FUKAUMI Naoki <naoki@radxa.com>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/19998
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: filogic: Add label wan and cpu for Zyxel EX5601-T0 19968/head 20012/head 20014/head
Paweł Owoc [Sun, 7 Sep 2025 15:16:29 +0000 (17:16 +0200)] 
mediatek: filogic: Add label wan and cpu for Zyxel EX5601-T0

Add labels wan and cpu for ethernet ports.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19968
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: filogic: fix 5G MAC address for Zyxel EX5601
Paweł Owoc [Sun, 7 Sep 2025 14:50:48 +0000 (16:50 +0200)] 
mediatek: filogic: fix 5G MAC address for Zyxel EX5601

Currently 5G wireless interface MAC address is incorrect.
Fix by setting MAC address using Factory data.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19968
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: filogic: Zyxel EX5601-T0 dts cleanup
Paweł Owoc [Sat, 6 Sep 2025 18:49:04 +0000 (20:49 +0200)] 
mediatek: filogic: Zyxel EX5601-T0 dts cleanup

Dts cleanup for Zyxel EX5601:
- duplicated code
- trailing zeros and whitespaces

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19968
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: filogic: fix fip partition size for Zyxel EX5601-T0
Paweł Owoc [Sat, 6 Sep 2025 18:04:09 +0000 (20:04 +0200)] 
mediatek: filogic: fix fip partition size for Zyxel EX5601-T0

Fix incorrect "fip" partition size.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19968
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: filogic: use NVMEM for wifi macaddr on NWA50AX Pro
Zhi-Jun You [Fri, 5 Sep 2025 04:43:12 +0000 (12:43 +0800)] 
mediatek: filogic: use NVMEM for wifi macaddr on NWA50AX Pro

Convert NWA50AX Pro to use NVMEM framework for wifi macaddr.

Also remove the unused macaddr@a.

Signed-off-by: Zhi-Jun You <hujy652@protonmail.com>
Link: https://github.com/openwrt/openwrt/pull/19982
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agomediatek: filogic: use NVMEM for EEPROM/precal on NWA50AX Pro
Zhi-Jun You [Fri, 5 Sep 2025 04:33:33 +0000 (12:33 +0800)] 
mediatek: filogic: use NVMEM for EEPROM/precal on NWA50AX Pro

Convert NWA50AX Pro to use NVMEM framework for EEPROM/precal.

Signed-off-by: Zhi-Jun You <hujy652@protonmail.com>
Link: https://github.com/openwrt/openwrt/pull/19982
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoramips: e390ax: remove redundant 02_network MACs 19806/head
Rosen Penev [Tue, 19 Aug 2025 00:46:06 +0000 (17:46 -0700)] 
ramips: e390ax: remove redundant 02_network MACs

These are already specified in DTS. Only thing missing is
label-mac-device.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19806
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>