openwrt/openwrt.git
2 weeks agonetifd: update to Git 768027c5a7640137857f412f554227abd6160cdd (2024-11-27)
Paul Donald [Mon, 25 Nov 2024 14:24:54 +0000 (15:24 +0100)]
netifd: update to Git 768027c5a7640137857f412f554227abd6160cdd (2024-11-27)

86da5cbcdb9d system-linux: do not pull ifindex/flags from netlink messages on rtnl events
cd96f61ba63e proto-shell: fix spurious interface teardowns with host deps
a39fe3a8b150 wireless: add support for adding a list of devices for a wifi-iface
d29cf707478c iprule: add ipproto property
768027c5a764 system-linux: restore reading flags from netlink messages

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17074
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit f4492b6b1c5373a27c911ad675e96ccf1ce542d2)
Link: https://github.com/openwrt/openwrt/pull/17110
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: MERCUSYS MR90X v1: add OpenWrt U-Boot (UBI) layout
Mikhail Zhilkin [Sun, 20 Oct 2024 12:21:33 +0000 (12:21 +0000)]
mediatek: MERCUSYS MR90X v1: add OpenWrt U-Boot (UBI) layout

This commit adds OpenWrt U-Boot (UBI) layout support for MERCUSYS MR90X
v1.

Stock U-Boot UBI size:   50 MiB
OpenWrt U-boot UBI size: 126 MiB

Install
-------
1. Perform steps 1-14 of the OpenWrt installation guide (use OpenWrt
   initramfs-recovery.itb instead of initramfs-kernel.bin at the step 10,
   12 and 14).
Link: https://openwrt.org/toh/mercusys/mr90x_v1#installation
2. Make backups:
```
cat /dev/mtd0 > /tmp/boot.bin
cat /dev/mtd5 > /tmp/tp_data.bin
```
   Copy /tp_data dir content, /tmp/boot.bin and /tmp/tp_data.bin and to
   your PC using scp. You can also backup the remaining partititons. Copy
   backups to a safe place, they are required for the next steps and stock
   firmware recovery.

3. Reboot to OpenWrt initramfs:
```
reboot
```

4. Copy OpenWrt ubi-bl31-uboot.fip, ubi-preloader.bin,
   ubi-squashfs-sysupgrade.itb and MT7986_EEPROM.bin, default-mac (from
   /tp_data backup) to the /tmp folder of the router using scp.

5. Prepare UBI:
```
ubidetach -p /dev/mtd3; ubiformat /dev/mtd3 -y; ubiattach -p /dev/mtd3
ubimkvol /dev/ubi0 -N fip -t static -s 1MiB
ubiupdatevol /dev/ubi0_0 /tmp/ubi-bl31-uboot.fip
ubimkvol /dev/ubi0 -N ubootenv -s 0x1f000
ubimkvol /dev/ubi0 -N ubootenv2 -s 0x1f000
```

6.  Install kmod-mtd-rw and unlock partitions:
```
opkg update && opkg install kmod-mtd-rw
insmod mtd-rw i_want_a_brick=1
mtd unlock boot
mtd unlock bl2
mtd unlock factory
```

7. Prepare "factory" partition:
```
dd if=/dev/zero bs=$((0x8000)) count=1 | tr '\000' '\377' > /tmp/factory.bin
dd if=/tmp/MT7986_EEPROM.bin of=/tmp/factory.bin conv=notrunc
dd if=/tmp/default-mac >> /tmp/factory.bin
```

8. Write "factory" partition:
```
mtd erase factory
mtd write /tmp/factory.bin factory
```

9. Write preloader partition:
```
mtd erase bl2
mtd write /tmp/ubi-preloader.bin bl2
```

10. Write OpenWrt sysupgrade image:
```
sysupgrade -n /tmp/ubi-squashfs-sysupgrade.itb
```

Recovery
--------
1. Place OpenWrt initramfs-recovery.itb image (with original name) on the
   tftp server (IP: 192.168.1.254).
2. Press "reset" button and power on the router. After ~10 sec release the
   button.
3. Use OpenWrt initramfs system for recovery.

BL2 and FIP recovery
--------------------
Use mtk_uartboot and UART connetion if BL2 or FIP in UBI is destroyed:
Link: https://github.com/981213/mtk_uartboot
Link: https://openwrt.org/toh/mercusys/mr90x_v1#serial
Return to stock:
----------------
1. Copy "boot" partition backup (boot.bin) to the /tmp dir of the router
   using scp.

2. Install kmod-mtd-rw:
```
opkg update && opkg install kmod-mtd-rw
```

3. Restore stock U-Boot:
```
   insmod mtd-rw i_want_a_brick=1
   mtd unlock boot
   mtd erase boot
   mtd write /tmp/boot.bin boot
```

4. Erase UBI and reboot:
```
mtd erase ubi
reboot
```

5. Open U-Boot web recovery, upload stock firmware image and start
   upgrade.
Link: http://192.168.1.1
6. Complete steps 1-9 of the OpenWrt installation guide to get root
   rights.
Link: https://openwrt.org/toh/mercusys/mr90x_v1#installation
7. Upload "tp_data" partition backup (tp_data.bin) to the /tmp folder of
   the router using scp.

8. Restore stock calibrations:
```
mtd write /tmp/tp_data.bin tp_data
reboot
```

9. Perform "factory restore" via stock firmware web interface.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16744
(cherry picked from commit ee8df790cae843f11f78511dd9ffac7e80a4d707)
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17129
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agouboot-mediatek: add MERCUSYS MR90X v1 support
Mikhail Zhilkin [Sun, 20 Oct 2024 12:20:51 +0000 (12:20 +0000)]
uboot-mediatek: add MERCUSYS MR90X v1 support

Add U-Boot replacement loader for the MERCUSYS MR90X. This is required
to increase available flash space in OpenWrt.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16744
(cherry picked from commit 77cc4b712700e51f5d779e4e7385639fa4e16ca9)
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17129
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agoarm-trusted-firmware-mediatek: add mt7986-spim-nand-ddr3 build
Mikhail Zhilkin [Sun, 20 Oct 2024 12:20:04 +0000 (12:20 +0000)]
arm-trusted-firmware-mediatek: add mt7986-spim-nand-ddr3 build

This commit adds mt7986-spim-nand-ddr3 build required for MERCUSYS MR90X
v1.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16744
(cherry picked from commit 2ea9ede7a8a94bddef599decfe6948c5c20dbfa5)
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17129
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2 weeks agomediatek: filogic: Migrate wifi configuration device paths
Hauke Mehrtens [Sun, 8 Dec 2024 15:18:52 +0000 (16:18 +0100)]
mediatek: filogic: Migrate wifi configuration device paths

The device path to the devices changed. Migrate the wifi
configurations from the old path to the new one. This is needed to
migrate Wireless configurations from OpenWrt 23.05 to OpenWrt 24.10.

This script is based on these two files:
target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/05-wifi-migrate
target/linux/qualcommax/ipq807x/base-files/etc/hotplug.d/ieee80211/05-wifi-migrate

Fixes: 0ef927472148 ("mediatek: filogic: move mt7981 on-SoC blocks to "soc" node in DT")
Fixes: https://github.com/openwrt/openwrt/issues/17174
Link: https://github.com/openwrt/openwrt/pull/17210
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit f8b93e2d12ef01fc565178c71c39470da798155a)

2 weeks agomediatek: filogic: prevent faulty mac address assignment
Ondřej Niesner [Sat, 7 Dec 2024 16:55:29 +0000 (17:55 +0100)]
mediatek: filogic: prevent faulty mac address assignment

The vendor U-Boot on the Cudy WR3000 assign random mac addresses on boot
and set the 'local-mac-address' property which prevents Openwrt from
assigning the correct address from evmem.

This patch removes the alias for ethernet0 so that U-Boot doesn't add
the property.

Related to: a55ab9e1343e ("mediatek: filogic: prevent faulty mac address assignment")
Fixes: https://github.com/openwrt/openwrt/issues/15587
Signed-off-by: Ondřej Niesner <ondra.niesner@seznam.cz>
Link: https://github.com/openwrt/openwrt/pull/17201
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit a498a84393a80de9f828b8465906761896ca4940)

2 weeks agobpftool: turn off libbfd feature in host build
Eric Long [Mon, 25 Nov 2024 13:26:47 +0000 (21:26 +0800)]
bpftool: turn off libbfd feature in host build

libbfd feature is not used when building eBPF program, and it makes bpftool fail to build in a clean environment, since binutils in toolchain have libbfd disabled.

Signed-off-by: Eric Long <i@hack3r.moe>
Link: https://github.com/openwrt/openwrt/pull/17073
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 3d8d81883fb2e607590bcb523587e37e1485b3b8)

2 weeks agomac80211: realtek: add RTL8812au/RTL8821au support
Marty Jones [Sun, 13 Oct 2024 21:15:53 +0000 (17:15 -0400)]
mac80211: realtek: add RTL8812au/RTL8821au support

This adds support for RTL8812au/RTL8821au USB adapters.
Run-tested: x86/64/rockchip
USB adapters tested: Alfa AWUS036ACS, D-Link DWA-171 A1.

Signed-off-by: Marty Jones <mj8263788@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17079
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ac8d30a645965ad4e1f1ca9b71e49613166b8a29)

2 weeks agomac80211: realtek: backport support for RTL8812AU/RTL8821AU
Marty Jones [Mon, 25 Nov 2024 17:58:57 +0000 (12:58 -0500)]
mac80211: realtek: backport support for RTL8812AU/RTL8821AU

Backport support for RTL8812AU/RTL8821AU USB adapters
Manually backported patch:
045-v6.13-wifi-rtw88-Enable-the-new-RTL8821AU-RTL8812AU-driver
Patches from 046 to 051 are pending.

Signed-off-by: Marty Jones <mj8263788@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17079
[Move BPAUTO_WANT_DEV_COREDUMP to original patch]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 36f6d6ddcd67e7e32e2281baf5814ece81fad402)

2 weeks agolinux-firmware: realtek: add RTL8812AU/RTL8821AU firmware
Marty Jones [Mon, 11 Nov 2024 22:17:27 +0000 (17:17 -0500)]
linux-firmware: realtek: add RTL8812AU/RTL8821AU firmware

This adds firmware support for the RTL8812AU/RTL8821AU USB wireless adapters.

Signed-off-by: Marty Jones <mj8263788@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17079
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c48a48e65889e00df598757cca1f6226ac173e89)

2 weeks agolinux-firmware: update to 20241110
Marty Jones [Mon, 11 Nov 2024 21:52:43 +0000 (16:52 -0500)]
linux-firmware: update to 20241110

linux-firmware update to 20241110
Move WCN6750 firmware to the device-specific subdir

git log --no-merges --pretty=oneline --abbrev-commit 20241110...20241017

1dbc4cfa rtl_bt: Update RTL8852BT/RTL8852BE-VT BT USB FW to 0x04D7_63F7
8a976e23 cnm: update chips&media wave521c firmware.
3636204f mediatek MT7920: update bluetooth firmware to 20241104091246
6627b025 linux-firmware: update firmware for MT7920 WiFi device
554c4761 copy-firmware.sh: Run check_whence.py only if in a git repo
1486d9aa cirrus: cs35l56: Add firmware for Cirrus CS35L56 for various Dell laptops
c99eeb4d amdgpu: update DMCUB to v9.0.10.0 for DCN351
b6bfff1a rtw89: 8852a: update fw to v0.13.36.2
ddf25515 rtw88: Add firmware v52.14.0 for RTL8812AU
dbb219d7 i915: Update Xe2LPD DMC to v2.23
937e463b linux-firmware: update firmware for mediatek bluetooth chip (MT7925)
62ee1c4b linux-firmware: update firmware for MT7925 WiFi device
a142ad72 WHENCE: Add sof-tolg for mt8195
fe16af92  linux-firmware: Update firmware file for Intel BlazarI core
c69bd749 qcom: Add link for QCS6490 GPU firmware
f4f5689f qcom: update gpu firmwares for qcs615 chipset
a6f3ab98 cirrus: cs35l56: Update firmware for Cirrus Amps for some HP laptops
048795ee ath11k: move WCN6750 firmware to the device-specific subdir
8a7bde2c xe: Update LNL GSC to v104.0.0.1263
e0ee2f91 i915: Update MTL/ARL GSC to v102.1.15.1926
987607d6 amdgpu: DMCUB updates for various AMDGPU ASICs
f9a502ab mediatek: Add sof-tolg for mt8195
1c289f28 i915: Add Xe3LPD DMC
c2379c61 cnm: update chips&media wave521c firmware.
71f8f3e0 linux-firmware: Add firmware for Cirrus CS35L41
65c4b9b7 linux-firmware: Update firmware file for Intel BlazarU core
4f397306 Makefile: error out of 'install' if COPYOPTS is set
2f046411 check_whence.py: skip some validation if git ls-files fails
feb324e3 qcom: Add Audio firmware for X1E80100 CRD/QCPs
3d45353e amdgpu: DMCUB updates forvarious AMDGPU ASICs
c569ca45 brcm: replace NVRAM for Jetson TX1

Signed-off-by: Marty Jones <mj8263788@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17079
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 24c8f06807181a5fb3a63a74e5ee73d68c6d59f0)

2 weeks agoqualcommax: ipq807x: add Netgear DEVICE_VARS
Robert Marko [Sat, 7 Dec 2024 21:08:18 +0000 (22:08 +0100)]
qualcommax: ipq807x: add Netgear DEVICE_VARS

Add NETGEAR_BOARD_ID and NETGEAR_HW_ID to DEVICE_VARS as multiple devices
set them in their recipes, so without them being added to DEVICE_VARS then
simply the value from last recipe that gets evaluated is used and images
are generated with the wrong ID-s.

Link: https://github.com/openwrt/openwrt/pull/17203
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 1b6f7ec6794233fbf7c1cf17dcee34053c08fa9c)

2 weeks agogeneric: mtd: spinand: add support for FORESEE F35SQA001G
Bohdan Chubuk [Thu, 5 Dec 2024 22:17:56 +0000 (00:17 +0200)]
generic: mtd: spinand: add support for FORESEE F35SQA001G

Add support for FORESEE F35SQA001G SPI NAND.

Similar to F35SQA002G, but differs in capacity.
Datasheet:
  -  https://cdn.ozdisan.com/ETicaret_Dosya/704795_871495.pdf

Tested on Xiaomi AX3000T flashed with OpenWRT.

Signed-off-by: Bohdan Chubuk <chbgdn@gmail.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16915
(cherry picked from commit 1269a836edc45a42ab1e76dcd20e8cd8325529da)
Link: https://github.com/openwrt/openwrt/pull/17188
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2 weeks agogeneric: mtd: spinand: add support for FORESEE F35SQA002G
Bohdan Chubuk [Sun, 10 Nov 2024 23:57:31 +0000 (01:57 +0200)]
generic: mtd: spinand: add support for FORESEE F35SQA002G

Add support for FORESEE F35SQA002G SPI NAND.
Datasheet:
  https://www.longsys.com/uploads/LM-00006FORESEEF35SQA002GDatasheet_1650183701.pdf

Refresh all affected patch with make target/linux/refresh.

Signed-off-by: Martin Kurbanov <mmkurbanov@salutedevices.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Bohdan Chubuk <chbgdn@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16915
(cherry picked from commit 5348e2e81ad9d6cc34bee1511bff7805386205d4)
Link: https://github.com/openwrt/openwrt/pull/17188
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
3 weeks agoOpenWrt v24.10.0-rc2: revert to branch defaults
Hauke Mehrtens [Tue, 3 Dec 2024 21:24:36 +0000 (22:24 +0100)]
OpenWrt v24.10.0-rc2: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoOpenWrt v24.10.0-rc2: adjust config defaults v24.10.0-rc2
Hauke Mehrtens [Tue, 3 Dec 2024 21:24:32 +0000 (22:24 +0100)]
OpenWrt v24.10.0-rc2: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agobuild: Unconditionally append kmod feed for BuildBot
Christian Marangi [Tue, 3 Dec 2024 10:30:18 +0000 (11:30 +0100)]
build: Unconditionally append kmod feed for BuildBot

Recent changes to BuildBot config moved the kmods to a dedicated
directory and dropped them from the packages dir. This was needed as
both OPKG and APK gets confused if both entry are present.

To fix this, unconditionally append the kmod feed line if
CONFIG_BUILDBOT is enabled.

Fixes: #17146
Link: https://github.com/openwrt/openwrt/pull/17151
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 53ee2e8c0339c1d7ace47b8cf390147b86ea8d1d)

3 weeks agoOpenWrt v24.10.0-rc1: revert to branch defaults
Hauke Mehrtens [Sun, 1 Dec 2024 23:22:14 +0000 (00:22 +0100)]
OpenWrt v24.10.0-rc1: revert to branch defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoOpenWrt v24.10.0-rc1: adjust config defaults v24.10.0-rc1
Hauke Mehrtens [Sun, 1 Dec 2024 23:22:08 +0000 (00:22 +0100)]
OpenWrt v24.10.0-rc1: adjust config defaults

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 weeks agoRevert "ath79: elecom,wab: use nvmem"
INAGAKI Hiroshi [Wed, 27 Nov 2024 01:31:35 +0000 (10:31 +0900)]
Revert "ath79: elecom,wab: use nvmem"

This reverts commit 70e41d0205d95386881fa1cdf6ee00f6cca1b3f6.

"ethaddr" is stored into the "u-boot-env" (stock: "Config") partition
and it's quoted with double-quotations, but that format is not supported
by the current NVMEM u-boot-env driver (and mac_pton() function) and the
MAC address won't be parsed to byte array.
This causes random MAC addresses on the adapters, so revert the above
commit.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17116
(cherry picked from commit af611bce44d3dcffd47c47f46b95400445498be9)
Link: https://github.com/openwrt/openwrt/pull/17117
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agotools: ccache update to 4.10.2
Petr Štetiar [Thu, 28 Nov 2024 16:30:07 +0000 (16:30 +0000)]
tools: ccache update to 4.10.2

Fixes since 4.10:

 * Fixed detection of Fmt version 11 and newer.
 * Fixed prefix command lookup from PATH.

Suggested-by: Jen Wolf <jenwolf@protonmail.com>
Link: https://github.com/openwrt/openwrt/pull/17105
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 08f12283c7436814cdd10d93b5cb913f49acad3e)

3 weeks agomediatek: filogic: Cudy WR3000S v1: fix CRLF line endings
Petr Štetiar [Wed, 27 Nov 2024 08:39:46 +0000 (08:39 +0000)]
mediatek: filogic: Cudy WR3000S v1: fix CRLF line endings

DTS file for this device seems to be using CRLF line endings, so lets
convert them into Unix-style LF.

Fixes: faf4b3e0f7a5 ("mediatek: filogic: add support for Cudy WR3000S v1")
Link: https://github.com/openwrt/openwrt/pull/17096
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 30ae0b3f1e331646054d8110e931dfaa32f7b414)

3 weeks agoapk: mark package as broken to hide it by default
Petr Štetiar [Wed, 27 Nov 2024 08:32:01 +0000 (08:32 +0000)]
apk: mark package as broken to hide it by default

During the last OpenWrt developer meeting 2024-11-26 it was decided,
that 24.10 will be the last release using opkg package manager and thus
apk won't be supported, so make it explicit and mark apk package manager
as broken.

References: https://openwrt.org/meetings/20241126#release_2410
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoconfig: Mark USE_APK broken
Hauke Mehrtens [Tue, 26 Nov 2024 23:25:12 +0000 (00:25 +0100)]
config: Mark USE_APK broken

This will hide the USE_APK setting in OpenWrt 24.10 by default.

APK is not stable yet and we do not want to support it in OpenWrt 24.10 branch.

References: https://openwrt.org/meetings/20241126#release_2410
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [meeting notes ref, config]
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agogdb: Fix description for apk, remove backtick
Hannu Nyman [Sun, 10 Nov 2024 15:16:51 +0000 (17:16 +0200)]
gdb: Fix description for apk, remove backtick

Remove backtick from gdb description text, as that seems to
be recognized as a shell action by compilation with apk,
causing error.

Example from test buildbot:
 rstrip.sh: /builder/shared-workdir/build/sdk/build_dir/target-aarch64_generic_musl/gdb-15.2/ipkg-aarch64_generic/gdb/usr/bin/gdb: executable
 bash: -c: line 1: unexpected EOF while looking for matching ``'
 bash: -c: line 2: syntax error: unexpected end of file
 make[3]: *** [Makefile:123: /builder/shared-workdir/build/sdk/bin/packages/aarch64_generic/base/gdb-15.2-r1.apk] Error 2

Local compilation:
 rstrip.sh: /OpenWrt/aarch64/build_dir/target-aarch64_cortex-a53_musl/gdb-15.2/ipkg-aarch64_cortex-a53/gdb/usr/bin/gdb: executable
 bash: -c: line 1: unexpected EOF while looking for matching ``'
 make[2]: *** [Makefile:123: /OpenWrt/aarch64/bin/packages/aarch64_cortex-a53/base/gdb-15.2-r1.apk] Error 2

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/16908
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit adb921c34ff220951a699665bb35dc0e3538b3b2)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: remove ktd-202x driver filogic image (Aer Vero W6m)
George Oldfort [Tue, 26 Nov 2024 05:42:25 +0000 (06:42 +0100)]
mediatek: remove ktd-202x driver filogic image (Aer Vero W6m)

Image build fails with PR #16861 merged while PR #16860 not merged.

Removing kmod-leds-ktd202x from filogic.mk will fix the build process.

Fixes: 2898d1d1269a ("mediatek: add support for Acer Predator W6d and Acer Vero W6m")
Signed-off-by: George Oldfort <openwrt@10099.de>
Link: https://github.com/openwrt/openwrt/pull/17087
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1bdb6d84046ec1c47f28c57651358470ed212ec3)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: enable pressure interface
John Audia [Sun, 29 Oct 2023 08:32:21 +0000 (04:32 -0400)]
kernel: enable pressure interface

PSI provides a canonical way to see resource pressure increases as
they develop, with pressure metrics for three major resources:
memory, CPU, and IO. PSI stats are like barometers that provide
fair warning of impending resource shortages, enabling users to
take more proactive, granular, and nuanced steps when resources
start becoming scarce.

References:
* https://www.kernel.org/doc/html/latest/accounting/psi.html
* https://lwn.net/Articles/759781/

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000
Run-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/13819
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit eed39d45c2ff901b5327c7ab63c9131166e3140e)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: Routerich AX3000: add OpenWrt U-Boot layout
Mikhail Zhilkin [Sat, 26 Oct 2024 09:37:14 +0000 (09:37 +0000)]
mediatek: Routerich AX3000: add OpenWrt U-Boot layout

This commit adds OpenWrt U-Boot layout support for Routerich AX3000. The
aims:
1. Get open-source U-Boot;
2. Get maximum available free space in OpenWrt.

Install
-------
1. Copy OpenWrt ubootmod-bl31-uboot.fip, ubootmod-preloader.bin, to the
   /tmp folder of the router using scp.

2. Make mtd partitions backups:
   http://192.168.1.1/cgi-bin/luci/admin/system/flash -> Save mtdblock
   contents

3. Install kmod-mtd-rw:
```
opkg update && opkg install kmod-mtd-rw
```

4. Write FIP and preloader:
```
insmod mtd-rw i_want_a_brick=1
mtd unlock BL2
mtd erase BL2
mtd write /tmp/ubootmod-preloader.bin BL2
mtd unlock FIP
mtd erase FIP
mtd write /tmp/ubootmod-bl31-uboot.fip FIP
```

5. Copy OpenWrt ubootmod-initramfs-recovery.itb to the tftp server root
   with IP 192.168.1.254.

6. Reboot router:
```
reboot
```
U-Boot will automatically download from the tftp server and boot OpenWrt
initramfs system.

7. Copy OpenWrt ubootmod-squashfs-sysupgrade.itb to the /tmp dir of the
   router using scp.

8. Run sysupgrade:
```
sysupgrade -n /tmp/squashfs-sysupgrade.itb
```

Recovery
--------
1. Place OpenWrt initramfs-recovery.itb image (with original name) on the
   tftp server (IP: 192.168.1.254).
2. Press "reset" button and power on the router. After ~10 sec release the
   button.
3. Use OpenWrt initramfs system for recovery.

BL2 and FIP recovery
--------------------
Use mtk_uartboot and UART connection if BL2 or FIP in UBI is destroyed:
Link: https://github.com/981213/mtk_uartboot
Return to stock:
----------------
1. Copy partition backups (BL2.bin and FIP.bin) to the /tmp dir of the
   router using scp.

2. Install kmod-mtd-rw:
```
opkg update && opkg install kmod-mtd-rw
```

3. Restore stock U-Boot and reboot:
```
insmod mtd-rw i_want_a_brick=1
mtd unlock BL2
mtd erase BL2
mtd write /tmp/BL2.bin BL2
mtd unlock FIP
mtd erase FIP
mtd write /tmp/FIP.bin FIP
reboot
```

4. Open U-Boot web recovery, upload stock firmware image and start
   upgrade.
Link: http://192.168.1.1
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16791
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d413163832df93c321eef3fce8c4f72c350d5308)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agouboot-mediatek: add Routerich AX3000 support
Mikhail Zhilkin [Sat, 26 Oct 2024 09:34:43 +0000 (09:34 +0000)]
uboot-mediatek: add Routerich AX3000 support

Add U-Boot replacement loader for Routerich AX3000.

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16791
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c0581520b1c53fe2fc4a310f916590dcc428474a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoramips: dna_valokuitu-plus-ex400: clean-up image creation
Mauri Sandberg [Mon, 28 Oct 2024 20:13:04 +0000 (22:13 +0200)]
ramips: dna_valokuitu-plus-ex400: clean-up image creation

Code cleanup. Simplify and unify how kernel image is passed to
Build/dna-bootfs

Signed-off-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/16811
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ec839c786ca56c6143257b89f146aeafbb6cfd3a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoramips: mt76x8: disable unused Ralink systick driver
Shiji Yang [Sun, 3 Nov 2024 04:30:21 +0000 (12:30 +0800)]
ramips: mt76x8: disable unused Ralink systick driver

The mt76x8 series SoCs use the MIPS generic systick timer. Sync the
upstream Ralink systick driver changes and disable it for mt76x8
target to reduce the kernel size.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16844
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0c57510cedeff9caf795930ff86a436aa54bcc6d)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: usb: kmod-usb-audio: Fix dependency
Hauke Mehrtens [Sun, 24 Nov 2024 13:57:19 +0000 (14:57 +0100)]
kernel: usb: kmod-usb-audio: Fix dependency

Change the dependency on the kmod-media-controller from depends to
select.

Fixes: 109592524663 ("kernel: add kmod-media-controller dependency for kmod-usb-audio")
Link: https://github.com/openwrt/openwrt/pull/17058
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b7dd70a0d708b7f8fe9f5c95d09013245e3dcb6b)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agostm32: Remove unnecessary kernel options
Hauke Mehrtens [Sun, 24 Nov 2024 13:53:47 +0000 (14:53 +0100)]
stm32: Remove unnecessary kernel options

These options are filtered out since some weeks, remove them also from
the new stm32 target.

Fixes: 851e7f77e424 ("stm32: add new stm32 target")
Link: https://github.com/openwrt/openwrt/pull/17058
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ea2c860225b8bbda98ed0526dc670825866835b6)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoCI: labeler: Add stm32 target
Hauke Mehrtens [Sun, 24 Nov 2024 13:52:22 +0000 (14:52 +0100)]
CI: labeler: Add stm32 target

Add a label for changes in the stm32 target.

Fixes: 851e7f77e424 ("stm32: add new stm32 target")
Link: https://github.com/openwrt/openwrt/pull/17058
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit eb7aa07a0e23e931579de07e0dbdec735b8e35b2)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agodropbear: bump to 2024.86
Hauke Mehrtens [Sat, 23 Nov 2024 21:32:03 +0000 (22:32 +0100)]
dropbear: bump to 2024.86

- update dropbear to latest stable 2024.86;
  for the changes see https://matt.ucc.asn.au/dropbear/CHANGES

Link: https://github.com/openwrt/openwrt/pull/17053
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit a9d3c5b4c9bf910d4b3b42109161b1f6526b76eb)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agox86: Deactivate kernel options with extra overhead
Hauke Mehrtens [Sun, 24 Nov 2024 13:39:57 +0000 (14:39 +0100)]
x86: Deactivate kernel options with extra overhead

Deactivate CONFIG_CONTEXT_TRACKING_USER_FORCE: Force user context
tracking: This is a testing feature which should not be activate in
production environments according to the Kconfig help. It adds an extra
overhead.

Deactivate CONFIG_RCU_NOCB_CPU_DEFAULT_ALL: Offload RCU callback
processing from all CPUs by default: This option should only be used in
aggressive HPC or real-time workloads which we do not have in OpenWrt.
For normal workloads it increases the number of context switches.

In the default Arch Linux kernel both options are not activated.

Fixes: 31111680f6fc ("x86: switch config to a tickless kernel")
Link: https://github.com/openwrt/openwrt/pull/17057
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ed523454454965da07c9c7a009ae0a3995aa7c33)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: filogic: add support for Cudy WR3000S v1
David Ignjic [Wed, 13 Nov 2024 10:20:27 +0000 (11:20 +0100)]
mediatek: filogic: add support for Cudy WR3000S v1

Hardware
--------
MediaTek MT7981 WiSoC
256MB DDR3 RAM
128MB SPI-NAND (XMC XM25QH128C)
MediaTek MT7981 2x2 DBDC 802.11ax 2T2R (2.4 / 5)
UART: 115200 8N1 3.3V

MAC:
LAN MAC: label mac
WAN MAC: label mac + 1
2.4G MAC: label mac
5G MAC: label mac + 1 with LA bit set

Installation
------------

1. Connect to the serial port as described in the "Hardware" section.

2. Power on the device + press reset pin. Keep pressing reset pin to enter the U-Boot  shell.

3. Download the OpenWrt initramfs image. Place it on an TFTP server
   connected to the Cudy LAN ports. Make sure the server is reachable at
   192.168.1.88. Rename the image to "cudy3000s.bin"

4. Download and boot the OpenWrt initramfs image.

   $ tftpboot 0x46000000 cudy3000s.bin; bootm 0x46000000

5. Transfer the OpenWrt sysupgrade image to the device using scp.
   Install with sysupgrade.

Signed-off-by: David Ignjic <ignjic@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16939
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit faf4b3e0f7a583a8fa1a65b302ac74457e48575f)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: add support for Acer Predator W6d and Acer Vero W6m
George Oldfort [Mon, 11 Nov 2024 10:18:19 +0000 (11:18 +0100)]
mediatek: add support for Acer Predator W6d and Acer Vero W6m

This commit adds support for two variants of the already supported router
Acer Predator Connect W6: The Acer Predator Connect W6d (W6 without 6 GHz
wifi) and the Acer Connect Vero W6m (W6 without 2.5G eth1 port, usb3 port,
and the 6 on-board gpio RGB LEDs, and with a KTD2026 RGB LED controller
instead of the KTD2061 LED controller of the W6/W6d).

The device tree for the W6m refers to the KTD202x driver suggested in
PR #16860.

Patching target/linux/mediatek/filogic/base-files/lib/upgrade/platform.sh
removes the code repetition in (old) lines 121 to 124 on the occasion.

This is the last of four commits into which the original commit was split
to make reviews easier and more targeted.

Signed-off-by: George Oldfort <openwrt@10099.de>
Link: https://github.com/openwrt/openwrt/pull/16861
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 2898d1d1269a841e5bb8673801bd2a04ad120031)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: improve device tree for Acer Predator Connect W6
George Oldfort [Mon, 11 Nov 2024 09:40:45 +0000 (10:40 +0100)]
mediatek: improve device tree for Acer Predator Connect W6

In order to prepare for OpenWrt support other Acer W6 devices and to get
a step further to full hardware support for Acer Predator Connect W6, this
commit
- adjusts the product name ("Acer Predator Connect W6")
- updates gpio LED labels to function/color scheme
- show router status by using first rgb led instead of it's red color only
  (blue: booting/failsafe mode; red: sysupgrade; green: running – was: red)
- changes switch/eth1 led configuration to reflect RX/TX activity and speed
  (green: full 1Gbps/2.5Gbps speed; amber: lower speed; blink: RX/TX)
- shortens dummy dm-mod.create string in bootargs
- enables W6's i2c interface

This is the third of four commits into which the original commit was split
to make reviews easier and more targeted.

Signed-off-by: George Oldfort <openwrt@10099.de>
Link: https://github.com/openwrt/openwrt/pull/16861
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d42075dcefa407a03a30663879688475bb912729)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: make use of Acer Predator Connect W6's u-boot environment
George Oldfort [Mon, 11 Nov 2024 09:14:55 +0000 (10:14 +0100)]
mediatek: make use of Acer Predator Connect W6's u-boot environment

In order to prepare OpenWrt support for other Acer W6 devices and to adapt
the procedure to read and set mac addresses which other devices of the same
target are using (instead of needing an additional script and creating an
additional structure in the file system), this commit
- reads device mac addresses from u-boot environment
- avoids the detour via the file system to set the mac addresses
- drops redundant file /lib/preinit/05_extract_factory_data.sh

The idea and the implementation were thankfully taken from PR #16410.

This is the second of four commits into which the original commit was split
to make reviews easier and more targeted.

Signed-off-by: George Oldfort <openwrt@10099.de>
Link: https://github.com/openwrt/openwrt/pull/16861
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e7aaba2587e57dbd157899f7a2215ec6b7af5f89)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: split Acer/W6 dts into W6 common dtsi and device specific dts
George Oldfort [Mon, 11 Nov 2024 08:25:56 +0000 (09:25 +0100)]
mediatek: split Acer/W6 dts into W6 common dtsi and device specific dts

In order to prepare OpenWrt support for other Acer W6 devices, this commit
moves all device tree components that are used by all Acer W6/W6e/W6d/W6m
routers from mt7986a-acer-predator-w6.dts to mt7986a-acer-w6-common.dtsi
(new file) and includes this dtsi file in mt7986a-acer-predator-w6.dts.

Minor changes had to be made to the device tree in order to improve clarity
and – notably – to reduce the number of dtc warnings:
- replace (obviously wrong) led@<N> gpio led entities by led-<N>
- remove unnecessary (default-state = "off") gpio led statements
- rename entity “memory” to “memory@0”
- add missing #address-cells and #address-size in /soc/mmc@11230000
- add missing #address-cells and #address-size in /soc/pcie@11280000
- introduce symbols “nvmem” and “swport0” in dtsi (referenced in dts)

The changes were checked with `diff -BEZbdtwy --suppress-common-lines ...`
(comparing two dts files created using old and new fdt-1 blobs again), see
https://github.com/openwrt/openwrt/pull/16861/#issuecomment-2455680020 .

This is the first of four commits into which the original commit was split
to make reviews easier and more targeted.

Signed-off-by: George Oldfort <openwrt@10099.de>
Link: https://github.com/openwrt/openwrt/pull/16861
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ce3b36b3d5374709b9b091390cb9053657be17fa)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agolinux-firmware: Add support for Intel AX411
Joerg Bayer [Sat, 13 Apr 2024 14:05:24 +0000 (16:05 +0200)]
linux-firmware: Add support for Intel AX411

Add support for Intel AX411 CNVio2 device.

Signed-off-by: Joerg Bayer <sg-o@live.de>
Link: https://github.com/openwrt/openwrt/pull/15153
[squashed and updated commit description, update to version 89]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c89ed7acc897794b06b61f10d8f641ee06fbaacf)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoath79: add support for TP-Link CPE710-v2
Tim Noack [Mon, 21 Oct 2024 12:21:59 +0000 (12:21 +0000)]
ath79: add support for TP-Link CPE710-v2

TP-Link CPE710-v2 is an outdoor wireless CPE for 5 GHz with one Ethernet
port based on the AP152 reference board. Compared to the CPE710-v1, the
only change observed in hardware is that the mdio address of the ethernet
physical changed from 0x4 to 0x0.

Specifications:
- SoC: QCA9563-AL3A MIPS 74kc @ 775MHz, AHB @ 258MHz
- RAM: 128MiB DDR2 @ 650MHz
- Flash: 16MiB SPI NOR Based on the GD25Q128
- Wi-Fi 5Ghz: ath10k chip (802.11ac for up to 867Mbps on 5GHz wireless
  data rate), based on the QCA9896
- Ethernet: one 1GbE port
- 23dBi high-gain directional 2×2 MIMO parabolic antenna
- Power, LAN, WLAN5G Blue LEDs

Flashing instructions:
Flash factory image through stock firmware WEB UI or through TFTP
To get to TFTP recovery just hold reset button while powering on for around
30-40 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254

Signed-off-by: Tim Noack <tim@noack.id>
Link: https://github.com/openwrt/openwrt/pull/16637
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 5572e0196a93604716ec36ebb8db6737fc6677aa)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoath79: refactor dts of TP-Link CPE710-v1
Tim Noack [Mon, 21 Oct 2024 12:21:41 +0000 (12:21 +0000)]
ath79: refactor dts of TP-Link CPE710-v1

This is done in preparation of adding support for the CPE710-v2,
which uses a similiar device tree.

Signed-off-by: Tim Noack <tim@noack.id>
Link: https://github.com/openwrt/openwrt/pull/16637
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 832cc8ce04122ea726178687b5168187b2465f7f)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoramips: mt76x8: Add support for Zbtlink ZBT-WE2426-B
Vaclav Svoboda [Mon, 11 Nov 2024 21:34:00 +0000 (22:34 +0100)]
ramips: mt76x8: Add support for Zbtlink ZBT-WE2426-B

The Zbtlink ZBT-WE2426-B is an indoor dual band WiFi router
with 4 external non detachable antennas and 5 Fast Ethernet ports.

Hardware of ZBT-WE2426-B:
- SoC: MT7628AN
- RAM: 64 MB (Winbond W9751G6K8-25)
- Storage: 8 MB SPI flash (S25FL064K)
- Ethernet: 5x 10/100 Mbps LAN1,LAN2,LAN3,LAN4 & WAN
- Wireless: 2.4GHz: on SoC (802.11b/g/n)
- Wireless: 5GHz: Mediatek MT7612EN (802.11n/ac)
- LEDs: 8x
- Buttons: 1x reset
- USB: 1x 2.0
- MicroSD slot: 1x
- Power: 9 VDC, 1 A
- Uart: GND TX RX PWR - J1 on the PCB
- Board silkscreen: "ZBT-WE2426-C V04" "2018-02-28" "CTT" "13 18"

Backup the stock firmware, settings and calibration data:
This router comes with PandoraBox OpenWrt firmware, so it is
possible to get all MTD partitions using scp.

Installation:
- Using the bootloader web server. Hold the reset button while turning
  the power on. Upload the sysupgrade image on http://192.168.1.1.
- Using the sysupgrade command in PandoraBox OpenWrt.

LEDs:
- LAN1,LAN2,LAN3,LAN4,WAN,WLAN2G use GPIO pins of the MT7628AN SoC
  (GPIOs 43,42,41,40,39,44)
- WLAN5G uses pin of MT7612EN.
- The POWER LED is directly connected to the VCC. It can be reconnected to
  the GPIO 37 of the MT7628AN SoC by resoldering SMD resistor on the PCB.

Buttons:
- The RESET button is connected to the GPIO 38 of the MT7628AN SoC.

MAC addresses as verified by OEM firmware:
use   address   source
2g    *:b0      factory 0x4 (label)
5g    *:b1      factory 0x8004
LAN   *:b2      factory 0x28
WAN   *:b3      factory 0x2e

Signed-off-by: Vaclav Svoboda <svoboda@neng.cz>
Link: https://github.com/openwrt/openwrt/pull/16927
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 3a9752ea027b8969750c0dd7f89b6afc357dcffa)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomvebu: devm for mutex_init
Rosen Penev [Sat, 19 Oct 2024 02:19:50 +0000 (19:19 -0700)]
mvebu: devm for mutex_init

It's common to avoid calling mutex_destroy when done. It's not correct
strictly speaking.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16753
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6280b4abfbc087157bc233083a67a42bffa31010)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomxs: run kernel_oldconfig
Rosen Penev [Wed, 23 Oct 2024 00:07:44 +0000 (17:07 -0700)]
mxs: run kernel_oldconfig

small change.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16913
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 55644397cd3cb3d8c77d74c9d22872502d091257)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: modules: appletalk: add for Netatalk v4
Antonio Pastor [Sat, 16 Nov 2024 20:09:49 +0000 (15:09 -0500)]
kernel: modules: appletalk: add for Netatalk v4

Netatalk v4 reintroduces AppleTalk and this module is required for
layer 3 protocol support.

Module was removed in kernel 4.14 for OpenWrt 18.06 (commmit
14a0131, 22/02/2018). At the time nothing used it as Netatalk v3
did not support AppleTalk.

Not building ipddp feature/module like it was in the past, as
recommended by upstream Netatalk maintainers.

Signed-off-by: Antonio Pastor <antonio.pastor@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16979
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 5eb25dddb17fa3cf4958e91dfc9fc868c9eb03ac)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agostm32: add new stm32 target
Thomas Richard [Thu, 26 Sep 2024 14:55:22 +0000 (16:55 +0200)]
stm32: add new stm32 target

New stm32 target introduces support for stm32mp1 based devices.
For now it includes an initial support of the STM32MP135F-DK device.
The specifications bellow only list supported features.

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

SOC: STM32MP135FAF7
RAM: 512 MiB
Storage: SD Card
Ethernet: 2x 100 Mbps
Wireless: 2.4GHz Cypress CYW43455 (802.11b/g/n)
LEDs: Heartbeat (Blue)
Buttons: 1x Reset, 1x User (USER2)
USB: 4x 2.0 Type-A

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 851e7f77e424f24cda8531330f2d82ebc942c0a4)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: package v4l2-async and v4l2-fwnode drivers
Thomas Richard [Tue, 5 Nov 2024 10:13:34 +0000 (11:13 +0100)]
kernel: package v4l2-async and v4l2-fwnode drivers

These packages are needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e109831e07e398cc50839a30a1cf18c4436983f4)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: add kmod-media-controller dependency for kmod-usb-audio
Thomas Richard [Tue, 5 Nov 2024 10:23:36 +0000 (11:23 +0100)]
kernel: add kmod-media-controller dependency for kmod-usb-audio

The snd-usb-audio drivers uses media controller if media controller is set.
So add kmod-media-controller as dependency.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 109592524663ae8bbda47e4ad51a124153a1c903)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: package media controller driver
Thomas Richard [Tue, 5 Nov 2024 10:10:44 +0000 (11:10 +0100)]
kernel: package media controller driver

It is needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit bb3418f21f7b8fe0dcd335375d183dd2a81772bf)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: package industrialio-buffer-cb driver
Thomas Richard [Tue, 5 Nov 2024 09:39:47 +0000 (10:39 +0100)]
kernel: package industrialio-buffer-cb driver

It is needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b0adf5e0fdc0d4b449bced9191a95bf08124c1ac)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: package crypto_engine driver
Thomas Richard [Tue, 5 Nov 2024 09:38:49 +0000 (10:38 +0100)]
kernel: package crypto_engine driver

It is needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7bcc68ede36dcc66ec6cdb45c3201e0af0f90708)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: unset CONFIG_DEVFREQ_THERMAL in kmod-thermal package
Thomas Richard [Fri, 25 Oct 2024 13:23:26 +0000 (15:23 +0200)]
kernel: unset CONFIG_DEVFREQ_THERMAL in kmod-thermal package

It is needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6b9df468f05fefa21a8cbce2fdb2e59692b4d246)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: package snd-soc-dmic driver
Thomas Richard [Fri, 25 Oct 2024 13:21:57 +0000 (15:21 +0200)]
kernel: package snd-soc-dmic driver

It is needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e606366a2e018e0a3b25e3dd4b3a937bb53c70e1)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: package industrialio-hw-consumer driver
Thomas Richard [Fri, 25 Oct 2024 13:20:38 +0000 (15:20 +0200)]
kernel: package industrialio-hw-consumer driver

It is needed for the stm32/stm32mp1 subtarget.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ff96bd84ce0bae633007cf0de82d69796cf3508a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomurata-nvram: add new package
Thomas Richard [Thu, 10 Oct 2024 15:21:16 +0000 (17:21 +0200)]
murata-nvram: add new package

This package contains nvram files for Murata's Wi-Fi/Bluetooth modules.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit be937952fdf8f78fb45ea001258074ddb45e0891)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomurata-firmware: add new package
Thomas Richard [Thu, 10 Oct 2024 15:19:38 +0000 (17:19 +0200)]
murata-firmware: add new package

This package contains firmwares provided by Murata.
See https://community.murata.com/.

Murata firmwares are used by wifi chip on stm32 boards.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 960f5f94d7cefe89abd41347124fd3f0fbb945ae)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomac80211: enable CONFIG_BRCMFMAC_SDIO for stm32
Thomas Richard [Tue, 24 Sep 2024 16:06:28 +0000 (18:06 +0200)]
mac80211: enable CONFIG_BRCMFMAC_SDIO for stm32

All stm32 devices use BCM43430 Wi-Fi interface in SDIO mode.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 456e0aad97413816aee41e68b3d3cfdfadc2fd43)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoarm-trusted-firmware-stm32: add ATF for stm32 boards
Thomas Richard [Thu, 26 Sep 2024 14:29:41 +0000 (16:29 +0200)]
arm-trusted-firmware-stm32: add ATF for stm32 boards

Add ATF for stm32 boards, with the first being STM32MP135F-DK.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 08dcb73c8d05aa774957422731bfed1b322648d7)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agouboot-stm32: add U-Boot for stm32 boards
Thomas Richard [Thu, 26 Sep 2024 14:24:26 +0000 (16:24 +0200)]
uboot-stm32: add U-Boot for stm32 boards

Add U-Boot for stm32 boards, with the first being STM32MP135F-DK.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ac79ad0757764028a138d0138c8d9aa74420f9ed)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agooptee-os-stm32: add OP-TEE for stm32 boards
Thomas Richard [Thu, 26 Sep 2024 14:19:35 +0000 (16:19 +0200)]
optee-os-stm32: add OP-TEE for stm32 boards

Add OP-TEE for stm32 boards, with the first being STM32MP135F-DK.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit fae25d4001bcbae0bb1ce60b676bd421e97d78fc)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agobuild: add generic build template for optee-os packages
Thomas Richard [Thu, 26 Sep 2024 14:10:26 +0000 (16:10 +0200)]
build: add generic build template for optee-os packages

Add a generic template include/optee-os.mk to build OP-TEE.

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
Link: https://github.com/openwrt/openwrt/pull/16716
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit dedb90e8f82a179ad67b6eac3b6f8862b9183077)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: change Routerich AX3000 ubi size
Romanov Danila [Mon, 21 Oct 2024 18:34:34 +0000 (21:34 +0300)]
mediatek: change Routerich AX3000 ubi size
All new routers are shipped with ubi size 112MB since early September.
Bootloader update required (ask vendor , see wiki)

These partitions weren't used:
firmware_backup
zrsave
config2

Signed-off-by: Romanov Danila <pervokur@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16686
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d8a9669093359d60f4d6f183b58a22f24cf01731)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agox86: add all ports to the Gowin 1U default network config
Til Kaiser [Fri, 15 Nov 2024 15:49:14 +0000 (16:49 +0100)]
x86: add all ports to the Gowin 1U default network config

Commit e52c57bb1b30375e0bcc5523db76a672a4a8b4a4 renamed all
network ports to match the faceplate of the Gowin 1U Rack
Mount Server and added the br-lan bridge for the eth* ports.

This commit adds the PoE port to the br-lan bridge and a
br-wan bridge for the two SFP ports so that all ports are
part of the default network configuration.

Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/16965
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 75af6a0d736a696ca726cb44d813791858c29f0c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoramips: sync upstream Ralink clock patches
Shiji Yang [Fri, 22 Nov 2024 10:12:12 +0000 (18:12 +0800)]
ramips: sync upstream Ralink clock patches

1. Add sdhc clock for MT7620 and MT76x8 SoCs.
2. Fix clock driver warning for RT2880, RT305x and RT3883.

Link: https://lore.kernel.org/all/20240910044024.120009-1-sergio.paracuellos@gmail.com/
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/17037
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7bb99bca3dfd878e6ad950b218c0cb96d36d14f4)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoRevert "mediatek: fix pwn fan settings for sinovoip bpi-r3"
Robert Marko [Thu, 21 Nov 2024 21:04:41 +0000 (22:04 +0100)]
Revert "mediatek: fix pwn fan settings for sinovoip bpi-r3"

This reverts commit 3467ea905b40f0df87700a15b716b1f5a4efc955.

I merged it by accident.

Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 52b6c9247997e51a97f13bb9e94749bc34e2d52e)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: fix pwn fan settings for sinovoip bpi-r3
Mikhail Kshevetskiy [Fri, 15 Nov 2024 00:17:07 +0000 (03:17 +0300)]
mediatek: fix pwn fan settings for sinovoip bpi-r3

Popular bpi-r3 pwm fans like this one

  https://www.amazon.com/youyeetoo-Barebone-Fan-BPI-R3-Integrated/dp/B0CCCTY8PS

will not work properly with current openwrt-23.05/24.10 firmware.
Trying different pwm setting

  echo $value > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1

I found:

  pwm1 value     fan rotation speed   cpu temperature     notes
  -----------------------------------------------------------------
    0            maximal              31.5 Celsius        too noisy
   40            optimal              35.2 Celsius        no noise hearable
   95            minimal
   above 95      does not rotate      55.5 Celsius
  -----------------------------------------------------------------

At the moment we have following cooling levels:

  cooling-levels = <255 96 0>;

for cpu-active-high, cpu-active-medium and cpu-active-low modes correspondingly.
Thus only cpu-active-high and cpu-active-low are usable. I think this is wrong.

This patch fixes cpu-active-medium settings for bpi-r3 board.

PS: I know, the patch is not ideal as it can break pwm fan for some users.
    There are some peoples that use handmade cooling solutions, but:
      * discussed cooler is the only 'official' pwm cooler for bpi-r3
        available on the market.
      * most peoples will use passive cooling available on the market or
        the discussed cooler.
      * the pwm-fan dts section was added before the official cooler
        appears on the market.
    Thus it should not be a lot of harm from this fix.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16974
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 3467ea905b40f0df87700a15b716b1f5a4efc955)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agompc85xx: p2020: add missing symbols
Rosen Penev [Thu, 17 Oct 2024 23:14:07 +0000 (16:14 -0700)]
mpc85xx: p2020: add missing symbols

Since kernel_oldconfig doesn't work properly with it, I ran that first
and then moved all the config symbols to config-6.6 and found the
differences.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16847
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 22664498ebdd47aad9b15f62edbcaadd851fd62c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agompc85xx: p1020: add missing symbols
Rosen Penev [Thu, 17 Oct 2024 23:09:17 +0000 (16:09 -0700)]
mpc85xx: p1020: add missing symbols

Since kernel_oldconfig doesn't work properly with it, I ran that first
and then moved all the config symbols to config-6.6 and found the
differences.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16847
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit bec8edb6d61eb74e8d7578749560cbb5040f307a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agompc85xx: p1010: add missing symbols
Rosen Penev [Wed, 16 Oct 2024 22:42:56 +0000 (15:42 -0700)]
mpc85xx: p1010: add missing symbols

Since kernel_oldconfig doesn't work properly with it, I ran that first
and then moved all the config symbols to config-6.6 and found the
differences.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16847
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit e9dd6da91661612d2330c2b633f3dd55b93218f8)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agompc85xx: run make kernel_oldconfig
Rosen Penev [Wed, 16 Oct 2024 22:17:14 +0000 (15:17 -0700)]
mpc85xx: run make kernel_oldconfig

Adjusts the default config to modern kernels.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16847
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 890d47b60a221328bbf05518eedc35ac5bd922f1)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoodhcp6c: update to Git HEAD (2024-09-25)
He Ping [Tue, 19 Nov 2024 02:41:42 +0000 (10:41 +0800)]
odhcp6c: update to Git HEAD (2024-09-25)

b6ae9ffaeb0e odhcp6c: allow to request specific ipv6 prefix

Signed-off-by: He Ping <pinghejk@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17013
Signed-off-by: Petr Štetiar <ynezz@true.cz> [hash, commit]
(cherry picked from commit b0312c10818f36bc6e61a518bb528d2809562796)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoomnia-eeprom: depend only on subtarget
Robert Marko [Mon, 18 Nov 2024 16:15:54 +0000 (17:15 +0100)]
omnia-eeprom: depend only on subtarget

Now that omnia-eeprom is marked nonshared building the cortex-a9 mvebu
subtarget will fail with:
ERROR: unable to select packages:
  omnia-eeprom (no such package):
    required by: world[omnia-eeprom]

This is because omnia-eeprom depends on TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia
which will not be satisfied in buildbots since CONFIG_TARGET_ALL_PROFILES
and CONFIG_TARGET_PER_DEVICE_ROOTFS are set in which case
CONFIG_TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia is not set.

So, lets simply depend on the mvebu/cortex-a9 subtarget.

Fixes: 371e7bef4046 ("omnia-eeprom: Mark it nonshared")
Link: https://github.com/openwrt/openwrt/pull/17007
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 90de3b277b8e1d121b2f7023578979c6b616167f)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agogeneric: add CONFIG_FB_INTEL
Robert Marko [Sun, 17 Nov 2024 18:22:25 +0000 (19:22 +0100)]
generic: add CONFIG_FB_INTEL

CONFIG_FB_INTEL is now visible on x86 since i915 driver is packaged as kmod
now and it stops compilation, so add it to the generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 57daea682e1c6e6da91f92efed717159f9ffffb0)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agodropbear: use config_get_bool enable
Sergey Ponomarev [Mon, 27 May 2024 23:50:09 +0000 (02:50 +0300)]
dropbear: use config_get_bool enable

The config_get_bool also works with on/off, yes/no, true/false.
Add 'main' section name. This will make it easier to change settings from uci.
Add a link to documentation.

Signed-off-by: Sergey Ponomarev <stokito@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15579
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 4511fa4b30f73185597990ce563bbf3f96385292)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: filter out compiler opts from config
Rosen Penev [Wed, 2 Oct 2024 22:25:35 +0000 (15:25 -0700)]
kernel: filter out compiler opts from config

These get dynamically set based on compiler version. Not relevant for
targets.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16770
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit cd92cbddf8c473507a9af290c99f2aef8c368784)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: remove GCC11_NO_ARRAY_BOUNDS
Rosen Penev [Sat, 16 Nov 2024 19:01:15 +0000 (11:01 -0800)]
kernel: remove GCC11_NO_ARRAY_BOUNDS

This symbol is no longer present.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16770
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit da8abd4a1e86a37ddcd4fa0e6acc5bf8b1b4c70e)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: move CONFIG_INTEL_MEI settings to target generic
Mieczyslaw Nalewaj [Sat, 16 Nov 2024 16:26:52 +0000 (17:26 +0100)]
kernel: move CONFIG_INTEL_MEI settings to target generic

Move settings CONFIG_INTEL_MEI_GSC_PROXY, CONFIG_INTEL_MEI_HDCP
and CONFIG_INTEL_MEI_PXP to target generic.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16971
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 84665993d6beed8ac2b557f8d3e005a29e3fd09c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoomnia-eeprom: Mark it nonshared
Hauke Mehrtens [Sat, 16 Nov 2024 17:38:42 +0000 (18:38 +0100)]
omnia-eeprom: Mark it nonshared

This tool was build in the phase 2 build, there the
TARGET_mvebu_cortexa9_DEVICE_cznic_turris-omnia dependecy was probably
not meat. Mark it as non shared to build it together with the target
where this option is set.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Link: https://github.com/openwrt/openwrt/pull/16975
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 371e7bef4046fb3992ecfb92b5b741c22fa3ade6)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agokernel: disable drm-i915 module for x86/geode
Mieczyslaw Nalewaj [Sun, 17 Nov 2024 07:40:44 +0000 (08:40 +0100)]
kernel: disable drm-i915 module for x86/geode

Disable drm-i915 module for target x86/geode.

Fixes: 77cfe8f ("x86: make i915 as a kmod with required firmware")
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16977
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 226f74badd61fb1586dd3531835aeaa3bf6fe467)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoipq807x: delete unused legacy eMMC sysupgrade code
Rodrigo Balerdi [Fri, 8 Nov 2024 20:40:29 +0000 (17:40 -0300)]
ipq807x: delete unused legacy eMMC sysupgrade code

All ipq807x devices that were using the legacy 'mmc_do_upgrade' eMMC
sysupgrade code were ported to the replacement 'emmc_do_upgrade' code.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16505
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 491121288eaa9d20f3db8215a4790e8f0ee1f8ca)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoipq807x: order devices alphabetically
Rodrigo Balerdi [Fri, 8 Nov 2024 20:45:12 +0000 (17:45 -0300)]
ipq807x: order devices alphabetically

Alphabetically sort devices in platform.sh

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16505
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 17f84bba44dbee248b3a79935657a74b21caa280)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoipq807x: prpl haze & qnap 301w: use the standard eMMC sysupgrade code
Rodrigo Balerdi [Fri, 8 Nov 2024 20:40:03 +0000 (17:40 -0300)]
ipq807x: prpl haze & qnap 301w: use the standard eMMC sysupgrade code

Note that the old ad-hoc method did not explicitly align backup data
to 64 KiB boundaries.

Also note that the qnap 301w has a 'rootfs_data' partition in the eMMC
that is being ignored by fstools during boot, presumably due to a bug.
This is why the partition is also ignored in the sysupgrade code and
there is no definition of CI_DATAPART="rootfs_data".

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16505
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit fe481c9c47d97ebde1bc3c959924f4f9227c6c16)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoipq807x: nbg7815: use the standard eMMC sysupgrade code
Rodrigo Balerdi [Tue, 24 Sep 2024 20:43:49 +0000 (17:43 -0300)]
ipq807x: nbg7815: use the standard eMMC sysupgrade code

Note that the old ad-hoc method did not explicitly align backup data
to 64 KiB boundaries.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16505
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 5583d2318966d5d5dcdbdec2e34b8815d3f6419a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoelfutils: Backport some patches to fix errors
Ryan Keane [Fri, 8 Nov 2024 06:36:23 +0000 (22:36 -0800)]
elfutils: Backport some patches to fix errors

On aarch64 musl gcc 14.x compiler, trying compiling elfutils 0.192 with
lto option enabled will cause null-dereference error.
Example error message:

...
elf_compress.c: In function 'elf_compress':
elf_compress.c:675:26: error: potential null pointer dereference [-Werror=null-dereference]
  675 |           shdr->sh_flags |= SHF_COMPRESSED;
      |                          ^
elf_compress_gnu.c: In function 'elf_compress_gnu':
elf_compress_gnu.c:127:25: error: potential null pointer dereference [-Werror=null-dereference]
  127 |           shdr->sh_size = new_size;
      |                         ^                      ^
...

This is a false postive warning but will abort compilation if gcc has
`-Werror` flag. This commit add a patch for this, see the bugzilla
report below.

This commit backports a series of patches to fix some errors.

Add patch:
- 007-add-libeu-symbols-to-libelf.patch
- 008-fix-autoconf-ENABLE_IMA_VERIFICATION.patch
- 009-fix-null-dereference-with-lto.patch

Link: https://sourceware.org/bugzilla/show_bug.cgi?id=32311
Signed-off-by: Ryan Keane <the.ra2.ifv@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16886
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit afffcd09e5f15be53f327a80ee87d391312eb805)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoelfutils: Add mirrors.kernel.org as mirrror
Ryan Keane [Wed, 13 Nov 2024 19:46:38 +0000 (11:46 -0800)]
elfutils: Add mirrors.kernel.org as mirrror

Add mirrors.kernel.org as mirror, listed on sourceware mirror sites
page.

Link: https://sourceware.org/mirrors.html
Signed-off-by: Ryan Keane <the.ra2.ifv@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16886
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 63caa2b1685ef5d2b4259784085f64cb9e5574a8)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoelfutils: Update to 0.192
Ryan Keane [Fri, 8 Nov 2024 05:50:58 +0000 (21:50 -0800)]
elfutils: Update to 0.192

Add a patch still under review to fix some errors.

Refresh patch:
- 003-libintl-compatibility.patch
- 005-build_only_libs.patch
- 006-Fix-build-on-aarch64-musl.patch

Add patch:
- 102-fix-potential-deref-of-null-error.patch

Release notes are in the link below.

Link: https://inbox.sourceware.org/elfutils-devel/CAJDtP-T3+gXqHWp3T0mejWWbPr0_1tHetEXwfB67-o+zz7ShiA@mail.gmail.com/T/#u
Signed-off-by: Ryan Keane <the.ra2.ifv@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16886
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit f5132df69db50a99e556e6fbd165002aac0e3e38)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agorealtek: align kernel config with upstream
Markus Stockhausen [Fri, 15 Nov 2024 06:32:47 +0000 (01:32 -0500)]
realtek: align kernel config with upstream

Since the start of the Realtek target OpenWrt works with RTL83XX as the
target architecture. Upstream is using MACH_REALTEK_RTL instead. To
simplify further development align that.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/16963
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 65964c42f8744ed8ca09448a155b99e3a99be283)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agolibreadlne: create symlinks for .so
Jeronimo Pellegrini [Sat, 21 Sep 2024 18:46:36 +0000 (15:46 -0300)]
libreadlne: create symlinks for .so

Currently, libreadline only installs

```
 /usr/lib/libhistory.so.8 -> libhistory.so.8.2
 /usr/lib/libhistory.so.8.2
 /usr/lib/libreadline.so.8 -> libreadline.so.8.2
 /usr/lib/libreadline.so.8.2
```

But there is no `libreadline.so` or `libhistory.so` available.

So this happens:

```
root@OpenWRT:~# cat a.c
int main() {
}
root@OpenWRT:~# gcc a.c -lreadline
/usr/bin/ld: cannot find -lreadline: No such file or directory
collect2: error: ld returned 1 exit status
```

Unless, of course, one uses `-l:libreadline.so.8`... But that
doesn't help with binaries that try to dynamically open

`libreadline.so`. I have one of those here (the STklos Scheme
compiler -- I didn't make a PR for it because it's far from
being ready, but one issue is that it does use dlopen to use
readline...)

With the symlink, it works:

```
root@OpenWRT:~# ln -s /usr/lib/libreadline.so.8 /usr/lib/libreadline.so
root@OpenWRT:~#
root@OpenWRT:~# gcc a.c -lreadline
root@OpenWRT:~#
```

Another example: when trying to package rlwrap, the build failed
complaining it could not find readline (using `-lreadline`).
It would then be necessary to change rlwrap's `configure.ac`
(and also in all packages that use readline), but it seems
simpler to add the symlinks...

This PR changes the Makefile so it will include the links.

Signed-off-by: Jeronimo Pellegrini <j_p@aleph0.info>
Link: https://github.com/openwrt/openwrt/pull/16445
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 0000ba6ab8062f965d8fed240b76d36f9a493b55)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agox86: switch config to a tickless kernel
John Audia [Mon, 2 Sep 2024 23:53:47 +0000 (19:53 -0400)]
x86: switch config to a tickless kernel

This commit fixes and closes #16313.

Switch the x86 kernel's timer to tickless operation which is
more power efficient since it is not woken up by periodic timer
interrupts when idle.  Also add several other options for CPU
idle governors particularly the upstream default for tickless
kernels, CONFIG_CPU_IDLE_GOV_MENU. Without this commit, my AMD
Ryzen 7 5800U can only achieve a minimum core frequency of 1,384
MHz which is over 3x higher than the processor's minimum
frequency of 400 MHz which is accessible with this modification.
In addition to the lower clock rate, I have seen a concomitant
reduction in both idle temps and at-the-wall power consumption.

Summary:
* Idle CPU freqs dropped from 1,384 MHz to 400 Mhz.
* Idle power consumption dropped from 7 W avg to 5 W.
* Idle temps have dropped from 50C on avg to 43C.

There are other well known reasons to switch to a tickless
timer including: reduced interrupt overhead, better use of CPU
resources, and reduced latency to name a few.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16317
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 31111680f6fc5f17201b02b8ce656b955be56d7a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoppp: remove more unnecessary kernel checks
Shiji Yang [Sun, 13 Oct 2024 13:15:59 +0000 (21:15 +0800)]
ppp: remove more unnecessary kernel checks

The ppp package can support all features since Linux 4.7.0 kernel.
Therefore, most kernel version checks can pass unconditionally on
OpenWrt v18.06 and later version. This patch can reduce the size
of ppp package by approximately 2.5 KB.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16695
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 3dbe730080e70e96990a5e89cbe2035adcca8d4b)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agobase-files: Mount debugfs and pstore with nosuid,nodev,noexec
Hauke Mehrtens [Thu, 14 Nov 2024 20:46:36 +0000 (21:46 +0100)]
base-files: Mount debugfs and pstore with nosuid,nodev,noexec

These permissions are not needed. Systemd also mounts these file systems
without these permissions on other Linux distributions.

Dropping these permissions should make the system more secure.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Link: https://github.com/openwrt/openwrt/pull/16960
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit b88d51898d126d2f918cb476d4158e9fcd62492c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agobase-files: Create /run and /run/lock folder
Hauke Mehrtens [Thu, 14 Nov 2024 20:47:47 +0000 (21:47 +0100)]
base-files: Create /run and /run/lock folder

Create the folder /run and /run/lock using symlinks. Other Linux
distributions also have these folders and some applications might already
depend on them. Just create symlinks pointing to the older folder.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Link: https://github.com/openwrt/openwrt/pull/16961
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 3b710375dd97af1e0416904c4174d11c51e3f09c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agox86: make i915 as a kmod with required firmware
Joe Zheng [Sun, 25 Aug 2024 00:53:01 +0000 (00:53 +0000)]
x86: make i915 as a kmod with required firmware

i915 driver requires to load correct firmware to work on latest x86
GPU, it is more reasonable to make it as a kernel module, so that
initramfs is not required, and it can also save some space from the
kernel image comparing being a built-in driver

Signed-off-by: Joe Zheng <joe.zheng@intel.com>
Link: https://github.com/openwrt/openwrt/pull/16276
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 77cfe8fd15d3d0f77ee16660d06a174f41b53444)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agolinux-firmware: rename packages for i915 firmware
Joe Zheng [Fri, 20 Sep 2024 05:57:34 +0000 (05:57 +0000)]
linux-firmware: rename packages for i915 firmware

Change the package name from intel-igpu-firmware-* to i915-firmware-*,
the prefix "intel-igpu" is misleading, i915 firmware is not only for
iGPU but also for dGPU now.

Remove the redundant "intel" as i915 is already well known.

More accurate file classification to handle following files correctly:

  adlp_dmc.bin
  mtl_huc.bin
  mtl_huc_gsc.bin
  mtl_gsc_1.bin

The pattern in regex is "([[:alnum:]]+)_([[:alnum:]]+)(_[\w-.]+)?\.bin",
where $1 is the platform, $2 is the firmware type (dmc, guc, huc, etc.),
and the optional $3 which is revision or other suffix.

Glob first to narrow down the target file set, and then split with "_"
to extract the firmware type (remove the ".bin" in case there is no $3)

Add package "i915-firmware" as a meta package to install all the i915
firmwares, it is a balance between simplicity and optimization.

* Installing all the available firmwares as a whole, can support all the
  platforms, not only the current one but also the future ones. The
  price to pay is the increased size.
* If we want to minimize the storage, we can customize to install the
  necessary ones only, even for the target platform only (e.g. ADL) and
  skip the others. The price to pay is the time to tune.

What I am going to do is:

* Let drm-i915 driver depend on i915-firmware-dmc, which is small and
  can cover most of the old platforms
* Let the user select i915-firmware to install all the i915 firmwares as
  a whole to cover the latest or future platforms

Signed-off-by: Joe Zheng <joe.zheng@intel.com>
Link: https://github.com/openwrt/openwrt/pull/16276
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit ca00bafd7e05b3f77e38acac6add223ce46df585)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agoutils: Add the omnia-eeprom utility
Marek Behún [Fri, 15 Nov 2024 09:01:35 +0000 (10:01 +0100)]
utils: Add the omnia-eeprom utility

Add a new utility, `omnia-eeprom`, which can be used to print / set
EEPROM fields on Turris Omnia.

One example when this utility might be useful is if the board
experiences random crashes due to newer versions of the DDR training
algorithm in newer U-Boot. The user can change the DDR speed from 1600K
to 1333H to solve these issues, with

  ```
  omnia-eeprom set ddr_speed 1333H
  ```

Signed-off-by: Marek Behún <kabel@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/16264
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 749a43325b98afe4430fa7e2f23ac3ee44791ad6)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agomediatek: filogic: add support for GatoNetworks GDSP
Enrico Mioso [Sat, 9 Nov 2024 21:14:33 +0000 (22:14 +0100)]
mediatek: filogic: add support for GatoNetworks GDSP

The GatoNetworks GDSP is a re-branded version of the R5000 5G Industrial
router from Yinghua Technologies.
The re-branded device comes with OpenWrt preinstalled, and an OpenWrt-based
U-Boot bootloader version. While the flash layout has been kept compatible
with the OpenWrt version found on the stock device (see [5]), the image format
changed, making a bootloader upgrade necessary.

Specifications:
SoC: Mediatek MT7981BA
RAM: 256MB
Flash: SPI-NOR 32 MiB (Winbond W25Q256)
WLAN: MT7976CN DBDC AX Wi-Fi
Switch: MT7531AE (4x LAN Gigabit ports, 1x WAN Gigabit port)
5G: Quectel RM520N modem
Watchdog: an external WDT connected to GPIO 6 is present and always running;
          the built-in Mediatek watchdog is also present and effective, but
          not used at the moment.

This porting has been tested only with 1x 5G modems installed (the device
supports up to two).

Installation:
Installation is possible via sysupgrade both in the stock device and
re-branded version. However, in the former case, updating the bootloader is
required.

OpenWrt-based U-Boot Bootloader installation
--------------------------------------------
The firmware flashed in the re-branded device at manifacturing time will
flash an OpenWrt-based U-Boot bootloader with some extra recovery features
(see [1]) at first boot.
To update the bootloader, you need to install the mtd-rw module and
insmod it:

insmod mtd-rw i_want_a_brick=1

Then update relevant flash partitions:

mtd erase u-boot-env
mtd erase BL2
mtd erase FIP
mtd write openwrt-mediatek-filogic-gatonetworks_gdsp-preloader.bin BL2
mtd write openwrt-mediatek-filogic-gatonetworks_gdsp-bl31-uboot.fip FIP

And reboot, making sure all previous commands ran succesfully.
If something goes wrong, you can recover your device via the mtk_uartboot
tool.
In my testing, it was possible to start the process even without (un)-plugging
the device, may be handy for remote recovery.

Installation from stock device and firmware
-------------------------------------------
To install vanilla OpenWrt in the stock device (R5000 5G Industrial router
from Yinghua Technologies) running the stock vendor firmware, you will need
to update your bootloader as described in previous section. Remember to use
-F (force upgrade) and -n (not keeping settings).

U-Boot Recovery
---------------
This procedure has been tested only with the OpenWrt-based U-boot bootloader.
Assign your system static IP address 192.168.1.1 and start a TFTP server. The
device will look for an initramfs image named
openwrt-mediatek-filogic-gatonetworks_gdsp-initramfs-kernel.bin
(so you may use openwrt/bin/targets/mediatek/filogic as root dir for your
TFTP server).
Power on the device while keeping the reset button pressed, until you see
a TFTP request from 192.168.1.10. Your environment will be restored to it's
default state.

MAC addresses assignment
------------------------
MAC addresses are assigned slightly differently than in stock firmware. In
particular, the 5 GHz Wi-Fi uses 2.4 GHZ MAC + 1, rather than reusing it with
LA bit set as done in stock firmware. This MAC address is allocated to the
device, so it can be used.
The 2.4 GHz Wi-Fi MAC address is the label MAC. LAN MAC is used to set the
special U-Boot environment ethaddr variable.

device MAC address U-Boot env variable factory partition offset
2.4 GHz Wi-Fi :84 wifi_mac 0x4
5.8 GHz Wi-Fi :85 not present not present
WAN :86 wan_mac 0x24
LAN :87 lan_mac 0x2A

Notes
-----
[1]: the OpenWrt-based U-Boot bootloader you will find installed in the
re-branded device is configured to request for the initramfs image via
TFTP for $gdsp_tftp_tries times before trying normal boot from NOR flash.
Setting this U-Boot environment variable to 0x0 will disable the feature,
which is not implemented in this patch.
[2]: the exposed UART port is connected to ttyS1; the ttyS0 console port is
not exposed.
[3]: the provided bootloader environment has no provision for operating on
BL2 and the FIP partitions. This is an intentional choice to make it
(slightly) more difficult to brick the device.
[4]: it seems GPIO 6 is used both for the "SYS" LED and external WDT.
[5] BL2 expects to find FIP payload at a fixed offset, so some constraints
apply.

Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
(cherry picked from commit b43194e041b17fbb574fb3721dafedcc30a20ab5)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 weeks agouboot-envtools: add support for GatoNetworks GDSP
Enrico Mioso [Sat, 9 Nov 2024 21:14:32 +0000 (22:14 +0100)]
uboot-envtools: add support for GatoNetworks GDSP

This configuration should work with both stock and OpenWrt-based U-Boot.

Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
(cherry picked from commit 785ebf2baff4adadf818d71a99fdb2d2300590ba)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>