openwrt/openwrt.git
3 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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 days 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>
3 days agouboot-mediatek: add support for GatoNetworks GDSP
Enrico Mioso [Sat, 9 Nov 2024 21:14:31 +0000 (22:14 +0100)]
uboot-mediatek: add support for GatoNetworks GDSP

The GatoNetworks GDSP is a re-branded version of the R5000 5G Industrial
router from Yinghua Technologies.

Advantages over stock bootloader:
1. supports serving the external GPIO WDT, allowing for easier work in U-Boot
   shell
2. supports cool features like netconsole, easy recovery, scripting and so on
3. allows using FIT image and image integrity validation

and ultimately gives you much more flexibility to implement your tweaks.

Known issues
------------
To make it easier to operate the device, console I/O multiplexing support has
been enabled in U-Boot configuration. Setting I/O related U-Boot environment
variables to something like "serial,nc" will have the desired effect. Still,
setting these variables to such a value in the persistent environment will
lead to a crash and make it impossible to boot the system or recover it. I
decided to leave it on anyway since I think it can be very practical in
development.

Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
(cherry picked from commit 7f2c7b3238ee26180d44528ae98fd2f54e874511)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoscripts: download-check-artifact.sh: fix shellcheck and improve
Petr Štetiar [Wed, 6 Nov 2024 10:40:37 +0000 (10:40 +0000)]
scripts: download-check-artifact.sh: fix shellcheck and improve

Fixes following shellcheck's recommendations:

 In scripts/download-check-artifact.sh line 24:
exit $1
             ^-- SC2086 (info): Double quote to prevent globbing and word splitting.

 In scripts/download-check-artifact.sh line 53:
local sum="$(shasum -a 256 "$image_file")";
                      ^-^ SC2155 (warning): Declare and assign separately to avoid masking return values.

 In scripts/download-check-artifact.sh line 72:
 cd "/tmp/verify.$$"
 ^-----------------^ SC2164 (warning): Use 'cd ... || exit' or 'cd ... || return' in case cd fails.

 In scripts/download-check-artifact.sh line 114:
printf "Keyserver to use? [$keyserver_url] > "
                       ^-- SC2059 (info): Don't use variables in the printf format string. Use printf '..%s..' "$foo".

 In scripts/download-check-artifact.sh line 115:
read url; case "${url:-$keyserver_url}" in
                ^--^ SC2162 (info): read without -r will mangle backslashes.

While at it make it clear, that it is possible to download/check any
build artifacts like even SDK or ImageBuilder.

Link: https://github.com/openwrt/openwrt/pull/16871
(cherry picked from commit 27c2c140b16cb490f20c1c2259b3decf50ae5762)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoscripts: add download-check-artifact.sh script
David S. H. Rosenthal [Wed, 6 Nov 2024 10:19:17 +0000 (10:19 +0000)]
scripts: add download-check-artifact.sh script

While checking wiki documentation about GPG signatures checking I found
this nice script and I've thought, that it would be nice to provide it
officially instead of some random internet site.

Usage example:

  $ ./scripts/download-check-artifact.sh https://downloads.openwrt.org/snapshots/targets/mediatek/filogic/openwrt-mediatek-filogic-openwrt_one-squashfs-sysupgrade.itb

  1) Downloading image file
  =========================
  ########################################### 100.0%

  2) Downloading checksum file
  ============================
  ########################################### 100.0%

  3) Downloading the GPG signature
  ================================
  ########################################### 100.0%

  4) Verifying GPG signature
  ==========================
  gpg: Signature made Tue 05 Nov 2024 05:21:50 PM UTC
  gpg:                using EDDSA key 92C561DE55AE6552F3C736B82B0151090606D1D9
  gpg: Good signature from "OpenWrt Build System (Nitrokey3) <contact@openwrt.org>" [ultimate]
  Primary key fingerprint: 8A8B C12F 46B8 36C0 F9CD  B36F 1D53 D187 7742 E911
       Subkey fingerprint: 92C5 61DE 55AE 6552 F3C7  36B8 2B01 5109 0606 D1D9

  5) Verifying SHA256 checksum
  ============================
  openwrt-mediatek-filogic-openwrt_one-squashfs-sysupgrade.itb: OK

  Verification done!
  ==================
  Downloaded artifact placed in '/var/home/ynezz/dev/openwrt/openwrt.git/openwrt-mediatek-filogic-openwrt_one-squashfs-sysupgrade.itb'

  Cleaning up.

Adding file in a state as downloaded from https://www.abitare.org/bin/download.sh

References: https://openwrt.org/docs/guide-quick-start/verify_firmware_checksum?s[]=gpg#linux
Signed-off-by: David S. H. Rosenthal <dshr@abitare.org>
Link: https://github.com/openwrt/openwrt/pull/16871
(cherry picked from commit 4c9031fda271ed7d4503642f63ff824faa6cc3a0)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agobuild: add comments to makefiles
Sergey Matsievskiy [Fri, 8 Nov 2024 11:43:52 +0000 (14:43 +0300)]
build: add comments to makefiles

Add comments to build system makefile functions and variables to help
developers in understanding build system internals and ease the
development process.

This patch adds some documentation examples with proposed doxygen-like
syntax. Hopefully, this would start the discussion and result in
generation of the makefile documentation guidelines.

Signed-off-by: Sergey Matsievskiy <matsievskiysv@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16888
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit a72c8c770584075782959f2aa5c1487d68517edd)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoqualcommax: ipq60xx: add NSS reserved memory
Robert Marko [Wed, 6 Nov 2024 19:13:06 +0000 (20:13 +0100)]
qualcommax: ipq60xx: add NSS reserved memory

It seems that despite NSS not being supported in OpenWrt the memory it
usually uses needs to be reserved anyway for stability reasons.

Link: https://github.com/openwrt/openwrt/pull/16928
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 8729d2a64d282d37b69c0853269af401a0102517)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agocryptodev-linux: change home-page URL
Paul Donald [Sun, 10 Nov 2024 18:47:34 +0000 (19:47 +0100)]
cryptodev-linux: change home-page URL

Most links and info on the org page are broken or defunct, and all new
versions are available on the github based repo anyway.

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16910
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit ce0b843ac7d27e124cb9ca13e9a1aeb115fcaf23)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agocryptodev-linux: give a coherent description
Paul Donald [Sun, 10 Nov 2024 18:53:07 +0000 (19:53 +0100)]
cryptodev-linux: give a coherent description

For the last ten years, nobody has noticed that this driver doesn't
actually say what it is for. ;)

Signed-off-by: Paul Donald <newtwen+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16910
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 3df5966f9453ecefcabc893f6449c8c4f1054aef)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorealtek: rtl83xx: use devm for mutex_init
Rosen Penev [Sun, 10 Nov 2024 23:54:14 +0000 (15:54 -0800)]
realtek: rtl83xx: use devm for mutex_init

mutex_destroy is missing in remove.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16926
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 1125ed408c7f0d130b5606ab39e4dd98a41d5f0a)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoramips: mt7621: fix typo
Rosen Penev [Mon, 11 Nov 2024 20:23:01 +0000 (12:23 -0800)]
ramips: mt7621: fix typo

Missing u caused the regulator to fail probe.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16925
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 3e42526404f021094ae3fa41524c396d753f4c6c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agomdadm: backport musl patch
Rosen Penev [Sat, 9 Nov 2024 23:46:26 +0000 (15:46 -0800)]
mdadm: backport musl patch

Needed to fix compilation with GCC14.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16912
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 1f3d5858b441cf4e1195b96242dd08d68538e83d)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agolantiq: use devm for mutex_init
Rosen Penev [Thu, 31 Oct 2024 19:22:04 +0000 (12:22 -0700)]
lantiq: use 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/16832
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit fccff963c0a6ba035455daea61566f4d121643e3)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agolantiq: use more devm for i2c
Rosen Penev [Sat, 19 Oct 2024 02:08:02 +0000 (19:08 -0700)]
lantiq: use more devm for i2c

i2c_add_numbered_adapter is the wrong function to use here. It requires
setting nr to some value, otherwise it behaves the same as
i2c_add_adapter. nr is not set.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16825
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 44824f0b787b13e2f2fccc58256b2c42fa3f9f5d)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agotreewide: remove THIS_MODULE assignment
Rosen Penev [Thu, 31 Oct 2024 19:22:04 +0000 (12:22 -0700)]
treewide: remove THIS_MODULE assignment

Matches upstream coccinelle check: api/platform_no_drv_owner.cocci.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16846
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit cc98cfafd799d502fbe09ddb62bab68633d570f5)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agohostapd: split long lines
Leon M. Busch-George [Mon, 19 Feb 2024 11:49:28 +0000 (12:49 +0100)]
hostapd: split long lines

These two were getting rather long.

Signed-off-by: Leon M. Busch-George <leon@georgemail.eu>
Link: https://github.com/openwrt/openwrt/pull/16849
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 8b6d5874b88bbe2e7a53bcab0e102b8781480880)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agomenuconfig: add help description for Stack Smashing Protection options
Marius Dinu [Sat, 9 Nov 2024 17:20:47 +0000 (19:20 +0200)]
menuconfig: add help description for Stack Smashing Protection options

Descriptions taken from:
https://wiki.osdev.org/Stack_Smashing_Protector

Signed-off-by: Marius Dinu <m95d+git@psihoexpert.ro>
Link: https://github.com/openwrt/openwrt/pull/16897
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit cbf7be9fb37baaaf7ee5c2b6315028bd47c764bc)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoramips: mt7621: add missing regulator-boot-on
Rosen Penev [Wed, 6 Nov 2024 21:23:35 +0000 (13:23 -0800)]
ramips: mt7621: add missing regulator-boot-on

What seems to be happening is that the kernel requests an ACTIVE_LOW
gpio initially and sets it to high later based on gpios in dts.

This seems to break some devices where the bootloader sets it to high.

Fixes: e612900ae0 ("ramips: mt7621: convert usb power to regulators")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16877
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit a7bc6bf7dba98c77724cb8284d21a9c77c263d56)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: Edgerouter-X adjust IMAGE_SIZE to reflect new kernel size
Tim Lunn [Fri, 26 Apr 2024 01:27:45 +0000 (11:27 +1000)]
rampis: mt7621: Edgerouter-X adjust IMAGE_SIZE to reflect new kernel size

IMAGE_SIZE was previously set to kernel1 + ubi size = 256768k, now
kernel1 is 6MB adjust this value to add 3072k to total image size.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 5b406bccaccadb494cad139b3f69e17ab62d3968)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoramips: mt7621: Edgerouter-X drop factory image
Tim Lunn [Fri, 19 Apr 2024 12:16:11 +0000 (22:16 +1000)]
ramips: mt7621: Edgerouter-X drop factory image

Edgerouter-X factory images have not built automatically since 19.x due
to images being over 3MB. While it was possible to build custom images
with very stripped down config, this is no longer possible with the size
increases of linux 6.1 and 6.6.

Drop code for generation of factory images, if some dev later wishes to
try custom images they can revert this commit.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 4d90b79704efba57ab158c47ae6936ce4c1ef185)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: Re-enable Edgerouter-X image builds
Tim Lunn [Thu, 18 Apr 2024 00:53:54 +0000 (10:53 +1000)]
rampis: mt7621: Re-enable Edgerouter-X image builds

With the new layout providing 6MB for kernel there will be no issues
with kernel size affecting build of images.

Re-enable image builds for Edgerouter-X and X-SFP.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 71b4842e3bdaed91cd2daa4b28a208559c3de7c6)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: Edgerouter-X update compat version to 2.0
Tim Lunn [Thu, 18 Apr 2024 00:57:17 +0000 (10:57 +1000)]
rampis: mt7621: Edgerouter-X update compat version to 2.0

Use compat version to indicate that the new layout for larger kernels
is in place. This handled by the patch to ubnt.sh to always select
the kernel1 slot for flashing and as active kernel slot.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 1bdbd511b27017157e92ffe128e66853d169dcbf)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: Edgerouter-X set compat version message
Tim Lunn [Thu, 18 Apr 2024 00:56:07 +0000 (10:56 +1000)]
rampis: mt7621: Edgerouter-X set compat version message

Refer user to the wiki page for instructions on how to migrate to the
new kernel layout.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 70c371d91cda300d7c655f019cb2076d2dd537fb)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: resize Edgerouter-X kernel size to 6MB
Tim Lunn [Wed, 17 Apr 2024 00:51:35 +0000 (10:51 +1000)]
rampis: mt7621: resize Edgerouter-X kernel size to 6MB

With the updated partition layout set in dts, set the KERNEL_SIZE
parameter to 6MB allowing builds of Linux 6.1 and later to fit.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 09a6bffb6e0a714f20d71043ae8382af4c5925b6)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: Edgerouter-X disable toggling of kernel slots
Tim Lunn [Wed, 17 Apr 2024 02:51:22 +0000 (12:51 +1000)]
rampis: mt7621: Edgerouter-X disable toggling of kernel slots

Uboot selects which kernel slot to boot based on a flag in the factory
mtd partition. Patch ubnt.sh to ensure always flash to kernel1 slot and
update flag if required.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit 5e355f1f9084c1b6de3151fbcde948d736292d6c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agorampis: mt7621: Convert Edgerouter-X dts to single kernel config
Tim Lunn [Wed, 17 Apr 2024 00:49:49 +0000 (10:49 +1000)]
rampis: mt7621: Convert Edgerouter-X dts to single kernel config

The OEM layout for Edgerouter X provides for two 3MB kernel slots.
As of linux 6.1 the kernel images no longer fit and as such
Edgerouter X builds have been disabled in Main.

Revise the layout to make kernel1 slot 6MB and drop kernel2 slot.

This patch applies the required changes to the dts file.

Signed-off-by: Tim Lunn <tim@feathertop.org>
Tested-by: Mauri Sandberg <maukka@ext.kapsi.fi>
Link: https://github.com/openwrt/openwrt/pull/15194
(cherry picked from commit dc51c4355d48e91ed8fd06d70f0bf71b0b4bc4d2)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agofritz-tools: fix mixed indentation
David Bauer [Tue, 5 Nov 2024 19:03:39 +0000 (20:03 +0100)]
fritz-tools: fix mixed indentation

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 685e979d470a09361defe1612b001dfc3b7d9832)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agopackages: drop DEVICE specific dependency for omnia
Paul Spooren [Mon, 4 Nov 2024 21:34:52 +0000 (22:34 +0100)]
packages: drop DEVICE specific dependency for omnia

Both packages `ombnia-mcu-firmware` and `omnia-mcutool` would depend on
a specific device. The buildbots however build all devices and therefore
the package isn't build at all, due to unmet dependencies.

While this didn't cause issues with OPKG, APK fails actively due to the
missing packages. Drop the specific dependency, however wants to install
unrelated firmware on any device can do that anyway.

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit f35a29d63f445d784f1e266eaa6d3825a249cd6c)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoath79: gpio-rb91x-key: use gpiochip_get_data
Rosen Penev [Sat, 19 Oct 2024 22:51:51 +0000 (15:51 -0700)]
ath79: gpio-rb91x-key: use gpiochip_get_data

No need for a custom function that does the same thing.

Oversight from devm conversion.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16748
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit e99b5832e801fdf2ec366419797360e09c2348c6)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoath79: gpio-latch-miktorik: use gpiochip_get_data
Rosen Penev [Sat, 19 Oct 2024 22:49:42 +0000 (15:49 -0700)]
ath79: gpio-latch-miktorik: use gpiochip_get_data

Oversight from devm conversion. No need for a custom static inline
function.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16747
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 6d2ed484fa2f62e355893f5e1fe3734c88201bfc)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoramips: mt7621: convert usb power to regulators
Rosen Penev [Thu, 24 Oct 2024 21:51:29 +0000 (14:51 -0700)]
ramips: mt7621: convert usb power to regulators

These things are regulators. Should silence dmesg messages about using
dummy regulators.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16804
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit e612900ae0fd6c4624fa661e004536216409107f)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agokernel: can: package driver for Geschwister Schneider interface
Chuanhong Guo [Sat, 2 Nov 2024 14:24:21 +0000 (22:24 +0800)]
kernel: can: package driver for Geschwister Schneider interface

Package gs_usb CAN driver, which is for Geschwister Schneider and
bytewerk.org candleLight compatible USB/CAN interfaces.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit ef4df2b5e9d66a6461982a0a81f928abb0f6a074)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
3 days agoipq40xx: use devm for mutex_init
Rosen Penev [Sat, 19 Oct 2024 01:56:30 +0000 (18:56 -0700)]
ipq40xx: use devm for mutex_init

Avoids having to call mutex_destroy in remove.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16755
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 57f2c72505f24b41fd9beaef3a8aa713b436cdb9)
Link: https://github.com/openwrt/openwrt/pull/17097
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 days agobuild: profiles.json: add kernel version information
Eric Fahlgren [Fri, 22 Nov 2024 17:00:25 +0000 (09:00 -0800)]
build: profiles.json: add kernel version information

Currently downstream tools like ASU lack information about kernel
version to find out the relevant kmod build folder on downloads server.

So lets fix it by providing a new `linux_kernel` JSON array which would
for the start provide Linux kernel version, revision and vermagic
information.

  "linux_kernel": {
     "release": "1",
     "vermagic": "b57450c07d3a786158c3601fc5cee57d",
     "version": "6.6.61"
   },

Fixes: openwrt/openwrt#17036
Fixes: efahl/owut#9
Co-developed-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17042
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit c857145e034f623e31ab2028049a547ecd94ce85)

6 days agomtd-utils: add ubihealthd to nand-utils
Daniel Golle [Sat, 16 Nov 2024 15:29:24 +0000 (15:29 +0000)]
mtd-utils: add ubihealthd to nand-utils

Add ubihealthd to the nand-utils package, auto-create UCI config for
each UBI device and launch the daemon on boot.

The default time interval between scrubbing a random PED is 120 seconds
which means that a fully used 128 MiB flash chip gets scrubbed in about
a day and a half. The interval can be adjusted in UCI using the
'interval' option.

Suggested-by: Rodrigo Balerdi <lanchon@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Link: https://github.com/openwrt/openwrt/pull/16973
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 7e287b563aa1043a1af54d5e2b0bd96326371732)

6 days agoprocd: update to git HEAD
Daniel Golle [Wed, 13 Nov 2024 21:58:38 +0000 (21:58 +0000)]
procd: update to git HEAD

 7330fa5 initd: mount /sys and /proc with MS_RELATIME

Fixes mounting /proc in unpriviledged user namespace.

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

6 days agoinclude: meson.mk: honor CONFIG_DEBUG
Daniel Golle [Sat, 9 Nov 2024 23:32:05 +0000 (00:32 +0100)]
include: meson.mk: honor CONFIG_DEBUG

Set buildtype according to CONFIG_DEBUG.

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

6 days agoinclude: cmake.mk: honor CONFIG_DEBUG
Daniel Golle [Sat, 9 Nov 2024 23:31:18 +0000 (00:31 +0100)]
include: cmake.mk: honor CONFIG_DEBUG

Set CMAKE_BUILD_TYPE according to CONFIG_DEBUG.

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

6 days agokernel: modules: package driver for generic MIPI DBI TFT panels
Daniel Golle [Sat, 2 Nov 2024 20:22:35 +0000 (20:22 +0000)]
kernel: modules: package driver for generic MIPI DBI TFT panels

Package kmod-drm-panel-mipi-dbi as well as modules it depends on in
order to support a wide range of MIPI DBI complaint SPI-connected
TFT panels.

See https://github.com/notro/panel-mipi-dbi/ for more information on
how to use specific panels.

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

6 days agoramips: mt7621: support openwrt,netdev-name for renaming interfaces
Robert Marko [Sun, 24 Nov 2024 20:15:08 +0000 (21:15 +0100)]
ramips: mt7621: support openwrt,netdev-name for renaming interfaces

Edgerouter X currently has its eth1 port on the switch missing since there
is a naming conflict currently.

So, as the root cause is mixing kernel support for DSA interfaces having
predictable names set via "label" property vs others having it assigned
dynamically lets avoid the conflict by using our own custom property as
suggested upstream [1].

So, add support via "openwrt,netdev-name" property and use it on ERX.

Fixes: 2a25c6ace8d8 ("ramips: get rid of downstream network device label patch")
Fixes: #15643
Link: https://github.com/openwrt/openwrt/pull/17062
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 5695267847c2fe51290fdbde6ecd7114654f7988)

7 days agowifi-scripts: Fix parsing of Capabilities
Hauke Mehrtens [Fri, 22 Nov 2024 23:34:30 +0000 (00:34 +0100)]
wifi-scripts: Fix parsing of Capabilities

Fixup capabilities parsing in iw output.

In addition to the normal capabilities iw now also outputs HE MAC, HE
PHY and EHT MAC and EHT PHY capabilities. Exclude them in the parsing.

The grep returns this with mac80211-hwsim:
```
root@OpenWrt:~# iw phy phy0 info | grep 'Capabilities:'
Capabilities: 0x107e
HE PHY Capabilities: (0x02bfce0000000000000000):
EHT PHY Capabilities: (0x7c0000feffff7f01):
HE PHY Capabilities: (0x02bfce0000000000000000):
EHT PHY Capabilities: (0x7c0000feffff7f01):
HE PHY Capabilities: (0x02bf000000000000000000):
Capabilities: 0x107e
HE PHY Capabilities: (0x1cbfce0000000000000000):
EHT PHY Capabilities: (0xfc1f3ffeffff7f37):
HE PHY Capabilities: (0x1cbfce0000000000000000):
EHT PHY Capabilities: (0xfc1f3ffeffff7f37):
HE PHY Capabilities: (0x1cbf000000000000000000):
HE PHY Capabilities: (0x1cbfce0000000000000000):
EHT PHY Capabilities: (0xfefffffeffffff7f):
HE PHY Capabilities: (0x1cbfce0000000000000000):
EHT PHY Capabilities: (0xfefffffeffffff7f):
HE PHY Capabilities: (0x1cbf000000000000000000):
Capabilities: 0x107e
```

With busybox 1.36.1 the ht_cap_mask variable will be set to
-72057598332895361. With busybox 1.37.0 it will be set to -1.
Both values are wrong, after this change it will be set to 4222
(0x107E).

Link: https://github.com/openwrt/openwrt/pull/17043
(cherry picked from commit adf958c9192d94fbeeb0ec8e16800b0071455909)
Link: https://github.com/openwrt/openwrt/pull/17055
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 days agokernel: bump 6.6 to 6.6.63
John Audia [Fri, 22 Nov 2024 15:53:37 +0000 (10:53 -0500)]
kernel: bump 6.6 to 6.6.63

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.63

Manually rebased:
bcm27xx/patches-6.6/950-0297-staging-vchiq_arm-Add-36-bit-address-support.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16997
(cherry picked from commit eb395585ae1b7560bbcea9544f428db2a9105152)
Link: https://github.com/openwrt/openwrt/pull/17055
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 days agokernel: bump 6.6 to 6.6.62
John Audia [Sun, 17 Nov 2024 19:33:47 +0000 (14:33 -0500)]
kernel: bump 6.6 to 6.6.62

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.62

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16997
(cherry picked from commit 611bfa4d72c87e8163d7193d9557479fc7312467)
Link: https://github.com/openwrt/openwrt/pull/17055
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 days agodebugcc: Mark it nonshared
Hauke Mehrtens [Sat, 16 Nov 2024 17:36:45 +0000 (18:36 +0100)]
debugcc: Mark it nonshared

This tool was build in the phase 2 build, there the TARGET dependencies
are probably not meat. Mark it as non shared to build it together with
the targets where this option is set.

Link: https://github.com/openwrt/openwrt/pull/16975
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit febe1db43d1a01f83e474bcb143dcb3997bd35a3)
Link: https://github.com/openwrt/openwrt/pull/17055
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 days agoath79: lzma-loader: fix syntax error
Shiji Yang [Sun, 17 Nov 2024 11:30:35 +0000 (19:30 +0800)]
ath79: lzma-loader: fix syntax error

C compiler can't parse '#else if'.

Fixes: f84a9f7dc095 ("ath79: add support for Huawei AP6010DN")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16989
(cherry picked from commit 98f26346cbbb45e5c0417f57846ce1783e884ea2)
Link: https://github.com/openwrt/openwrt/pull/17055
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 days agokernel: bump 6.6 to 6.6.61
John Audia [Thu, 14 Nov 2024 20:16:32 +0000 (15:16 -0500)]
kernel: bump 6.6 to 6.6.61

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.61

Manually rebased:
bcm27xx/patches-6.6/950-0998-i2c-designware-Add-support-for-bus-clear-feature.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16959
(cherry picked from commit 487ca61f917f9308222faf481ad8be4e2cef0c90)
Link: https://github.com/openwrt/openwrt/pull/17055
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
8 days agomediatek: fix Cudy AP3000 Outdoor label-mac
David Bauer [Sat, 23 Nov 2024 19:00:57 +0000 (20:00 +0100)]
mediatek: fix Cudy AP3000 Outdoor label-mac

The label-mac does not match the one assigned to the ethernet interface.
Use the mac-address assigned to the wifi interface instead, as it
matches the one found on the device label.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit b8b658bc0d22df31e7ac2d07cdd2af7155d12630)

12 days agoimagebuilder: fix OPKG package_whatdepends support
Robert Marko [Tue, 19 Nov 2024 22:56:19 +0000 (23:56 +0100)]
imagebuilder: fix OPKG package_whatdepends support

Trying to use 'package_whatdepends' feature of the ImageBuilder with OPKG
will currently fail as OPKG does not support "list --depends" call at all,
it seems that this is a mixup from the original APK support commit.

So, lets restore 'package_whatdepends' support for OPKG by calling
"whatdepends -A" instead as we used to before APK support.

Fixes: d788ab376f85 ("build: add APK package build capabilities")
Link: https://github.com/openwrt/openwrt/pull/17022
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 52519a59a859d349f154ed79e0a3d63457b6aa6a)

13 days agoipq806x: tr4400v2: fix dtc warnings by deleting stock partitions
Rodrigo Balerdi [Thu, 14 Nov 2024 20:37:32 +0000 (17:37 -0300)]
ipq806x: tr4400v2: fix dtc warnings by deleting stock partitions

The original set of stock partitions was kept in the TR4400 v2 port,
with the same partition numbers but their names prefixed with 'stock_'.
This allowed scripts (installation, back to stock, etc) to run on both
stock and OpenWrt firmware. But this triggers warnings in the device
tree compiler, as partitions of the old and new schemes overlap.

This commit fixes the dtc warnings by deleting the stock partitions,
also renumbering some of the remaining MTD partitions in the process.
Additionally, the 'fw_env' partition is set to read-only.

These changes can break existing scripts as well as user configurations
that utilize the 'extra' partition. Users wanting to run old scripts can
do so by reverting to the 23.05 series releases.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16958
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 8ec35a2a1533ccff8a4b0e6f4f0a0954d1bee6a6)

13 days agonet: phy: broadcom: update dependency condition
David Bauer [Sun, 17 Nov 2024 12:23:09 +0000 (13:23 +0100)]
net: phy: broadcom: update dependency condition

The broadcom PHY driver only has to depend upon PTP_1588_CLOCK_OPTIONAL
if NETWORK_PHY_TIMESTAMPING is enabled. The PTP functionality is stubbed
in this case.

Reflect this circumstance in the dependence condition. This allows to
build the driver as a built-in module even if PTP is built as a module.

This is required to include the broadcom PHY module regardless of the
built-setting of the PTP subsystem. On ath79 (and probably more)
targets with Broadcom PHY, Gigabit operation is currently broken as the
PHY driver is only built as a module in case all kernel-packages are
built. Due to this circumstance, affected devices fall back to using the
generic PHY driver.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit cbce32e30c29dc69907c6f4c0ab79dd5d9a8fb28)

13 days agoairoha: an7581: sync patch with upstream version and tag them
Christian Marangi [Mon, 18 Nov 2024 14:01:07 +0000 (15:01 +0100)]
airoha: an7581: sync patch with upstream version and tag them

Sync patch with upstream version and tag them.
Minor changes done to Pinctrl patch to support older kernel.

Patch automatically refreshed with make target/linux/refresh.

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

2 weeks agomac80211: backport some upstream fixes
Felix Fietkau [Mon, 18 Nov 2024 10:21:02 +0000 (11:21 +0100)]
mac80211: backport some upstream fixes

Fix various issues, including potential crashes

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

2 weeks agoath79: Add support for Sophos AP15C
David Lutz [Tue, 5 Nov 2024 09:55:43 +0000 (10:55 +0100)]
ath79: Add support for Sophos AP15C

The Sophos AP15C uses the same hardware as the AP15, but has a reset button.

Based on:
commit 6f1efb289837 ("ath79: add support for Sophos AP100/AP55 family")
author    Andrew Powers-Holmes <andrew@omnom.net>
          Fri, 3 Sep 2021 15:53:57 +0200 (23:53 +1000)
committer Hauke Mehrtens <hauke@hauke-m.de>
          Sat, 16 Apr 2022 16:59:29 +0200 (16:59 +0200)

Unique to AP15C:
 - Reset button
 - External RJ45 serial console port

Flashing instructions:

This firmware can be flashed either via a compatible Sophos SG or XG
firewall appliance, which does not require disassembling the device, or via
the U-Boot console available on the internal UART header.

To flash via XG appliance:
 - Register on Sophos' website for a no-cost Home Use XG firewall license
 - Download and install the XG software on a compatible PC or virtual
   machine, complete initial appliance setup, and enable SSH console access
 - Connect the target AP device to the XG appliance's LAN interface
 - Approve the AP from the XG Web UI and wait until it shows as Active
   (this can take 3-5 minutes)
 - Connect to the XG appliance over SSH and access the Advanced Console
   (Menu option 5, then menu option 3)
 - Run `sudo awetool` and select the menu option to connect to an AP via
   SSH. When prompted to enable SSH on the target AP, select Yes.
 - Wait 2-3 minutes, then select the AP from the awetool menu again. This
   will connect you to a root shell on the target AP.
 - Copy the firmware to /tmp/openwrt.bin on the target AP via SCP/TFTP/etc
 - Run `mtd -r write /tmp/openwrt.bin astaro_image`
 - When complete, the access point will reboot to OpenWRT.

To flash via U-Boot serial console:
 - Configure a TFTP server on your PC, and set IP address 192.168.99.8 with
   netmask 255.255.255.0
 - Copy the firmware .bin to the TFTP server and rename to 'uImage_AP15C'
 - Open the target AP's enclosure and locate the 4-pin 3.3V UART header [4]
 - Connect the AP ethernet to your PC's ethernet port
 - Connect a terminal to the UART at 115200 8/N/1 as usual
 - Power on the AP and press a key to cancel autoboot when prompted
 - Run the following commands at the U-Boot console:
    - `tftpboot`
    - `cp.b $fileaddr 0x9f070000 $filesize`
    - `boot`
 - The access point will boot to OpenWRT.

Signed-off-by: David Lutz <kpanic@hirnduenger.de>
(cherry picked from commit a7abc7ec3b61be553f33c49e5acc90a4d539d992)

2 weeks agonftables: update to 1.1.1
Hauke Mehrtens [Wed, 23 Oct 2024 22:09:22 +0000 (00:09 +0200)]
nftables: update to 1.1.1

Release Announcement:
https://lwn.net/Articles/982283/
https://lwn.net/Articles/992760/

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

2 weeks agolibnftnl: update to 1.2.8
Hauke Mehrtens [Wed, 23 Oct 2024 22:06:09 +0000 (00:06 +0200)]
libnftnl: update to 1.2.8

Release Announcement:
https://www.spinics.net/lists/netfilter-devel/msg87287.html
https://www.spinics.net/lists/netfilter-devel/msg88520.html

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

2 weeks agobase-files: Remove pkg_check when using apk
Hauke Mehrtens [Thu, 7 Nov 2024 21:49:21 +0000 (22:49 +0100)]
base-files: Remove pkg_check when using apk

/sbin/pkg_check uses opkg and is not even packaged when using the
default opkg configuration. remove it when using apk too.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0ce237a20cc5168c62afcacb3b47d77a952d64c1)

2 weeks agomt76: update to Git HEAD (2024-10-28)
Felix Fietkau [Thu, 14 Nov 2024 12:03:23 +0000 (13:03 +0100)]
mt76: update to Git HEAD (2024-10-28)

8dfead68c202 wifi: mt76: mt7915: hold dev->mutex while interacting with the thermal state
d508a6eb935d wifi: mt76: mt7996: use mac80211 .sta_state op
57019e663f57 wifi: mt76: add code for emulating hardware scanning
dc4c2bdf7c56 wifi: mt76: add support for allocating a phy without hw
8cd0263f92e1 wifi: mt76: rename struct mt76_vif to mt76_vif_link
99df84d62883 wifi: mt76: add vif link specific data structure
dcc6f158d759 wifi: mt76: mt7996: split link specific data from struct mt7996_vif
d388deab9e73 wifi: mt76: initialize more wcid fields mt76_wcid_init
d026be405c54 wifi: mt76: add chanctx functions for multi-channel phy support
0b05795ca81c wifi: mt76: remove dev->wcid_phy_mask
0b526090de95 wifi: mt76: add multi-radio support to a few core hw ops
aeedee5c0a2c wifi: mt76: add multi-radio support to tx scheduling
fc0ff17b53ff wifi: mt76: add multi-radio support to scanning code
f19cbcf83400 wifi: mt76: add multi-radio remain_on_channel functions
42429ae0eaf6 wifi: mt76: mt7996: use emulated hardware scan support
f9d593d4a6b4 wifi: mt76: mt7996: pass wcid to mt7996_mcu_sta_hdr_trans_tlv
807090b28661 wifi: mt76: mt7996: prepare mt7996_mcu_add_dev/bss_info for MLO support
252baa7bf477 wifi: mt76: mt7996: prepare mt7996_mcu_add_beacon for MLO support
9ee990050305 wifi: mt76: mt7996: prepare mt7996_mcu_set_tx for MLO support
bf12cc404334 wifi: mt76: mt7996: prepare mt7996_mcu_set_timing for MLO support
60bf2bef95dc wifi: mt76: connac: prepare mt76_connac_mcu_sta_basic_tlv for MLO support
1289737e12a8 wifi: mt76: mt7996: prepare mt7996_mcu_update_bss_color for MLO support
7c00df0e7e57 wifi: mt76: connac: rework connac helpers
484e3f289a40 wifi: mt76: mt7996: move all debugfs files to the primary phy
d258f4e3e1ca wifi: mt76: mt7996: switch to single multi-radio wiphy
c246fa545119 wifi: mt76: mt7996: fix monitor mode

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

2 weeks agonetifd: update to Git HEAD (2024-11-08)
Felix Fietkau [Fri, 8 Nov 2024 09:50:39 +0000 (10:50 +0100)]
netifd: update to Git HEAD (2024-11-08)

e93f6c3fc729 main: fix format string related warnings for log/debug printf functions
6ab44a2413f9 fix signed/unsigned comparison warnings
4fe997b61d7d system-dummy: add system_if_apply_settings_after_up
992d33cb42a6 ubus: add notifications on wireless device state changes
34eb11eb6f5c device/interface: add "tags" attribute from config to status dump

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

2 weeks agowifi-scripts: add free-form "tags" array option for wifi-iface
Felix Fietkau [Fri, 8 Nov 2024 08:13:54 +0000 (09:13 +0100)]
wifi-scripts: add free-form "tags" array option for wifi-iface

This allows annotating wifi interfaces in the config in a way that can be
queried through wifi status. One example use case is to mark wifi interfaces
for use with specific services without having to explicitly reference the
(often unnamed) sections from elsewhere.

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

2 weeks agoipq806x: tr4400v2: revert nesting of MTD partitions that bricks device
Rodrigo Balerdi [Wed, 13 Nov 2024 20:23:52 +0000 (17:23 -0300)]
ipq806x: tr4400v2: revert nesting of MTD partitions that bricks device

This reverts commit e1043a746a1030062e73ea027d9a35c58bce6c6a, that
attempts to nest partitions that overlap but are not nested. This
causes the 'ubi' partition to be truncated, making rootfs inaccessible
and bricking the device.

Also, had this commit worked, it would have renumbered MTD partitions
in a way that would have broken documented scripts for installation and
update of main and recovery OSes, making backups, return to stock, etc,
and broken user configurations that put the 'extra' partition to use.

Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16944
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 0e59eaa7962fc21635af5c9d2f6552a4accdc7ea)

2 weeks agobase-files: improve default root-passwd script
John Crispin [Tue, 12 Nov 2024 06:49:22 +0000 (07:49 +0100)]
base-files: improve default root-passwd script

The script was not exiting cleanly causing it to not be removed from the
uci-defaults folder.

Signed-off-by: John Crispin <john@phrozen.org>
2 weeks agoairoha: an7581: backport upstream ethernet fixes
Christian Marangi [Tue, 12 Nov 2024 12:55:30 +0000 (13:55 +0100)]
airoha: an7581: backport upstream ethernet fixes

Backport patches fixing some ethernet problem merged upstream.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
3 weeks agokernel: bump 6.6 to 6.6.60
John Audia [Fri, 8 Nov 2024 19:57:44 +0000 (14:57 -0500)]
kernel: bump 6.6 to 6.6.60

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.60

Removed upstreamed:
generic/backport-6.6/409-mtd-spi-nor-winbond-fix-w25q128-regression.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.60&id=27a58a19bd20a7afe369da2ce6d4ebea70768acd

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, flogic/glinet_gl-mt6000, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16892
Signed-off-by: Nick Hainke <vincent@systemli.org>
(cherry picked from commit 85844cfc5c591d00997ade665340315d54bc5822)

3 weeks agomac80211: compatibility with kernel 6.6.59
Mieczyslaw Nalewaj [Fri, 1 Nov 2024 20:59:23 +0000 (21:59 +0100)]
mac80211: compatibility with kernel 6.6.59

Fix genlmsg_multicast_allns() build error on kernel 6.6.59.
Based on kernel patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit?h=v6.6.59&id=e0f83d268974dab0361d11904dfc9acec53f96a6

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 31f1dabb4b9727b300ddaa2801903ae4b72e4e1e)
Link: https://github.com/openwrt/openwrt/pull/16894
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agokernel: bump 6.6 to 6.6.59
Mieczyslaw Nalewaj [Sun, 3 Nov 2024 07:53:37 +0000 (08:53 +0100)]
kernel: bump 6.6 to 6.6.59

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.59

Removed upstreamed:
 - generic/backport-6.6/777-netfilter-xtables-fix-typo-causing-some-targets-to-not-load-on-IPv6.patch[1]
 - generic/backport-6.6/780-24-v6.12-r8169-avoid-unsolicited-interrupts.patch[2]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.59&id=433742ba96baf30c21e654ce3e698ad87100593b
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.59&id=7d6d46b429804b1a182106e27e2f8c0e84689e1a

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16835
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 4fc47c60006ccacda5ef644c5447ebfcb26c0680)

3 weeks agovrx518_tc: allow larger MTU to support RFC4638
Andrew MacIntyre [Fri, 8 Nov 2024 12:44:13 +0000 (23:44 +1100)]
vrx518_tc: allow larger MTU to support RFC4638

vrx518_tc currently sets the interface maximum MTU to the ethernet default
of 1500 bytes by default via ether_setup() called from ptm_setup().

To support 1508 byte baby jumbo frames (RFC4638) for PPPoE connections
over VDSL links as already supported by the VR9 ltq_ptm driver ([1], [2])
set the interface maximum MTU to MAX_MTU.

MAX_MTU is defined in dcdp/inc/tc_common.h to 2002 bytes and this value is
used in ptm_change_mtu() and elsewhere as the maximum MTU, however this is
short circuited by checks against the interface maximum MTU.

[1]: https://forum.openwrt.org/t/fritzbox-7530-and-rfc4638-baby-jumbo-frames/181327
[2]: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=8a2a20e71e2909f84dab47e51dfda9e292a6c1ae

Signed-off-by: Andrew MacIntyre <andymac@pcug.org.au>
Link: https://github.com/openwrt/openwrt/pull/16856
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit ca53f2d430ce1f9ff5a560291de1e93380963417)

3 weeks agoath79: linksys_ea4500-v3: take over the space for user data
Edward Chow [Mon, 4 Mar 2024 17:24:10 +0000 (01:24 +0800)]
ath79: linksys_ea4500-v3: take over the space for user data

The last "syscfg" partition of the OEM firmware turns out to be a
UBIFS used to store user data, just as the "rootfs_data" of OpenWrt,
so it should be reasonable to absorb it into the "ubi" partition.

Factory installations via either OEM firmware or tftp, or by forcibly
flashing factory image to mtd5 (firmware) partition with mtd tool are
confirmed working, but the UBI remaining inside "syscfg" partition
could break upgrade. Fortunately, installing kmod-mtd-rw and erasing
"syscfg" partition before upgrade is confirmed working, in which case,
"ubi" will automatically expand to the blank space once occupied by
the former mtd8 (syscfg), with the total block number increased, but
the UBIFS for rootfs_data will not automatically claim the newly
available space (since it is created when mtd8 still exists, and
sysupgrade does not set "autoresize" flag to rootfs_data). These space
will be claimed during the next upgrade, when rootfs_data is removed
and created again.

Fixes: 50f727b7737d1 ("ath79: add support for Linksys EA4500 v3")
Signed-off-by: Edward Chow <equu@openmail.cc>
Link: https://github.com/openwrt/openwrt/pull/14791
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 weeks agokernel: r8125: update to v9.014.01
Álvaro Fernández Rojas [Wed, 6 Nov 2024 09:00:56 +0000 (10:00 +0100)]
kernel: r8125: update to v9.014.01

Changelog: https://github.com/openwrt/rtl8125/compare/9.013.02...9.014.01

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

3 weeks agoprocd: update to Git HEAD (2024-11-06)
Christian Marangi [Wed, 6 Nov 2024 09:38:20 +0000 (10:38 +0100)]
procd: update to Git HEAD (2024-11-06)

109fa41b2321 system: fix description value from os-release

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

3 weeks agokernel: r8168: refresh patch
Álvaro Fernández Rojas [Tue, 5 Nov 2024 13:01:06 +0000 (14:01 +0100)]
kernel: r8168: refresh patch

Patches weren't refreshed when r8168 was updated to v8.054.00 in a85e18b53f0f.

Fixes: a85e18b53f0f ("kernel: r8168: update to v8.054.00")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 6490c88c75b3392aca9dae5f4d47a13a0aa35220)

3 weeks agokernel: r8126: update to v10.014.01
Álvaro Fernández Rojas [Mon, 4 Nov 2024 23:33:02 +0000 (00:33 +0100)]
kernel: r8126: update to v10.014.01

Changelog: https://github.com/openwrt/rtl8126/compare/10.013.00...10.014.01

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

3 weeks agomediatek: set 7 MACs per wifi band in board.json on OpenWrt One
John Crispin [Tue, 5 Nov 2024 08:43:38 +0000 (09:43 +0100)]
mediatek: set 7 MACs per wifi band in board.json on OpenWrt One

Mass production units will get 16 assigned MAC addresses. This allows each phy
to spawn up to 7 VAPs which will each have unique MAC without needing the
private bit.

Signed-off-by: John Crispin <john@phrozen.org>
3 weeks agomediatek: set mac increment to 7 for the 5G radio on OpenWrt One
John Crispin [Sun, 22 Sep 2024 07:07:58 +0000 (09:07 +0200)]
mediatek: set mac increment to 7 for the 5G radio on OpenWrt One

Mass production units will get 16 assigned MAC addresses. This allows each phy
to spawn up to 7 VAPs which will each have unique MAC without needing the
private bit.

Signed-off-by: John Crispin <john@phrozen.org>
3 weeks agomediatek: refresh patches
Daniel Golle [Sun, 3 Nov 2024 02:38:17 +0000 (02:38 +0000)]
mediatek: refresh patches

The mediatek target requires refreshing after recent additions.

Fixes: cfe8e6e75f ("mediatek: add support for Realtek RTL8261n 10G PHYs")
Fixes: ddfae94a14 ("mediatek: add support for swapping the polarity on usxgmii interfaces")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 weeks agomediatek: filogic: BPi-R4: wire up pinctrl for pwm-fan
Daniel Golle [Sat, 2 Nov 2024 20:17:52 +0000 (20:17 +0000)]
mediatek: filogic: BPi-R4: wire up pinctrl for pwm-fan

Assign pwm function of PWM0 pin to the pwm-fan.
This is mostly just cosmetics as it basically reflects the default
setting of that pin.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 weeks agomediatek: pinctrl-mt7988: add missing PWM pingroups
Daniel Golle [Sat, 2 Nov 2024 20:01:05 +0000 (20:01 +0000)]
mediatek: pinctrl-mt7988: add missing PWM pingroups

Add additionals possible pinctrl group for pwm2~7 on pins
pin  4 (GPIO_A)        pwm7
pin 58 (JTAG_JTDI)     pwm2
pin 59 (JTAG_JTDO)     pwm3
pin 60 (JTAG_JTMS)     pwm4
pin 61 (JTAG_JTCLK)    pwm5
pin 62 (JTAG_JTRST_N)  pwm6

They can be useful e.g. on the BPi-R4 as in that way pwm2~6 can be exposed
on the 26-pin header (pwm6 always, pwm2~5 instead of the full UART).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 weeks agouboot-mediatek: import patches improving menu navigation
Daniel Golle [Thu, 31 Oct 2024 21:08:10 +0000 (21:08 +0000)]
uboot-mediatek: import patches improving menu navigation

Using the arrow keys to navigate the U-Boot menu often leads to being
dropped into the U-Boot shell unexpectedly.
This can be prevented in most cases by improving the logic to detect the
arrow key ESC sequence and only reprinting the menu if actually needed.
Also enable CONFIG_SERIAL_RX_BUFFER for all boards as it helps preventing
the remaining cases.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 weeks agomediatek: filogic: add Arcadyan Mozart platform
John Crispin [Sat, 21 Sep 2024 07:48:47 +0000 (09:48 +0200)]
mediatek: filogic: add Arcadyan Mozart platform

* Mediatek MT7988A (4x Cortex-A73, up to 1.8 GHz clock speed)
* 8 GiB eMMC
* 4 GiB DDR4 RAM
* 2x 10000M + 1x 1000M  ports
* MT7996 Tri-band (2.4G, 5G, 6G) 4T4R 802.11be Wi-Fi
* 2 buttons (Reset, WPS)
* 2x LED for each GMAC
* USB-C PD power input

Signed-off-by: John Crispin <john@phrozen.org>