]> git.ipfire.org Git - thirdparty/openwrt.git/log
thirdparty/openwrt.git
5 months agoramips: Add support for Mercusys MR1800X as alt name of MR70X 18031/head
Robert Senderek [Fri, 14 Feb 2025 08:01:39 +0000 (09:01 +0100)] 
ramips: Add support for Mercusys MR1800X as alt name of MR70X

Both share the same OEM firmware but differ in product_name for safeloader
product_name:MR1800X,product_ver:1.0.0,special_id:45550000

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
Link: https://github.com/openwrt/openwrt/pull/17965
(cherry picked from commit f93367227e1458fb366304d0f431f12e95d244cd)
Link: https://github.com/openwrt/openwrt/pull/18031
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 months agotools: firmware-utils: update to Git HEAD (2024-02-16) 18030/head
Robert Senderek [Mon, 17 Feb 2025 07:15:20 +0000 (08:15 +0100)] 
tools: firmware-utils: update to Git HEAD (2024-02-16)

2051fe5 mktplinkfw2: Add 16MLmtk layout
5d1446b tplink-safeloader: Add more special_id's for MR70X

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
Link: https://github.com/openwrt/openwrt/pull/17999
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1437ff840b9b81f62a7cfca02b0ba17f506ea028)
Link: https://github.com/openwrt/openwrt/pull/18030
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 months agotools: firmware-utils: update to Git HEAD (2024-01-14)
INAGAKI Hiroshi [Mon, 13 Jan 2025 10:46:10 +0000 (19:46 +0900)] 
tools: firmware-utils: update to Git HEAD (2024-01-14)

12c0b42 nosimg-enc: add new tool for XikeStor SKS8300 series

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17593
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit db0fcc0c8dd4424631931aea5dbb7050fa88d088)
Link: https://github.com/openwrt/openwrt/pull/18030
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 months agokernel: fix IPv6 TCP GSO segmentation with NAT
Felix Fietkau [Mon, 24 Feb 2025 11:26:01 +0000 (12:26 +0100)] 
kernel: fix IPv6 TCP GSO segmentation with NAT

Add missing checksum update

Fixes: https://github.com/openwrt/openwrt/issues/15857
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 00e4b23e27bd4ed3e0370b9b474ec53f72bd1282)

5 months agorealtek: add PoE enable line to Netgear GS310TP 17613/head
Sander Vanheule [Sat, 22 Feb 2025 11:06:10 +0000 (12:06 +0100)] 
realtek: add PoE enable line to Netgear GS310TP

By switching to the new RTL8231 driver in commit b7af54d5c18c ("realtek:
Simple conversions to RTL8231 MFD driver"), the bootloader state of the
RTL8231's pins is now maintained. As the bootloader de-asserts the PoE
enable signal, this means PoE output is no longer available.

Add a gpio-hog with high output, restoring the line value from when the
pin was configured (by default) as an input with a pull-up resistor.
This will hard-enable the PoE output, but the individual ports can still
be administratively disabled by realtek-poe or a similar tool.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 890293c13cc0c7e23577cb92c36edcc9911b4400)

5 months agorealtek: HPE 1920-48G-PoE: allow fan speed control
Evan Jobling [Thu, 23 Jan 2025 00:13:35 +0000 (00:13 +0000)] 
realtek: HPE 1920-48G-PoE: allow fan speed control

The JG928A has an RTL8231 on the aux mdio bus. Add it to dts to expose
the GPIO pins used to control and monitor the fan speed. To enable speed
control, add the appropriate kernel driver module to DEVICE_PACKAGES.

Of note, this does not control all fans for the unit. The power supply
fans are not controlled.

Signed-off-by: Evan Jobling <evan@jobling.au>
Link: https://github.com/openwrt/openwrt/pull/17699
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit cbd1acbad3448280a180640e2a1a37a7144e1fb3)

5 months agorealtek: drop old RTL8231 driver
Sander Vanheule [Tue, 28 Jan 2025 07:14:03 +0000 (08:14 +0100)] 
realtek: drop old RTL8231 driver

The old RTL8231 driver integrated the MDIO bus access with the GPIO
control ops, making this driver not very portable to newer platforms.
It depended on the SoC ID instead of the compatible to determine the
MDIO access register, further complicating portability.

A new MFD driver is now available, which offers proper pin config as
well as optional LED support, which can work on any (bitbanged) MDIO
bus. Now that all devices have been migrated, we can drop the old code.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit b410f2216c7a4e6c5646f999d18b952b63c85817)

5 months agorealtek: add PoE enable line to Netgear GS110TPP
Sander Vanheule [Mon, 27 Jan 2025 21:17:57 +0000 (22:17 +0100)] 
realtek: add PoE enable line to Netgear GS110TPP

By switching to the new RTL8231 driver in commit b7af54d5c18c ("realtek:
Simple conversions to RTL8231 MFD driver"), the bootloader state of the
RTL8231's pins is now maintained. As the bootloader de-asserts the PoE
enable signal, this means PoE output is no longer available.

Add a gpio-hog with high output, restoring the line value from when the
pin was configured (by default) as an input with a pull-up resistor.
This will hard-enable the PoE output, but the individual ports can still
be administratively disabled by realtek-poe or a similar tool.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 807074309dff4eff4097900b9de53abce8684e2f)

5 months agorealtek: switch RTL8231 driver for D-Link DGS-1210
Sander Vanheule [Sun, 12 Jan 2025 16:57:33 +0000 (17:57 +0100)] 
realtek: switch RTL8231 driver for D-Link DGS-1210

Update the common external GPIO DTSI file for the DGS-1210 devices to
use an MDIO device on the auxilairy MDIO bus, as the original driver was
doing behind the screen.

Switching to the new driver will allow for full pin-control and will no
longer reset pin config set by the bootloader.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 3d6a1a7874c991c4bd9719bf0a92ab6630034c67)

5 months agorealtek: Switch DGS-1210-10P DTS to gpio.dtsi
Sander Vanheule [Sun, 12 Jan 2025 16:53:34 +0000 (17:53 +0100)] 
realtek: Switch DGS-1210-10P DTS to gpio.dtsi

The DTS file for the DGS-1210-10P is slightly different from the other
DGS-1210 devices, in that it didn't specify a gpio-restart node when it
was added. The gpio-restart has been found to work on the DGS-1210-10P
as well, so switch it over to the common definitions.

This converts the last device from the product family to the common
definition for the (external) GPIOs.

Tested-by: Michel Thill <jmthill@gmail.com>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 7c0d1c1eb10a7040af6478742dd053f40b24a467)

5 months agorealtek: Drop unused property on DGS-1210 gpio0
Sander Vanheule [Sat, 18 Jan 2025 15:51:59 +0000 (16:51 +0100)] 
realtek: Drop unused property on DGS-1210 gpio0

The 'indirect-access-id' property on gpio0 is a remnant from the
original GPIO driver. This property has not been relevant on the SoC's
embedded GPIO controller for a long time, so just drop it.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 022b7d80bf9de326f02c625f2fdeb2fb9c9203a3)

5 months agorealtek: Simple conversions to RTL8231 MFD driver
Sander Vanheule [Sat, 18 Jan 2025 20:40:06 +0000 (21:40 +0100)] 
realtek: Simple conversions to RTL8231 MFD driver

Change devices with RTL8231 GPIO expander definition that can easily be
translated to the new RTL8231 binding and carry over any gpio-hogs. This
will let them use the new RTL8231 MFD driver, without any functional
changes.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit b7af54d5c18cf74b9b598b506a335443a0bbed87)

5 months agorealtek: Split Zyxel GS1900-8 into v1 and v2
Sander Vanheule [Wed, 22 Jan 2025 11:25:18 +0000 (12:25 +0100)] 
realtek: Split Zyxel GS1900-8 into v1 and v2

Zyxel GS1900-8 v2 devices have been produced more recently than v1
devices. As there are v1 boards with RTL8380M rev. C SoCs, it can likely
safely be assumed that all v2 devices will also have a recent SoC
revision, supporting the hardware auxiliary MDIO controller.

Make the GS1900-8 v1 use an emulated auxiliary MDIO bus, for backward
compatibility with devices containing an RTL8380M rev. A.

Since the devicetrees are otherwise identical, GS1900-8 v1 devices with
an RTL8380M rev. B or C will also be able to use the (more efficient) v2
image. This includes any currently functioning device with OpenWrt, so
include the old compatible as a supported device for the GS1900-8 v2.

Link: https://github.com/openwrt/openwrt/issues/9534
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 7322d3266d84ec4062046254792d78ebca3ea26d)

5 months agorealtek: rtl838x: Enable MDIO_GPIO driver
Sander Vanheule [Tue, 21 Jan 2025 18:57:22 +0000 (19:57 +0100)] 
realtek: rtl838x: Enable MDIO_GPIO driver

The mdio-gpio driver is required to support early revision of RTL8380M
slicon (rev A) where the auxilairy MDIO controller does not function
correctly. Add this driver to the rtl838x kernel so devices with old
SoCs are also able to function correctly.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit efffcfa43693b68028a4aed4dea151b82158cc52)

5 months agorealtek: Move GS1900 external GPIO to new DTSI
Sander Vanheule [Wed, 22 Jan 2025 11:16:00 +0000 (12:16 +0100)] 
realtek: Move GS1900 external GPIO to new DTSI

In order to be able to define the external GPIO controller on an
emulated MDIO bus, move the controller definition outside of the main
GS1900 include for RTL838x-based devices.

Additionally, a new DTSI is provided defining the RTL8231 on the
emulated MDIO bus.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit a6a77896f4cddd6e69bcf86d5a6dc190fa82d53d)

5 months agorealtek: Add virtual MDIO bus on rtl838x
Sander Vanheule [Tue, 21 Jan 2025 18:40:11 +0000 (19:40 +0100)] 
realtek: Add virtual MDIO bus on rtl838x

Some RTL8380M-based devices have been around for a long time and use an
early A revision of the RTL8380M SoC. This revision has an issue with
the auxiliary MDIO controller, causing it to malfunction. This may lead
to device reboots when the controller is used.

Provide a bit-banged MDIO bus, which muxes the auxiliary MDIO pins to
their GPIO function. Although this will result in lower performance,
there should otherwise be no functional differences.

Link: https://github.com/openwrt/openwrt/issues/9534
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit d4bf16a9e1618347709b0dccae71c273e6291a61)

5 months agorealtek: Enable Zyxel GS1900's RTL8231 reset line
Sander Vanheule [Tue, 21 Jan 2025 18:37:25 +0000 (19:37 +0100)] 
realtek: Enable Zyxel GS1900's RTL8231 reset line

As the bootloader is reconfiguring the RTL8231 on these devices anyway,
no pin state can be maintained over warm reboots. This results in for
example the PoE disable pin always being asserted by the bootloader.

Define the GPIO line linked to the RTL8231's reset so the MDIO subsystem
will also reset the expander on boot and ensure the line in the correct
state.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit b2d17dbb68c232393739e6fb48245f1f4bebb698)

5 months agorealtek: Switch RTL8231 driver on Zyxel GS1900-48
Sander Vanheule [Sat, 18 Jan 2025 12:39:01 +0000 (13:39 +0100)] 
realtek: Switch RTL8231 driver on Zyxel GS1900-48

Switch the Zyxel GS1900-48 over to the new MDIO-based driver for the
RTL8231 GPIO expander.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 45aafe67f385a2b6cf65894b2f46ee8e33d87f92)

5 months agorealtek: rtl839x: Enable RTL8231 MFD driver
Sander Vanheule [Sat, 18 Jan 2025 12:48:17 +0000 (13:48 +0100)] 
realtek: rtl839x: Enable RTL8231 MFD driver

Enable the RTL8231 MFD core driver, as well as the pinctrl/gpio driver
to allow RTL839x devices to use it.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit fd5797b7ce6856539ec0f88b25a766fc2ce00c19)

5 months agorealtek: rtl839x: Enable AUX MDIO controller
Sander Vanheule [Sat, 18 Jan 2025 12:45:55 +0000 (13:45 +0100)] 
realtek: rtl839x: Enable AUX MDIO controller

Enable the driver for the Realtek Otto auxiliary MDIO driver so RTL839x
devices can use it. The related node is added to the base devicetree for
rtl839x-based devices, so they can enabled and use it when required.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit cddcc69ddf9c6284d6c9a6399c4ea48d7a044719)

5 months agorealtek: Update aux-mdio driver
Sander Vanheule [Sat, 18 Jan 2025 12:28:44 +0000 (13:28 +0100)] 
realtek: Update aux-mdio driver

For RTL839x, the driver was producing frequent timeouts on bus accesses.
Increasing the timeout to the one from a recent Realtek SDK resolves
these timeouts. To minimize overhead on different SoCs, each controller
can specify their own timeout.

This also add support for the register format as used on RTL93xx.
Support is added for the RTL930x "ext gpio" controller.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 52ffef647152578ba89d2e4c1f9f2f869a3fc8a8)

5 months agorealtek: Use atomic poll for aux-mdio commands
Sander Vanheule [Thu, 16 Jan 2025 12:23:54 +0000 (13:23 +0100)] 
realtek: Use atomic poll for aux-mdio commands

regmap_read_poll_timeout() relies on usleep_range() to time the polling
loop. With the current, rather large, scheduling interval, a short
usleep_range() may take a lot longer than expected, causing performance
issues.

Switch the driver over to using regmap_read_poll_timeout_atomic(), which
uses udelay() to time the polling loop.

For comparision, the 'ethtool -m <dev>' command is about 10 times faster
with the atomic variant.
Using 'perf -r10 ethtool -m lan25':
  - Driver using regmap_read_poll_timeout():
      2.0117 +- 0.0118 seconds time elapsed  ( +-  0.58% )
  - Driver using regmap_read_poll_timeout_atomic():
      0.1674 +- 0.0250 seconds time elapsed  ( +- 14.95% )

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 693c1ea81a314cfa37a60a293568d2e46282b717)

5 months agorealtek: HPE 1920 24G PoE+ 180W/370W move fans to hwmon
Fabian Groffen [Wed, 15 Jan 2025 19:12:02 +0000 (20:12 +0100)] 
realtek: HPE 1920 24G PoE+ 180W/370W move fans to hwmon

Apply the equivalent of commit f64541db020e ("realtek: HPE 1920 8G PoE+
180W move fans to hwmon") to the 24-ports variants of the HPE 1920 PoE+
switches, with model numbers JG925A and JG926A.

Copy from the original commit message:

  Move to using hwmon and gpio-fan. This is by adding gpio_fan_array to
  DTS and kmod-hwmon-gpiofan to DEVICE_PACKAGES.

  In combination with the new rtl8231 gpio driver the default fan
  behaviour will be maximum fan speed.

  Bump compat value to 1.1 due to existing config in /etc/config/system
  via gpio_switch. Also notify in device compat that fan is now going to
  be at bootloader setting (maximum in this case) by default unless turned
  down.

As the init script 03_gpio_switches does not perform any action after
removing these devices from it, the file can be dropped.

Link: https://github.com/openwrt/openwrt/pull/17598
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 0a7c8ed9d94930ba062c71df79f63c06eeab4543)

5 months agorealtek: switch RTL8231 driver for HPE 1920-16/24G
Sander Vanheule [Tue, 7 Jan 2025 13:59:20 +0000 (14:59 +0100)] 
realtek: switch RTL8231 driver for HPE 1920-16/24G

Update the base DTS file for the 16 and 24 port HPE 1920 devices
(JG923A, JG924A, JG925A, JG926A), causing the new RTL8231 MFD driver to
be loaded at start-up.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 96850585e52dfff2c25d8b20b0b5cd192981ed4d)

5 months agorealtek: HPE 1920 8G PoE+ 180W move fans to hwmon
Evan Jobling [Tue, 14 Jan 2025 12:13:21 +0000 (12:13 +0000)] 
realtek: HPE 1920 8G PoE+ 180W move fans to hwmon

The GPIO numbering has changed and is not stable. As a result fan
control via gpio_switch is broken, resulting in errors:
    "export_store: invalid GPIO 456"

Move to using hwmon and gpio-fan. This is by adding gpio_fan_array to
DTS and kmod-hwmon-gpiofan to DEVICE_PACKAGES.

In combination with the new rtl8231 gpio driver the default fan
behaviour will be maximum fan speed.

Bump compat value to 1.1 due to existing config in /etc/config/system
via gpio_switch. Also notify in device compat that fan is now going to
be at bootloader setting (maximum in this case) by default unless turned
down.

Signed-off-by: Evan Jobling <evan@jobling.au>
Link: https://github.com/openwrt/openwrt/pull/17605
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit f64541db020ef5689186609e8b7b7a3bb9755160)

5 months agorealtek: switch RTL8231 driver for HPE 1920-8G
Sander Vanheule [Tue, 7 Jan 2025 13:55:24 +0000 (14:55 +0100)] 
realtek: switch RTL8231 driver for HPE 1920-8G

Update the base DTS file for the 8 port HPE 1920 devices (JG920A,
JG921A, JG922A), causing the new RTL8231 MFD driver to be loaded at
start-up.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit e5d1a501cbd0fdda47d9169e9f669c7fb4813f2a)

5 months agorealtek: rtl838x: Switch GS1900 rtl8231 driver
Sander Vanheule [Thu, 26 Dec 2024 21:26:33 +0000 (22:26 +0100)] 
realtek: rtl838x: Switch GS1900 rtl8231 driver

Update the devicetree files to switch the GS1900 devices over to the new
pinctrl and GPIO driver. Enable the drivers to ensure the nodes can be
used.

This may fix issues caused by bad RMW behaviour on the GPIO data lines,
or glitches due to setting the pin direction before the pin level.

Although the driver supports retaining GPIO state after a warm boot,
some bootloaders appear to apply a default configuration on boot, which
may cause an interrupt in PoE-PSE support.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 5141e2d8617efa774b64f9ebc6d97cdc85487dc8)

5 months agorealtek: Add pinctrl support for RTL8231
Sander Vanheule [Thu, 26 Dec 2024 19:55:16 +0000 (20:55 +0100)] 
realtek: Add pinctrl support for RTL8231

Add pending patches to add RTL8231 support as a MDIO-bus attached
multi-functional device. This includes subdrivers for the pincontrol and
GPIO features, as well as the LED matrix support.

Leave the drivers disabled until required by a device.

Cherry picked from commit 6ef6014887c393dc07f0349028d93e4fa82e0733, but
dropped already picked patch for gpio-regmap request/free, and rebased
configs

Signed-off-by: Sander Vanheule <sander@svanheule.net>
5 months agorealtek: rtl838x: Instantiate auxiliary MDIO bus
Sander Vanheule [Fri, 27 Dec 2024 14:56:44 +0000 (15:56 +0100)] 
realtek: rtl838x: Instantiate auxiliary MDIO bus

Add a disabled node for the auxiliary MDIO bus, used to manage the
RTL8231 expanders. A simple-mfd parent node is added, at the same
(implied) address as the switch@1b000000 node, as the switch drivers
should anyway transistion to MFD subdivices at some point.

Additionally, two pinctrl-single node are added to allow the MDX pins to
be muxed correctly, in case the bootloader leaves these unconfigured.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 92ae8cb16c46823d5a00489b4d3a9cc724ba67a4)

5 months agorealtek: Add driver for auxiliary MDIO busses
Sander Vanheule [Fri, 27 Dec 2024 14:53:23 +0000 (15:53 +0100)] 
realtek: Add driver for auxiliary MDIO busses

Add a driver that exposes the auxiliary busses, used for the RTL8231
expanders, as a proper MDIO controller. The device must be instantiated
under an MFD device, so the driver should also be compatible with SoC
managed by an external CPU via SPI.

Leave the driver disabled in builds until required.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit ae833c01b312258c27ff2dc1c8d44b15b7028e32)

5 months agokernel: receive all bridged multicast packets if IFF_ALLMULTI is set
Felix Fietkau [Mon, 17 Feb 2025 11:29:27 +0000 (12:29 +0100)] 
kernel: receive all bridged multicast packets if IFF_ALLMULTI is set

Fixes issues with odhcpd, especially in relay mode

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 38c21271d2b5749f135d662c2b28ef2bbdf607b8)

5 months agomediatek: apply bootloader work-around for affected ASUS devices 17991/head
Daniel Golle [Mon, 10 Feb 2025 23:18:46 +0000 (23:18 +0000)] 
mediatek: apply bootloader work-around for affected ASUS devices

Apply "u-boot-dont-touch-spi-nand" to ASUS RT-AX59U, ASUS TUF-AX4200 as
well as ASUS TUF-AX6000 routers to prevent U-Boot from wiping MTD
child nodes from DT.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 4387de94454913aa79bb88971eabcf1bfca78141)

5 months agomediatek: add work-around for ASUS bootloader MTD behavior
Daniel Golle [Thu, 6 Feb 2025 05:17:54 +0000 (05:17 +0000)] 
mediatek: add work-around for ASUS bootloader MTD behavior

ASUS makes use of U-Boot's fdt_fixup_mtdparts() function which applies
the partitions defined in U-Boot's mtdparts and mtdids environment
variables to the devicetree passed over to Linux.

The undesired side-effect is that in this way also all additional
properties and child nodes get wiped, preventing NVMEM cells to be
defined for MTD partitions or UBI volumes.

To work-around this issue, add an additional compatible string
'u-boot-dont-touch-spi-nand' which can be used instead of 'spi-nand' in
case the replacement of the MTD partitions by U-Boot should be skipped
alltogether.

In practise this is mostly relevant for SPI-NAND which anyway comes only
with two partitions nowadays: 'Bootloader' and 'UBI_DEV'. Hence this
work-around is applicable for SPI-NAND only. Similar work-arounds for
other MTD devices can be created as well should they actually be needed.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit c48afca32ca875c4176b4c41be94335e61556783)

5 months agoqualcommax: ipq807x: add support for Linksys MX4300 (LN1301) 17889/head
Paweł Owoc [Fri, 26 Jul 2024 17:00:57 +0000 (19:00 +0200)] 
qualcommax: ipq807x: add support for Linksys MX4300 (LN1301)

Hardware specification:
========
SoC: Qualcomm IPQ8174
Flash: 1GB (Micron MT29F8G08ABBCAH4 or AMD/Spansion S34MS08G2)
RAM: 2GB (2x Kingston B5116ECMDXGJD or ESMT M15T2G16128A DDR3L)
Ethernet: 4x 10/100/1000Mbps (Qualcomm QCA8075)
WiFi1: 5GHz ax 2x2 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-64 (low band)
WiFi2: 2.4GHz ax 2x2 (Qualcomm QCN5024 + Skyworks SKY85340-11)
WiFi3: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 100-177 (high band)
LED: 1x RGB status (NXP PCA9633)
USB: 1x USB 3.0
Button: WPS, Reset

Flash instructions:
========
1. Manually upgrade firmware using openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin image.
More details can be found here: https://support.linksys.com/kb/article/6564-en/
After first boot check actual partition:
- fw_printenv -n boot_part
and install firmware on second partition using command in case of 2:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin kernel
and in case of 1:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin alt_kernel

2. Installation using serial connection from OEM firmware (default login: root, password: admin):
- fw_printenv -n boot_part
In case of 2:
- flash_erase /dev/mtd21 0 0
- nandwrite -p /dev/mtd21 openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin
or in case of 1:
- flash_erase /dev/mtd23 0 0
- nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin
After first boot install firmware on second partition:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin kernel
or:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin alt_kernel

3. Installation from initramfs image using USB drive:
Put the initramfs image on the USB drive:
- dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx4300-initramfs-uImage.itb of=/dev/sdX
Stop u-boot and run:
- usb start && usbboot $loadaddr 0 && bootm $loadaddr
Write firmware to the flash from initramfs:
- mtd -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin kernel
and:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx4300-squashfs-factory.bin alt_kernel

4. Back to the OEM firmware:
- mtd -e kernel -n write FW_MX4300_1.0.4.215382_prod.img kernel
and:
- mtd -r -e alt_kernel -n write FW_MX4300_1.0.4.215382_prod.img alt_kernel

5. USB recovery:
Put the initramfs image on the USB:
- dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx4300-initramfs-uImage.itb of=/dev/sdX
Set u-boot env:
- fw_setenv bootusb 'usb start && usbboot $loadaddr 0 && bootm $loadaddr'
- fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'

Co-authored-by: Qiyuan Zhang <zhang.github@outlook.com>
Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit 4d310b176be9eea162159f2501e650ebbd6605e9)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agomtd: check the return value of malloc and pread
Qiyuan Zhang [Mon, 5 Aug 2024 10:47:21 +0000 (06:47 -0400)] 
mtd: check the return value of malloc and pread

Check the return value of malloc and pread in case they fail.

Signed-off-by: Qiyuan Zhang <zhang.github@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit 3f014543cd4bd099dc089cbb9b9b2d7b0db8a021)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agoqualcommax: add kernel cmdline replacement hack
Qiyuan Zhang [Thu, 1 Aug 2024 22:24:55 +0000 (18:24 -0400)] 
qualcommax: add kernel cmdline replacement hack

Add kernel command line replacement hack to qualcommax. Now we can
find and replace arguments in the kernel command line by setting
bootargs-find-1, bootargs-replace-1, bootargs-exact-match-1
and bootargs-find-2, bootargs-replace-2, bootargs-exact-match-2
under the chosen node in the device tree.

This hack replaces the first occurence of bootargs-find-X with
bootargs-replace-X. When bootargs-exact-match-X is set to "y",
then the replacement happens only if the kernel command line is
identical to bootargs-find-X.

Signed-off-by: Qiyuan Zhang <zhang.github@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit 337f6f76ca5361f45e76facd52396936b9fc25c0)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agomtd: fix resetbc on nand w/ min I/O size > 2048
Qiyuan Zhang [Fri, 2 Aug 2024 14:57:51 +0000 (10:57 -0400)] 
mtd: fix resetbc on nand w/ min I/O size > 2048

Fix a bug in linksys_bootcount.c that resetbc  won't work on nand
with min I/O size> 2048.

Check the boot-log entry's intergrity with checksum.

Signed-off-by: Qiyuan Zhang <zhang.github@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit 62da99e6d506f3517f50c1efd61e1911df507ae3)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agoqualcommax: ipq807x: fix mac setup for Linksys MX4200v2
Paweł Owoc [Thu, 1 Aug 2024 06:53:14 +0000 (08:53 +0200)] 
qualcommax: ipq807x: fix mac setup for Linksys MX4200v2

Currently for Linksys MX4200v2 all u-boot ethXaddr variables share the same MAC address
and there is no need to check them one by one.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit 80c867815636cbf32e85b431c5d06c531e4a371e)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agoqualcommax: ipq807x: define configuration for Linksys MX4x00 devices
Paweł Owoc [Sat, 27 Jul 2024 21:25:14 +0000 (23:25 +0200)] 
qualcommax: ipq807x: define configuration for Linksys MX4x00 devices

Define shared configuration for Linksys MX4x00 devices.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit 73fc1e0aa2d9956561915e342d098a6881ec85a3)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agoqualcommax: ipq807x: create generic Linksys MX4x00 dts
Paweł Owoc [Fri, 26 Jul 2024 20:21:02 +0000 (22:21 +0200)] 
qualcommax: ipq807x: create generic Linksys MX4x00 dts

Create a generic Linksys MX4x00 dts file and extract the specific configuration
for MX4200v1/v2 to a new file.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit ff85f883ea94f562af618fb26ba8b5e85e572d64)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 months agoqualcommax: ipq807x: remove unnecessary bootargs-append for MX4200
Paweł Owoc [Sat, 3 Aug 2024 23:06:39 +0000 (01:06 +0200)] 
qualcommax: ipq807x: remove unnecessary bootargs-append for MX4200

The default value for the "root" parameter is "/dev/ubiblock0_0"
and there is no need to append it to bootargs.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16070
(cherry picked from commit fee2d93b276f3c44dad83849f9959638ce495de7)
Signed-off-by: Rafal Boni <rafal.boni@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17889
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 months agomt76: update to Git HEAD (2025-02-14)
Felix Fietkau [Fri, 14 Feb 2025 10:21:29 +0000 (11:21 +0100)] 
mt76: update to Git HEAD (2025-02-14)

2919ae2c0f94 wifi: mt76: mt7996: revise TXS size
1aaacd335577 wifi: mt76: mt7996: fix SER reset trigger on WED reset
e9396ad2378f wifi: mt76: mt7996: remove unnecessary key->cipher check for BIP frames
e5fef138524e mt76: only mark tx-status-failed frames as ACKed on mt76x0/2

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 3dfd1f69a769bd857061b4856270dfc78e30c610)

6 months agoRevert "Revert "ramips: mt7620: fix patching mac address in caldata""
Shiji Yang [Sat, 8 Feb 2025 07:39:13 +0000 (15:39 +0800)] 
Revert "Revert "ramips: mt7620: fix patching mac address in caldata""

This reverts commit f628467dfd6b32ead172d33a2593f04901395343.

The initial fix was correct. However, a recently introduced bug in
base-files can cause some unexpected byte overwriting in eeprom.
Since it has been fixed, let's accept this patch again.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17892
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 43bc5e6e122b06eb9bfd22cf0bdf3212b84073f3)

6 months agobase-files: fix offset conversion on caldata_patch_data()
Shiji Yang [Sat, 8 Feb 2025 07:36:24 +0000 (15:36 +0800)] 
base-files: fix offset conversion on caldata_patch_data()

`$(( ))` will convert uninitialized variable to "0". If we want to
use "-n" to check the string length, it's necessary to make sure the
converted variable is not empty.

Fixes: 652a6677d5fa ("base-files: Add new functions for ath11k caldata")
Fixes: https://github.com/openwrt/openwrt/issues/17818
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17892
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 094b6f593fb4943005e13e2f8581e66bb7c2c8cf)

6 months agoramips: mt7620: add missing PA/LNA pinctrl for Linksys E1700
Shiji Yang [Sat, 8 Feb 2025 01:21:15 +0000 (09:21 +0800)] 
ramips: mt7620: add missing PA/LNA pinctrl for Linksys E1700

This device has high-power external PA and LNA[1]. So we must
configure PA/LNA pins to make the wireless work properly.

[1] https://fccid.io/Q87-E1700/Internal-Photos/Internal-Photos-pdf-2135639.pdf
Fixes: https://github.com/openwrt/openwrt/issues/7959
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17892
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 3aa9b708364fd4a46c8466750f51069e22f3dde7)

6 months agomac80211: rt2x00: fix eeprom load from PCI eFuse
Shiji Yang [Fri, 7 Feb 2025 13:00:22 +0000 (21:00 +0800)] 
mac80211: rt2x00: fix eeprom load from PCI eFuse

When eeprom name is not defined, the file load function should
return an error code so that it can fallthrough to read eeprom
form NIC inside eFuse.

Fixes: https://github.com/openwrt/openwrt/issues/17854
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17892
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 693108a31835d43d5e92f116b4dbd9fbed06b7ed)

6 months agoath79: mikrotik: fix reference clock of Routerboard 911G
Lech Perczak [Wed, 12 Feb 2025 01:25:53 +0000 (02:25 +0100)] 
ath79: mikrotik: fix reference clock of Routerboard 911G

When support for Routerboard 911G was introduced, Routerboad 912UAG
device tree was used as a base, and the common part. This led to use of
40MHz as the reference clock frequency for both [1], while RB911G uses 25MHz
crystal on the board, causing heavy system clock drift.

Split the definition, and set the reference clock frequency for RB911G
back to 25MHz.

[1] a716ac556497 ("ath79: fix reference clock for RouterBoard 912UAG")

Fixes: bcc44b1212b2 ("ath79: support for MikroTik RouterBOARD 911G-(2,5)HPnD")
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17944
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 40fc6bd5cc679875e38ea1769527affdb5be12ba)

6 months agouboot-envtools: add support for ZyXEL GS-1900-24EP
Klaas Demter [Sun, 9 Feb 2025 10:10:42 +0000 (11:10 +0100)] 
uboot-envtools: add support for ZyXEL GS-1900-24EP

It seems the that this was forgotten during initial adding of the
device in 0688cf5aebe1dc9a2e7f3820861783c2a7a75d44

Thanks to
https://forum.openwrt.org/t/zyxel-gs1900-10hp-revision-b1-support-openwrt-firmware/131841/32
for putting me on the right track for this problem

Error that is being fixed - running fw_printenv results in:
"Warning: Bad CRC, using default environment"
and not showing boardmodel

Workaround, manually changing /etc/fw_env.config to
"/dev/mtd1 0x0 0x400 0x10000"

Signed-off-by: Klaas Demter <psychic-stool-cozy@duck.com>
Link: https://github.com/openwrt/openwrt/pull/17920
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 71a966c480432febcc5dd120e5b01662fa8ec328)

6 months agomediatek: filogic: fix mt7986a-zyxel-ex5601-t0-stock.dts model name and eth1 wan...
Pietro Ameruoso [Wed, 5 Feb 2025 10:40:48 +0000 (11:40 +0100)] 
mediatek: filogic: fix mt7986a-zyxel-ex5601-t0-stock.dts model name and eth1 wan definition

Fix the model name to reflect the stock partitioning and the wan eth1 detection in the 02_network script.

Fixes: https://github.com/openwrt/openwrt/issues/14432
Fixes: b5df398a36f1 ("mediatek: add Zyxel EX5601-T0 with uboot custom partition")
Signed-off-by: Pietro Ameruoso <p.ameruoso@live.it>
Link: https://github.com/openwrt/openwrt/pull/17859
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d023ee7439f6d5c9bffa6f6e10b3b90f5782e84d)

6 months agohostapd: fix sta psk index for dynamic psk auth
Felix Fietkau [Wed, 12 Feb 2025 10:54:59 +0000 (11:54 +0100)] 
hostapd: fix sta psk index for dynamic psk auth

Depending on the config / circumstances, the get_psk call can be called
multiple times from differnt places, which can lead to wrong sta->psk_idx
values. The correct call is the one that is also interested in the vlan_id,
so use the vlan_id pointer as indication of when to set sta->psk_idx.
Also fix off-by-one error for secondary PSKs

Fixes: b2a2c286170d ("hostapd: add support for authenticating with multiple PSKs via ubus helper")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 8118b2dace06de839e1e23f018059995f4af5e11)

6 months agowifi-scripts: fix mac address allocation with macaddr_base set
Felix Fietkau [Tue, 11 Feb 2025 17:28:40 +0000 (18:28 +0100)] 
wifi-scripts: fix mac address allocation with macaddr_base set

The 00 address_mask needs to be inverted, otherwise the mac address
allocation will modify the last byte instead of the first one.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 1ee44825ad0d00527c8850446affc820d74c6e8b)

6 months agobuild: fix building llvm tarball
Felix Fietkau [Mon, 10 Feb 2025 21:09:26 +0000 (22:09 +0100)] 
build: fix building llvm tarball

Add missing select NEED_BPF_TOOLCHAIN in order to ensure that the toolchain
actually gets built.

Fixes: https://github.com/openwrt/openwrt/issues/17926
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 04570f5ee2dfe6609c22d2d21678b14cd3314309)

6 months agoumdns: update to Git HEAD (2025-02-10)
Felix Fietkau [Mon, 10 Feb 2025 20:40:59 +0000 (21:40 +0100)] 
umdns: update to Git HEAD (2025-02-10)

c0a2aa12c397 ubus: allow query without specifying interface
c5ca22a71b2e cache: improve service discovery reliability

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit dd5c598de09636e7b46b7ef9a79e05b1df90cc81)

6 months agoumdns: update to latest HEAD
John Crispin [Wed, 11 Dec 2024 14:41:21 +0000 (15:41 +0100)] 
umdns: update to latest HEAD

93458ac dns: fix response to TYPE_PTR query
68af311 fix unicast response port and timeout
a2b4979 service: announce all services in single dns answer
4537734 display announced services in ubus call umdns browse
0b50c29 display more srv attributes in output of ubus browse function

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit d162fd5ed44af7a33c9aefd72479c1c77f3234e4)

6 months agounetd: update to Git HEAD (2025-01-29)
Felix Fietkau [Wed, 29 Jan 2025 20:51:45 +0000 (21:51 +0100)] 
unetd: update to Git HEAD (2025-01-29)

aff192cda38b ubus: hide local private key in network_get
24e4aafaaa2f ubus: add detailed peer statistics
082b5482b97f pex: improve keepalive handling

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 087c5abdf59c37ed3476f6dd8a7775a940f8e38d)

6 months agounetd: update to Git HEAD (2025-01-27)
Felix Fietkau [Mon, 27 Jan 2025 11:43:13 +0000 (12:43 +0100)] 
unetd: update to Git HEAD (2025-01-27)

c293afa01c13 network: add support for the local_network option

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit c34eee5f39827ca38c9d4d0acef46848098867fe)

6 months agounetd: update to Git HEAD (2025-01-26)
Felix Fietkau [Sun, 26 Jan 2025 20:20:00 +0000 (21:20 +0100)] 
unetd: update to Git HEAD (2025-01-26)

322500403615 service: add default group @ to match all nodes
5f7860306200 ubus: rename unetd_ubus_notify to unetd_ubus_network_notify
d13752814651 enroll: add PEX sub-protocol to support enrolling new nodes into a network

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit c0f06cb6ac002ce90c10839b3d98aed8b41a2da5)

6 months agoucode: update to Git HEAD (2025-02-10)
Felix Fietkau [Mon, 10 Feb 2025 16:02:20 +0000 (17:02 +0100)] 
ucode: update to Git HEAD (2025-02-10)

a362263595e6 vm: fix inverted condition in uc_vm_signal_handlers_setup()
1b8660d33fb7 tests: adjust testcases after previous commit
4efad5388184 main: fix crash on printing -p output
0b80ceb29311 vm: close signal pipe in uc_vm_signal_handlers_reset()
175686c97d82 uci: eliminate usage of global variables
0f69da9c3777 struct: fix memory leak in buffer.pull()
47f3a6b69908 debian/control: Build-Depend on cmake
01efa7b92100 debian/control: Fix Standards-Version, add Bugs
f50149d67fef debian/source/format: change to native
bd001ae4f830 debian/control: libucode Recommends ucode-modules
87776a0bc2b2 docs: Mention `libmd` in macOS docs
826a5c9de7d3 docs: Fix compilation command for macOS
1fa771fc91c0 debian/copyright: fix missing dot to separate paragraphs
60c0e5eae992 debian/control: pkg-config now called pkgconf
244570db4f8e debian/changelog: switch versioning to native package scheme
fa2326fc00a0 .gitignore: ignore files generated by debuild
faec62367524 debian: ignore lintian warning no-manual-page
af881af4b0dc main: add global SCRIPT_NAME variable
5cbd32514187 socket: fix AF_PACKET recvmsg() and sockaddr formatting
6f71a35c4cfa rtnl: properly handle runtime exceptions in listener callback
6dd08716205f ci: bump actions/upload-artifact to v4
001ced17982f socket: properly support SO_ATTACH_FILTER sockopt
f0e865fe3ddd ubus: add named parameter support in functions with many params
18a2ffaf51fa fs: ioctl: export constants for direction values
0ba75bea925d fs: ioctl: improve ioctl read to avoid allocating twice
9da8b8aa4ad0 ubus: add defer.await() method
17dbf0bef4b6 ubus: add request get_fd/set_fd methods
4acb960c90f7 ubus: add support for sending file descriptors via ubus.call/defer
22b9523565a5 ubus: add support for receiving file descriptors in call and defer
c0d1654a450b ubus: add support for channels
b32321beb112 vm: fix crash due to stale frame pointer

Fixes: https://github.com/jow-/ucode/issues/254
Fixes: https://github.com/jow-/ucode/issues/255
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 0e672e980650d8f890e620d1c359b78ef3a524d2)

6 months agoucode: update to Git HEAD (2024-12-06)
Robert Marko [Fri, 6 Dec 2024 17:21:20 +0000 (18:21 +0100)] 
ucode: update to Git HEAD (2024-12-06)

47b54cf5a4b6 types: introduce `ucv_array_sort_r()` and `ucv_object_sort_r()`
efeb57806552 types, vm: refactor usage of global variables
f9d2faf67de6 vm: reset signals when freeing VM
4e86847d802d lib: utilize `ucv_array_sort_r()` and `ucv_object_sort_r()`
c71444ea301f types: ucv_resource_create(): rename `typename` parameter to `type`
373df7299c79 nl80211: properly support split_wiphy_dump for single phys
9bcd25f54708 lexer: Preserve keyword, regexp flags until processing non-comment tokens
0a7ff4715cb8 main: pretty-print `-p` output by default
4c3d5b469156 struct: Add new buffer API for incremental packing/unpacking
efc4122124cb struct: do not use global variables for caching types

Fixes: https://github.com/jow-/ucode/issues/248
Fixes: https://github.com/jow-/ucode/issues/250
Fixes: https://github.com/efahl/owut/issues/25
Link: https://github.com/openwrt/openwrt/pull/17191
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit af6f1a90bbc824bd22814568c5b6990aa082ce8b)

6 months agoucode: update to latest HEAD
John Crispin [Fri, 1 Nov 2024 08:26:15 +0000 (09:26 +0100)] 
ucode: update to latest HEAD

b0b5d93 Merge pull request #234 from IdWV/fs
60e7a88 Merge pull request #232 from sebastianertz/lib-digest
1752779 digest: implement compile time option to exclude less common algorithms
c7268a1 ci: include libmd in MacOS CI builds
fcb6f70 lib: introduce digest library
1323a27 Merge pull request #246 from jow-/fix-upvalue-resolve
ed5ce8f types: resolve upvalue values in arrays and objects
a6e0641 vm: resolve upvalues before pushing them onto the stack
ef1baab ci: drop OpenWrt tests for now
63e18ea fs: eliminate the usage of global variables
b1bd7b5 types: add ucv_resource_create() helper
3408edf Merge pull request #244 from nbd168/nl80211
8af77e7 nl80211: add new attributes for multi-radio support
1423ad7 nl80211: cover extended feature and EHT rate info attributes
ee1d6d8 Merge pull request #237 from sebastianertz/math
4b18a9b Merge pull request #213 from jow-/improve-vector-macros
1f022c0 math: removed global variable for thread safety
e5fe6b1 treewide: refactor vector usage code
20307ee utils: improve vector utilities
aa18952 Merge pull request #241 from jow-/socket-local-fanout-decl
79ccd9c socket: provide local definition of `struct fanout_args`
402280d Merge pull request #239 from jow-/safe-insert-during-obj-iteration
07afe96 Merge pull request #240 from jow-/stricter-number-conversion
736d450 types: fix potential use after free on adding keys during iteration
4134e71 vallist: more thoroughly check for trailing garbage after numeric string
9cf53dd Merge pull request #226 from jow-/lexer-improvements
2b2e732 lexer: make api functions public
855854f lexer: emit comment and template statement block tokens
328a50f lexer: improve token position reporting
fa22732 Merge pull request #225 from jow-/compiler-fix-keyword-property-labels-after-spread
6e88c62 Merge pull request #224 from jow-/lib-fs-readline-leak
94d1211 compiler: properly treat property names after spread expressions
67cd123 fs: fix potential memory leak on i/o errors in .read()

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit ba9cdbeea862fada261b0a874e464b63ffa860ac)

6 months agoimx: coretexa53: add network configuration for gw82xx-2x 17762/head
Tim Harvey [Thu, 23 Jan 2025 18:29:55 +0000 (10:29 -0800)] 
imx: coretexa53: add network configuration for gw82xx-2x

The GW82xx-2x has two network ports. By convention, the first
port (eth0) should be the WAN port and the second port (eth1)
should be the LAN port.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/17717
Signed-off-by: Robert Marko <robimarko@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17762
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d2eaaa90d502fa418d7d9bb8d4e6ccbe0131c832)

6 months agoimx: 6.6: add a patch to work around a PCI init hang on IMX8M{M,P}
Tim Harvey [Tue, 17 Dec 2024 22:52:48 +0000 (14:52 -0800)] 
imx: 6.6: add a patch to work around a PCI init hang on IMX8M{M,P}

The act of attempting link at gen1 then trying to link at higher speeds
causes a hang with the specific PCIe switch used on the Gateworks Venice
boards. Work around this by linking at the highest speed first as is
common with all other PCI controller drivers.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/17717
Signed-off-by: Robert Marko <robimarko@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17762
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 23a18a57cf750d9081353cdd34e44982ea10e191)

6 months agoimx: 6.6: add some backported kernel patches for Gateworks Venice
Tim Harvey [Tue, 17 Dec 2024 22:50:51 +0000 (14:50 -0800)] 
imx: 6.6: add some backported kernel patches for Gateworks Venice

Add several dt backports for the Gateworks Venice product family.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/17717
Signed-off-by: Robert Marko <robimarko@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17762
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1ce87cf25c19f030b81954639545db2ab7f17062)

6 months agogeneric: 6.6: add backported btsdio patch for cyw437
Tim Harvey [Tue, 17 Dec 2024 22:51:57 +0000 (14:51 -0800)] 
generic: 6.6: add backported btsdio patch for cyw437

Add a backport of a btsdio patch for the cyw437 bluetooth controller.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Link: https://github.com/openwrt/openwrt/pull/17717
Signed-off-by: Robert Marko <robimarko@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17762
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c9f11523dd5b8639b24b97043d70f2a197a00a84)

6 months agomediatek: fix nmbm configuration mismatch (Xiaomi AX3000t) 17898/head
Mikhail Zhilkin [Tue, 4 Feb 2025 16:08:53 +0000 (16:08 +0000)] 
mediatek: fix nmbm configuration mismatch (Xiaomi AX3000t)

This commit fixes nmbm configuration mismatch error on Xiaomi AX3000t
with Winbond W25N01KVZEIR spi-nand:
'''
[    0.786783] NMBM configuration mismatch
'''

Root cause:
1. U-Boot W25N01KV spi-nand driver ia compiled with 64B OOB size for the
   chip and store this size in the nmbm signature;
2. Linux W25N01KV driver use 96B OOB.

The change doesn't affect AX3000t variants with other spi-nand chips
(ESMT, Foresee) because their Linux drivers use 64B OOB.

Fixes: openwrt#16972
Tested-by: Aleksandr Danilov <sc16me@gmail.com>
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17549
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 3299d19c01080c3320e3ff6964d7825da81bb8b4)
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17898
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agokernel: nmbm: add mediatek,bmt-mtd-overridden-oobsize property
Mikhail Zhilkin [Tue, 4 Feb 2025 15:55:08 +0000 (15:55 +0000)] 
kernel: nmbm: add mediatek,bmt-mtd-overridden-oobsize property

This commit adds new "mediatek,bmt-mtd-overridden-oobsize" property. The
property helps avoid "NMBM configuration mismatch" error if mtd "OOB size"
is not equal to the "spare size" which is stored in the nmbm signature.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17549
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit e585ae70d4f2a563b3b0e430e15ee19ad25caeb5)
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17898
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agoumdns: add firewall rule for configured interfaces
Felix Fietkau [Sat, 8 Feb 2025 21:27:27 +0000 (22:27 +0100)] 
umdns: add firewall rule for configured interfaces

Makes it easier to enable MDNS on wan without having to edit the firewall
configuration for it

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 05138fe898ce2d102795bdc979a6d874a3d24424)

6 months agobuild: conditionally build llvm bpf toolchain by default
Felix Fietkau [Fri, 7 Feb 2025 10:11:42 +0000 (11:11 +0100)] 
build: conditionally build llvm bpf toolchain by default

Unless another toolchain is present (or selected), build the bpf toolchain
whenever a package is selected that needs it.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 6605e45676815156f0c47d4117ee401e6616fcac)

6 months agokernel: r8168: update to v8.055.00 17862/head
Álvaro Fernández Rojas [Wed, 5 Feb 2025 07:49:20 +0000 (08:49 +0100)] 
kernel: r8168: update to v8.055.00

Changelog: https://github.com/openwrt/rtl8168/compare/8.054.00...8.055.00

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 5dd763680e874b0082e4cfbbc729fa75ee056601)

6 months agomt76: update to Git HEAD (2025-01-22) 17707/head
Mieczyslaw Nalewaj [Thu, 23 Jan 2025 17:07:22 +0000 (18:07 +0100)] 
mt76: update to Git HEAD (2025-01-22)

3e85822b9c66 page_pool: remove PP_FLAG_PAGE_FRAG
a22d59e4ad50 tools: fix allocation check and missing memory freeing

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
(cherry picked from commit 17dc079)
Link: https://github.com/openwrt/openwrt/pull/17707
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 months agogeneric: 6.6: backport upstream r8169 patches 17801/head
Álvaro Fernández Rojas [Fri, 31 Jan 2025 07:57:11 +0000 (08:57 +0100)] 
generic: 6.6: backport upstream r8169 patches

b11bff90f2ad r8169: add support for RTL8125BP rev.b
b3593df26ab1 r8169: add support for RTL8125D rev.b
b299ea006928 r8169: adjust version numbering for RTL8126
bb18265c3aba r8169: remove support for chip version 11
2e20bf8cc057 r8169: remove unused flag RTL_FLAG_TASK_RESET_NO_QUEUE_WAKE
e340bff27e63 r8169: copy vendor driver 2.5G/5G EEE advertisement constraints

The EEE advertisement patch has been reworked for linux v6.6 because
phy_set_eee_broken() is only present on linux >= v6.13 and eee_broken_modes
declaration has been converted to a bitmap, so linkmode_set_bit() can't be
used either.
https://github.com/torvalds/linux/commit/e340bff27e63ed61a1e9895bed546107859e48a7
https://github.com/torvalds/linux/commit/ed623fb8e38e2a241da12864778ec9c9cf930c65
https://github.com/torvalds/linux/commit/721aa69e708b7432af83c4bb00a30e2b7c27da28

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 084618f8db7d0e413b47bab3e0ea70804bf84ee2)

6 months agoOpenWrt v24.10.0: revert to branch defaults
Hauke Mehrtens [Mon, 3 Feb 2025 23:10:38 +0000 (00:10 +0100)] 
OpenWrt v24.10.0: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agoOpenWrt v24.10.0: adjust config defaults v24.10.0
Hauke Mehrtens [Mon, 3 Feb 2025 23:10:35 +0000 (00:10 +0100)] 
OpenWrt v24.10.0: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agoRevert "ramips: mt7620: fix patching mac address in caldata"
Hauke Mehrtens [Mon, 3 Feb 2025 23:07:25 +0000 (00:07 +0100)] 
Revert "ramips: mt7620: fix patching mac address in caldata"

This reverts commit 3295f6f1c254cd7e5e5285a05581bf6abbde8999.

It looks like the eeprom gets broken after this change.
I think this change was not tested on a real device before it was
merged.
The MAC addresses will be broken again after this revert.

Fixes: #17818
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit f628467dfd6b32ead172d33a2593f04901395343)

6 months agoipq806x: fix broken WAN on Linksys EAX and Asrock G10
Christian Marangi [Mon, 3 Feb 2025 00:48:39 +0000 (01:48 +0100)] 
ipq806x: fix broken WAN on Linksys EAX and Asrock G10

Fix broken WAN on Linksys EAX and Asrock G10 by incrementing the WAN
interface MAC address + 1. This caused conflicting entry in the FDB
table and caused the WAN port to malfunction with the DSA conversion.

Fixes: #17157
Fixes: #15585
Fixes: #16604
Link: https://github.com/openwrt/openwrt/pull/17839
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit eba2fbf63814bbcf8c99c98177818476fca808a7)

6 months agoramips: fix xtal clock registration issue on RT3883
Shiji Yang [Sun, 2 Feb 2025 08:00:54 +0000 (16:00 +0800)] 
ramips: fix xtal clock registration issue on RT3883

The redundant xtal clock source caused clock registration failure.

Link: https://lore.kernel.org/all/20250108093636.265033-1-sergio.paracuellos@gmail.com/
Fixes: https://github.com/openwrt/openwrt/issues/17677
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17830
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit cfca9d689459426a119edbc02ecb7c778a3c2b77)

6 months agomediatek: mt7622: fix SATA on BPi-R64
Daniel Golle [Sat, 1 Feb 2025 05:03:50 +0000 (05:03 +0000)] 
mediatek: mt7622: fix SATA on BPi-R64

Two commits which made their way into Linux stable broke the SATA
support on the BPi-R64.

Fix this by reverting a node rename which broke DT-overlay application
and import a (still pending) patch re-adding the 'syscon' compatible to
the pciesys clock-controller which also contains phy-mode bits
referenced by the ahci_mtk driver expecting to access them using
syscon_regmap_lookup_by_phandle().

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 69890e16b37d59b55ba64633522c727f957cb2fd)

6 months agogeneric: net: phy: realtek: work-around hang on SerDes setup 17790/head
Daniel Golle [Thu, 30 Jan 2025 05:49:43 +0000 (05:49 +0000)] 
generic: net: phy: realtek: work-around hang on SerDes setup

On some but not all devices using the RTL8221B 2.5GBit/s PHY the SerDes
setup sequence may hang under some circumstances (eg. <2500M link
partner present during boot).

RTL8221B-VB-CG 2.5Gbps PHY (C45) mdio-bus:01: rtl822xb_config_init failed: -110

Work-around the issue by performing a hardware reset and subsequent
retry of the SerDes setup, which seems to always succeed.

Doing this requires moving ALDPS setup to config_init (which is anyway
the better place for that) as it otherwise doesn't survive the reset.

Also disable listening on MDIO address 0 which may be used by other PHYs
despite being spec'ed as "broadcast address", as bus activity on address
0 may otherwise confuse the RealTek PHY for good reasons.

Tested-by: Luis Mita <luis@luismita.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit c87a767801ef375feadb0a5c41d5a674ad3a7d2c)
Link: https://github.com/openwrt/openwrt/pull/17790
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agox86: Add kmod-drm-i915 as default package 17792/head
Hauke Mehrtens [Wed, 29 Jan 2025 22:37:34 +0000 (23:37 +0100)] 
x86: Add kmod-drm-i915 as default package

Add kmod-drm-i915 to the default packages. It was build into the kernel
before and is now build as a kernel module.

Fixes: 77cfe8fd15d3 ("x86: make i915 as a kmod with required firmware")
Link: https://github.com/openwrt/openwrt/pull/17781
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 8390599c9a29dbb0019447df9086cb8667bfd3d7)
Link: https://github.com/openwrt/openwrt/pull/17792
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agoramips: pinctrl: allow mux SDXC pins for mt76x8 17754/head
Shiji Yang [Wed, 1 Jan 2025 08:06:10 +0000 (16:06 +0800)] 
ramips: pinctrl: allow mux SDXC pins for mt76x8

The mt76x8 SDXC pin register definition is incompatible with the
mtmips generic pinctrl driver structure. This hack allows us to
mux the SDXC IO to different pin groups in device tree.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17446
(cherry picked from commit 05ec3b50a8e673786dda0224b23f18b5d96a4a65)
Link: https://github.com/openwrt/openwrt/pull/17754
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agobmips: shg2500: add missing led controller cells
Álvaro Fernández Rojas [Tue, 28 Jan 2025 07:28:01 +0000 (08:28 +0100)] 
bmips: shg2500: add missing led controller cells

Fixes the following DT warnings:
../dts/bcm63168-sercomm-shg2500.dts:76.4-14: Warning (reg_format): /ubus/spi@10001000/led-controller@1/led@1:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1)
../dts/bcm63168-sercomm-shg2500.dts:75.9-78.5: Warning (avoid_default_addr_size): /ubus/spi@10001000/led-controller@1/led@1: Relying on default #address-cells value
../dts/bcm63168-sercomm-shg2500.dts:75.9-78.5: Warning (avoid_default_addr_size): /ubus/spi@10001000/led-controller@1/led@1: Relying on default #size-cells value

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit fbe0bd5f6453a61fab871bee56883afc5c6308cf)

6 months agoOpenWrt v24.10.0-rc7: revert to branch defaults
Hauke Mehrtens [Mon, 27 Jan 2025 23:06:50 +0000 (00:06 +0100)] 
OpenWrt v24.10.0-rc7: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agoOpenWrt v24.10.0-rc7: adjust config defaults v24.10.0-rc7
Hauke Mehrtens [Mon, 27 Jan 2025 23:06:47 +0000 (00:06 +0100)] 
OpenWrt v24.10.0-rc7: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agodnsmasq: add fix related to DNSSEC verification from upstream
Uwe Kleine-König [Mon, 27 Jan 2025 15:12:23 +0000 (16:12 +0100)] 
dnsmasq: add fix related to DNSSEC verification from upstream

To find the DS record for a given zone the parent zone's nameserver must
be queried and not the nameserver for the zone. Otherwise DNSSEC
verification for unsigned delegations breaks.

Signed-off-by: Uwe Kleine-König <uwe+openwrt@kleine-koenig.org>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20250127151223.1420006-1-uwe+openwrt@kleine-koenig.org/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6dc0f0c50cf1072ec3751c0fb1fc152a0a86487d)

6 months agoapm821xx: NETGEAR WNDR4700: Fix compat version
Hauke Mehrtens [Mon, 27 Jan 2025 00:09:33 +0000 (01:09 +0100)] 
apm821xx: NETGEAR WNDR4700: Fix compat version

The definition for the netgear_wndr4700 had two different
DEVICE_COMPAT_VERSION definitions.

In commit 5815884c3a2 ("apm821xx: migrate to DSA"), an additional
DEVICE_COMPAT_VERSION := 3.0 attribute was added to the device
definition. The old one with version 2.0 stayed and was defined later
overwriting the new one.

Replace the old version 2.0 with the new version 3.0

Fixes: 5815884c3a2a ("apm821xx: migrate to DSA")
Link: https://forum.openwrt.org/t/openwrt-24-10-0-rc6-sixth-release-candidate/222466/43
Link: https://github.com/openwrt/openwrt/pull/17741
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit dab52c00d712a421d6e61eebc51359e5d38ad347)

6 months agowolfssl: Update to version 5.7.6
Hauke Mehrtens [Mon, 27 Jan 2025 00:37:39 +0000 (01:37 +0100)] 
wolfssl: Update to version 5.7.6

This fixes multiple bugs and also minor security problems.

Changelog:
https://github.com/wolfSSL/wolfssl/releases/tag/v5.7.4-stable
https://github.com/wolfSSL/wolfssl/releases/tag/v5.7.6-stable

The package size increases:
525814 bin/packages/mips_24kc/base/libwolfssl5.7.2.e624513f-5.7.2-r1.apk
549408 bin/packages/mips_24kc/base/libwolfssl5.7.6.e624513f-5.7.6-r1.apk

Link: https://github.com/openwrt/openwrt/pull/17742
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0a7e92c2442bc09eec3875aae21996d9a5430806)

6 months agowolfssl: Adjust version for apk
Hannu Nyman [Sun, 10 Nov 2024 13:57:01 +0000 (15:57 +0200)] 
wolfssl: Adjust version for apk

Adjust wolfssl version for apk by removing the "-stable"
from the OpenWrt version, although it is still needed for
upstream download archive name.

Define PKG_BUILD_DIR accordingly.

Utilize new short version to simplify ABI_VERSION calculation.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/16906
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit be952e98bc1d768a0da5b84e59a6e7c04a1cdab8)

6 months agostm32: enable CONFIG_SMSC_PHY
Thomas Richard [Mon, 27 Jan 2025 13:02:28 +0000 (14:02 +0100)] 
stm32: enable CONFIG_SMSC_PHY

The STM32MP135F-DK board uses the LAN8742 PHY.
Enable CONFIG_SMSC_PHY to have full PHY support.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/17745
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit d981f28f762a559ae50386fa089b050aaaa78555)

6 months agoramips: restore full switch performance for USW-Flex
Anders Melchiorsen [Wed, 22 Jan 2025 20:54:57 +0000 (21:54 +0100)] 
ramips: restore full switch performance for USW-Flex

Since commit f1c9afd80138 ("ramips: mt7621-dts: mux phy0/4 to gmac1") the
USW-Flex lan1 port has been attached directly to the CPU. This improves
routing performance but hinders switching.

This is a generally accepted trade-off in that commit but for USW-Flex it
is a questionable choice. This switch is designed to deliver PoE to remote
places and using it as a router is unlikely. Meanwhile, the lan1 port is
also PoE-in and will often be the uplink, carrying most of the traffic.

Reverting f1c9afd80138 for USW-Flex restores full 1 Gbps switching
performance on all ports.

Signed-off-by: Anders Melchiorsen <amelchio@nogoto.net>
Link: https://github.com/openwrt/openwrt/pull/17703
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 62872f8bfd5c8bc80bb014417c6ed8057bbeb773)

6 months agoairoha: an7581: replace clock patch with upstream version
Christian Marangi [Mon, 27 Jan 2025 11:14:28 +0000 (12:14 +0100)] 
airoha: an7581: replace clock patch with upstream version

Replace clock patch for eMMC with upstream version to add the tag and
flag them as upstreamed.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit a9b408a97f7bf8b1f98f355fefe3c9bfc959d5a6)

6 months agoairoha: an7581: replace eMMC support with upstream version
Christian Marangi [Mon, 27 Jan 2025 11:02:24 +0000 (12:02 +0100)] 
airoha: an7581: replace eMMC support with upstream version

Replace eMMC support with upstream version where we declare dummy clock
and dummy regulator instead of a specific compatible. Also drop the
downstream patch for it.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit b7edf88b0fe15b32be802c7de54036ff8e66dcc1)

6 months agoairoha: an7581: refresh and fix cpufreq patch
Christian Marangi [Mon, 27 Jan 2025 10:07:13 +0000 (11:07 +0100)] 
airoha: an7581: refresh and fix cpufreq patch

Refresh cpufreq with merged upstream version. Also fix the PM Domain
rebased patch to correctly expose the symbol for non Mediatek target.

Update dtsi with new pm domain name.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit fbbfcbf150cd7c72f49c149e7f9b9f4d0bf43e4b)

6 months agoocteon: ubnt-usg: add board name to supported devices
Eric Fahlgren [Sun, 26 Jan 2025 17:25:13 +0000 (09:25 -0800)] 
octeon: ubnt-usg: add board name to supported devices

The on-device board name reported by 'ubus call system board' is not present
in the generated profiles.json.  This results in upgrade tools being unable
to match the image with the proper device.  Let's add a 'SUPPORTED_DEVICES'
entry for the board name to fix this.

Links: https://forum.openwrt.org/t/owut-openwrt-upgrade-tool/200035/441
Links: https://github.com/openwrt/openwrt/commit/2a07270180ed0e295d854d6e9e59c78c40549efc
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17736
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7165937c3b6ebe5ac692fcde1cc69ba1c7a3d9c9)

6 months agoramips: mt7620: fix patching mac address in caldata
Paweł Owoc [Sun, 26 Jan 2025 18:53:31 +0000 (19:53 +0100)] 
ramips: mt7620: fix patching mac address in caldata

Fix usage of non-existent 'caldata_patch_mac' function
by using the 'caldata_patch_data' function.

Fixes: #17734
Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17737
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 3295f6f1c254cd7e5e5285a05581bf6abbde8999)

6 months agonetifd: remove leftover wifi reload_legacy call
Felix Fietkau [Sun, 26 Jan 2025 20:18:27 +0000 (21:18 +0100)] 
netifd: remove leftover wifi reload_legacy call

Commit d12753929165 removed support for it

Fixes: #17738
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit a3154cfeb6c381576682a8cc5427a8b1bd9daf96)

6 months agounetd: fix interface teardown
Felix Fietkau [Sun, 26 Jan 2025 20:10:53 +0000 (21:10 +0100)] 
unetd: fix interface teardown

Pass the correct device name in the network_del ubus call

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit 80ba0d958dc96fb7aba26614f71325507fabd58a)

6 months agogeneric: fix probe issues with RealTek RTL8221B PHYs
Daniel Golle [Thu, 23 Jan 2025 03:36:10 +0000 (03:36 +0000)] 
generic: fix probe issues with RealTek RTL8221B PHYs

Import patch "net: phy: realtek: mark existing MMDs as present"

    When using Clause-45 mode to access RealTek RTL8221B 2.5G PHYs some
    versions of the PHY fail to report the MMDs present on the PHY.
    Mark MMDs PMAPMD, PCS and AN which are always existing according to
    the datasheet as present to fix that.

Fixes: #16823, #17183, #17232
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Tested-by: Juan Pedro Paredes Caballero <juanpedro.paredes@gmail.com>
(cherry picked from commit 730db6b893748517949b1d3a0c0cb8b6c1288040)

6 months agokernel: Make kmod-usb-chipidea select kmod-phy-ath79-usb
Hauke Mehrtens [Fri, 24 Jan 2025 21:56:59 +0000 (22:56 +0100)] 
kernel: Make kmod-usb-chipidea select kmod-phy-ath79-usb

The USB PHY on the ar9330 and similar SoCs needs the PHY driver. In
OpenWrt 23.05 it was compiled into the kernel. The kernel 6.6
configuration does not compile it in any more, make the
kmod-usb-chipidea driver select it to add it to the images.

Fixes: https://github.com/openwrt/openwrt/issues/17710
Fixes: 04bdf9b3323e ("ath79: disable ath79 USB phy drivers by default")
Link: https://github.com/openwrt/openwrt/pull/17720
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b467e5a0afebbc4982213c03f90dfc6deb717b36)

6 months agomediatek: cleanup device tree for cudy devices
Chukun Pan [Thu, 5 Dec 2024 15:26:18 +0000 (23:26 +0800)] 
mediatek: cleanup device tree for cudy devices

Fixes typo for led properties.
Delete the unused rfb compatible.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
(cherry picked from commit 64d1b1089c25d778f5f22bfc0c1590a2e83b664e)

6 months agomediatek: update status led for Cudy TR3000
Chukun Pan [Wed, 4 Dec 2024 15:26:28 +0000 (23:26 +0800)] 
mediatek: update status led for Cudy TR3000

Use white led when running, consistent with the stock firmware.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
(cherry picked from commit 87632219d4b8f0c96ea053e375f6f324fab0806f)