Skip to content

[pull] master from openwrt:master#992

Open
pull[bot] wants to merge 10000 commits intoGoodHolidays:masterfrom
openwrt:master
Open

[pull] master from openwrt:master#992
pull[bot] wants to merge 10000 commits intoGoodHolidays:masterfrom
openwrt:master

Conversation

@pull
Copy link

@pull pull bot commented Jan 29, 2022

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

@pull pull bot added the ⤵️ pull label Jan 29, 2022
@aparcar aparcar deleted the branch GoodHolidays:master May 23, 2023 14:58
@aparcar aparcar deleted the master branch May 23, 2023 14:58
castiel652 and others added 26 commits February 11, 2026 00:35
Bootlog has the following line:
mt798x-wmac 18000000.wifi: missing precal data, size=403472

It is because precal was not included in the previous NVMEM conversion.

Fix this by adding it to the common dtsi.

Fixes: dbc2923 ("mediatek: filogic: convert Acer Predator W6 to use NVMEM framework")
Signed-off-by: Zhi-Jun You <[email protected]>
Link: #21894
Signed-off-by: Hauke Mehrtens <[email protected]>
Bootlog has the following line:
mt7915e 0000:01:00.0: missing precal data, size=403472

It is because precal was not included in the previous NVMEM conversion.

Fix this by adding it to the common dts.

Fixes: dbc2923 ("mediatek: filogic: convert Acer Predator W6 to use NVMEM framework")
Signed-off-by: Zhi-Jun You <[email protected]>
Link: #21894
Signed-off-by: Hauke Mehrtens <[email protected]>
Bootlog has the following line:
mt7915e 0000:01:00.0: missing precal data, size=403472

It is because precal was not included in the previous NVMEM conversion.

Fix this by adding it to the dts.

Fixes: dbc2923 ("mediatek: filogic: convert Acer Predator W6 to use NVMEM framework")
Signed-off-by: Zhi-Jun You <[email protected]>
Link: #21894
Signed-off-by: Hauke Mehrtens <[email protected]>
Add the required patches in order to backport cake-mq from Linux 7.0.

Many thanks to Toke Høiland-Jørgensen for providing the git trees with backports
for both 6.12 and 6.18.

Signed-off-by: Rui Salvaterra <[email protected]>
Link: #21964
Signed-off-by: Christian Marangi <[email protected]>
Add two patches backported from iproute2-next.

Signed-off-by: Rui Salvaterra <[email protected]>
Link: #21964
Signed-off-by: Christian Marangi <[email protected]>
Add a patch that avoids including <stddef.h> in BPF headers, fixing
build failures on OpenWrt toolchains where the header is unavailable:

  In file included from xdpfilt_dny_udp.c:10:
  In file included from ./xdpfilt_prog.h:24:
  ../lib/../headers/xdp/parsing_helpers.h:18:10: fatal error: 'stddef.h' file not found
    18 | #include <stddef.h>
        |          ^~~~~~~~~~
  1 error generated.
  make[5]: *** [../lib/common.mk:111: xdpfilt_dny_udp.o] Error 1
  make[4]: *** [Makefile:40: xdp-filter] Error 2

Link: #21972
Signed-off-by: Nick Hainke <[email protected]>
Add support for the TP-Link EAP683-LR, an AX6000 Ceiling Mount WiFi 6
AP.

Hardware:
* SoC: MediaTek MT7896AV
* RAM: 1GiB DDR4 (Samsung K4A8G165WC-BCTD)
* Flash: 128MiB SPI-NAND (ESMT F50L1G41LB)
* Ethernet: 1x 10/100/1000/2500 Mbps PoE-PD (MaxLinear GPY211C)
* WiFi: MT7976AN/MT7976GN 2.4/5GHz 4T4R
* LEDS: 3x blue connected to a single GPIO line
* Buttons: 1x reset
* BLE/Thread/Zigbee: CC2652

Stock firmware uses a random MAC address for ethernet, label MAC for
2.4 and label MAC + for 5GHz.

Installation via bootloader:
* Solder JST??? connector on J255, alternatively solder wires on the
  TP13-TP15 pads. Pinout: TP13: TX, TP14: RX, TP15: GND, TP16: VCC.
  The pins for J255 are in the same order.
* Interrupt boot process by repeatedly pressing Ctrl+b during boot
* In the boot menu, select U-Boot console
* Ensure the U-Boot environment variable "tp_boot_idx" is not set:
  # setenv tp_boot_idx
  # saveenv
* Boot the OpenWrt initramfs:
  # tftpboot openwrt-mediatek-filogic-tplink_eap683-lr-initramfs-kernel.bin
  # bootm
* copy openwrt-mediatek-filogic-tplink_eap683-lr-squashfs-sysupgrade.bin
  to /tmp and install it using sysupgrade

Flashing via OEM firmware is currently not supported. The
tplink-safeloader utility does not recognize the OEM firmware:

  DEBUG: can not find fwuphdr
  Firmware image partitions:
  base     size     name
  Segmentation fault (core dumped)

To revert to the OEM firmware, you can set the U-Boot environment
variable "tp_boot_idx" to 1 via bootloader, or using fw_setenv via
OpenWrt. This should result in booting from the ubi1 partition, which
OpenWrt should not touch. Then use the web interface to upgrade
firmware: System > Firmware Update.

The OEM firmware uses 0x800000 for the runtime_backup partition size.
This causes the following warning:

  mtd: partition "runtime_backup" extends beyond the end of device "nmbm_spim_nand" -- size truncated to 0x600000

This is due to the NMBM reserved blocks. Use 0x600000 in our DTS.

Thanks to init Lab's user890104, who soldered jumper wires on the TTL
pads for me so I could have serial console. My soldering skills just
aren't good enough to pull that off without risk damaging things.

Signed-off-by: Stijn Tintel <[email protected]>
The TP-Link EAP683-UR is identical to the EAP683-LR. Add it as ALT0
variant.

Signed-off-by: Stijn Tintel <[email protected]>
Increase PKG_RELEASE so buildbots pick up and rebuild the updated
package files.

Fixes: c752525 ("xdp-tools: add patch to fix stddef.h build issue")
Link: #21988
Signed-off-by: Nick Hainke <[email protected]>
ZTE MF833U1 is a LTE dongle that expose a cdc_ether interface for data link
and WebUI for management. It handles all the "modem" functionalities
internally and does not expose any serial interface. Instead it acts like a
"router in a stick".

It initially enumerates as a USB mass-storage device and does not bind any
network driver, so no netdev is created until a modeswitch is performed.

The test is done on Cudy TR3000 256MB v1.0 running OpenWrt 24.10.5 with an
unit targeting Chinese market:

 - Hardware Version: MF883U1_V1.0.0
 - Software Version: BD_MF883U1V1.0.0B06
 - CMIT ID: 2019CP2106

There are report online that the device have different variants that have
different behavior across different firmware, HW revisions or SKUs.

Before the switch:

```
root@OpenWrt:~# lsusb -t
  /:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci-mtk/1p, 480M
      |__ Port 001: Dev 003, If 0, Class=[unknown], Driver=[none], 480M

root@OpenWrt:~# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux 6.6.119
xhci-hcd xHCI Host Controller Bus 001 Device 004: ID 19d2:1705
DEMO,Incorporated DEMO Mobile Boardband Bus 002 Device 001: ID 1d6b:0003
Linux 6.6.119 xhci-hcd xHCI Host Controller ```

After the switch:

```
root@OpenWrt:~# lsusb -t
  /:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci-mtk/1p, 480M
      |__ Port 001: Dev 003, If 0, Class=[unknown], Driver=cdc_ether, 480M
      |__ Port 001: Dev 003, If 1, Class=[unknown], Driver=cdc_ether, 480M
      |__ Port 001: Dev 003, If 2, Class=[unknown], Driver=[none], 480M
  /:  Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci-mtk/1p, 20000M/x2

root@OpenWrt:~# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux 6.6.119
xhci-hcd xHCI Host Controller Bus 001 Device 003: ID 19d2:1706
DEMO,Incorporated DEMO Mobile Boardband Bus 002 Device 001: ID 1d6b:0003
Linux 6.6.119 xhci-hcd xHCI Host Controller ```

The following kernel debug log is presented:

``` cdc_ether 1-1:1.0 eth2: register 'cdc_ether' at usb-11200000.usb-1, ZTE
CDC Ethernet Device, 34:4b:50:00:00:00 ```

Signed-off-by: Zihao Diao <[email protected]>
Link: #21867
Signed-off-by: Hauke Mehrtens <[email protected]>
RTL83xx uses the BMCR and ADVERTISE registers like RTL93xx to configure
in-band auto-negotiation. Split out the common parts as a new generic
implementation and use it for RTL83xx. RTL93xx retains its own variant
of set_autoneg to support XSGMII, but calls into the generic version for
all other modes.

Tested 1000Base-X auto-negotiation on HPE 1920-8G (RTL8380). Also tested
HPE 1920-24G (RTL8382) and HPE-1920-48G (RTL8393) to make sure this does
not affect PHY ports.

Signed-off-by: Jan Hoffmann <[email protected]>
Link: #21934
Signed-off-by: Hauke Mehrtens <[email protected]>
There is now an implementation of .set_autoneg and .restart_autoneg for
all variants. Remove the helper function which checks for it, and just
call the operation directly.

Signed-off-by: Jan Hoffmann <[email protected]>
Link: #21934
Signed-off-by: Hauke Mehrtens <[email protected]>
Refresh the patches to make them apply cleanly again.

Fixes: 105eb9c ("kernel: add cake-mq support")
Signed-off-by: Hauke Mehrtens <[email protected]>
The ring counters on RTL83xx allow a space of up to 15 entries.
But rings can be filled faster than data is received and might be
much larger defined (128 at the moment). Also NAPI processing
allows much more than 15 packets to be processed in one chunk.
Disable the counters and let the hardware automatically detect
the available buffers by the ownership flag. With this disable
a pseudo workaround that tried to mitigate the buffer filling
on RTL838x due to wrong setup.

Remark. This commit fixes several inconsistencies in the setup
code. RTL838x runs the setup twice with different values. RTL839x
does not run the setup at all.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21856
Signed-off-by: Robert Marko <[email protected]>
Realtek switches have either 8 or 32 receive queues on the CPU port.
This is an overkill. Not only the CPUs have low performance but also
the queues need memory (currently ~4MB) and lots of them are rarely
used.

To mitigate that situation add a new setup routine that enforces CPU
packet receiving to a fixed number of queues. From observations one
can see that most of the packets (especially TCP) are received on a
single queue. To align with the transmit path, start with a limit of
2 receive queues.

To make it clear: This commit does not change the receive path or its
structures. It simply limits the number of queues that are filled by
the hardware.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21856
Signed-off-by: Robert Marko <[email protected]>
Define the needed structures for the redesign of the ethernet
receive path. They are closely aligned with the already refactored
transmit path.

The only exception is the additional data buffer where the
hardware can place the incoming data. This is allocated non-
coherent and data will be manually synchronized. The old design
used coherent (aka uncached) memory access.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21856
Signed-off-by: Robert Marko <[email protected]>
Make use of the new structures and redesign the receive path.
Especially

- reduce lock usage
- drop KSEG() macros
- use DMA mapping instead of uncached access

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21856
Signed-off-by: Robert Marko <[email protected]>
Drop leftovers from refactoring. Additionally convert all references
to the old dynamically calculated rings/ringsizes to the new ones.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21856
Signed-off-by: Robert Marko <[email protected]>
This was a regression introduced in the recent alignment changes and led
to failures when reading (i.e. 'mkndx') certain packages like follows:

ERROR: python3-botocore-1.31.7-r1.apk: unexpected end of file

It affected packages with a header size greater than the read buffer
size of 128KB but less than 160KB (128KB + (128KB / 4)).

In those cases, we'd attempt a 0 byte read, leading to APKE_EOF.

Based on some tests of files across multiple archs and feeds, it seems
the only packages meeting those criteria were python3-botocore and
golang-github-jedisct1-dnscrypt-proxy2-dev.

Fixes: 64ec08e ("apk: backport upstream fixes for unaligned access")
Signed-off-by: Matt Merhar <[email protected]>
Link: #21992
Signed-off-by: Robert Marko <[email protected]>
Setup of register PLL_CML_CTRL has two issues.

- It clears out bits 4-31 due to a wrong mask
- Setup of bits 0-3 is not generic but depends on the mode of
  serdes 0/1

Fix that by relocating the code and adapting the mask. The error
exists for longer but it has survived the pcs refactoring. Thus
blame the corresponding refactoring commit.

Fixes: b670d48 ("realtek: pcs: rtl838x: refactor imported code")
Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21956
Signed-off-by: Robert Marko <[email protected]>
The write protection register (0x1b000058) is opened up in prom init
but closed later in rtl838x_pie_init(). From that moment no more
special register writes are possible.

Only unlock the write protection register once during prom init.
Remove all other references. The error has been active since ages
but was not visible until pcs refactoring. For reference blame the
refactoring commit.

Fixes: e956adf ("realtek: rtl838x: setup SDS entirely in PCS driver")
Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21956
Signed-off-by: Robert Marko <[email protected]>
SerDes attached ports that are connected during switch
boot might not be able to transmit any data after SerDes
setup. Especially ports that passed traffic before (e.g.
for tftp initramfs boot) seem to be affected. Ports that
are connected later do not show this issue.

It turns out that the old SerDes setup never really worked
on RTL8382 and the pcs refactoring (with dynamic SerDes
start and stop) totally changed the order of network bringup
in contrast to Realtek SDK.

Fix this by restaring the switch queue whenever a SerDes
goes up for the first time.

Fixes: e956adf ("realtek: rtl838x: setup SDS in PCS driver")
Signed-off-by: Markus Stockhausen <[email protected]>
Link: #21956
Signed-off-by: Robert Marko <[email protected]>
This adds support for the Gemini-based Verbatim S08V1901-D1
also known as Gigabit Ethernet Hard Drive and perhaps other
funny names.

Link: #21989
Signed-off-by: Linus Walleij <[email protected]>
RIPE Atlas Probe v5 is a network measurement device based on Turris MOX.

u-boot bootscript supports booting both from the original Turris BTRFS
layout and default OpenWrt ext4 boot + root partition layout.

Specifications:
* SoC: Marvell ARMADA 3720
* RAM: 512 MiB, DDR3
* eMMC: 4G
* Ethernet: 1x 1GbE

MAC:
LAN MAC: label on board

Flash instructions:
* For using the default ext4 layout, boot into a live system using
tftpboot in u-boot and flash an OpenWrt SD image onto /dev/mmcblk0.
* For the Turris layout, put the new rootfs into subvolume '@', not
forgetting to add Image, device tree, and boot.scr to /boot.

Misc:
* USB connection is only for power. For UART access use the pin header:
  1: GND
  2: +1.8V
  5: TX
  6: RX
* Flashing the image onto Turris Shield won't work. Use Turris MOX image
  instead.

Signed-off-by: Tomáš Macholda <[email protected]>
Link: #20031
Signed-off-by: Hauke Mehrtens <[email protected]>
Add dependencies for Turris MOX board modules directly as
DEVICE_PACKAGES. (So that users don't have to add them manually.)

The device uses an SD card for primary storage so space shouldn't be an
issue.

Signed-off-by: Tomáš Macholda <[email protected]>
Link: #21151
Signed-off-by: Hauke Mehrtens <[email protected]>
This PR adds support for netis NX32U router.

Specification
-------------
- SoC       : MediaTek MT7981BA dual-core ARM Cortex-A53 1.3 GHz
- RAM       : 256 MiB DDR3
- Flash     : SPI-NAND 128 MiB (ESMT)
- WLAN      : MediaTek MT7976CN dual-band WiFi 6
  - 2.4 GHz : b/g/n/ax, MIMO 2x2
  - 5 GHz   : a/n/ac/ax, MIMO 2x2
- Ethernet  : 10/100/1000 Mbps x3 (LAN, MediaTek MT7531AE)
              10/100/1000 Mbps x1 (WAN, SoC internal phy)
- USB       : 3.0
- Buttons   : Mesh, Reset
- LEDs      : 1x Power (green), unmanaged
              1x Internet (green), gpio-controlled
              1x WPS (green), gpio-controlled
              1x WiFi 2.4 GHz (green), gpio-controlled
              1x WiFi 5 GHz (green), gpio-controlled
              1x LAN activity (green), switch-controlled
              1x WAN activity (green), switch-controlled
              1x USB (green), gpio-controlled
- Power     : 12 VDC, 1 A

Installation
------------
1. Connect to the router using ssh (user: admin, pass: web interface
   password)
2. Backup:
```
cat /dev/mtd0 | gzip -1 -c > /tmp/mtd0_spi0.0.bin.gz
cat /dev/mtd1 | gzip -1 -c > /tmp/mtd1_BL2.bin.gz
cat /dev/mtd2 | gzip -1 -c > /tmp/mtd2_u-boot-env.bin.gz
cat /dev/mtd3 | gzip -1 -c > /tmp/mtd3_Factory.bin.gz
cat /dev/mtd4 | gzip -1 -c > /tmp/mtd4_FIP.bin.gz
cat /dev/mtd5 | gzip -1 -c > /tmp/mtd5_ubi.bin.gz
```
3. Download mtd backup from the /tmp dir of the router to your PC using
   scp protocol
4. Upload OpenWrt 'bl31-uboot.fip', 'preloader.bin' images to the /tmp
   dir of the router using scp protocol
5. Write FIP and BL2 (replace bootloader):
```
mtd write /tmp/openwrt-mediatek-filogic-netis_nx32u-bl31-uboot.fip FIP
mtd write /tmp/openwrt-mediatek-filogic-netis_nx32u-preloader.bin BL2
```
6. Place OpenWrt
   'openwrt-mediatek-filogic-netis_nx32u-initramfs-recovery.itb' image on
   the tftp server (IP: 192.168.1.254)
7. Erase 'ubi' partition and reboot the router:
   mtd erase ubi
   reboot
8. U-Boot automatically boot OpenWrt recovery image from tftp server to
   the RAM
9. Upload OpenWrt 'sysupgrade.itb' image to the /tmp dir of the router
   (IP: 192.168.1.1) using scp protocol
10. Connect to the router using ssh and run:
```
ubidetach -p /dev/mtd4; ubiformat /dev/mtd4 -y; ubiattach -p /dev/mtd4
ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB
ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB
sysupgrade -n openwrt-mediatek-filogic-netis_nx32u-squashfs-sysupgrade.itb
```

Recovery
--------
1. Place OpenWrt
   'openwrt-mediatek-filogic-netis_nx32u-initramfs-recovery.itb' image on
   the tftp server (IP: 192.168.1.254)
2. Press “Reset” button and power on the router. After ~10 sec release
   the button.
3. Use OpenWrt initramfs system for recovery

+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| LAN     | dc:xx:xx:d1:xx:18 | label     |
| WAN     | dc:xx:xx:d1:xx:1a | label+2   |
| WLAN 2g | de:xx:xx:11:xx:19 |           |
| WLAN 5g | de:xx:xx:71:xx:19 |           |
+---------+-------------------+-----------+
The LAN MAC was found in 'Factory', 0x1fef20
The WAN MAC was found in 'Factory', 0x1fef26
The WLAN 2g/5g MAC prototype was found in 'Factory', 0x4

Signed-off-by: Fil Dunsky <[email protected]>
Link: #21368
Signed-off-by: Hauke Mehrtens <[email protected]>
hauke and others added 30 commits February 28, 2026 14:36
The device has 1 100MBit/s port. By default the PHY firmware is running
in 1GBit/s mode. The driver will try to load the 1GBit/s firmware and
fail if it is not there. Set the GPHY0 also to 100MBit/s mode.

The driver uses all nodes independent of the status attribute.

Do the same fix for AVM FRITZ!Box 7412 too.

Reported-by: Achelon in OpenWrt forum
Fixes: #21836
Link: #22188
Signed-off-by: Hauke Mehrtens <[email protected]>
Rename the patches folder too and also adapt the name in the toolchain menu.
Without changing the patches folder name the patches are not applied.

Fixes: adad973 ("toolchain: binutils: update to 2.45.1")
Signed-off-by: Hauke Mehrtens <[email protected]>
Add some additional Gateworks Venice boards to sysupgrade support.

Signed-off-by: Tim Harvey <[email protected]>
Link: #22202
Signed-off-by: Robert Marko <[email protected]>
Not all targets need regulator support, so they dont enable it as its
disabled in the generic config by default.

So, in order to allow kernel modules to depend on regulator support lets
add a new feature flag "regulator" and set it automatically if target
kernel config enables CONFIG_REGULATOR.

Link: #22172
Signed-off-by: Robert Marko <[email protected]>
There are a number of pse chips already present in upstream Linux.
OpenWrt is starting to support a number of devices can contain various pse
chips.  But having all the pse chip combinations defined at the target
level will result in bloat on images.
Present the current upstream Linux pse drivers as packages so that they
can be selectively included per board (rather than per target).

Signed-off-by: Bevan Weiss <[email protected]>
[Make it depend on REGULATOR_SUPPORT, and !SMALL_FLASH]
Link: #22172
Signed-off-by: Robert Marko <[email protected]>
2881a59f3043 rcS: allow overriding init.d/rc.d paths
4e4a34b1a833 rcS, ubus: constify char * arguments and variables where appropriate

Link: #22204
Signed-off-by: Nora Schiffer <[email protected]>
% git log --no-merges --pretty=oneline --abbrev-commit 20260221...20260110
30a139cb6561 qcom: vpu: fix SC7280 VPU Gen2 firmware and add compatibility symlink
65c7ff3ec808 amdgpu: DMCUB updates for various ASICs
6a24a5a92c32 qcom: Update DSP firmware for qcs8300 platform
39f04545b26f cirrus: cs35l41: Add Firmware for ASUS Zenbook Laptop using CS35L41 HDA
664f8b6adeba qcom: Update DSP firmware for sa8775p platform
bed52d78bc0c amdgpu: DMCUB updates for various ASICs
342ce02256f3 rtw89: 8851b: add format-1 for fw v0.29.41.5 with fw elements
4a216696655b rtw89: 8852a: add format-1 for fw v0.13.36.2 with fw elements
0579ff05d882 rtw89: 8852bt: add regd and diag_mac and update txpwr to R09
af193c46b6bd rtw89: 8852b: update txpwr element to R43
81eae19b21a0 rtw89: 8852b: add format-2 with v0.29.29.15 and fw elements
1cfed3e213c5 Revert "rtw89: 8852b: update fw to v0.29.128.0 with format suffix -2"
86725d7351e8 xe: Update GUC to v70.58.0 for LNL, BMG, PTL
cbd0f9753754 ath11k: WCN6855 hw2.0: update board-2.bin
65a3c868b360 ath11k: QCA6390 hw2.0: update board-2.bin
0364daaa28a2 qcom: Add gpu firmwares for Glymur chipset
6c1e2562f626 amdgpu: DMCUB updates for various ASICs
2bb21553d510 qcom: vpu: add video firmware for Glymur
8fafd2481eed qcom: add QUPv3 firmware for x1e80100 platform
fd38db51a2a6 Bluetooth: Add symbolic links for Intel Solar JfP2/1 firmware variants
07b822cc556d Bluetooth: Add symbolic links for Intel Solar firmware variants
1b902aa966e4 Bluetooth: Add symbolic links for Intel Pulsar firmware variants
949dba8936ab Bluetooth: Add symbolic links for Intel AX201 firmware variants
81a99dba039a ath10k: WCN3990 hw1.0: update board-2.bin
b69afa29d3f6 qcom: add ADSP, CDSP firmware for glymur platform
4e83a67a5637 ASoC: tas2783: Add Firmware files for tas2783A
87972e133405 linux-firmware: Update firmware file for Intel Solar core
a693bc58e2ac mediatek MT7921: update bluetooth firmware to 20251223091725
fbf93476b789 rtl_bt: Update RTL8822C BT USB and UART firmware to 0x0673
a712a43ff2c0 ath12k: WCN7850 hw2.0: update board-2.bin
ec76089d563e ath12k: QCN9274 hw2.0: update to WLAN.WBE.1.6-01243-QCAHKSWPL_SILICONZ-1
49df41843d27 ath11k: WCN6855 hw2.0: update board-2.bin
fd8bdffeabe4 ath11k: QCA6698AQ hw2.1: update board-2.bin
af03e44a2029 WHENCE: Correct 2 trailing whitespaces
1043c0303910 linux-firmware: Add firmware for airoha-npu-7581 driver used for MT7990 offloading
f18b40ebf5e8 linux-firmware: Add Dell ISH firmware for Intel panther lake systems
9a727f07bc60 amdgpu: DMCUB updates for various ASICs
fb1cfb1989ea linux-firmware: update Aeonsemi AS21x1x firmware to 1.9.1
0fa5e69a0d9e rtl_nic: add firmware rtl8125cp-1 for RTL8125cp
dfff492a66a0 ice: update DDP LAG package to 1.3.2.0
db024df1e153 cirrus: cs35l56: Add WHENCE links for 17aa233c spkid0 firmware
a80ebbccb826 rtw89: 8922a: update REGD R73-R08, txpwr R46 and element of diag MAC
f9c84ebaefbf rtw89: 8852c: update REGD R73-R60, txpwr R82 and element of diag MAC
d8fc35003355 Update firmware for NPU PHX, STX and STX HALO
a7bd257ea496 qcom: Update ADSP and add CDSP firmware for qcs6490-radxa-dragon-q6a
1ccefae136c4 qcom: Remove ADSP SensorPD json for Radxa Dragon Q6A
afae3262fa2f amdgpu: DMCUB updates for various ASICs
ff3470eca79b intel/ish: Add Lenovo ISH firmware support for X1 and X9 systems
53ec87319d28 cirrus: cs42l45: Add CS42L45 SDCA codec firmware for Lenovo laptops
8ca12d6383d0 cirrus: cs42l45: Add CS42L45 SDCA codec firmware for Dell laptops
ecf00f092a8e cirrus: cs35l57 cs35l63: Add firmware for Cirrus Amps for some Lenovo laptops
d01a86bd2b35 cirrus: cs35l56 cs35l57: Add and update firmware for some Dell laptops
e22074558beb Intel IPU7: Update firmware binary for Panther Lake
a80dabbc28fa linux-firmware: update firmware for MT7921 WiFi device
1e2c15348485 amdgpu: DMCUB updates for various ASICs
9e79ce04180f linux-firmware: Add firmware file for Intel ScorpiusGfp2 core
f401a31ab5ba linux-firmware: Update firmware file for Intel Scorpius core
6be3bd6cc295 linux-firmware: Update firmware file for Intel BlazarIGfP core
99a2479f94e1 linux-firmware: Update firmware file for Intel BlazarI core
9bf06b2bdf74 linux-firmware: Update firmware file for Intel BlazarU-HrPGfP core
40a812ce5880 linux-firmware: Update firmware file for Intel BlazarU core
634af751cc56 rtl_bt: Update RTL8852BT/RTL8852BE-VT BT USB FW to 0x06EB_C65F
4cc877a7c241 linux-firmware: Add firmware for airoha-npu-7583 driver
9a9285ce9b44 iwlwifi: add Bz/Sc FW for core102-56 release
579ca4320f6b iwlwifi: Add Hr/Gf firmware for core102-56 release
90af9c636906 iwlwifi: update ty/So/Ma firmwares for core102-56 release
05a6a40bbba8 xe: Add GSC 105.0.2.1301 for PTL
087f9b0a8d23 mediatek: rename MT8188 SCP firmware
a438fce32e0e qcom: Update DSP firmware for QCM6490 platform
bfc1d7433ddd linux-firmware: qcom: sync audioreach firmwares from v1.0.1 build

Build system: x86/64
Build-tested: x86/64-glibc
Run-tested: Intel N150 based system

Signed-off-by: John Audia <[email protected]>
Link: #22139
Signed-off-by: Christian Marangi <[email protected]>
In most drivers upstream use "ethernet-ports" instead of "ports"
in dts. Especially the upstream rtl9300 mdio driver uses this to
lookup the port/phy mapping. Do the same downstream. There is no
need to adapt the dsa driver because it scans the dts via
for_each_node_by_name(dn, "port").

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22149
Signed-off-by: Hauke Mehrtens <[email protected]>
The mdio driver is about phys and not about the (dsa) port number
of the cpu. This was a generic alias when all of this was part
of a big large mdio/ethernet driver. Give the cpu_port variable
a new name that better fits to the mdio context.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22131
Signed-off-by: Hauke Mehrtens <[email protected]>
The driver covers phys and not ports. Adapt the iterator to
align with this naming convention. While we are here convert
some open coding to this iterator macro.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22131
Signed-off-by: Hauke Mehrtens <[email protected]>
For some functions the mmd access parameter naming differs
from the rest of the driver. Convert remaining addr/reg
parameters to devnum/regnum.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22131
Signed-off-by: Hauke Mehrtens <[email protected]>
As with all the rest align the define to reflect that the
driver deals with phys.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22131
Signed-off-by: Hauke Mehrtens <[email protected]>
Get rid of the port variables. Use addr for phy address like
upstream kernel does for the whole phy/mdio subsystem.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22131
Signed-off-by: Hauke Mehrtens <[email protected]>
rtmdio_probe() uses for_each_phy() to access dn[]. This will point
to initialized entries. No need to clear that array in advance.

Signed-off-by: Markus Stockhausen <[email protected]>
Link: #22131
Signed-off-by: Hauke Mehrtens <[email protected]>
Define an nvmem cell in the device tree of XikeStor SKS8310-8X to
reference that as a source for the MAC address of the switch (ports).
This eliminates the need for the userspace script to read and parse the
MAC address.

Signed-off-by: Jonas Jelonek <[email protected]>
Link: #22211
Signed-off-by: Hauke Mehrtens <[email protected]>
The XikeStor SKS8310-8X has a monitoring IC LM75B from National
Instruments on board. This was missed when support for the device was
added. Add it now and also add the corresponding kmod to the device
packages.

Fixes: 62d50fb ("realtek: add support for XikeStor SKS8310-8X")
Signed-off-by: Jonas Jelonek <[email protected]>
Link: #22211
Signed-off-by: Hauke Mehrtens <[email protected]>
The sys_led node in the device tree is wrong and doesn't work. On GPIO
23 nothing seems to be connected. The switch has a SYS LED but as with a
lot other Realtek switches, this LED is connected to the pin A0, which
can be driven as GPIO0 or system LED. The hardware-assisted behavior is
configured during boot by u-boot.

Though it is be possible to deactivate the hardware-assisted behavior
and give userspace control over the LED, it doesn't work for this
switch. XikeStor apparently decided to hook the SYS LED to some kind of
external watchdog. This one seems to expect a LOW signal on that line
periodically. This leaves room for two options:

1) keep behavior and let the LED blink as configured by u-boot
2) turn off LED completely

Option 2) is rather odd and may confuse users, thus it is better to keep
the behavior as-is for now. u-boot configures the LED to blink fast
which might be annoying. As soon as we have a way in the device tree to
specify different blinking frequencies as supported by the hardware,
this can be smoothened.

Signed-off-by: Jonas Jelonek <[email protected]>
Link: #22211
Signed-off-by: Hauke Mehrtens <[email protected]>
sync with gnulib, fixes compilation with gcc15

Signed-off-by: Ivan Pavlov <[email protected]>
Link: #22225
Signed-off-by: Hauke Mehrtens <[email protected]>
The 2.4 GHz and 5 GHz WiFi eeprom cell references were assigned to the
wrong PCIe slots. Swap them so slot0 (2.4 GHz) uses the eeprom at
0x1c0000 and slot1 (5 GHz) uses the eeprom at 0x40000. Fix the eeprom
cell lengths to match the sizes expected by their respective drivers.

Fixes: be24a13 ("econet: en7528: add PCIe and WiFi support")
Signed-off-by: Ahmed Naseef <[email protected]>
Link: #22195
Signed-off-by: Hauke Mehrtens <[email protected]>
Add the unnamed partition between rwfs and reservearea to fully describe
the flash layout.

Signed-off-by: Ahmed Naseef <[email protected]>
Link: #22195
Signed-off-by: Hauke Mehrtens <[email protected]>
This STC8 microcontroller is used on a range of Hasivo managed switches.
It typically performs some fan/thermal control, and also has some
discrete IO hanging off of it.
The fan/thermal control is still somewhat unknown at this stage, but the
LED / gpio control has been determined as being two I2C registers which
need to be written to with a 'typical' Hasivo 0x40 execute mask set, to
change values.

Rather than having this expose the LED functionality / thermal control
directly, just represent it as an mfd, with some configurable OR'ing of
an execute-bit to certain registers (execute-bit-regs).  This way different
STC8 arrangements can hopefully be handled by devicetree configs rather
than needing new driver code.

Signed-off-by: Bevan Weiss <[email protected]>
Link: #21578
Signed-off-by: Hauke Mehrtens <[email protected]>
d768823fea50 vm: rework I_DYNLOAD instruction to read module name from stack
9e265b9a1e15 program: support encoding export symbols in precompiled bytecode
926f20b55e13 compiler: add support for runtime module imports
e3d7d77f0e5d lib: avoid stack operations if required code invoked exit()
7f3a0512f49d compiler: turn static imports of precompiled modules into dynamic loads
ccc25285471b nl80211.h: update to version 6.18
bb145163147a nl80211: add WiFi 7 EHT and MLD attributes
65d268546453 nl80211: add scan, BSS status and BSS use-for constants

Fixes: https://github.com/jow-/ucode/issues/336#issuecomment-3415635374
Fixes: https://github.com/jow-/ucode/pull/338#issuecomment-3442569831
Signed-off-by: Felix Fietkau <[email protected]>
a47ad19275e9 wifi: mt76: mt7996: fix out-of-bounds array access during hardware restart
a34adb961be5 wifi: mt76: mt7996: add missing max_remain_on_channel_duration
751ae55c0d87 wifi: mt76: improve fix for multi-radio on-channel scanning
9337d2f25d91 wifi: mt76: avoid sending probe requests on active DFS channels
d62f5a0d1d2d wifi: mt76: update fix for backoff fields and max_power calculation
8831fa78cb23 wifi: mt76: add external EEPROM support for mt799x chipsets
f656567eff2c wifi: mt76: mt7996: add variant for MT7992 chipsets
36c59c31bfc8 wifi: mt76: mt7996: apply calibration-free data from OTP
f1c32003333e wifi: mt76: connac: use is_connac2() to replace is_mt7921() checks
95df5c591507 wifi: mt76: mt7921: use mt76_for_each_q_rx() in reset path
c3d742932a3c wifi: mt76: mt7921: handle MT7902 irq_map quirk with mutable copy
772c51c2ebc1 wifi: mt76: mt7921: add MT7902e DMA layout support
2175fa76bfff wifi: mt76: connac: mark MT7902 as hw txp devices
135ebed77517 wifi: mt76: mt792x: add PSE handling barrier for the large MCU cmd
cc343793ad65 wifi: mt76: mt792x: ensure MCU ready before ROM patch download
5ee904252aad wifi: mt76: mt7921: add MT7902 MCU support
4b104a082e72 wifi: mt76: mt792x: add MT7902 WFDMA prefetch configuration
eaa09af12bf4 wifi: mt76: mt7921: add MT7902 PCIe device support
66067d203bd0 wifi: mt76: mt7921: add MT7902 SDIO device support
f21748c6cdae wifi: mt76: mt7996: fix wrong DMAD length when using MAC TXP
88ed9f8abcf3 wifi: mt76: mt7996: fix struct mt7996_mcu_uni_event
19b5d0918ba1 wifi: mt76: avoid to set ACK for MCU command if wait_resp is not set
365f006322aa wifi: mt76: mt7996: fix queue pause after scan due to wrong channel switch reason
2eb5d1e3cfbf wifi: mt76: don't return TXQ when exceeding max non-AQL packets
3129d0a6b185 wifi: mt76: mt7915: fix use-after-free bugs in mt7915_mac_dump_work()
cb906c88ca92 wifi: mt76: mt7996: fix use-after-free bugs in mt7996_mac_dump_work()
4aa63d4c5bf2 wifi: mt76: mt7996: Add eMLSR support
be3aad4c2e10 wifi: mt76: mt7915: sync station power save state
f564cc612813 wifi: mt76: mt7996: Disable Rx hdr_trans in monitor mode
a6761a9892d9 wifi: mt76: mt7921: fix 6GHz regulatory update on connection
003216cc04b7 wifi: mt76: add missing lock protection in mt76_sta_state for sta_event callback
699a4aa3b88a wifi: mt76: mt7925: fix incorrect TLV length in CLC command
aee736a27ea2 wifi: mt76: mt7996: Fix possible oob access in mt7996_mac_write_txwi_80211()
f29ff603012e wifi: mt76: mt7925: Fix possible oob access in mt7925_mac_write_txwi_80211()
ee84094d71ba wifi: mt76: Fix possible oob access in mt76_connac2_mac_write_txwi_80211()

Signed-off-by: Felix Fietkau <[email protected]>
Add menuconfig options to include modules for (virtio) vsockets. These are
used when running as Guest OS in a VM.

OpenWRT can be run in a vm (mostly commonly on the x86/64 and armsr
targets). Often it is convenient to have some sort of guest agent running,
to ease communication from host to guest.
Virtual Sockets provide this communication channel.
Virtio is a transport for this communication channel.

Virtual Sockets over virtio are for example used by Incus.
Virtual Sockets in general are used by most hypervisors, including VMware,
Hyper-V, and libvirt (qemu). These may need other transport-specific
modules not included in this commit.

Signed-off-by: Mathijs Rietbergen <[email protected]>
Add a build config option to sign each individual .apk package.

If individual .apk files are signed with the build key, they can be
installed with 'apk add' without '--allow-untrusted' to a firmware
compiled by the same buildhost.

Enable the option by default, but disable it for BUILDBOT.

(At the moment, since commit 084697e, only the package index is signed,
which forces users to use '--allow-untrusted' when installing
self-built .apk files.)

Signed-off-by: Hannu Nyman <[email protected]>
This access point is a ‘friend’ of the T56 supplied by Odido but with DDR3 RAM and with two Ethernet 2.5 (GPY211)

The flash procedure is similar to other Zyxel T56/EX5600/EX5601

If you need backup please use the T56 guide

Please refer to https://openwrt.org/inbox/toh/zyxel/wx5600-t0 for detailed flash informations

We can install all with U-boot and mtk_uartboot.
Load Uboot:

```
./mtk_uartboot -a -p ./mt7986-ram-ddr3-bl2.bin -s /dev/ttyUSB0 -f openwrt-mediatek-filogic-zyxel_wx5600-t0-ubootmod-bl31-uboot.fip
```
**WARNING: Please use a GBIT ethernet or force it on system**
**WARNING: Please use only LAN2 port in Uboot**
Press 0 on Bootmenu
```
mtd erase ubi
run ubi_format
bootmenu
```
Load and write BL2 and U-boot:
```
8
7
```

Load and write recovery and production
```
6
5
```

Signed-off-by: Valerio 'ftp21' Mancini <[email protected]>
Link: #18364
Signed-off-by: Christian Marangi <[email protected]>
This access point is a ‘friend’ of the T56 supplied by Odido but with DDR3 RAM and with two Ethernet 2.5 (GPY211)

The flash procedure is similar to other Zyxel T56/EX5600/EX5601

If you need backup please use the T56 guide
Please refer to https://openwrt.org/inbox/toh/zyxel/wx5600-t0 for detailed flash informations

Specifications:
SOC: MT7986b
RAM: 512MB
Flash: 512 MB SPI NAND
Ports: 2 LAN 2.5Gbps (GPY211C)
WIFI: MT7976GN + MT7976AN
LED: 3 bicolor LED - 1 monocolor LED
Buttons: Reset and WPS

We can install all with U-boot and mtk_uartboot.
Load Uboot:

```
./mtk_uartboot -a -p ./mt7986-ram-ddr3-bl2.bin -s /dev/ttyUSB0 -f openwrt-mediatek-filogic-zyxel_wx5600-t0-ubootmod-bl31-uboot.fip
```
**WARNING: Please use a GBIT ethernet or force it on system**
**WARNING: Please use only LAN2 port in Uboot**
Press 0 on Bootmenu
```
mtd erase ubi
run ubi_format
bootmenu
```
Load and write BL2 and U-boot:
```
8
7
```

Load and write recovery and production
```
6
5
```

Signed-off-by: Valerio 'ftp21' Mancini <[email protected]>
Co-authored-by: Hal Martin <[email protected]>
Link: #18364
Signed-off-by: Christian Marangi <[email protected]>
Add patch:
- 001-PASN-Fix-the-compilation-errors-without-CONFIG_PASN.patch

Manually edit patches:
- 110-mbedtls-TLS-crypto-option-initial-port.patch
- 190-hostapd-Fix-hostapd-crash-if-setup-a-iface-with-.patch
- 191-hostapd-add-support-for-specifying-the-link-id-in-th.patch
- 220-indicate-features.patch
- 360-acs_retry.patch
  -> Remove the extra check for -EBUSY (see below) because the code we
     want to skip is now already guarded by:
     https://git.w1.fi/cgit/hostap/commit/?id=af6473761f07ae4f13ef228dec618ca62faf6ef4
      ```
      + if (ret == -EBUSY)
      +         goto fail;
      ```
- 341-mesh-ctrl-iface-channel-switch.patch
- 600-ubus_support.patch
- 601-ucode_support.patch
  -> The patch had this and similar changes:
     ```
      -		if (os_strcmp(drv->first_bss->ifname, ifname) != 0) {
      +		if (drv->first_bss->ifindex != ifi->ifi_index) {
     ```
     Those changes should be unnecessary due to the commit:
     https://git.w1.fi/cgit/hostap/commit/?id=2bf6d85963b9857b411b57cc7949e30ee2cb1216
- 780-Implement-APuP-Access-Point-Micro-Peering.patch
  -> Needs adjustement because of Enhanced Privacy Protection (EPP):
     https://git.w1.fi/cgit/hostap/commit/?id=1e13ee9c382a5d88c4bb0ffdfaf434fbb31123f3

Remove patch:
- 030-Revert-nl80211-Accept-a-global-nl80211-event-to-a-br.patch
- 060-nl80211-fix-reporting-spurious-frame-events.patch
  -> https://git.w1.fi/cgit/hostap/commit/?id=ca266cc24d8705eb1a2a0857ad326e48b1408b20
- 190-hostapd-Fix-hostapd-crash-if-setup-a-iface-with-.patch
  -> https://git.w1.fi/cgit/hostap/commit/?id=e275c3dc70e1c2947e02e43aeee6c4f9975c3dc7
- 192-nl80211-cancel-scans-whenever-the-first-bss-is-remov.patch
  -> https://git.w1.fi/cgit/hostap/commit/?id=5ce1d41803866782bbd96d575f53d43358a20a2e
- 350-nl80211_del_beacon_bss.patch
  -> https://git.w1.fi/cgit/hostap/commit/?id=b777ecb16274235974edb5c1dfcea6abab25f6c4

Tested-By: Daniel Pawlik <[email protected]>
Co-developed-by: Agustin Lorenzo <[email protected]>
Link: #20912
Signed-off-by: Nick Hainke <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.