Mantas Pucka [Fri, 22 Nov 2024 08:07:43 +0000 (10:07 +0200)]
kernel: adjust kmod-phy-aquantia dependencies for v6.12 kernel
Driver moved to different CRC library in v6.12
Ref: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
6c8e2407100e4ff1db86e4af65b74be7895031a2
Signed-off-by: Mantas Pucka <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mantas Pucka [Mon, 9 Dec 2024 12:38:22 +0000 (14:38 +0200)]
config: add new options for 6.12 kernel
Since kernel v6.12 couple more options were added to
CGROUP section. Add them here to avoid missing symbols.
Signed-off-by: Mantas Pucka <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Tue, 15 Apr 2025 21:41:44 +0000 (23:41 +0200)]
generic: 6.12: remove outdated kernel symbols
Symbols that no longer exist in 6.12 were removed by a script [1].
[1] https://github.com/openwrt/openwrt/pull/15324
Co-authored-by: Mantas Pucka <[email protected]>
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Tue, 15 Apr 2025 21:40:44 +0000 (23:40 +0200)]
generic: 6.12: add missing symbols
These symbols only become visible when some packages or kernel debug
options get enabled. Move them to generic.
Co-authored-by: Mantas Pucka <[email protected]>
Co-authored-by: Mathew McBride <[email protected]>
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Sun, 27 Apr 2025 16:29:01 +0000 (18:29 +0200)]
kernel: add new kmod and update kmod-tpm
Create a crypto-lib-aescfb package needed for new deps for kmod-tpm.
Package kmod-tpm is missing dependencies for the following libraries:
ecdh_generic.ko
kpp.ko
libaescfb.ko
Co-authored-by: John Audia <[email protected]>
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
John Audia [Wed, 20 Nov 2024 19:32:09 +0000 (14:32 -0500)]
kernel: update dependency of kmod-i2c-piix4
Add missing depends kmod-i2c-smbus.
Package kmod-i2c-piix4 is missing dependencies for the following libraries:
i2c-smbus.ko
Ref: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
de4f2f52f93257433c9029ba2b4044cd9f029b21
Signed-off-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Sun, 27 Apr 2025 16:25:49 +0000 (18:25 +0200)]
pcs-xpcs: 6.12: fix missing dependency
Add missing depends kmod-mdio-devres.
Package kmod-pcs-xpcs is missing dependencies for the following libraries:
mdio_devres.ko
Ref: https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
f6bb3e9d98c2e8d70587d5ddaf9426ef30d7865c
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Wed, 30 Apr 2025 09:38:37 +0000 (11:38 +0200)]
generic: 6.12: refresh hack patches
Refreshed patches for generic/hack-6.12 by running
make target/linux/refresh
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Wed, 30 Apr 2025 09:52:08 +0000 (11:52 +0200)]
generic: 6.12: manually rebuild hack patches
Manually rebuild hack patches:
- 200-tools_portability.patch
- 204-module_strip.patch
- 210-darwin_scripts_include.patch
- 251-kconfig.patch
- 421-drivers-mtd-parsers-add-nvmem-support-to-cmdlinepart.patch
- 610-net-page_pool-try-to-free-deferred-skbs-while-waitin.patch
- 721-net-add-packet-mangeling.patch
- 725-net-phy-aquantia-add-PHY_IDs-for-AQR112-variants.patch
- 760-net-usb-r8152-add-LED-configuration-from-OF.patch
- 800-GPIO-add-named-gpio-exports.patch
- 901-debloat_sock_diag.patch
- 902-debloat_proc.patch
- 904-debloat_dma_buf.patch
- 910-kobject_uevent.patch
- 911-kobject_add_broadcast_uevent.patch
- 930-Revert-Revert-Revert-driver-core-Set-fw_devlink-on-b.patch
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
[ improve commit title ]
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Sat, 26 Apr 2025 19:56:27 +0000 (21:56 +0200)]
generic: 6.12: refresh pending patches
Refreshed patches for generic/pending-6.12 by running
make target/linux/refresh
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Christian Marangi [Mon, 14 Apr 2025 16:34:10 +0000 (18:34 +0200)]
generic: 6.12: move MIPS reloc patch from pending to hack and rework
Move MIPS reloc patch from pending to hack and rework it to adapt to new
kernel 6.12 version.
This required an additional patch. While at it also improve the text
with the original info without cut.
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Tue, 29 Apr 2025 22:12:20 +0000 (00:12 +0200)]
generic: 6.12: manually rebuild pending patches
Manually rebuild pending patches:
- 103-kbuild-export-SUBARCH.patch
- 141-jffs2-add-RENAME_EXCHANGE-support.patch
- 200-ARM-9404-1-arm32-fix-boot-hang-with-HAVE_LD_DEAD_COD.patch
- 203-kallsyms_uncompressed.patch
- 270-platform-mikrotik-build-bits.patch
- 308-mips32r2_tune.patch
- 330-MIPS-kexec-Accept-command-line-parameters-from-users.patch
- 402-mtd-spi-nor-write-support-for-minor-aligned-partitions.patch
- 451-block-partitions-populate-fwnode.patch
- 476-mtd-spi-nor-add-eon-en25q128.patch
- 477-mtd-spi-nor-add-eon-en25qx128a.patch
- 479-mtd-spi-nor-add-xtx-xt25f128b.patch
- 481-mtd-spi-nor-add-support-for-Gigadevice-GD25D05.patch
- 482-mtd-spi-nor-add-gd25q512.patch
- 484-mtd-spi-nor-add-esmt-f25l16pa.patch
- 485-mtd-spi-nor-add-xmc-xm25qh128c.patch
- 488-mtd-spi-nor-add-xmc-xm25qh64c.patch
- 490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
- 497-mtd-mtdconcat-add-dt-driver-for-concat-devices.patch
- 498-mtd-spi-nor-locking-support-for-MX25L6405D.patch
- 510-block-add-uImage.FIT-subimage-block-driver.patch
- 530-jffs2_make_lzma_available.patch
- 630-packet_socket_type.patch
- 666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
- 681-net-remove-NETIF_F_GSO_FRAGLIST-from-NETIF_F_GSO_SOF.patch
- 700-netfilter-nft_flow_offload-handle-netdevice-events-f.patch
- 702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch
- 706-net-phy-populate-host_interfaces-when-attaching-PHY.patch
- 711-03-net-dsa-qca8k-add-support-for-port_change_master.patch
- 734-net-ethernet-mediatek-enlarge-DMA-reserve-buffer.patch
- 736-03-net-ethernet-mtk_eth_soc-improve-keeping-track-of-of.patch
- 737-net-ethernet-mtk_eth_soc-add-paths-and-SerDes-modes-.patch
- 739-03-net-pcs-pcs-mtk-lynxi-add-platform-driver-for-MT7988.patch
- 801-gpio-gpio-cascade-add-generic-GPIO-cascade.patch
- 809-01-nvmem-core-generalize-mac-base-cells-handling.patch
- 811-pci_disable_usb_common_quirks.patch
- 834-ledtrig-libata.patch
- 892-leds-Add-LED1202-I2C-driver.patch
- 920-mangle_bootargs.patch
Co-authored-by: Aditya Nugraha <[email protected]>
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
[ improve commit title + minor fixes ]
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Sat, 12 Apr 2025 11:26:23 +0000 (13:26 +0200)]
generic: 6.12: remove obsolete pending patches
Remove obsolete pending patches
Unnecessary:
- 820-w1-gpio-fix-problem-with-platfom-data-in-w1-gpio.patch[1]
[1] https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
9c0a5b3f9e55cf9a3dc85843666cae28adfdf7e3
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Fri, 25 Apr 2025 14:32:54 +0000 (16:32 +0200)]
generic: 6.12: refresh backport patches
Refreshed patches for generic/backport-6.12 by running
make target/linux/refresh
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Fri, 25 Apr 2025 14:31:08 +0000 (16:31 +0200)]
generic: 6.12: manually rebuild backport patches
Manually rebuild backport patches:
- 410-v6.13-01-block-add-support-for-defining-read-only-partitions.patch
- 839-v6.13-net-phy-aquantia-allow-forcing-order-of-MDI-pairs.patch
- 901-v6.13-net-dsa-mv88e6xxx-Support-LED-control.patch
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
[ improve commit title ]
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Tue, 22 Apr 2025 15:57:00 +0000 (17:57 +0200)]
generic: 6.12: remove obsolete backport patches
Remove obsolete backport patches already included in kernel 6.12 including the patches:
- 623-v6.14-net-ipv6-fix-TCP-GSO-segmentation-with-NAT.patch - backported to kernel 6.12.21[1]
- 785-05-v6.15-net-sfp-add-quirk-for-FS-SFP-10GM-T-copper-SFP-module.patch - backported to kernel 6.12.24[2]
- 910-v6.13-pmdomain-core-add-dummy-release-function-to-genpd-de.patch - backported to kernel 6.12.9[3]
1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
8940e6168bb353379772ef2555610a82ac569e36
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
163e8c1083b41289aad2afd06c39b9f859dc4ec0
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=
cba9d51794ecde58a21e4e96bcfd0a18f7dd4ff8
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Tue, 29 Apr 2025 22:02:32 +0000 (00:02 +0200)]
kernel/generic: Restore kernel files for v6.6
This is an automatically generated commit which aids following Kernel patch
history, as git will see the move and copy as a rename thus defeating the
purpose.
For the original discussion see:
https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Tue, 29 Apr 2025 22:02:28 +0000 (00:02 +0200)]
kernel/generic: Create kernel files for v6.12 (from v6.6)
This is an automatically generated commit.
When doing `git bisect`, consider `git bisect --skip`.
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Mieczyslaw Nalewaj [Fri, 25 Apr 2025 14:26:52 +0000 (16:26 +0200)]
kernel: add define for kernel 6.12
Add define for kernel 6.12.
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16547
Signed-off-by: Christian Marangi <[email protected]>
Robert Marko [Wed, 30 Apr 2025 09:53:45 +0000 (11:53 +0200)]
ead: fix compilation with GCC14
Trying to compile EAD with now default GCC14 will fail due to now erroring
out on implicit int type as well as implicit function declarations.
Due to this, the packaged configure script will fail on the simple compiler
test as the generated test uses main loop with an implicit int type.
So, instead of patching multiple test cases in the shipped configure script
for tinysrp lets run autoreconf on it so its regenerated.
We also need to pass -Wno-error=implicit-function-declaration as there are
multiple instances of tinysrp code relying on implicit function declarations.
Link: https://github.com/openwrt/openwrt/pull/18645
Signed-off-by: Robert Marko <[email protected]>
Scott Mercer [Mon, 21 Apr 2025 15:23:07 +0000 (11:23 -0400)]
package: basefiles: add oem image dectection to fwtool.sh
with more new device, now able to flash oem
images from luci, fwtools erroneously marks
firmware as incompatible and does not warn
across keeping configs during update.
this patch aims to add both oem detection
and a warning msg advising firmware is compatible
(OpenWrt -> OEM) but configuration is not
tested on ipq5018: gl-b3000
Signed-off-by: Scott Mercer <[email protected]>
package: basefiles: add oem image dectection to fwtool
some new devices are now able to flash oem
images from luci, fwtools erroneously marks
firmware as incompatible and does not warn
of keeping configs during update for this condition.
this patch aims to add both oem detection
and trigger the existing warning msg, advising firmware is compatible
(OpenWrt -> OEM) but configuration is not
tested on ipq5018: gl-b3000
Signed-off-by: Scott Mercer <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18554
Signed-off-by: Robert Marko <[email protected]>
Mieczyslaw Nalewaj [Tue, 29 Apr 2025 21:59:58 +0000 (23:59 +0200)]
generic: refresh patches
Refreshed patches by running:
make target/linux/refresh
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18640
Signed-off-by: Robert Marko <[email protected]>
George Moussalem [Tue, 29 Apr 2025 13:24:46 +0000 (17:24 +0400)]
qualcommax: ipq50xx: fix GE_PHY and Uniphy resets
Fix the resets of the GE_PHY and Uniphy found on the IPQ5018 SoC.
Bitmasks are used to perform multiple resets simultaneously, including
the RX and TX clocks. This enables the Uniphy to properly shift between
SGMII/1G and SGMII+/2.5G modes.
While at it, properly reorder the patches, and rename some to follow
naming standards.
Signed-off-by: George Moussalem <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18638
Signed-off-by: Robert Marko <[email protected]>
Felix Fietkau [Wed, 30 Apr 2025 09:03:39 +0000 (11:03 +0200)]
unetd: cli: allow skipping pretty printing of status data
Makes it more useful for services built around the CLI API
Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau [Wed, 30 Apr 2025 09:02:22 +0000 (11:02 +0200)]
cli: add explicit option for pretty printing command result data
No-op for now, but allows making output more machine readable
Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau [Wed, 30 Apr 2025 08:40:38 +0000 (10:40 +0200)]
ucode-mod-uline: fix crash on cleanup
- only run a single poll in the uloop_fd cb to avoid use-after-free on close
- delete the uloop_fd on close
- when calling into ucode, fetch the vm pointer before the call in order
to avoid accessing the stale uline context
Signed-off-by: Felix Fietkau <[email protected]>
Felix Fietkau [Wed, 30 Apr 2025 08:32:55 +0000 (10:32 +0200)]
ucode-mod-uline: fix build warnings
Signed-off-by: Felix Fietkau <[email protected]>
Christian Marangi [Tue, 29 Apr 2025 16:55:19 +0000 (18:55 +0200)]
generic: drop extra-old-deprecated pending fix patch for sch codel
Patch 620-net_sched-codel-do-not-defer-queue-length-update.patch is
actually an ancient patch that somehow manage to be ported for 7 solid
years.
This comes from [1] where a fix patch was proposed. Nobody notice that
the proposed patch was actually rejected upstream in favor of [2]. And
the upstream fix patch is present in kernel from version 4.18.
This means that we were actually fixing for a non existant bug and maybe
introducing regression down the line.
Drop the patch for good as we already have a fix for it in flace for a
long time.
[1] https://bugzilla.kernel.org/show_bug.cgi?id=109581
[2] https://github.com/torvalds/linux/commit/
35b42da69e35536da603a50e40aa6c41b2f7b0f8
Signed-off-by: Christian Marangi <[email protected]>
George Moussalem [Tue, 29 Apr 2025 10:32:20 +0000 (14:32 +0400)]
qualcommax: ipq50xx: fix ipq5018 GE PHY and tidy up mdio nodes
As part of the previous commit to add the #clock-cells property to the
GE PHY, the PHY was inadvertently moved under the second mdio node in
the dtsi, and therefore broke the init sequence as the driver was trying
to use the wrong mdio bus to set the init values (ex. DAC, MSE, and AZ).
So let's move it back under the right mdio node and, while at it, pad
the register addresses to 8 hex numbers and re-order properties in line
with Linux DTS coding standards.
Fixes: 6782d0e66fd607a3536d5fd94e998d2d700ffeaf
Signed-off-by: George Moussalem <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18634
Signed-off-by: Robert Marko <[email protected]>
Erik Servili [Mon, 28 Apr 2025 01:39:23 +0000 (03:39 +0200)]
qualcommax: ipq60xx: LED mapping update for Netgear WAX610 and WAX610Y
Fix swapped WLAN LEDs and move to blue LEDs to match stock behavior. Add LAN LED mappings.
Signed-off-by: Erik Servili <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18624
Signed-off-by: Robert Marko <[email protected]>
Robert Marko [Fri, 25 Apr 2025 13:02:24 +0000 (15:02 +0200)]
toolchain: gcc: switch default to 14
Its time to use GCC14 as the default compiler instead of GCC13.
Link: https://github.com/openwrt/openwrt/pull/18597
Signed-off-by: Robert Marko <[email protected]>
Shiji Yang [Tue, 29 Apr 2025 10:16:29 +0000 (18:16 +0800)]
ramips: correct wifi driver packages for TP-Link MR200 v6
TP-Link Archer MR200 v6 uses the MT7613 wireless chip, hence
the default wifi driver packages should be kmod-mt7615e and
kmod-mt7663-firmware-ap.
Fixes: https://github.com/openwrt/openwrt/issues/18627
Signed-off-by: Shiji Yang <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18633
Signed-off-by: Robert Marko <[email protected]>
Rosen Penev [Sat, 26 Apr 2025 22:54:02 +0000 (15:54 -0700)]
bcm47xx: old gpio wdt: use remove_new
Easy way to add compatibility for kernel 6.12.
Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18617
Signed-off-by: Robert Marko <[email protected]>
Rosen Penev [Sat, 26 Apr 2025 23:16:46 +0000 (16:16 -0700)]
ltq-adsl: use remove_new for platform_device
Easy way to add compatibility for kernel 6.12.
Since the linux 3.8 patch undoes a bunch of stuff in platform, just
modiify everything in platform.
Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18616
Signed-off-by: Robert Marko <[email protected]>
INAGAKI Hiroshi [Wed, 23 Apr 2025 07:48:13 +0000 (16:48 +0900)]
qualcommax: ipq50xx: drop unused factory.ubi for ELECOM WRC-X3000GS2
Drop the firmware image entry "factory.ubi" from IMAGES for ELECOM
WRC-X3000GS2.
`Device/UbiFit` is added in the early stage of working for adding
support of the device, but finally, only `KERNEL_IN_UBI` is neccesary
and factory.ubi is not. So `Device/UbiFit` should have been replaced
to `KERNEL_IN_UBI` but it was forgotten.
Fixes: 3b7d72bc2e ("qualcommax: add support for ELECOM WRC-X3000GS2")
Signed-off-by: INAGAKI Hiroshi <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18611
Signed-off-by: Robert Marko <[email protected]>
Christian Marangi [Sat, 26 Apr 2025 18:04:31 +0000 (20:04 +0200)]
generic: convert MTK PCS patch to .remove_new
Convert MTK PCS patch to .remove_new to simplify support for new 6.12
kernel version.
Signed-off-by: Christian Marangi <[email protected]>
Felix Fietkau [Sat, 26 Apr 2025 17:10:54 +0000 (19:10 +0200)]
kernel: fix UDPv6 GSO segmentation with NAT
Fixes issues with rx-gro-list and NAT66
Fixes: https://github.com/openwrt/openwrt/issues/18387
Fixes: https://github.com/openwrt/openwrt/issues/18516
Fixes: https://github.com/openwrt/openwrt/issues/18608
Signed-off-by: Felix Fietkau <[email protected]>
David Bauer [Fri, 25 Apr 2025 19:40:39 +0000 (21:40 +0200)]
mediatek: add missing pipe
Signed-off-by: David Bauer <[email protected]>
David Bauer [Wed, 23 Apr 2025 19:06:54 +0000 (21:06 +0200)]
mediatek: fix GL.iNet GL-MT2500 preinit interface
This was previously set incorrectly to a non-existant interface.
Signed-off-by: David Bauer <[email protected]>
Christoph Krapp [Mon, 14 Apr 2025 18:47:56 +0000 (20:47 +0200)]
mediatek: filogic: add support for ASUS RT-AX52
Hardware
--------
SOC: MediaTek MT7981b
RAM: 256MB DDR3
FLASH: 128MB SPI-NAND (Winbond W25N01GV)
WIFI: Mediatek MT7981b DBDC 802.11ax 2.4/5 GHz
ETH: MediaTek MT7531 Switch
UART: 3V3 115200 8N1 (Pinout silkscreened / Do not connect VCC)
Installation
-----------------------------------------------------------
Vendor-UI Method
-----------------------------------------------------------
1. Download the OpenWrt initramfs.trx image.
2. Connect the PC via LAN to one of the yellow router ports and wait
until your PC to get a DHCP lease.
3. Browse to http://192.168.50.1
4. If your router is brand new, finish the setup process and log into
the Web-UI.
5. Navigate to Administration -> Firmware Upgrade and upload the
downloaded OpenWrt image.
6. Wait for OpenWrt to boot. Transfer the sysupgrade image to the device
using scp and install using sysupgrade.
$ sysupgrade -n <path-to-sysupgrade.bin>
-----------------------------------------------------------
TFTP Method
-----------------------------------------------------------
1. Download the OpenWrt initramfs image. Copy the image to a TFTP server
reachable at 192.168.1.70/24. Rename the image to rtax52.bin.
2. Connect the PC with TFTP server to the RT-AX52.
Set a static ip on the ethernet interface of your PC.
(ip address: 192.168.1.70, subnet mask:255.255.255.0)
Conect to the serial console,
interrupt the autoboot process by pressing '4' when prompted.
3. Download & Boot the OpenWrt initramfs image.
$ setenv ipaddr 192.168.1.1
$ setenv serverip 192.168.1.70
$ tftpboot 0x46000000 rtax52.bin
$ bootm 0x46000000
4. Wait for OpenWrt to boot. Transfer the sysupgrade image to the device
using scp and install using sysupgrade.
$ sysupgrade -n <path-to-sysupgrade.bin>
---------------------------------------------------------------------------
Revert to stock firmware:
1: Download the rt-ax52 firmware from ASUS official website. Save
the firmware to tftp server directory and rename to RT-AX52.trx
2: Connect the PC with TFTP server to the RT-AX52.
Set a static ip on the ethernet interface of your PC.
(ip address: 192.168.1.70, subnet mask:255.255.255.0)
3: Conect to the serial console, power on again, interrupt the
autoboot process by pressing '4' when prompted.
$: ubi remove linux
$: ubi remove jffs2
$: ubi remove rootfs
$: ubi remove rootfs_data
$: ubi create linux 0x45fe000
$: reset
Then the dut will reboot,interrupt the autoboot process by
pressing '2' when prompted.
2: Load System code then write to Flash via TFTP.
Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N)
$: enter y
you will see the follow, type enter directly:
Input device IP (192.168.1.1) ==:
Input server IP (192.168.1.70) ==:
Input Linux Kernel filename (RT-AX52.trx) ==:
4: wait for the device run up
Based on support for ASUS RT-AX52 by liudongdongdong7397
and trx image generation by remittor
Signed-off-by: Christoph Krapp <[email protected]>
Mikhail Zhilkin [Sun, 13 Apr 2025 07:02:53 +0000 (07:02 +0000)]
mediatek: add support for Routerich AX3000 v1
Routerich AX3000 v1 is a wireless WiFi 6 router.
Specification
-------------
- SoC : MediaTek MT7981BA dual-core ARM Cortex-A53 1.3 GHz
- RAM : DDR3 512 MiB
- Flash : SPI-NAND 128 MiB (Winbond)
- 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 (MT7981 internal PHY)
- USB : 1x 3.0 with power control
- UART : through-hole on PCB
- [J500] GND, TX, RX, 3.3V (115200n8)
- Buttons : Mesh, Reset
- LEDs : 1x Power (Blue)
1x WiFi 2.4 GHz (Blue)
1x WiFi 5 GHz (Red)
1x Mesh (Blue)
3x LAN activity (Blue)
1x WAN activity (Blue)
1x WAN no-internet (Red)
- Power : 12 VDC, 1.5 A
Installation
------------
Flash OpenWrt 'sysupgrade.bin' image using stock firmware web-interface
(without keeping settings).
Return to stock
---------------
Install stock firmware image (without keeping settings) using OpenWrt
sysupgrade method.
Recovery
--------
Connect uart, use u-boot menu to flash stock firmware image or boot
OpenWrt initramfs image.
MAC addresses
-------------
+---------+-------------------+-----------+
| | MAC | Algorithm |
+---------+-------------------+-----------+
| WAN | 24:0f:5e:xx:xx:08 | label |
| LAN | 24:0f:5e:xx:xx:09 | label+1 |
| WLAN 2g | 24:0f:5e:xx:xx:0a | label+2 |
| WLAN 5g | 24:0f:5e:xx:xx:0b | label+3 |
+---------+-------------------+-----------+
The WLAN 2g MAC was found in 'Factory', 0x4
Signed-off-by: Mikhail Zhilkin <[email protected]>
Mikhail Zhilkin [Sun, 13 Apr 2025 17:39:34 +0000 (17:39 +0000)]
mediatek: filogic: fix mistaken executable bit on dts file
This commit fixes mistaken executable bit on
mt7981b-mercusys-mr80x-v3.dts file.
Fixes: 7921e48d4357 ("mediatek: add support for Mercusys MR80X v3")
Signed-off-by: Mikhail Zhilkin <[email protected]>
Robert Marko [Fri, 25 Apr 2025 13:45:23 +0000 (15:45 +0200)]
uboot-mvebu: rb5009: disable YAFFS
YAFFS support in U-Boot is basically abandoned and will even fail to
build with GCC14, so simply disable it.
Link: https://github.com/openwrt/openwrt/pull/18598
Signed-off-by: Robert Marko <[email protected]>
Tianling Shen [Fri, 25 Apr 2025 10:00:25 +0000 (18:00 +0800)]
lantiq: fix syntax error for fritz736x
Add missing semicolon to the end of the property.
Remove whitespace while at it.
Fixes: 5a3b9d88f158 ("lantiq: Improve support for LED's fritz736x")
Signed-off-by: Tianling Shen <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18594
Signed-off-by: Robert Marko <[email protected]>
INAGAKI Hiroshi [Fri, 25 Apr 2025 10:00:42 +0000 (19:00 +0900)]
qualcommax: fix ECC strength of SPI-NAND flash on GL-iNet GL-B3000
Fix nand-ecc-strength property in the spi-nand node of GL-iNet GL-B3000
to 4, to solve the following ECC error on that spi-nand chip.
[ 1.551618] ubi0: attaching mtd11
[ 1.552331] ubi0 warning: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read only 64 bytes, retry
[ 1.554455] ubi0 warning: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read only 64 bytes, retry
[ 1.565931] ubi0 warning: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read only 64 bytes, retry
[ 1.576568] ubi0 error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read 64 bytes
[ 1.587146] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.6.87 #0
[ 1.597153] Hardware name: GL.iNet GL-B3000 (DT)
[ 1.602881] Call trace:
[ 1.607739] dump_backtrace+0xa0/0xe0
[ 1.609910] show_stack+0x18/0x24
[ 1.613728] dump_stack_lvl+0x48/0x60
[ 1.617027] dump_stack+0x18/0x24
[ 1.620672] ubi_io_read+0x11c/0x32c
[ 1.623972] ubi_io_read_ec_hdr+0x50/0x1f0
[ 1.627618] ubi_attach+0x35c/0x133c
[ 1.631524] ubi_attach_mtd_dev+0x494/0xaf4
[ 1.635257] ubi_init_attach+0xac/0x2e4
[ 1.639163] do_one_initcall+0x6c/0x1fc
[ 1.642983] kernel_init_freeable+0x204/0x2e4
[ 1.646803] kernel_init+0x28/0x1dc
[ 1.651316] ret_from_fork+0x10/0x20
The GL-B3000 has a Winbond W25N01GW and the spare size (oobsize) of it
is 64. So the maximum available ECC strength with the qpic-snand driver
is 4 but not 8.
The "nand-ecc-strength" property was not used before the commit
fc3ff2af0c ("qualcommax: allow overriding ECC strength for qpic-snand")
and calculated from the registered spare size in the Linux Kernel. As a
result, we had no issues on the GL-B3000 with the wrong ECC strength
value.
Fixes: 3307fe8ee4 ("qualcommax: ipq50xx: add support for GL.iNET GL-B3000")
Signed-off-by: INAGAKI Hiroshi <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18595
Signed-off-by: Robert Marko <[email protected]>
Felix Fietkau [Thu, 24 Apr 2025 12:22:34 +0000 (14:22 +0200)]
udebug: add missing dependencies
Signed-off-by: Felix Fietkau <[email protected]>
Daniel Golle [Thu, 24 Apr 2025 05:43:59 +0000 (06:43 +0100)]
uboot-tools: validate all uImage.FIT sub-images
uImage.FIT validation was restricted to certain sub-image types
which is problematic as it then won't validate eg. 'filesystem' type
subimages. Also prevent decompressing sub-images into a arbitrary
sized buffer just to then free that buffer -- there is not need to
do this and creating malicious compressed payloads which overflow the
buffer is too easy.
Signed-off-by: Daniel Golle <[email protected]>
Robert Marko [Wed, 23 Apr 2025 12:18:48 +0000 (14:18 +0200)]
mold: dont allow on MacOS
Mold does not really work on MacOS, when attempting to use it for example
for ubus:
mold: get_self_path is not supportedcollect2: error: ld returned 1 exit status
Which was introduced by [1] so it seems that MacOS is not supported, so
lets make it non selectable when MacOS is the host.
[1] https://github.com/rui314/mold/commit/
f9a37e9dd43681758bbc5647ba9e596ec4ea9f33
Link: https://github.com/openwrt/openwrt/pull/18575
Signed-off-by: Robert Marko <[email protected]>
Robert Marko [Wed, 23 Apr 2025 11:07:13 +0000 (13:07 +0200)]
config: allow using mold on riscv64
Mold supports 32 and 64 bit RISC-V, but since we only support the 64 bit
version allow using mold on it.
Link: https://github.com/openwrt/openwrt/pull/18575
Signed-off-by: Robert Marko <[email protected]>
Robert Marko [Wed, 23 Apr 2025 10:46:30 +0000 (12:46 +0200)]
config: allow using mold on loongarch64
Mold supports 32 and 64 bit LoongArch, but since we only support the 64 bit
version allow using mold on it.
Link: https://github.com/openwrt/openwrt/pull/18575
Signed-off-by: Robert Marko <[email protected]>
Robert Marko [Wed, 23 Apr 2025 10:45:04 +0000 (12:45 +0200)]
mold: update to 2.37.1
mold has seen a bunch of bugfixes and improvements since 2.33.0, so
lets update it.
Link: https://github.com/openwrt/openwrt/pull/18575
Signed-off-by: Robert Marko <[email protected]>
Weijie Gao [Tue, 22 Apr 2025 18:15:09 +0000 (02:15 +0800)]
toolchain: mold: add PKG_NAME to Makefile
In include/host-build.mk, HOST_BUILD_DIR is set by default value:
HOST_BUILD_DIR ?= $(BUILD_DIR_HOST)/$(PKG_NAME)
However the mold package has no PKG_NAME set at all. This means the
HOST_BUILD_DIR is identical to $(BUILD_DIR_HOST).
In the Host/Prepare stage, by default, the $(HOST_BUILD_DIR) will be
deleted at first unconditionally. Since HOST_BUILD_DIR is identical
to $(BUILD_DIR_HOST), the entire build_dir/toolchain-* directory will
be removed and this will cause build failure.
Adding PKG_NAME:=ld.mold can solve this issue.
Signed-off-by: Weijie Gao <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18567
Signed-off-by: Robert Marko <[email protected]>
Rosen Penev [Tue, 22 Apr 2025 22:56:01 +0000 (15:56 -0700)]
mac80211: ath9k: remove wrong devm for request_irq
Since the irq gets copied to sc, it's a really bad idea to use devm,
especially when probe fails.
Signed-off-by: Rosen Penev <[email protected]>
Fixes: 4e18d22 ("mac80211: ath9k: simplify probe with devm")
Link: https://github.com/openwrt/openwrt/pull/18570
Signed-off-by: Robert Marko <[email protected]>
Rosen Penev [Wed, 23 Apr 2025 02:09:56 +0000 (19:09 -0700)]
tools/squashfs3-lzma: fix compilation with GCC15
Function pointers require proper types now.
Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18572
Signed-off-by: Robert Marko <[email protected]>
Mieczyslaw Nalewaj [Wed, 23 Apr 2025 05:28:26 +0000 (07:28 +0200)]
bpf-headers: fix kernel-$(PKG_PATCHVER) location
Change kernel-$(PKG_PATCHVER) location to $(TOPDIR)/target/linux/generic/
Change required after commit
8865dadea7b94e7859b416d3b1931b897ea43c48
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]> [fix include path]
Mieczyslaw Nalewaj [Tue, 22 Apr 2025 20:59:58 +0000 (22:59 +0200)]
kernel: Fix patch folders setting for test kernel
Move kernel-version.mk include to proper place to properly set patch folders for test kernel.
Fixes: 8865dadea7b94e7859b416d3b1931b897ea43c48
Signed-off-by: Mieczyslaw Nalewaj <[email protected]>
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 <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18509
[bump release, improve commit description and package changes]
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
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 <[email protected]>
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 <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18509
Signed-off-by: Álvaro Fernández Rojas <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16956
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18038
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18543
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18543
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18543
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18535
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18534
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
Á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 <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16329
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/16329
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18553
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18556
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18479
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18542
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18548
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18547
Signed-off-by: Robert Marko <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18427
Signed-off-by: Hauke Mehrtens <[email protected]>
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 <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/18539
Signed-off-by: Hauke Mehrtens <[email protected]>