openwrt/staging/blocktrron.git
33 hours agoutil-linux: change include order to fix build error
Felix Fietkau [Wed, 23 Apr 2025 08:04:22 +0000 (10:04 +0200)]
util-linux: change include order to fix build error

Prevent accidentally including an old version of uuid.h, which causes
the build to fail because of missing definitions.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
33 hours agokernel: r8168: add RSS variant
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:39:24 +0000 (09:39 +0200)]
kernel: r8168: add RSS variant

Instead of enabling RSS support, let's introduce a variant and let users
choose between both variants since it can cause network issues.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
33 hours agokernel: r8127: rss: enable ENABLE_MULTIPLE_TX_QUEUE
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:38:04 +0000 (09:38 +0200)]
kernel: r8127: rss: enable ENABLE_MULTIPLE_TX_QUEUE

We need both ENABLE_RSS_SUPPORT and ENABLE_MULTIPLE_TX_QUEUE in order to
support multiple RX and TX queues.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
33 hours agokernel: r8126: rss: enable ENABLE_MULTIPLE_TX_QUEUE
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:37:43 +0000 (09:37 +0200)]
kernel: r8126: rss: enable ENABLE_MULTIPLE_TX_QUEUE

We need both ENABLE_RSS_SUPPORT and ENABLE_MULTIPLE_TX_QUEUE in order to
support multiple RX and TX queues.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
33 hours agokernel: r8125: rss: enable ENABLE_MULTIPLE_TX_QUEUE
Pavel Kubelun [Wed, 16 Apr 2025 18:07:32 +0000 (21:07 +0300)]
kernel: r8125: rss: enable ENABLE_MULTIPLE_TX_QUEUE

We need both ENABLE_RSS_SUPPORT and ENABLE_MULTIPLE_TX_QUEUE in order to
support multiple RX and TX queues.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18509
[bump release, improve commit description and package changes]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
34 hours agokernel: r8125: disable ASPM
Pavel Kubelun [Wed, 16 Apr 2025 18:07:32 +0000 (21:07 +0300)]
kernel: r8125: disable ASPM

Disable ASPM support for this NIC, fixing strange behavior problems, such as
increased latency, strange uneven throughput, etc.
With this option disabled the NIC achieves stable performance.
Upsteam r8169 driver disables ASPM by default for this NIC.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18509
[bump release, fix commit description, split 2nd tx queue part]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
34 hours agokernel: r8127: load module at boot time
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:20:43 +0000 (09:20 +0200)]
kernel: r8127: load module at boot time

This allows the network interface naming to be stable, free from any
possible interaction from external USB network devices that might
claim usb* interface names.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
34 hours agokernel: r8126: load module at boot time
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:20:18 +0000 (09:20 +0200)]
kernel: r8126: load module at boot time

This allows the network interface naming to be stable, free from any
possible interaction from external USB network devices that might
claim usb* interface names.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
34 hours agokernel: r8125: load module at boot time
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:18:22 +0000 (09:18 +0200)]
kernel: r8125: load module at boot time

This allows the network interface naming to be stable, free from any
possible interaction from external USB network devices that might
claim usb* interface names.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18509
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
34 hours agokernel: r8168: load module at boot time
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:17:21 +0000 (09:17 +0200)]
kernel: r8168: load module at boot time

This allows the network interface naming to be stable, free from any
possible interaction from external USB network devices that might
claim usb* interface names.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
34 hours agokernel: r8101: load module at boot time
Álvaro Fernández Rojas [Wed, 23 Apr 2025 07:11:51 +0000 (09:11 +0200)]
kernel: r8101: load module at boot time

This allows the network interface naming to be stable, free from any
possible interaction from external USB network devices that might
claim usb* interface names.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
45 hours agoramips: mt7620: Add support for the devolo WiFi Repeater ac (MT 2767, 2779)
Hugo Monteiro [Wed, 20 Mar 2024 23:11:47 +0000 (23:11 +0000)]
ramips: mt7620: Add support for the devolo WiFi Repeater ac (MT 2767, 2779)

Specification:
    - MT7620A 580 MHz MIPS24KEc
    - 64MB RAM
    - 8MB SPI NOR
    - MediaTek MT7612E 5.0GHz 802.11a/n/ac
    - MediaTek MT7620 2.4GHz 802.11b/g/n
    - 5 LEDs (white)
    - 1 button
    - 1 Gbit port Realtek RTL8211E GbE Phy

Serial Interface:
    - 3 Pins GND, RX, TX
    - Settings: 57600, 8N1

Based on support from edimax_ew-7476rpc/edimax_ew-747x
and netgear_ex3700/netgear_ex3x00_ex61xx

Notes:
 - ATM there is no known way to revert to stock firmware

Flash instruction:
The only known way to flash OpenWrt image is to use tftp in U-Boot, with the
aid of a serial adapter for U-Boot console access:

1. Open the device and connect to the serial port. The device is very similar
   to Edimax 7476RPC. See https://openwrt.org/toh/edimax/ew-7476rpc. No VCC!
2. Configure PC with static IP 192.168.1.2/24 and tftp server and
   connect PC to device using an ethernet cable.
3. Power on the device and, on the serial console, as soon as U-Boot starts
   loading, press "2" to interrupt loading.
4. Enter device ip address 192.168.1.1, PC ip address 192.168.1.2
   and the firmware filename placed on the TFTP server.
5. Device will download file from server, write it to flash and reboot.

Signed-off-by: Hugo Monteiro <monteiro.hugo@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16956
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
45 hours agolantiq: Improve support for LED's fritz736x
Robert Senderek [Wed, 19 Feb 2025 22:24:11 +0000 (23:24 +0100)]
lantiq: Improve support for LED's fritz736x

add support for fon / internet LED
solves: https://github.com/openwrt/openwrt/issues/17787
This LED is marked Internet or Fon depend on version

Tested on fritz7362sl

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
Link: https://github.com/openwrt/openwrt/pull/18038
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
46 hours agoqualcommax: add support for ELECOM WRC-X3000GS2
INAGAKI Hiroshi [Mon, 10 Feb 2025 15:34:29 +0000 (00:34 +0900)]
qualcommax: add support for ELECOM WRC-X3000GS2

ELECOM WRC-X3000GS2 is a 2.4/5 GHz band 11ax (Wi-Fi 6) router, based on
IPQ5018.

Specification:

- SoC             : Qualcomm IPQ5018
- RAM             : DDR3 256 MiB (Zentel A3T2GF40CBF-HP)
- Flash           : SPI-NAND 128 MiB (Macronix MX35UF1G24AD-Z4I)
- WLAN            : 2.4/5 GHz 2T2R
  - 2.4 GHz       : Qualcomm IPQ5018 (SoC)
  - 5 GHz         : Qualcomm Atheros QCN6102
- Ethernet        : 5x 10/100/1000 Mbps
  - wan (phy)     : Qualcomm IPQ5018 (SoC)
  - lan (switch)  : Qualcomm Atheros QCA8337
- LEDs/Keys (GPIO): 8x/3x
- UART            : through-hole on PCB, 4pins near the barcode
  - assignment    : 3.3V, TX, RX, NC, GND from the barcode side
  - settings      : 115200n8
- Power           : 12 VDC, 1 A (Max. 11.5W)

Flash instruction using initramfs-factory.bin image:

1. Boot WRC-X3000GS2 normally with router mode
2. Access to the WebUI ("http://192.168.2.1/") on the device and open
   the firmware update page ("ファームウェア更新")
3. Select the OpenWrt factory.bin image and click apply ("適用") button
4. Wait ~120 seconds to complete flashing

Switching to the stock firmware:

1. Load the elecom.sh script

   . /lib/upgrade/elecom.sh

2. Check the current index of rootfs

   bootconfig_rw_index 0:bootconfig rootfs

3. Set the index to inverted value

   bootconfig_rw_index 0:bootconfig rootfs <value>
   bootconfig_rw_index 0:bootconfig1 rootfs <value>

   example:

   - step2 returned "0":

     bootconfig_rw_index 0:bootconfig rootfs 1
     bootconfig_rw_index 0:bootconfig1 rootfs 1

   - step2 returned "1":

     bootconfig_rw_index 0:bootconfig rootfs 0
     bootconfig_rw_index 0:bootconfig1 rootfs 0

4. Reboot

Partition Layout (Stock FW):

0x000000000000-0x000000080000 : "0:SBL1"
0x000000080000-0x000000100000 : "0:MIBIB"
0x000000100000-0x000000140000 : "0:BOOTCONFIG"
0x000000140000-0x000000180000 : "0:BOOTCONFIG1"
0x000000180000-0x000000280000 : "0:QSEE"
0x000000280000-0x000000380000 : "0:QSEE_1"
0x000000380000-0x0000003c0000 : "0:DEVCFG"
0x0000003c0000-0x000000400000 : "0:DEVCFG_1"
0x000000400000-0x000000440000 : "0:CDT"
0x000000440000-0x000000480000 : "0:CDT_1"
0x000000480000-0x000000500000 : "0:APPSBLENV"
0x000000500000-0x000000640000 : "0:APPSBL"
0x000000640000-0x000000780000 : "0:APPSBL_1"
0x000000780000-0x000000880000 : "0:ART"
0x000000880000-0x000000900000 : "0:TRAINING"
0x000000900000-0x000003c40000 : "rootfs"
0x000003c40000-0x000003fc0000 : "Config"
0x000003fc0000-0x000007300000 : "rootfs_1"
0x000007300000-0x000007680000 : "Config_2"
0x000007680000-0x000007b80000 : "Reserved"
0x000007b80000-0x000007c00000 : "FWHEADER"
0x000007c00000-0x000007c80000 : "Factory"

Known Issues:

- All Wi-Fi related peripherals are disabled.
  This device has only 256 MiB RAM and it's too few for ath11k. To
  prevent OOM when using LuCI or other softwares, disable Wi-Fi related
  peripherals in device tree at the moment.

- This device has a Macronix MX35UF1G24AD SPI-NAND chip registered as
  oobsize=128 in Linux Kernel. But using BCH8 breaks I/O on the chip
  with the following errors, so this support uses BCH4 instead.

  root@OpenWrt:~# strings /dev/mtdblock10
  [26427.133154] mtdblock: MTD device '0:appsblenv' is NAND, please consider using UBI block devices instead.
  [26427.134125] I/O error, dev mtdblock10, sector 0 op 0x0:(READ) flags 0x80700 phys_seg 4 prio class 2
  [26427.142240] I/O error, dev mtdblock10, sector 8 op 0x0:(READ) flags 0x80700 phys_seg 3 prio class 2
  [26427.151427] I/O error, dev mtdblock10, sector 16 op 0x0:(READ) flags 0x80700 phys_seg 2 prio class 2
  [26427.160440] I/O error, dev mtdblock10, sector 24 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2
  [26427.169619] I/O error, dev mtdblock10, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2
  [26427.178083] Buffer I/O error on dev mtdblock10, logical block 0, async page read

Notes:

- This device has dual-boot feature and it's managed by the index in the
  0:bootconfig and 0:bootconfig1 partitions.

MAC Addresses:

LAN    : 38:97:A4:xx:xx:60 (0:APPSBLENV, "eth1addr"/"ethaddr"  (text))
WAN    : 38:97:A4:xx:xx:63 (0:APPSBLENV, "eth0addr" (text))
2.4 GHz: 38:97:A4:xx:xx:61 (0:APPSBLENV, "wifi0"    (text))
5 GHz  : 38:97:A4:xx:xx:62 (0:APPSBLENV, "wifi1"    (text))

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18543
Signed-off-by: Robert Marko <robimarko@gmail.com>
46 hours agoqualcommax: allow overriding ECC strength for qpic-snand
INAGAKI Hiroshi [Fri, 14 Feb 2025 09:19:58 +0000 (18:19 +0900)]
qualcommax: allow overriding ECC strength for qpic-snand

Make the ECC strength in the qpic-snand driver configurable via device
tree to use the device-specific ECC strength value.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18543
Signed-off-by: Robert Marko <robimarko@gmail.com>
46 hours agouboot-envtools: ipq50xx: add support for ELECOM WRC-X3000GS2
INAGAKI Hiroshi [Sat, 15 Feb 2025 00:16:49 +0000 (09:16 +0900)]
uboot-envtools: ipq50xx: add support for ELECOM WRC-X3000GS2

Add support for ELECOM WRC-X3000GS2 to update "bootdelay" variable
configured as "0" by default when sysupgrade.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18543
Signed-off-by: Robert Marko <robimarko@gmail.com>
46 hours agoipq-wifi: update to Git HEAD (2025-04-22)
Robert Marko [Tue, 22 Apr 2025 18:56:25 +0000 (20:56 +0200)]
ipq-wifi: update to Git HEAD (2025-04-22)

38ede16b25d0 qcn9274: add board file for 8devices Kiwi-DVK
df0dc1d03bed qcn9074: update BDF for Linksys MR5500
96ca48d7bb67 ipq5018: add BDF for ELECOM WRC-X3000GS2
acf37292d2c1 qcn6122: add BDF for ELECOM WRC-X3000GS2

Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agokernel: move kernel version files to linux/generic directory
Christian Marangi [Sat, 19 Apr 2025 12:54:23 +0000 (14:54 +0200)]
kernel: move kernel version files to linux/generic directory

To further improve cleanup and maintenance usage, move the kernel
version files to target/linux/generic directory. This permits to self
contain any change to the specific generic directory instead of having
to bload the include directory of periodic changes.

In kernel-version.mk we now use GENERIC_PLATFORM_DIR provided by
target.mk. To make this work, we need to move the inclusion of
kernel-version.mk in target.mk right after GENERIC_PLATFORM_DIR is
defined.

This also comes to permit downstream project to provide a custom generic
directory and specify the kernel version complete of the hash and the
minor version without having to affect other feeds.

In such case both generic and the target directory are provided as feeds
and OpenWrt reference these specific one instead of the generic one.

For downstream it's still suggested and preferable to all match the
shipped generic kernel minor version but this change permits to at least
enforce good practice instead of having to bloat OpenWrt include file of
all kind of downstream changes (making porting to OpenWrt mainline even
more difficult)

Link: https://github.com/openwrt/openwrt/pull/18537
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 days agoath79: convert driver to .remove_new
Mieczyslaw Nalewaj [Sat, 19 Apr 2025 10:23:14 +0000 (12:23 +0200)]
ath79: convert driver to .remove_new

Convert driver to .remove_new in preparation for kernel 6.12 support.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agobmips: convert driver to .remove_new
Mieczyslaw Nalewaj [Sat, 19 Apr 2025 10:17:41 +0000 (12:17 +0200)]
bmips: convert driver to .remove_new

Convert driver to .remove_new in preparation for kernel 6.12 support.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agomediatek: convert driver to .remove_new
Mieczyslaw Nalewaj [Sat, 19 Apr 2025 10:14:24 +0000 (12:14 +0200)]
mediatek: convert driver to .remove_new

Convert driver to .remove_new in preparation for kernel 6.12 support.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agoramips: convert driver to .remove_new
Mieczyslaw Nalewaj [Sun, 13 Apr 2025 21:58:40 +0000 (23:58 +0200)]
ramips: convert driver to .remove_new

Convert driver to .remove_new in preparation for kernel 6.12 support.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agokernel: modules: add HiNIC support
Coia Prant [Sat, 19 Apr 2025 06:17:38 +0000 (14:17 +0800)]
kernel: modules: add HiNIC support

Add support for the Huawei Intelligent PCIE Network Interface Card (HiNIC)

Signed-off-by: Coia Prant <coiaprant@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18534
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 days agouboot-rockchip: bump to 2025.04
Stijn Tintel [Mon, 14 Apr 2025 17:19:21 +0000 (20:19 +0300)]
uboot-rockchip: bump to 2025.04

Changes: https://github.com/u-boot/u-boot/compare/v2025.01...v2025.04

Drop patch 100-rockchip-add-FriendlyElec-NanoPi-R3S.patch. U-Boot
upstream now supports this board.

Tested on Radxa ROCK 5B+.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2 days agogeneric: 6.6: backport upstream v6.15 Realtek PHY patches
Álvaro Fernández Rojas [Tue, 22 Apr 2025 12:39:05 +0000 (14:39 +0200)]
generic: 6.6: backport upstream v6.15 Realtek PHY patches

bfc17c1658353 net: phy: realtek: disable PHY-mode EEE
fabcfd6d10999 net: phy: realtek: add defines for shadowed c45 standard registers
8af2136e77989 net: phy: realtek: add helper RTL822X_VND2_C22_REG
02d3b306ac2f0 net: phy: realtek: switch from paged to MMD ops in rtl822x functions
da681ed73fb98 net: phy: realtek: improve mmd register access for internal PHY's
0bea93fdbaf86 net: phy: realtek: use string choices helpers
51773846fab24 net: phy: realtek: make HWMON support a user-visible Kconfig symbol

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2 days agogeneric: 6.6: backport upstream v6.15 r8169 patches
Álvaro Fernández Rojas [Tue, 22 Apr 2025 12:36:49 +0000 (14:36 +0200)]
generic: 6.6: backport upstream v6.15 r8169 patches

b48688ea3c9ac r8169: disable RTL8126 ZRX-DC timeout
3d9b8ac534126 r8169: enable RTL8168H/RTL8168EP/RTL8168FP ASPM support
473367a5ffe16 r8169: increase max jumbo packet size on RTL8125/RTL8126
853e80369cfce r8169: add PHY c45 ops for MDIO_MMD_VENDOR2 registers
d30460f42675f r8169: add support for Intel Killer E5000
faac69a4ae5ab r8169: don't scan PHY addresses > 0
135c3c86a7cef r8169: make Kconfig option for LED support user-visible

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2 days agogeneric: backport pmdomain dummy release patch
Álvaro Fernández Rojas [Tue, 22 Apr 2025 10:54:16 +0000 (12:54 +0200)]
generic: backport pmdomain dummy release patch

Fixes the following warning trace on bcm27xx devices when bcm2835-power is
deferred:
[    0.216800] ------------[ cut here ]------------
[    0.216807] Device 'grafx' does not have a release() function, it is broken and must be fixed. See Documentation/core-api/kobject.rst.
[    0.216863] WARNING: CPU: 0 PID: 1 at drivers/base/core.c:2516 device_release+0x80/0x90
[    0.216887] Modules linked in:
[    0.216896] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.6.85 #0
[    0.216905] Hardware name: Raspberry Pi 4 Model B Rev 1.1 (DT)
[    0.216911] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    0.216919] pc : device_release+0x80/0x90
[    0.216928] lr : device_release+0x80/0x90
[    0.216936] sp : ffffffc080ccb6d0
[    0.216940] x29: ffffffc080ccb6d0 x28: 0000000000000000 x27: ffffff8040d49810
[    0.216953] x26: ffffff8040c904b8 x25: ffffff8040c904a0 x24: ffffffc0808a7f08
[    0.216964] x23: ffffffc080a1a6d8 x22: 0000000000000000 x21: ffffffc080a1afe0
[    0.216976] x20: 0000000000000000 x19: ffffff8040c900b8 x18: 000000000000009f
[    0.216987] x17: 206e656b6f726220 x16: 7369207469202c6e x15: ffffffc080b4ee88
[    0.216998] x14: 00000000000001dd x13: 000000000000009f x12: 00000000ffffffea
[    0.217009] x11: 00000000ffffefff x10: ffffffc080ba6e88 x9 : ffffffc080b4ee30
[    0.217020] x8 : 0000000000017fe8 x7 : c0000000ffffefff x6 : 0000000000057fa8
[    0.217031] x5 : 0000000000000fff x4 : 0000000000000000 x3 : ffffffc080ccb4d0
[    0.217042] x2 : ffffffc080b4edc8 x1 : ffffffc080b4edc8 x0 : 000000000000007a
[    0.217053] Call trace:
[    0.217058]  device_release+0x80/0x90
[    0.217067]  kobject_put+0xac/0x100
[    0.217078]  put_device+0x14/0x24
[    0.217086]  genpd_remove+0x16c/0x244
[    0.217093]  pm_genpd_remove+0x2c/0x50
[    0.217099]  bcm2835_power_probe+0x1f8/0x2b8
[    0.217107]  platform_probe+0x68/0xc4
[    0.217118]  really_probe+0x148/0x2b0
[    0.217125]  __driver_probe_device+0x78/0x128
[    0.217131]  driver_probe_device+0x40/0xdc
[    0.217138]  __device_attach_driver+0xb8/0xf8
[    0.217145]  bus_for_each_drv+0x70/0xb8
[    0.217151]  __device_attach+0xa0/0x184
[    0.217158]  device_initial_probe+0x14/0x20
[    0.217165]  bus_probe_device+0xac/0xb0
[    0.217171]  device_add+0x5a8/0x760
[    0.217177]  platform_device_add+0x184/0x240
[    0.217184]  mfd_add_device+0x3e8/0x4c0
[    0.217195]  devm_mfd_add_devices+0xa0/0x118
[    0.217202]  bcm2835_pm_probe+0x144/0x1d8
[    0.217210]  platform_probe+0x68/0xc4
[    0.217217]  really_probe+0x148/0x2b0
[    0.217224]  __driver_probe_device+0x78/0x128
[    0.217230]  driver_probe_device+0x40/0xdc
[    0.217237]  __driver_attach+0x90/0x160
[    0.217243]  bus_for_each_dev+0x64/0xa4
[    0.217249]  driver_attach+0x24/0x30
[    0.217256]  bus_add_driver+0xe4/0x208
[    0.217262]  driver_register+0x5c/0x124
[    0.217269]  __platform_driver_register+0x28/0x34
[    0.217276]  bcm2835_pm_driver_init+0x1c/0x28
[    0.217286]  do_one_initcall+0x6c/0x1fc
[    0.217294]  kernel_init_freeable+0x208/0x2e4
[    0.217306]  kernel_init+0x28/0x1e4
[    0.217313]  ret_from_fork+0x10/0x20
[    0.217320] ---[ end trace 0000000000000000 ]---

This issue was introduced in v6.6.69 with the following backport:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=36a6e8aeae4a41767bb59f56b100c8cc9ffae2cb

The upstream patch has been adapted to v6.6:
https://github.com/torvalds/linux/commit/f64f610ec6ab59dd0391b03842cea3a4cd8ee34f

More info: https://github.com/raspberrypi/linux/issues/6777

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2 days agoQualcommax: IPQ807x: Add support for TP-Link Deco X80-5G
jonathan brophy [Wed, 2 Apr 2025 10:43:43 +0000 (23:43 +1300)]
Qualcommax: IPQ807x: Add support for TP-Link Deco X80-5G

The TP-link Deco X80-5G is a AX WIFI router with a single 1G (LAN) and 1 2.5G (WAN) port with a built in Quectel 5G modem.

Specifications:

Architecture ARMv8-A (aarch64 Cortex A53, 4 cores)
Vendor Qualcomm
Bootloader U-Boot (2016)
System-On-Chip Qualcomm IPQ8074A (Networking Pro 1210 platform)
CPU/Speed 2.2GHZ
Flash-Chip ESMT F59D1G81MB-45TI 1G-bit NAND
Flash MB 128MB (1Gbit)
RAM-chip 2* ESMT M15T4G16256A-DEBG2G 2Gb DDR3L (32bit)
RAM MB 512MB (4Gbit)
WLan System-On-Chip (5g) Qualcomm QCN5054
WLan Front end modules (5g) 8* Qorvo QPF4588
WLAN (5G) A/N/AC/AX
WLAN Antenna (int) 8* (4 shared with 2.5G)
WLan System-On-Chip (2.4G) Qualcomm QCN5024
WLan Front end modules (2.4G) 4* Skyworks SKY85340-11
WLAN (2.4G) B/G/N/AX
WLAN Antenna (int) 4* (shared with 5g)
Eithernet-phy (1Gbit) Qualcomm (Atheros) AR8033-AL1A
Ethernet (1Gbit) 1*
Eithernet-phy (2.5Gbit) Qualcomm QCA8081
Ethernet (2.5Gbit) 1*
Switch Embedded in the SOC?
Serial 1.8v 8n1 (testpoints)
Modem System-On-Chip Qualcomm 5G RG50xQ (Snapdragon X55 platform)
5G modem capability 5000Mbps down 900Mbps up
5G modem bands N1/N3/N5/N7/N8/N20/N28/N38/N40/N41/N77/N78/N79
4G modem capability 4.5G LTE-Advanced Pro (Cat20 down 2Gbps) (Cat18 up 200Mbps)
4G modem FDD bands B1/B3/B5/B7/B8/B18/B19/B20/B26/B28
4G modem TDD bands B34/B38/B39/B40/B41/B42/B43
Modem antenna (int) 8* (5G/4G use)
Modem antenna (ext) 2* SMA connectors (5G/4G use)
SIM type 1* Nano SIM
Telephony 1* POTS RJ11
(see wiki for more info:)
https://openwrt.org/inbox/toh/tp-link/x80-5g_v1

        Notes:
Installation Instructions:

Between antennas 7 and 8 on the PCB with the RGB harness there are three test pads labelled TP1 TP2 and TP3 connections are as follows:
  |TP2|-- RX
  |TP1|-- TX
  |TP3|-- GND

RX requires an external pullup to operate somewhere around 5 K ohm but your luck may vary the Uart is 1.8v

Set a static IP and set up a tftpserver and terminal.
power the router and quickly type the magic string “tpl” and press enter to break into u-boot
in the shell set the environment variables to enable tftp booting
setenv ipaddr (routerIP)
setenv serverip (server IP)
load you initramfs:
tftpboot 0x44000000 (serverIP):openwrt-qualcommax-ipq807x-tplink_x80-5g-initramfs-uImage.itb
boot your initramfs
bootm
upload your factory image to /tmp
format and install the factory image:
ubiformat /dev/mtd12 -y -f /tmp/openwrt-qualcommax-ipq807x-tplink_x80-5g-squashfs-factory.ubi

Note as this device swaps root partitions upon update your boot partition may be set as mtd13

Update script to mount factory tplink partition's for MAC recovery and device data.
Capture Labelmac from Factory_data partition.
Patch LAN from Labelmac.
Patch ART from Labelmac.
Set GPIO to make modem operational from boot.

GPIO fan tables work like the  stock device with three fan maps high active idle with a top fan speed of 6800 RPM.

High temp 70 deg speeds 6-8
Active temp 50 deg speeds 2-5
low temp 25 degree speed 0-1

Signed-off-by: jonathan brophy <professor_jonny@hotmail.com>
Link: https://github.com/openwrt/openwrt/pull/16329
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agoQualcommax: IPQ807x: update preinit factory partition mount script
jonathan brophy [Wed, 2 Apr 2025 10:36:50 +0000 (23:36 +1300)]
Qualcommax: IPQ807x: update preinit factory partition mount script

Patch script used for mounting of factory data partitions to not assume devices names or use hardcoded identifiers.

Signed-off-by: jonathan brophy <professor_jonny@hotmail.com>
Link: https://github.com/openwrt/openwrt/pull/16329
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agotools: xz: update to 5.8.1
Robert Marko [Mon, 21 Apr 2025 11:23:20 +0000 (13:23 +0200)]
tools: xz: update to 5.8.1

5.8.1 (2025-04-03)

    * Multithreaded .xz decoder (lzma_stream_decoder_mt()):

        - Fix a bug that could at least result in a crash with
          invalid input. (CVE-2025-31115)

        - Fix a performance bug: Only one thread was used if the whole
          input file was provided at once to lzma_code(), the output
          buffer was big enough, timeout was disabled, and LZMA_FINISH
          was used. There are no bug reports about this, thus it's
          possible that no real-world application was affected.

    * Avoid <stdalign.h> even with C11/C17 compilers. This fixes the
      build with Oracle Developer Studio 12.6 on Solaris 10 when the
      compiler is in C11 mode (the header doesn't exist).

    * Autotools: Restore compatibility with GNU make versions older
      than 4.0 by creating the package using GNU gettext 0.23.1
      infrastructure instead of 0.24.

    * Update Croatian translation.

Link: https://github.com/openwrt/openwrt/pull/18558
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agorockchip: fix the SD card detection on NanoPi R6C/R6S
Antonio Flores [Mon, 21 Apr 2025 14:14:54 +0000 (10:14 -0400)]
rockchip: fix the SD card detection on NanoPi R6C/R6S

This patch backport a fix for the SD card detection on NanoPi R6c/R6S
from upstream commit https://github.com/torvalds/linux/commit/95147bb42bc163866fc103c957820345fefa96cd

Signed-off-by: Antonio Flores <antflores627@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18553
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agoqualcommax: ipq5018: gl-b3000: fix rootfs_size in bootscript
Scott Mercer [Mon, 21 Apr 2025 17:12:37 +0000 (13:12 -0400)]
qualcommax: ipq5018: gl-b3000: fix rootfs_size in bootscript

rootfs_size was being set after the bootscript was already copied
to KDIR_TMP/ this was sneaky because it only affected the initial
compile. All subsequent compiles the rootfs_size is correct before
the copy is made and the bug goes un discovered. Hence the reason I
missed it during testing.

this patch fixes the issue and also refactors the
make recipe to update rootfs_size after the copy
is made, and updates the copy exclusively.

Fixes: 3307fe8ee4cf ("qualcommax: ipq50xx: add support for GL.iNET GL-B3000")
Signed-off-by: Scott Mercer <TheRootEd24@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18556
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agotools/patch: bump version to v2.8
Russell Senior [Wed, 2 Apr 2025 12:47:29 +0000 (05:47 -0700)]
tools/patch: bump version to v2.8

  drop upstream patches

  $ git log --no-merges --oneline v2.7.6..v2.8
  48ceda8 Version 2.8
  b3d0c93 Regression in commit abe92e8010ab affecting MariaDB tests
  29fced6 Count traditional diff pattern lines correctly
  b5d2124 patch: fix --no-backup-if-mismatch regression
  86ac7e2 Fix dodgy assert with side-effects in insert_cached_dirfd
  7d87652 Declare an expected test failure on Haiku.
  86baf97 build: update gnulib submodule to latest
  1ba2c1b Fix two test failures on Haiku.
  1da6bf8 Check for newlines only when creating a file name
  30ee610 Gnulib renamed some modules
  6dbc381 maint: update bootstrap from gnulib
  05ac924 build: update gnulib submodule to latest
  95e0092 maint: make update-copyright
  5bac274 Set --no-backup-if-mismatch when in --posix mode
  910fecf Add missing feature tests to the test suite
  be8b3c6 Disable release-prep
  c61485b Fix "make release" to handle alpha releases
  499916f Add announce-gen module for "make release"
  adb1ebc Pacify gcc -fsanitize=address
  6bdae94 Fix memory leak when malformed unidiff patch
  72a146c Port to clang address sanitizer
  e2e6820 Refactor argc+argv processing
  606c091 Omit needless get_some_switches code
  ee3cc40 Revert "Remove obsolete require_gnu_diff function"
  8cae4fc Remove obsolete require_gnu_diff function
  164b529 savebuf can return a null pointer
  91c1e4f Spelling fixes
  a03e1ba Port other reject-format test to non-GNU diff
  9ba5eb0 Don’t be fooled by NUL bytes in diff directives
  79dd5e7 Don’t be fooled by "\000" in file name
  8492a6a Port to quasi-GNU diff
  f6f2c6f In previous patch, make w_q static
  0525681 Pacify -Wunterminated-string-initialization
  301411d Spelling fixes
  4615206 Remove double semicolon
  923e0ef Prefer angle bracket headers
  5d17ca0 Update more old copyright notices
  5f4edd3 Simplify memory allocation of files to delete
  802511c Report patch read errors more immediately
  a93b50d Port fflush usage to OpenBSD 7.5
  55e224b Update old copyright notices
  33a7fd8 Fix gl_gcc_warnings typo in ‘configure’
  2313b37 build: update gnulib submodule to latest
  37fec39 Remove some dependencies no longer needed
  cc87173 Update NEWS as per recent changes
  7887622 Update POSIX citations
  18f4dd6 Use “Gruenbacher” in international contexts
  638675c Adjust libs to match recent Gnulib
  53400a1 Pacify clang -Wbitwise-conditional-parentheses
  e8e1bcb Remove “support” for nested critical sections
  b963510 Simplify critical section code in util fns
  85949fb Shrink critical sections
  448ff9b Defer signals by hand with sigatomic_t
  b95a603 output_file_later avoid a malloc+free pair
  2663228 Defend against closed stdin/stdout/stderr
  fc77964 Stop using Gnulib ‘execute’ module
  470699c Move defer_signals up
  f696e4e Make sigs, NUM_SIGS local
  4d3a4ab Rename block_signals
  b3bb925 Trade a bit of space for time in parse_c_string
  070d859 Allocate first patchbuf statically
  f46a90f Use bigger buffer size by default
  2e64cfd Preinitialize fatal_act.sa_hander
  45de0d9 Prefer EXIT_SUCCESS etc. to literal integers
  82c4940 Fix some signal handling races
  eceea61 Fix --set-utc TZ setting
  9c55d3f Improve logic for when rename removes source
  61c72f0 Fix signal race when renaming file
  705c9bc Simplify traverse_another_path via last_component
  77f21a6 Stop using Gnulib dirname module
  fe8ffd9 Fix implausible overflow when reading symlinks
  5e84bda Access checks should use effective, not real
  8d4ca49 Don’t assume AT_FDCWD != -1
  fe5d4a0 Copy input to output attributes via fd if possible
  ca4c431 Simplify timestamp epoch checking
  0ad4347 Check for ftello failures
  c49a16d Remove format_linenum
  22efdee Fix "with multiple words" line number
  5a70a1b Drop Plan B
  c0d465f Prefer ximemdup0 to xmemdup0
  b91aab2 Refactor ifetch API
  55c8a5c Do not attempt huge I/Os
  e0e121e Use outfd when setting file attributes
  241e57e Don’t assume Linux-like S_IFREG
  0f8c628 Use STDOUT_FILENO etc
  f2c3676 Fix unlikely glitch with ed diffs
  cec6407 Use fds to copy attrs in create_backup_copy
  6b7b01b Be more careful about (time_t) -1
  0433553 X == -1 → X < 0
  0a66dee Let set_file_attributes use fds not names
  36ff2c9 Port to narrow unsigned uid_t
  3951496 Check for output errors more systematically
  6429630 Report input error right away
  03cb187 Simplify EOF testing
  cc7cde7 Prefer other types to ‘int’
  4c6650b Detect unlikely integer overflow in size calcs
  abe92e8 Prefer idx_t, ptrdiff_t to lin
  30449e2 Fix compatibility issue with blanks in patches
  9228a8c pch_swap return type cleanup
  c1c438d Fix unlikely int overflow in hunk counts
  5d3f41f Use char for char in plan_a
  fb056f2 Cache cwd_is_root dev, ino
  84b5f34 Avoid ‘unsigned’ in safe.c
  d2e113e Simplify get_sha1
  f73718b Avoid casts in patch.c
  79eef3e Prefer idx_t in util.c
  11588d0 Prefer idx_t in pch.c
  e16037d Prefer idx_t in patch.c
  388926f Prefer idx_t in list.h
  3582fdb Prefer idx_t in inp.c
  4a47c00 build: update gnulib submodule to latest
  4f8c4b8 Don’t limit strip counts etc. to INT_MAX
  0a810b6 Fix unlikely integer overflows in patch.c
  bac3b6d Fix unlikely integer overflows in pch.c
  8fb784b Fix unlikely integer overflows in inp.c
  e10f3ca Promote minmax.h to common.h
  57e2165 Avoid some memory allocation by not using ‘const’
  eb18b39 Remove unnecessary char * casts in inp.c
  d60cb72 Pacify gcc -Wunused-parameter when !USE_XATTR
  05ef886 Pacify gcc -Wunused-parameter when !USE_XATTR
  1f8d192 maint: stop using alloca
  ba92722 Don’t assume O_RDONLY == 0
  0f98e03 Avoid syscall when nested signal block
  1235ccc Add signal comment
  43ee674 build: update gnulib submodule to latest
  e381947 Update NEWS, README-prereq
  2c2a83b Omit _Noreturn when easy
  a13c2ea Replace __attribute__ with attribute.h
  6eb2d13 Switch from ctype.h to c-ctype.h
  d1a6847 Simplify warning configuration
  d6631b3 Prefer ATTRIBUTE_* to _GL_ATTRIBUTE_*
  bc6899d Pacify gcc -Wno-unused-parameter
  da25985 Improve ‘git diff’ output if desired
  248ef13 Prefer strerror to perror
  6cb321a A bit more long-string fixing
  47bc09d Prefer nullptr to NULL
  7608746 More fixing of printing of very long strings
  323da0d Don’t assume string sizes fit in int when printing
  53d1014 Avoid fprintf INT_MAX overflow when merging
  59681c8 Avoid sprintf INT_MAX overflow
  4278b91 Reject output file names containing '\n'
  34b45bc Update man page a bit.
  d18c05d Update copyright notices
  af828e5 Fix some races involving signals
  b3a6c95 Don’t attempt to remove files we didn’t create
  9abc949 Omit goto in try_safe_open
  90e62d5 Pacify clang re obsolete O_CREAT test
  2b87c1e Allow nested block/unblock of signals
  7aa1c3b Adjust to new Gnulib bootstrap post imports
  99c0c0b maint: remove generated file lib/Makefile.am
  1c087d6 Rely on Gnulib inttypes module
  7214f8d Update main locals more consistently
  6785b2c Use struct outfile * in function args
  72d7ed0 Refactor temp names into struct
  abf6fb1 Simplify by using Gnulib sigaction
  d3816ac Avoid unnecessary freeing in output_files
  346d3ac Clean up cleanup
  ff2317b Port better to GNU/Hurd
  c2d9792 Don’t say empty backups are unreadable
  8c27a03 Spelling fixes
  d46d729 Change manywarnings usage to be more like coreutils
  924698b Pacify clang, which dislikes n + "y"
  8939519 Pacify -Wstrict-overflow in pch.c
  531cc2b Pacify -Wsuggest-attribute=format in util.c
  ff13fea Port to non-VLA C compilers
  3d5c0d1 Rename vars to pacify gcc -Wshadow
  56788ce Stop including stdbool.h
  c10da77 Recommend 64-bit time_t on 32-bit platforms
  1e21767 Remove pch_sha1
  39005cf Move skip_spaces
  755712d Remove pch_timestamp function
  04f0eeb Prefer extern inline to static inline for list.h
  f06c123 maint: pacify gcc 14 -Wcast-align
  aab6e7b maint: pacify -Wanalyzer-null-argument
  d1d32c9 maint: work around GCC bug 109839
  7575694 maint: pacify gcc -Wmissing-variable-declarations
  8f78b09 maint: pacify gcc -Winline
  bb841fd maint: port _FORTIFY_SOURCE to Ubuntu
  4887683 maint: assume STDC_HEADERS
  5b8ecde maint: spruce up our .m4 files a bit
  009a424 maint: omit obsolete macro calls
  299167f maint: simplify .gitignore
  3ec44a4 build: update gnulib submodule to latest
  68cb529 build: update gnulib submodule to latest
  f144b35 build: Enable the 'subdir-objects' Automake option.
  faafc79 build: update gnulib submodule to latest
  c835ecc Pass the correct stat to backup files
  24f81be maint: modernize README-{hacking,prereq}
  7623b2d Fix test for presence of BASH_LINENO[0]
  0993940 gnulib: update to latest
  78ed9de Add missing-section tests to context-format test case
  76e7758 Fix failed assertion 'outstate->after_newline'
  15b158d Avoid invalid memory access in context format diffs
  dce4683 Don't follow symlinks unless --follow-symlinks is given
  61d7788 Don't crash when RLIMIT_NOFILE is set to RLIM_INFINITY
  b7b028a Abort when cleaning up fails
  a5b442c Skip "ed" test when the ed utility is not installed
  2b584ae Improve support for memory leak detection
  9c98635 Fix swapping fake lines in pch_swap
  ff81775 Make the (debug & 2) output more useful
  369dccc Don't leak temporary file on failed multi-file ed-style patch
  1959988 Don't leak temporary file on failed ed-style patch
  f322a7e Request 'alloca' module from gnulib.
  458ac51 Fix 'ed-style' test failure.
  1e9104c Fix check of return value of fwrite().
  ae81be0 maint: avoid warnings from GCC8
  2a32bf0 Minor cleanups in do_ed_script
  ff1d3a6 Use gnulib execute module
  3fcd042 Invoke ed directly instead of using the shell
  123eaff Fix arbitrary command execution in ed-style patches (CVE-2018-1000156)
  b5a91a0 Allow input files to be missing for ed-style patches
  f290f48 Fix segfault with mangled rename patch
  074e239 Test suite: fix Korn shell incompatibility
  f6bc5b1 Test suite compatibility fixes
  3bbebbb Avoid set_file_attributes sign conversion warnings

Signed-off-by: Russell Senior <russell@personaltelco.net>
Link: https://github.com/openwrt/openwrt/pull/18479
Signed-off-by: Robert Marko <robimarko@gmail.com>
2 days agomediatek: mt7623: validate uImage.FIT
Daniel Golle [Mon, 21 Apr 2025 18:04:45 +0000 (19:04 +0100)]
mediatek: mt7623: validate uImage.FIT

Validate the uImage.FIT instead of only checking the image magic.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2 days agomediatek: mt7622: validate uImage.FIT
Daniel Golle [Mon, 21 Apr 2025 18:03:58 +0000 (19:03 +0100)]
mediatek: mt7622: validate uImage.FIT

Validate the uImage.FIT instead of only checking the image magic.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 days agotreewide: validate unified uImage.FIT images before flashing
Daniel Golle [Sat, 29 Mar 2025 05:09:09 +0000 (05:09 +0000)]
treewide: validate unified uImage.FIT images before flashing

Prevent flashing truncated or otherwise corrupted uImage.FIT images
by verifying checksums and hashes of all sub-images before flashing
using the newly packaged fit_check_sign tool.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 days agobase-files: allow platform_check_image to prevent --force
Daniel Golle [Sun, 30 Mar 2025 23:32:50 +0000 (00:32 +0100)]
base-files: allow platform_check_image to prevent --force

Introduce special handling for return code 74 (EBADMSG) of
platform_check_image which will mark the image as broken and hence
not allow the user to override the check using the --force option.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 days agomediatek: filogic: add missing boards to platform_check_image
Daniel Golle [Sat, 19 Apr 2025 02:02:12 +0000 (03:02 +0100)]
mediatek: filogic: add missing boards to platform_check_image

Add all boards using uImage.FIT to platform_check_image() case section
making sure we are dealing with a FIT image.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 days agoapk: backport fix for GCC15 with LTO
Robert Marko [Mon, 21 Apr 2025 10:33:56 +0000 (12:33 +0200)]
apk: backport fix for GCC15 with LTO

APK is currently broken when built with GCC15 and LTO as it will then hang
indefinitevely on the package/install step.

Luckily, upstream was able to find the issue and fix it, so lets backport
the fix as GCC15 is the default compiler on Fedora 42(And soon more distros)

Link: https://github.com/openwrt/openwrt/pull/18549
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agorockchip: explicitly specify pine64_rockpro64 supported devices
Sam Hegarty [Sun, 20 Apr 2025 09:16:37 +0000 (21:16 +1200)]
rockchip: explicitly specify pine64_rockpro64 supported devices

The board name that goes into /etc/board.json and is used by sysupgrade
for image verifications gets determined by the below command:

  `strings /proc/device-tree/compatible | head -1`

as per package/base-files/files/lib/preinit/02_sysinfo

On more recent firmware version for the Pine64 RockPro64 v2.1 devices the
first entry is 'pine64,rockpro64-v2.1' however the metadata in the
sysupgrade image only specifies 'pine64,rockpro64' as supported and image
verification will fail.

This change makes it so the image metadata will contain both
'pine64,rockpro64' and 'pine64,rockpro64-v2.1' allowing image verification
to pass on both older and more recent firmware versions.

Signed-off-by: Sam Hegarty <hegarty.sam@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18542
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 days agoarm64: dts: qcom: ipq5018: add #clock-cells to GE Phy
George Moussalem [Sun, 20 Apr 2025 11:22:09 +0000 (15:22 +0400)]
arm64: dts: qcom: ipq5018: add #clock-cells to GE Phy

The IPQ5018 GE Phy driver registers two fixed rate clocks which are
passed on to the GCC which gatekeeps and passes them back to the phy.
Fix 'bad phandle' warning and tell consumer (GCC) how many cells to
expect when compiling.

Warning (clocks_property): /soc@0/clock-controller@1800000: Missing property '#clock-cells' in node /soc@0/mdio@88000/ethernet-phy@7 or bad phandle (referred from clocks[5])

Signed-off-by: George Moussalem <george.moussalem@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/18548
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agoqualcommax: ipq5018: gl-b3000: fix uboot support
Scott Mercer [Mon, 21 Apr 2025 09:38:14 +0000 (05:38 -0400)]
qualcommax: ipq5018: gl-b3000: fix uboot support

The bootscript parameter in gl-qsdk-factory.sh was moved
from arg[4] to arg[2] (1 based index) This patch reflects
these changes

Fixes: 3307fe8ee4cf ("qualcommax: ipq50xx: add support for GL.iNET GL-B3000")
Signed-off-by: Scott Mercer <TheRootEd24@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18547
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 days agoramips: Add support for Xiaomi MiWiFi 3A
Olgun Demir [Sun, 20 Apr 2025 05:04:33 +0000 (07:04 +0200)]
ramips: Add support for Xiaomi MiWiFi 3A

The Xiaomi MiWiFi 3A wireless router has a similar system architecture as the Xiaomi Mi 4A router, which is already officially supported by OpenWrt.

Product website: https://www.mi.com/miwifi3a

Device specification
--------------------
SoC:      MT7628AN MIPS_24KEc @ 580 MHz 2.4G-bgn 2x2
WiFi:     MT7612EN 5G-an, ac 80 MHz 2T2R
Flash:    16 MB
DRAM:     64 MB
Switch:   MT7628AN (integrated in SoC)
Ethernet: 1 x 10 /100 Mbps
USB:      None
Antennas: 2 x 2,4 GHz and 2 x 5 GHz (all are external and non-detachable)
LEDs:     blue/red/amber
Buttons:  Reset
Serial:   115200,8n1

MAC addresses as verified by OEM firmware:
------------------------------------------
use address source
LAN *:DD factory 0x28
WAN *:DD factory 0x28
2g *:DE factory 0x4
5g *:DF factory 0x8004

OEM firmware uses VLAN's to create the network interface for WAN and LAN.

Bootloader info:
----------------
The stock bootloader uses a "Dual ROM Partition System".
OS1 is a deep copy of OS2.
The bootloader starts OS2 by default.
To force start OS1 it is needed to set "flag_try_sys2_failed=1".

How to install:
---------------
1- Use OpenWRTInvasion to gain Telnet, SSH and FTP access: https://github.com/acecilia/OpenWRTInvasion
[IP: 192.168.31.1 | Username: root | Password: root | FTP-Port: 21]
2- Connect to router using telnet or ssh.
3- Backup all partitions. Use command "dd if=/dev/mtd0 of=/tmp/mtd0". Copy /tmp/mtd0 to computer using ftp.
4- Copy openwrt-ramips-mt76x8-xiaomi_miwifi-3a-squashfs-sysupgrade.bin to /tmp in router using ftp.
5- Enable UART access and change start image to OS1.

nvram set uart_en=1
nvram set flag_last_success=1
nvram set boot_wait=on
nvram set flag_try_sys2_failed=1
nvram commit

6- Erase OS1 & OS2 and install OpenWrt

mtd erase OS1
mtd erase OS2
mtd -r write /tmp/openwrt-ramips-mt76x8-xiaomi_miwifi-3a-squashfs-sysupgrade.bin OS1

Credits:
--------
This PR is based on the work of Zehao Zhang (Github: @ZZH-Finalize) that he had published in the PR: #15698

Signed-off-by: Olgun Demir <olgun.demir@mail.com.tr>
Link: https://github.com/openwrt/openwrt/pull/18427
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 days agoutil-linux: add include linux/unistd.h patch
Mieczyslaw Nalewaj [Sat, 19 Apr 2025 21:37:57 +0000 (23:37 +0200)]
util-linux: add include linux/unistd.h patch

If SYS_statmount/SYS_listmount is not provided by the libc,
util-linux will fall back to __NR_statmount/__NR_listmount from the
kernel UAPI headers.
However it is not guaranteed that these symbols are actually visible in
mount-api-utils.

Include linux/unistd.h which provides syscall numbers.
While this header is specific to Linux, the code is already using
linux/mount.h.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18539
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 days agouqmi: update to latest HEAD
David Bauer [Sun, 20 Apr 2025 14:48:51 +0000 (16:48 +0200)]
uqmi: update to latest HEAD

a933061 uqmi nas: fix incorrect parameter order

Signed-off-by: David Bauer <mail@david-bauer.net>
4 days agonetifd dhcp: send DHCP client ID by default
David Bauer [Sat, 19 Apr 2025 12:41:37 +0000 (14:41 +0200)]
netifd dhcp: send DHCP client ID by default

Some ISPs require the client ID to be set in the DHCP and DHCPv6
requests. OpenWrt sets the client id for IPv6 but not for IPv4 by
default.

Align this behavior between DHCPv4 and DHCPv6.

ISPs that require this measure are Deutsche Glasfaser as well as some
Entega connections.

Signed-off-by: David Bauer <mail@david-bauer.net>
4 days agoqualcommax: ipq50xx: add support for GL.iNET GL-B3000
Scott Mercer [Sat, 22 Mar 2025 16:46:18 +0000 (12:46 -0400)]
qualcommax: ipq50xx: add support for GL.iNET GL-B3000
Add support for GL.iNET (AX3000) B3000.

Speficiations:
* SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz)
* Memory: Winbond W634GU6NQB-11 (512 MiB DDR3-933)
* Serial Port: 3v3 TTL 115200n8
* Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax)
* Wi-Fi: QCN6102 (2x2:2 5 Ghz 802.11an/ac/ax)
* Ethernet: IPQ5018 integrated virtual switch connected to an external
            QCA8337 switch (3 Ports 10/100/1000 GBASE-T)
* Flash: Winbond W25N01GWZEIG (128 MiB)
* LEDs: 1x single-color blue LED (GPIO 24 Active High)
        1x single-color white LED (GPIO 23 Active High)
* Buttons: 1x Reset (GPIO 27 Active Low)

Flash Instructions:

*** The .img files are now universal ! ***

Openwrt --> openwrt-qualcommax-ipq50xx-glinet_gl-b3000-squashfs-factory.img

GL.iNet OEM --> openwrt-b3000-4.5.18-0731-1722397535.img

Either file can be flashed, in any of the available upgrade options, in both Firmwares.

Pick a file .. pick a method .. and SEND IT !!

Signed-off-by: Scott Mercer <TheRootEd24@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17903
Signed-off-by: Robert Marko <robimarko@gmail.com>
5 days agostm32: Add kmod-stm32-thermal
Thomas Richard [Wed, 26 Feb 2025 09:46:30 +0000 (10:46 +0100)]
stm32: Add kmod-stm32-thermal

This adds the Thermal framework support for STM32MP157.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agostm32: sort kernel module packages in alphabetical order
Thomas Richard [Wed, 26 Feb 2025 09:33:58 +0000 (10:33 +0100)]
stm32: sort kernel module packages in alphabetical order

In modules.mk, sort packages in alphabetical order.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agostm32: add missing SUBMENU for kmod-phy-stm32-usbphyc and kmod-stm32-timers
Thomas Richard [Tue, 14 Jan 2025 18:51:05 +0000 (19:51 +0100)]
stm32: add missing SUBMENU for kmod-phy-stm32-usbphyc and kmod-stm32-timers

Move kmod-phy-stm32-usbphyc in the "USB Support" menu and kmod-stm32-timers
in "Other modules" menu.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agostm32: add STM32MP157C-DK2 support
Thomas Richard [Wed, 15 Jan 2025 07:28:47 +0000 (08:28 +0100)]
stm32: add STM32MP157C-DK2 support

Add STM32MP157C-DK2 support. This profile also supports the STM32MP157F-DK2
board. The only difference between these two boards is the CPU frequency
(650MHz for 157C and 800MHz for 157F).

A SCMI variant is available. With this variant the reset and clock
resources are provided by OP-TEE and the associated SCMI services.
It is the configuration recommended by STMicroelectronics, with secured
system resources.

The specifications bellow only list supported features.

Specifications
--------------

SOC: STM32MP157C
RAM: 512 MiB
Storage: SD Card
Ethernet: 1x 1 Gbps
Wireless: 2.4GHz Cypress CYW43455 (802.11b/g/n)
LEDs: Heartbeat (Blue)
USB: 4x 2.0 Type-A

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agomurata-nvram: add symlink for STM32MP157C-DK2
Thomas Richard [Tue, 14 Jan 2025 18:58:46 +0000 (19:58 +0100)]
murata-nvram: add symlink for STM32MP157C-DK2

The nvram file is generic for all stm32 boards, add a symlink for
STM32MP157C-DK2 and the SCMI variant.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agoarm-trusted-firmware-stm32: add STM32MP157C-DK2 support
Thomas Richard [Wed, 15 Jan 2025 07:28:07 +0000 (08:28 +0100)]
arm-trusted-firmware-stm32: add STM32MP157C-DK2 support

Add entry for STM32MP157C-DK2 and the SCMI variant.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agouboot-stm32: add STM32MP157C-DK2 support
Thomas Richard [Wed, 15 Jan 2025 07:27:53 +0000 (08:27 +0100)]
uboot-stm32: add STM32MP157C-DK2 support

Add entry for STM32MP157C-DK2 and the SCMI variant.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agooptee-os-stm32: add STM32MP157C-DK2 support
Thomas Richard [Wed, 15 Jan 2025 07:27:44 +0000 (08:27 +0100)]
optee-os-stm32: add STM32MP157C-DK2 support

Add entry for STM32MP157C-DK2 and the SCMI variant.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/18119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 days agogeneric: move TCP fraglist GRO patch to separate file in pending
Mieczyslaw Nalewaj [Fri, 18 Apr 2025 10:24:54 +0000 (12:24 +0200)]
generic: move TCP fraglist GRO patch to separate file in pending

Patch 87cb0446b7da also applies to higher kernel versions.
To apply to them it has been moved to a separate file in pending.

Fixes: 87cb0446b7da ("generic: fix broken TCP fraglist GRO patch")
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/18511
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
5 days agogeneric: fix PATH_MAX macro redefined in exec-cmd.c on macOS 15.4
Georgi Valkov [Fri, 18 Apr 2025 13:37:33 +0000 (16:37 +0300)]
generic: fix PATH_MAX macro redefined in exec-cmd.c on macOS 15.4

Fix an error while building target/linux x64 on macOS 15.4 host,
due to the PATH_MAX macro being redefined:

mkdir -p /Volumes/test/openwrt/build_dir/target-x86_64_musl/linux-x86_64/linux-6.6.86/tools/objtool && make O=/Volumes/test/openwrt/build_dir/target-x86_64_musl/linux-x86_64/linux-6.6.86 subdir=tools/objtool --no-print-directory -C objtool
exec-cmd.c:15:9: error: 'PATH_MAX' macro redefined [-Werror,-Wmacro-redefined]
   15 | #define PATH_MAX        4096
      |         ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/syslimits.h:103:9: note: previous definition is here
  103 | #define PATH_MAX                 1024   /* max bytes in pathname */
      |         ^

exec-cmd.c is compiled as part of objtool to run on the host, and
therefore host headers are used, where PATH_MAX is already defined.
Using an old OpenWRT snapshot from 2025-02-16, where linux-6.6.77
used to build correctly, does not help. Reverting from Xcode 16.3 to
16.2 does not help either.

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18530
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agomac80211: ath12k: fix regdb parsing for 6GHz
Mantas Pucka [Wed, 16 Apr 2025 13:47:30 +0000 (16:47 +0300)]
mac80211: ath12k: fix regdb parsing for 6GHz

Add backport patch that fixes ath12k regdomain parsing failure in
6GHz band triggered by the latest regdb/board-2.bin update.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
Link: https://github.com/openwrt/openwrt/pull/18512
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agomac80211: refresh patches
Mantas Pucka [Wed, 16 Apr 2025 14:05:23 +0000 (17:05 +0300)]
mac80211: refresh patches

Previous commits missed some refreshing

Signed-off-by: Mantas Pucka <mantas@8devices.com>
Link: https://github.com/openwrt/openwrt/pull/18512
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agojsonfilter: update to Git HEAD (2025-04-18)
Robert Marko [Fri, 18 Apr 2025 10:40:50 +0000 (12:40 +0200)]
jsonfilter: update to Git HEAD (2025-04-18)

8a86fb78235b build: set GNU17 for lemon compilation

Link: https://github.com/openwrt/openwrt/pull/18525
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agoutil-linux: update to v2.41
Thomas Weißschuh [Mon, 14 Apr 2025 21:39:43 +0000 (23:39 +0200)]
util-linux: update to v2.41

Release Notes:
https://www.kernel.org/pub/linux/utils/util-linux/v2.41/v2.41-ReleaseNotes

New:
0001-meson-add-feature-for-translated-documentation.patch
0001-meson-remove-tinfo-dependency-from-more.patch

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/18493
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agotools: util-linux: update to v2.41
Thomas Weißschuh [Mon, 14 Apr 2025 20:34:53 +0000 (22:34 +0200)]
tools: util-linux: update to v2.41

Release Notes:
https://www.kernel.org/pub/linux/utils/util-linux/v2.41/v2.41-ReleaseNotes

Remove upstreamed:
0001-hexdump-allow-enabling-with-disable-all-programs.patch
110-pkgconfig-static.patch

Refresh:
101-macos-weak-aliases.patch

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/18493
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agomediatek: filogic: add support for WAVLINK WL-WN573HX3
Sebastian Schaper [Sat, 2 Nov 2024 18:28:18 +0000 (19:28 +0100)]
mediatek: filogic: add support for WAVLINK WL-WN573HX3

The WL-WN573HX3 is an AX3000 outdoor Access Point by WAVLINK,
also sold in Europe as 7Links WLR-1300 (ZX-5612).

Specifications:

- MT7981B + MT7976 AX3000 2x2 DBDC (160 MHz)
- 16 MiB SPI NOR, 256 MiB RAM
- Gigabit ethernet port, 802.3af PoE
- IP67 outdoor case for wall or pole mounting with
    four single band RP-SMA fiberglass antennas (8 dBi)

Installation:

- OEM Web UI is at 192.168.30.1 which will forward to
    http://netlogin.link (using a captive portal)
- login with default password `admin`
- skip setup wizard by navigating directly to
    http://netlogin.link/html/meshUpgrade.html
- upload WN573HX3-sysupgrade.bin
- reset to factory defaults to discard OEM UCI settings

MAC address assignment:

LAN         80:xx:xx:76:xx:25  hw 0x44e
WLAN 2.4G   80:xx:xx:76:xx:27  factory 0x04 (label MAC)
WLAN 5G     82:xx:xx:46:xx:27
pair key    8a:xx:xx:76:xx:27  also on label, not used by OpenWrt

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
6 days agoramips: mt76x8: add support for Teltonika RUT200
Simonas Tamošaitis [Mon, 31 Mar 2025 15:30:07 +0000 (18:30 +0300)]
ramips: mt76x8: add support for Teltonika RUT200

Specification:
SoC: MediaTek MT7628AN
RAM: 128 MB EtronTech EM68C16CWQG-25IH
Flash: 16MB Winbond W25Q128 SPI
Switch: MediaTek MT7628AN, 2 ports 100 Mbps
WiFi: MediaTek MT7628AN 2.4 GHz 802.11n
Modem: Quectel EC200A 4G, cat 4
GPIO:
  - 1 button (Reset)
  - 8 LEDs (2G, 3G, 4G, RSSI 1,2,3,4,5)
  - 2 Modem control (power button, reset)
  - 1 Digital input
  - 1 Digital output

Flashing via OEM WebUI:
1. Download the firmware image *-squashfs-factory.bin
2. Upload firmware image via OEM WebUI firmware update, do not keep settings

To revert back to OEM firmware:
https://wiki.teltonika-networks.com/view/Bootloader_menu

To enable mobile data connection send command to modem:
  echo -ne 'AT+QNETDEVCTL=3,1\r\n' > /dev/ttyUSB2

Create DHCP interface with usb0 device.

Signed-off-by: Simonas Tamošaitis <simsasss@gmail.com>
6 days agoramips: mt76x8: add support for Teltonika RUT241
Simonas Tamošaitis [Fri, 14 Mar 2025 13:42:07 +0000 (15:42 +0200)]
ramips: mt76x8: add support for Teltonika RUT241

Specification:
SoC: MediaTek MT7628AN
RAM: 128 MB EtronTech EM68C16CWQG-25IH
Flash: 16MB Winbond W25Q128 SPI
Switch: MediaTek MT7628AN, 2 ports 100 Mbps
WiFi: MediaTek MT7628AN 2.4 GHz 802.11n
Modem: MeigLink SLM750 4G, cat 4
GPIO:
 - 1 button (Reset)
 - 8 LEDs (2G, 3G, 4G, RSSI 1,2,3,4,5)
 - 2 Modem control (power button, reset)
 - 1 Digital input
 - 1 Digital output

Flashing via OEM WebUI:
1. Download the firmware image *-squashfs-factory.bin
2. Upload firmware image via OEM WebUI firmware update, do not keep settings

To revert back to OEM firmware:
https://wiki.teltonika-networks.com/view/Bootloader_menu

Signed-off-by: Simonas Tamošaitis <simsasss@gmail.com>
6 days agobuild: include size-limits to device-metadata
David Bauer [Mon, 11 Dec 2023 13:46:12 +0000 (14:46 +0100)]
build: include size-limits to device-metadata

Include the image and kernel size limitations defined for each device to
the device metadata JSON.

These informations are only added if defined.

Signed-off-by: David Bauer <mail@david-bauer.net>
6 days agoramips: add support for Mofi 5500
Rick Mac Gillis [Thu, 20 Mar 2025 02:38:09 +0000 (19:38 -0700)]
ramips: add support for Mofi 5500

Specifications:

SoC: Mediatek MT7621AT (880 MHz MIPS dual-core, quad-thread, CPU)
512 Megabyte DDR3 SDRAM
32 Megabyte NOR Flash
4 Gigabit RJ45 PoE ports
2 MT7615N wifi chips (2.4GHz and 5GHz)
2 USB ports (1xUSB2 and 1xUSB3 - GL3510 chip)
RJ45 RS232 port on front panel (Max3232 chip)
2x mPCIe 2.0 slots for 4G/5G cards
2x SIM slot
1x SDCard Slot
Power via DC12V
4x Cell Antennae
4x Wifi Antennae

MAC Address Locations:
Purpose Ex. Partition Offset
2.4 Ghz *:01 factory 0x4
5 GHz *:02 factory 0x8004
LAN *:03 factory 0xe000
WAN *:04 factory 0xe006

MAC address prefix E4:3A:65 is registered to MofiNetwork Inc
and used as the prefix for all MAC addresses.

Manual: https://mofinetwork.com/files/MoFi_Network_MOFI5500_5GXeLTE_EM7690_SPECS.pdf
WiFi chip specs: https://www.mediatek.com/products/broadband-wifi/mt7615
CPU chip specs: https://www.mediatek.com/products/home-networking/mt7621
Teardown Pictures: https://fccid.io/2AE6X-MOFI5500/Internal-Photos/Internal-Photos-5591739

Installation:

Update Mofi 5500 to at least stock firmware version 4.8.6. (Available on the Mofi website.)
Previous versions are untested in the upgrade process. Log into the LuCI web interface,
usually at 192.168.10.1 and visit the 'System->Backup/Flash Firmware' page.
Upload and flash the firmware as usual.

Note to Maintainers: Do not remove SUPPORTED_DEVICES from the Makefile!
The customized Mofi version of OpenWRT (stock firmware) expects to see mofi5500 as the device
name. The stock firmware does not allow for forcing an installation.
Without this line, users cannot upload the new firmware through the stock Mofi firmware.

This device uses cell modems that could use QMI or MBIM.
Add LuCI Modem Manager to allow people to use these. Also, if they have
two cell network cards, ethernet, USB, or other kinds of networks, they may wish
to use MWAN3 to allow failover amongst their networks.

Please compile it with mwan3 for multiple WAN connections.

Co-authored-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: Rick Mac Gillis <noreply@rickmacgillis.com>
6 days agouboot-tools: remove uneeded syncconfig
Robert Marko [Thu, 17 Apr 2025 11:20:06 +0000 (13:20 +0200)]
uboot-tools: remove uneeded syncconfig

During envtools conversion to the generic uboot-tools package, a syncconfig
call was added to the configure step which was previously not there.

We received multiple spourious reports that now envtools were failing to
build [1], but it was not reproducible.

However, it seems that this could easily be reproduced on MacOS 15 and
somehow that syncconfig call is breaking build by Makefile.autoconf not
being executed and thus no "include/config.h" is generated.

So, since this call was not previously there and U-Boot will actually do
syncconfig on its own when needed lets drop it.

[1] https://github.com/openwrt/openwrt/commit/293d5f1366e099cc343a3fc8a6f936ab27bcad6a#commitcomment-154347516

Link: https://github.com/openwrt/openwrt/pull/18515
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agouboot-tools: Honor the global verbose flag
Robert Marko [Thu, 17 Apr 2025 11:12:17 +0000 (13:12 +0200)]
uboot-tools: Honor the global verbose flag

Look for OPENWRT_VERBOSE and pass it down to the U-Boot so we actually
get verbose build info when needed for debugging.

Link: https://github.com/openwrt/openwrt/pull/18515
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agogdb: update to 16.2
Robert Marko [Wed, 16 Apr 2025 13:37:59 +0000 (15:37 +0200)]
gdb: update to 16.2

See news file for changes:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-16.2-release

It fixes compilation with GCC15.

Link: https://github.com/openwrt/openwrt/pull/18519
Signed-off-by: Robert Marko <robimarko@gmail.com>
6 days agocomgt-ncm: fix modem manufacturer detection
Jakub Łabuz [Fri, 11 Apr 2025 16:33:49 +0000 (18:33 +0200)]
comgt-ncm: fix modem manufacturer detection

Fix an issue where NCM interface initialization fails because of wrong
modem manufacturer detection.

gcom call returns an output with Windows-style line breaks (containing \r)
what makes awk call return empty or malformed manufacturer name. Changing
awk RS variable to handle both \n and \r\n as line break fixes this issue.

Fixes #17448 and #17998 GitHub issues.

Signed-off-by: Jakub Łabuz <jakub@labuz.dev>
Link: https://github.com/openwrt/openwrt/pull/18460
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agouboot-ath79: update to v2025.04
INAGAKI Hiroshi [Thu, 9 Jan 2025 13:36:36 +0000 (22:36 +0900)]
uboot-ath79: update to v2025.04

Update uboot-ath79 package to v2025.04 for ath79 devices.

Additionally, new "CONFIG_NO_NET" option was introduced and replaced
disabled CONFIG_NET option ("# CONFIG_NET is not set"). So replace
that old options in the NEC Aterm devices as well.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18475
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agotools: gmp: fix compilation with GCC15
Robert Marko [Wed, 16 Apr 2025 12:04:26 +0000 (14:04 +0200)]
tools: gmp: fix compilation with GCC15

Fedora 42 updated to GCC15 which now defaults to GNU23 as the default
instead of GNU17[1], and this breaks GMP compilation by failing to find
a working compiler test.

Its been fixed upstream [2][3], so backport the fix to fix GCC15 compilation.

[1] https://gcc.gnu.org/gcc-15/porting_to.html#c23
[2] https://gmplib.org/repo/gmp/rev/8e7bb4ae7a18
[3] https://gmplib.org/repo/gmp/rev/d66d66d82dbb

Link: https://github.com/openwrt/openwrt/pull/18506
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agotools: elfutils: set -std=gnu17
Robert Marko [Wed, 16 Apr 2025 11:59:14 +0000 (13:59 +0200)]
tools: elfutils: set -std=gnu17

Fedora 42 updated to GCC15 which now defaults to GNU23 as the default
instead of GNU17[1], and this breaks m4 compilation.

This looks like a gnulib issue, so until that is updated/fixed
lets simply set C language version back to GNU17.

[1] https://gcc.gnu.org/gcc-15/porting_to.html#c23

Link: https://github.com/openwrt/openwrt/pull/18506
Signed-off-by: Robert Marko <robimarko@gmail.com>
7 days agotools: cpio: fix compilation with GCC15
Robert Marko [Wed, 16 Apr 2025 11:56:22 +0000 (13:56 +0200)]
tools: cpio: fix compilation with GCC15

Fedora 42 updated to GCC15 which now defaults to GNU23 as the default
instead of GNU17[1], and this breaks cpio compilation.

Its been reported upstream [2], so import the patch attached to the bug
report that fixes compilation with GCC15.

[1] https://gcc.gnu.org/gcc-15/porting_to.html#c23
[2] https://savannah.gnu.org/bugs/?66297

Link: https://github.com/openwrt/openwrt/pull/18506
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 days agotoolchain: gcc: fix build error with Xcode 16.3
Georgi Valkov [Mon, 14 Apr 2025 13:07:25 +0000 (16:07 +0300)]
toolchain: gcc: fix build error with Xcode 16.3

Xcode 16.3 defines TARGET_OS_MAC, it was not defined in prior versions.
zutil.h conditionally defines fdopen as NULL when this macro is defined,
resulting in the following build error:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdio.h:318:7: e>
  318 | FILE    *fdopen(int, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(fdopen));
      |          ^
./zutil.h:147:33: note: expanded from macro 'fdopen'
  147 | #        define fdopen(fd,mode) NULL /* No fdopen() */

In Xcode 16.2 and earlier, TARGET_OS_MAC was not defined so this entire
block was ignored, gcc and gdb used to compile and work fine.

This may have been used for compatibility with older versions of macOS,
but is no longer needed. By pure luck, the build worked fine for a long
time, because it did not properly detect macOS.
Fixed by removing the check for TARGET_OS_MAC.

Note that since Xcode 16.3, an entire set of TARGET_OS macros
are now defined, most of which are set to 0:
TARGET_OS_LINUX 0
TARGET_OS_MAC 1
TARGET_OS_OSX 1

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18467
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 days agotoolchain: gdb: fix build error with Xcode 16.3
Georgi Valkov [Mon, 14 Apr 2025 12:28:23 +0000 (15:28 +0300)]
toolchain: gdb: fix build error with Xcode 16.3

Xcode 16.3 defines TARGET_OS_MAC, it was not defined in prior versions.
zutil.h conditionally defines fdopen as NULL when this macro is defined,
resulting in the following build error:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdio.h:318:7: error: expected identifier or '('
  318 | FILE    *fdopen(int, const char *) __DARWIN_ALIAS_STARTING(__MAC_10_6, __IPHONE_2_0, __DARWIN_ALIAS(fdopen));
      |          ^
./zutil.h:147:33: note: expanded from macro 'fdopen'
  147 | #        define fdopen(fd,mode) NULL /* No fdopen() */

In Xcode 16.2 and earlier, TARGET_OS_MAC was not defined so this entire
block was ignored, gcc and gdb used to compile and work fine.

This may have been used for compatibility with older versions of macOS,
but is no longer needed. By pure luck, the build worked fine for a long
time, because it did not properly detect macOS.
Fixed by removing the check for TARGET_OS_MAC.

Note that since Xcode 16.3, an entire set of TARGET_OS macros
are now defined, most of which are set to 0:
TARGET_OS_LINUX 0
TARGET_OS_MAC 1
TARGET_OS_OSX 1

Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18467
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 days agotools: m4: set -std=gnu17
Robert Marko [Wed, 16 Apr 2025 09:42:54 +0000 (11:42 +0200)]
tools: m4: set -std=gnu17

Fedora 42 updated to GCC15 which now defaults to GNU23 as the default
instead of GNU17[1], and this breaks m4 compilation.

Its been reported upstream [2], so until its fixed lets simply set C
language version back to GNU17.

[1] https://gcc.gnu.org/gcc-15/porting_to.html#c23
[2] https://savannah.gnu.org/support/?111150

Link: https://github.com/openwrt/openwrt/pull/18505
Signed-off-by: Robert Marko <robimarko@gmail.com>
8 days agogeneric: fix broken ARM gc sections patch
Christian Marangi [Tue, 15 Apr 2025 21:21:19 +0000 (23:21 +0200)]
generic: fix broken ARM gc sections patch

Upstream version of ARM gc sections skip eeping some section. It was
reported some kernel load hang hence restore what we original did and
introduce a new patch that add the additional entry on top of the
upstream version.

Fixes: #18500
Fixes: 7843f21c5120 ("generic: replace ARM gc sections patch with upstream version")
Tested-by: Stefan Kalscheuer <stefan@stklcode.de> (Turris Omnia)
Link: https://github.com/openwrt/openwrt/pull/18503
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
8 days agogeneric: fix broken TCP fraglist GRO patch
Christian Marangi [Tue, 15 Apr 2025 18:04:35 +0000 (20:04 +0200)]
generic: fix broken TCP fraglist GRO patch

Some regression were reported with the backported upstream version. Old
kernel require an additional flush in some case and this was handled in
the old downstream patch.

Reintroduce the flush to fix the regression and refresh affected patch.

Fixes: f63d64ede06b ("generic: move patch from pending to backport")
Link: https://github.com/openwrt/openwrt/pull/18501
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
8 days agogeneric: drop redundant ATS SFP GT-T quirk patch
Christian Marangi [Mon, 14 Apr 2025 13:30:05 +0000 (15:30 +0200)]
generic: drop redundant ATS SFP GT-T quirk patch

The ATS SFP GT-T quirk patch was backported to stable kernel 6.6 but
was not notice while bumping the kernel version as they listed the quirk
at the bottom of the SFP quirk table while our hack patch put it at the
top.

With migrating to the upstream version, the duplication was made more
apparent.

Drop the double entry for the SFP module as it's already there and not
needed and refresh patches.

Link: https://github.com/openwrt/openwrt/pull/18484
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
9 days agoipq-wifi: update to Git HEAD (2025-04-15)
Robert Marko [Tue, 15 Apr 2025 11:50:12 +0000 (13:50 +0200)]
ipq-wifi: update to Git HEAD (2025-04-15)

953ce37a3191 ipq40xx: Add TP-Link Deco M5 BDF
f818835c7633 ipq5018: add BDF for GL.iNET GL-B3000 Add IPQ5018 BDF for GL.iNET GL-B3000.
38a18dc26c9b qcn6122: add BDF for GL.iNET GL-B3000 Add QCN6122 BDF for GL.iNET GL-B3000.

Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agokernel: add missing submenu for diag modules
Chukun Pan [Tue, 4 Mar 2025 15:18:38 +0000 (23:18 +0800)]
kernel: add missing submenu for diag modules

The submenu of two diag modules is missing, fix it.

Fixes: 65de1e0 ("kernel: add missing symbols for lxc")
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/18480
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 days agoarmsr: drop GC sections ARMv7 patch
Christian Marangi [Sat, 12 Apr 2025 08:52:04 +0000 (10:52 +0200)]
armsr: drop GC sections ARMv7 patch

Drop GC sections ARMv7 patch as the new upstream version already handle
it by disabling the config in the specific EFI boot stub driver.

Link: https://github.com/openwrt/openwrt/pull/18464
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 days agogeneric: replace ARM gc sections patch with upstream version
Christian Marangi [Fri, 11 Apr 2025 23:01:43 +0000 (01:01 +0200)]
generic: replace ARM gc sections patch with upstream version

Replace ARM gc sections patch with upstream version. It seems this
feature is finally supported upstream with some minor difference.

In theory the upstream version should cut even more stuff, this really
needs to be evaluated if it's OK also to handle regression with the
kernel 6.12 update.

Link: https://github.com/openwrt/openwrt/pull/18464
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 days agogeneric: replace SFP ignore TX FAULT with upstream version
Christian Marangi [Fri, 11 Apr 2025 22:58:19 +0000 (00:58 +0200)]
generic: replace SFP ignore TX FAULT with upstream version

Replace SFP ignore TX FAULT with upstream version by backporting the 2
related upstream patch. Refresh SFP affected patch.

Link: https://github.com/openwrt/openwrt/pull/18464
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 days agogeneric: move patch from pending to backport
Christian Marangi [Fri, 11 Apr 2025 22:31:58 +0000 (00:31 +0200)]
generic: move patch from pending to backport

Move all patch that got merged upstream from pending to backport and add
related tag. This is to make it easier to update to kernel 6.12.

Patch 680 required some special care as the upstream version had to be
split in a series of 6 patch.

Referesh all affected patch.

Link: https://github.com/openwrt/openwrt/pull/18464
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 days agodnsmasq: bump release to 2.91
Rudy Andram [Thu, 27 Mar 2025 10:55:59 +0000 (10:55 +0000)]
dnsmasq: bump release to 2.91

updated 200-ubus_dns.patch
all remaining patches not required

Changelog for version 2.91 - https://thekelleys.org.uk/dnsmasq/CHANGELOG

version 2.91
Fix spurious "resource limit exceeded messages". Thanks to
Dominik Derigs for the bug report.

Fix out-of-bounds heap read in order_qsort().
We only need to order two server records on the ->serial field.
Literal address records are smaller and don't have
this field and don't need to be ordered on it.
To actually provoke this bug seems to need the same server-literal
to be repeated twice, e.g., --address=/a/1.1.1.1 --address-/a/1.1.1.1
which is clearly rare in the wild, but if it did exist it could
provoke a SIGSEGV. Thanks to Daniel Rhea for fuzzing this one.

Fix buffer overflow when configured lease-change script name
is too long.
Thanks to Daniel Rhea for finding this one.

Improve behaviour in the face of non-responsive upstream TCP DNS
servers. Without shorter timeouts, clients are blocked for too long
and fail with their own timeouts.

Set --fast-dns-retries by default when doing DNSSEC. A single
downstream query can trigger many upstream queries. On an
unreliable network, there may not be enough downstream retries
to ensure that all these queries complete.

Improve behaviour in the face of truncated answers to queries
for DNSSEC records. Getting these answers by TCP doesn't now
involve a faked truncated answer to the downstream client to
force it to move to TCP. This improves performance and robustness
in the face of broken clients which can't fall back to TCP.

No longer remove data from truncated upstream answers. If an
upstream replies with a truncated answer, but the answer has some
RRs included, return those RRs, rather than returning and
empty answer.

Fix handling of EDNS0 UDP packet sizes.
When talking upstream we always add a pseudo header, and set the
        UDP packet size to --edns-packet-max. Answering queries from
downstream, we get the answer (either from upstream or local
data) If local data won't fit the advertised size (or 512 if
there's not an EDNS0 header) return truncated. If upstream
        returns truncated, do likewise. If upstream is OK, but the
answer is too big for downstream, truncate the answer.

Modify the behaviour of --synth-domain for IPv6.
When deriving a domain name from an IPv6 address, an address
such as 1234:: would become 1234--.example.com, which is
not legal in IDNA2008. Stop using the :: compression method,
so 1234:: becomes
1234-0000-0000-0000-0000-0000-0000-0000.example.com

Fix broken dhcp-relay on *BSD. Thanks to Harold for finding
this problem.

Add --dhcp-option-pxe config. This acts almost exactly like
--dhcp-option except that the defined option is only sent when
replying to PXE clients. More importantly, these options are sent
in reply PXE clients when dnsmasq in acting in PXE proxy mode. In
PXE proxy mode, the set of options sent is defined by the PXE standard
and the normal set of options is not sent. This config allows arbitrary
options in PXE-proxy replies. A typical use-case is to send option
175 to iPXE. Thanks to Jason Berry for finding the requirement for
this.

Support PXE proxy-DHCP and DHCP-relay at the same time.
        When using PXE proxy-DHCP, dnsmasq supplies PXE information to
        the client, which also talks to another "normal" DHCP server
        for address allocation and similar. The normal DHCP server may
        be on the local network, but it may also be remote, and accessed via
        a DHCP relay. This change allows dnsmasq to act as both a
        PXE proxy-DHCP server AND a DHCP relay for the same network.

Fix erroneous "DNSSEC validated" state with non-DNSSEC
upstream servers.  Thanks to Dominik Derigs for the bug report.

Handle queries with EDNS client subnet fields better. If dnsmasq
is configured to add an EDNS client subnet to a query, it is careful
to suppress use of the cache, since a cached answer may not be valid
for a query with a different client subnet. Extend this behaviour
to queries which arrive a dnsmasq already carrying an EDNS client
subnet.

Handle DS queries to auth zones. When dnsmasq is configured to
act as an authoritative server and has an authoritative zone
configured, and receives a query for that zone _as_forwarder_
it answers the query directly rather than forwarding it. This
doesn't affect the answer, but it saves dnsmasq forwarding the
query to the recursor upstream, which then bounces it back to dnsmasq
in auth mode. The exception should be when the query is for the root
of zone, for a DS RR. The answer to that has to come from the parent,
via the recursor, and will typically be a proof-of-non-existence
since dnsmasq doesn't support signed zones. This patch suppresses
local answers and forces forwarding to the upstream recursor for such
queries. It stops breakage when a DNSSEC validating client makes
queries to dnsmasq acting as forwarder for a zone for which it is
authoritative.

Implement "DNS-0x20 encoding", for extra protection against
reply-spoof attacks. Since DNS queries are case-insensitive,
it's possible to randomly flip the case of letters in a query
and still get the correct answer back.
This adds an extra dimension for a cache-poisoning attacker
to guess when sending replies in-the-blind since it's expected
that the legitimate answer will have the same  pattern of upper
and lower case as the query, so any replies which don't can be
ignored as malicious. The amount of extra entropy clearly depends
on the number of a-z and A-Z characters in the query, and this
implementation puts a hard limit of 32 bits to make resource
allocation easy. This about doubles entropy over the standard
random ID and random port combination. This technique can interact
badly with rare broken DNS servers which don't preserve the case
of the query in their reply. The first time a reply is returned
which matches the query in all respects except case, a warning
will be logged. In this release, 0x020-encoding is default-off
and must be explicitly enabled with --do-0x20-encoding. In future
releases it may default on. You can avoid a future release
changing the behaviour of an installation with --no-x20-encode.

Fix a long-standing problem when two queries which are identical
in every repect _except_ case, get combined by dnsmasq. If
dnsmasq gets eg, two queries for example.com and Example.com
in quick succession it will get the answer for example.com from
upstream and send that answer to both requestors. This means that
the query for Example.com will get an answer for example.com, and
in the modern DNS, that answer may not be accepted.

Signed-off-by: Rudy Andram <rmandrad@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18357
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agoca-certificates: Update to 20241223
Hannu Nyman [Sat, 12 Apr 2025 16:47:28 +0000 (19:47 +0300)]
ca-certificates: Update to 20241223

Update ca-certificates to version 20241223

  * Update Mozilla certificate authority bundle to version 2.70.
    The following certificate authorities were added (+):
    + Telekom Security TLS ECC Root 2020
    + Telekom Security TLS RSA Root 2023
    + FIRMAPROFESIONAL CA ROOT-A WEB
    + TWCA CYBER Root CA
    + SecureSign Root CA12
    + SecureSign Root CA14
    + SecureSign Root CA15
    The following certificate authorities were removed (-):
    - Security Communication Root CA (closes: #1063093)

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/18468
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agoath79: fix initramfs execution for NEC Aterm devices
INAGAKI Hiroshi [Sun, 13 Apr 2025 10:41:19 +0000 (19:41 +0900)]
ath79: fix initramfs execution for NEC Aterm devices

Fix execution of initramfs image on NEC Aterm devices by increasing
available memory for lzma extraction of lzma-loader.

The size of initramfs image of v24.10.0 exceeds available memory
(LZMA_TEXT_START - LOADADDR) and loader data running at LZMA_TEXT_START
will be overwritten by extracted data. As a result, LZMA extraction will
be broken and stuck (or unexpectedly reset).
Fix that issue by setting higher LZMA_TEXT_START address to increase
available memory for LZMA extraction by lzma-loader.

log (v24.10.0):

boot> tftpd
tftpd start 192.168.0.1
boot> start tftp load openwrt-24.10.0-ath79-generic-ne
end tftp load length = 6569768
start memory load ...
memory load complete
  begin  : 0x80040000
  length : 6567044
  startup: 0x80040000

boot> boot
begin  : 0x80040000
length : 6567044
startup: 0x80040000
option: 0x0
NEC Aterm series (QCA9558)

Calibrating SGMII
SGMII cal value = 0xe

Configuring SGMII force mode
  SGMII_CONFIG : 0x000000a2
  MR_AN_CONTROL: 0x00008140
  MR_AN_CONTROL: 0x00000140

OpenWrt kernel loader for AR7XXX/AR9XXX
Copyright (C) 2011 Gabor Juhos <juhosg@openwrt.org>
Decompressing kernel... [:<syntax:value>]');retu  <--- (stuck)
IPL:SOFT-RESET                    <--- (reset by WDT)
memory test ... ok
flinstall OK

boot version: 1.0.0
...

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18476
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agoinclude: move generic riscv64 ISA to rv64gc
Zoltan HERPAI [Mon, 24 Feb 2025 12:18:01 +0000 (12:18 +0000)]
include: move generic riscv64 ISA to rv64gc

The current CFLAGS (rv64imafdc) for the riscv64 targets do not contain
the full generic compute extension (g), as that also includes the
zicsr and zifencei extensions/instructions. Rename the default ISA to
'generic' to add distinction to the current binaries (although it's very
minimal), and use rv64gc for CFLAGS.

This is also a prep step for the upcoming gcv (vector-extension supporting)
targets like the Spacemit K1, and the thead-cores like the TH1520.

Compile-tested: all riscv64 targets
Runtime-tested:
 - SiFive Unleashed (FU540)
 - SiFive Unmatched (FU740)
 - Nezha D1 (D1)
 - VisionFive2 (JH7110)

Link: https://github.com/openwrt/openwrt/pull/18094
Tested-by: Chuanhong Guo <gch981213@gmail.com> # siflower target
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 days agolayerscape: armv7: drop skipped packages
Robert Marko [Fri, 11 Apr 2025 22:07:16 +0000 (00:07 +0200)]
layerscape: armv7: drop skipped packages

Now that all packages that relied on the skip mechanism are selected
via BUILD_DEVICES or by defaulting for the subtarget drop them from
individual DEVICE_PACKAGES so that Image Builder works again for armv7.

Fixes: #18411
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agols-rcw: select by default for layerscape/armv7
Robert Marko [Fri, 11 Apr 2025 22:06:02 +0000 (00:06 +0200)]
ls-rcw: select by default for layerscape/armv7

Currently, ls-rcw package is being included in the individual
profile DEVICE_PACKAGES but using the feature that allows skipping their
inclusion in the end image package list if prefixed with a tilde(~) which
was added in:
377b66990b97 ("build: introduce support to declare skip package")

But it not added to Image Builder so currently trying to build layerscape
device images in Image Builder will fail with:
ERROR: '~ls-rcw' is not a valid world dependency, format is name(@tag)([<>~=]version)

So, instead of having to rely on support for skipping package installation
and declaring the ls-rcw package in DEVICE_PACKAGES lets select it when
layerscape/armv7 target is selected.

Fixes: #18411
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agolayerscape: armv8_64b: drop skipped packages
Robert Marko [Fri, 11 Apr 2025 19:06:18 +0000 (21:06 +0200)]
layerscape: armv8_64b: drop skipped packages

Now that all packages that relied on the skip mechanism are selected
via BUILD_DEVICES or by defaulting for the subtarget drop them from
individual DEVICE_PACKAGES so that Image Builder works again for armv8_64b.

Fixes: #18412
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agols-ddr-phy: select by default for layerscape/armv8_64b
Robert Marko [Fri, 11 Apr 2025 21:33:57 +0000 (23:33 +0200)]
ls-ddr-phy: select by default for layerscape/armv8_64b

Currently, ls-ddr-phy package is being included in the individual
profile DEVICE_PACKAGES but using the feature that allows skipping their
inclusion in the end image package list if prefixed with a tilde(~) which
was added in:
377b66990b97 ("build: introduce support to declare skip package")

But it not added to Image Builder so currently trying to build layerscape
device images in Image Builder will fail with:
ERROR: '~ls-ddr-phy' is not a valid world dependency, format is name(@tag)([<>~=]version)

So, instead of having to rely on support for skipping package installation
and declaring the ls-ddr-phy package in DEVICE_PACKAGES lets select it when
layerscape/armv8_64b target is selected.

Fixes: #18412
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agols-dpl: select by default for layerscape/armv8_64b
Robert Marko [Fri, 11 Apr 2025 21:33:24 +0000 (23:33 +0200)]
ls-dpl: select by default for layerscape/armv8_64b

Currently, ls-dpl package is being included in the individual
profile DEVICE_PACKAGES but using the feature that allows skipping their
inclusion in the end image package list if prefixed with a tilde(~) which
was added in:
377b66990b97 ("build: introduce support to declare skip package")

But it not added to Image Builder so currently trying to build layerscape
device images in Image Builder will fail with:
ERROR: '~ls-dpl' is not a valid world dependency, format is name(@tag)([<>~=]version)

So, instead of having to rely on support for skipping package installation
and declaring the ls-dpl package in DEVICE_PACKAGES lets select it when
layerscape/armv8_64b target is selected.

Fixes: #18412
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agols-mc: select by default for layerscape/armv8_64b
Robert Marko [Fri, 11 Apr 2025 21:32:41 +0000 (23:32 +0200)]
ls-mc: select by default for layerscape/armv8_64b

Currently, ls-mc package is being included in the individual
profile DEVICE_PACKAGES but using the feature that allows skipping their
inclusion in the end image package list if prefixed with a tilde(~) which
was added in:
377b66990b97 ("build: introduce support to declare skip package")

But it not added to Image Builder so currently trying to build layerscape
device images in Image Builder will fail with:
ERROR: '~ls-mc' is not a valid world dependency, format is name(@tag)([<>~=]version)

So, instead of having to rely on support for skipping package installation
and declaring the ls-mc package in DEVICE_PACKAGES lets select it when
layerscape/armv8_64b target is selected.

Fixes: #18412
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agofman-ucode: select by default for layerscape/armv8_64b
Robert Marko [Fri, 11 Apr 2025 21:18:30 +0000 (23:18 +0200)]
fman-ucode: select by default for layerscape/armv8_64b

Currently, fman-ucode package is being included in the individual
profile DEVICE_PACKAGES but using the feature that allows skipping their
inclusion in the end image package list if prefixed with a tilde(~) which
was added in:
377b66990b97 ("build: introduce support to declare skip package")

But it not added to Image Builder so currently trying to build layerscape
device images in Image Builder will fail with:
ERROR: '~fman-ucode' is not a valid world dependency, format is name(@tag)([<>~=]version)

So, instead of having to rely on support for skipping package installation
and declaring the fman-ucode package in DEVICE_PACKAGES lets select it when
layerscape/armv8_64b target is selected.

Fixes: #18412
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agotfa-layerscape: set BUILD_DEVICES
Robert Marko [Fri, 11 Apr 2025 20:57:27 +0000 (22:57 +0200)]
tfa-layerscape: set BUILD_DEVICES

Currently, tfa-layerscape packages are being included in the individual
profile DEVICE_PACKAGES but using the feature that allows skipping their
inclusion in the end image package list if prefixed with a tilde(~) which
was added in:
377b66990b97 ("build: introduce support to declare skip package")

But it not added to Image Builder so currently trying to build layerscape
device images in Image Builder will fail with:
ERROR: '~trusted-firmware-a-ls1012a-frdm' is not a valid world dependency, format is name(@tag)([<>~=]version)

So, instead of having to rely on support for skipping package installation
and declaring the individual TFA packages in DEVICE_PACKAGES we can just
do what other targets do and set BUILD_DEVICES so that TFA packages are
automatically set.

Fixes: #18412
Link: https://github.com/openwrt/openwrt/pull/18462
Signed-off-by: Robert Marko <robimarko@gmail.com>
11 days agobcm63xx-cfe: install into image staging dir
Robert Marko [Fri, 11 Apr 2025 22:32:23 +0000 (00:32 +0200)]
bcm63xx-cfe: install into image staging dir

Currently, bcm63xx-cfe is being installed into kernel build dir, however
that does not work for Image Builder as only certain artifacts from kernel
build dir are included in Image Builder.

So, simply install bcm63xx-cfe into image staging dir so its artifacts can
be used in Image Builder as well.

Fixes: #18408
Fixes: #18409
Link: https://github.com/openwrt/openwrt/pull/18463
Signed-off-by: Robert Marko <robimarko@gmail.com>