Felix Fietkau [Mon, 18 Nov 2024 10:21:02 +0000 (11:21 +0100)]
mac80211: backport some upstream fixes
Fix various issues
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Thu, 4 Apr 2024 12:37:23 +0000 (14:37 +0200)]
hostapd: add AFC support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Fri, 22 Mar 2024 15:21:18 +0000 (16:21 +0100)]
ucode-mod-pkgen: add ucode module for generating crypto keys/certificates
This also includes a script to use the functionality from the
command line
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Tue, 16 Aug 2022 17:35:50 +0000 (19:35 +0200)]
gcc/binutils: disable sysv style hash tables for generated binaries
GNU hash tables are always preferred by musl, so the sysv ones are completely
unused and only waste space. Reduces image size by ~1.4%
Signed-off-by: Felix Fietkau <nbd@nbd.name>
John Crispin [Fri, 7 Jan 2022 09:58:08 +0000 (10:58 +0100)]
ramips: add support for actiontec web7200
Signed-off-by: John Crispin <john@phrozen.org>
Felix Fietkau [Tue, 12 Jan 2021 13:20:05 +0000 (14:20 +0100)]
ramips: add work-in-progress support for D-Link DIR-X1860
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Petr Štetiar [Sun, 17 Nov 2024 19:19:36 +0000 (19:19 +0000)]
imagebuilder: fix DEFAULT_PACKAGES handling
DEFAULT_PACKAGES handling was moved in commit
40be892a020e
("imagebuilder: move handling of DEFAULT_PACKAGES into shareable place")
to `include/default-packages.mk`, but they weren't removed from
ImageBuilder's Makefile, so lets remove it now.
Once removed, I've noticed, that it stopped working as there is
target.mk included later in that file, overriding the DEFAULT_PACKAGES
again, so moved it after this target.mk include.
Fixes: 40be892a020e ("imagebuilder: move handling of DEFAULT_PACKAGES into shareable place")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Petr Štetiar [Sun, 17 Nov 2024 05:15:13 +0000 (05:15 +0000)]
linux: fix missing default packages in profiles.json
Robert reported, that in firmware images generated by ASU, there is
`apk` package manager missing after the commit
44598c233dd9 ("build:
remove broken dependency of metadata on toplevel .config variables").
That is happening, because apk got removed from `default_packages` list in
`profiles.json`, which is being generated by `json_overview_image_info` Make
target, which uses `scripts/json_overview_image_info.py` helper script,
which gets the information from `DEFAULT_PACKAGES` Make variable.
So lets fix it by providing `DEFAULT_PACKAGES` variable when its needed.
The reason why we didn't added those packages as a dependency to
base-files like any other packages, was to allow disabling them (in
order to save space).
Fixes: #16969
Fixes: openwrt/asu/issues/1084
Fixes: 44598c233dd9 ("build: remove broken dependency of metadata on toplevel .config variables")
Reported-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Link: https://github.com/openwrt/openwrt/pull/16986
Signed-off-by: Robert Marko <robimarko@gmail.com>
Petr Štetiar [Sun, 17 Nov 2024 05:13:27 +0000 (05:13 +0000)]
imagebuilder: move handling of DEFAULT_PACKAGES into shareable place
It seems, that handling of DEFAULT_PACKAGES is needed in more places, so
lets move it into dedicated include file so it can be easily shared.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Link: https://github.com/openwrt/openwrt/pull/16986
Signed-off-by: Robert Marko <robimarko@gmail.com>
Petr Štetiar [Sun, 17 Nov 2024 04:12:23 +0000 (04:12 +0000)]
target,base-files: unify handling of procd-ujail
Remove the remaining special handling of procd-ujail in a same way as
the rest of the packages was handled in the commit
4c65359af49b ("build:
fix including busybox, procd and apk/opkg in imagebuilder").
Fixes: 44598c233dd9 ("build: remove broken dependency of metadata on toplevel .config variables")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Link: https://github.com/openwrt/openwrt/pull/16986
Signed-off-by: Robert Marko <robimarko@gmail.com>
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>
Christian Marangi [Sun, 17 Nov 2024 18:09:31 +0000 (19:09 +0100)]
include/package-pack: escape package description for APK mkpkg
Escape special char for package description for APK mkpkg as the
description is passed as an args to mkpkg with --info option and can
easily escape from the "".
Currently escaped char `, $, ", \.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
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
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
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>
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>
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>
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>
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.
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>
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>
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>
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>
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>
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>
Petr Štetiar [Sun, 17 Nov 2024 06:50:05 +0000 (06:50 +0000)]
image: apk: remove explicit distfeeds handling
Currently the build fails due to the following:
mv: cannot stat 'linux-mediatek_filogic/target-dir-
7872e783/etc/apk/repositories': No such file or directory
as the changes done in the commit
e031dab93ec3 ("base-files: move apk
distfeeds into directory") forget to adapt image generation part.
While looking into this, I've realized, that we don't need this explicit
handling in the image generating code since the feeds are solely
configured by `base-files` and `apk` packages, so those should always
provide the correct feeds content, so lets simply drop this unnecessary
code.
Moving away /etc/opkg is done to prevent opkg from picking up the remote
feeds defined from base-files and only use the local feeds, but for apk
we explicitly pass --repositories-file which disables parsing of
/etc/apk/repositories and /etc/apk/repositories.d, so we do not need to
backup anything.
Fixes: #16981
Fixes: e031dab93ec3 ("base-files: move apk distfeeds into directory")
Reported-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[jonas.gorski: add an explicit explanation where the original mv comes
from and why we don't need it for apk].
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
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>
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>
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>
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>
Jonas Gorski [Wed, 13 Nov 2024 13:27:16 +0000 (14:27 +0100)]
apk: add a customfeeds.list configuration file
Analog to how we handle custom feeds in opkg, add a customfeeds.list for
custom package feeds and mark it as a configuration file.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16940
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Jonas Gorski [Wed, 13 Nov 2024 13:25:26 +0000 (14:25 +0100)]
base-files: move apk distfeeds into directory
Analog to how we handle distfeeds with opkg, have the base feeds defined
in a file in repositories.d instead of the base /etc/apk/repositories.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16940
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Rosen Penev [Wed, 13 Nov 2024 20:33:12 +0000 (12:33 -0800)]
apk: remove HOST_LDFLAGS hack
No longer needed as upstream respects -Ddefault_library now.
Refreshed patches.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16945
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
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>
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>
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>
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>
Hauke Mehrtens [Thu, 14 Nov 2024 21:57:02 +0000 (22:57 +0100)]
build: apk: Remove /run/apk/db.lock
Do not add the file /run/apk/db.lock to the root file system. The /run
folder should be on a tmpfs.
At runtime we should make /run point to a tmpfs. At build time we should
just remove the 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>
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
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
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>
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>
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>
Christian Marangi [Fri, 15 Nov 2024 11:27:44 +0000 (12:27 +0100)]
package: use /dev/null for apk --repositories-file
In preparation for APK version bump, use /dev/null instead of /dev/zero
for --repositories-file to mute an error in recent APK files.
New APK version use modern istream logic that are more sensible to the
kind of file passed and /dev/null is required to correctly handle an
empty repository file.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Petr Štetiar [Thu, 14 Nov 2024 09:07:20 +0000 (09:07 +0000)]
apk: fix long package description handling
Currently its not possible to generate apk package.adb package index if
the package has longer description field, which leads to following
failure:
(2352/2353) Installing zoneinfo-all (2024b-r1)
(2353/2353) Installing zstd (1.5.6-r1)
ERROR: System state may be inconsistent: failed to write database: No buffer space available
1 error; 2704 MiB in 2353 packages
The code to read/write installeddb does not really handle long
description well. Until the database is converted to apkv3 format,
truncate the apkv3 descriptions to allow existing code to work.
APKv3 index and packages still contain the original long description
unmodified, so no package rebuild will be needed.
Fixing the issue by backporting the single upstream fix as its not
possible to to upstep apk to the latest Git HEAD due to some
regressions, see commit
692052cdc0e7 ("Revert "apk: update to Git
417a93ceae540444fdbd3f76d1dadf0e15621fdc (2024-11-13)"") for more
details.
Fixes: #16929
References: https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/11038
Upstream-Status: Backport [https://gitlab.alpinelinux.org/alpine/apk-tools/-/commit/
417a93ceae540444fdbd3f76d1dadf0e15621fdc]
Link: https://github.com/openwrt/openwrt/pull/16951
Signed-off-by: Petr Štetiar <ynezz@true.cz>
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>
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>
Jonas Gorski [Thu, 14 Nov 2024 11:03:44 +0000 (12:03 +0100)]
apk: explicitly enable help
Explicitly enable help so that the build will fail when an appropriate
lua binary isn't found instead of silently disabling the feature.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Jonas Gorski [Thu, 14 Nov 2024 11:01:40 +0000 (12:01 +0100)]
apk: move common meson args to its own variable
Most apk meson args are shared between host and target builds, so lets
have a common variable for them.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Jonas Gorski [Thu, 14 Nov 2024 10:21:41 +0000 (11:21 +0100)]
apk: host: set lua version to 5.1 to fix help
Commit
b2a84c86e3 ("apk: host: make the help available") enabled the
host build for lua (5.1) as a dependency, but apk defaults to lua 5.3.
This caused it to ignore our lua, and only build the help if the host
system had lua 5.3 installed.
Fix this by explicitly setting the lua version to ours.
Fixes: b2a84c86e3 ("apk: host: make the help available")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Petr Štetiar [Thu, 14 Nov 2024 09:02:13 +0000 (09:02 +0000)]
Revert "apk: update to Git
417a93ceae540444fdbd3f76d1dadf0e15621fdc (2024-11-13)"
This reverts commit
c6a3a11c07fdd85baf9ae43d718eb7a317995ed8 as it was
reported, that it causes issues:
ERROR: failed to read repositories: /dev/zero: No buffer space available
ERROR: unable to select packages:
ca-bundle-
20240203-r1:
error: uninstallable
arch: all
satisfies: world[ca-bundle]
Reported-by: xiao bo <peterwillcn@gmail.com>
References: https://github.com/openwrt/openwrt/commit/
c6a3a11c07fdd85baf9ae43d718eb7a317995ed8#commitcomment-
149072959
Signed-off-by: Petr Štetiar <ynezz@true.cz>
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>
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>
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>
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>
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
Signed-off-by: Petr Štetiar <ynezz@true.cz>
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
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Petr Štetiar [Wed, 13 Nov 2024 08:11:38 +0000 (08:11 +0000)]
apk: update to Git
417a93ceae540444fdbd3f76d1dadf0e15621fdc (2024-11-13)
c1a3e69f24e2 db: validate package arch against compatible arches
2a3dbfc9db58 db: add and use apk_db_parse_file helper to parse files line by line
b231eacd8121 db: simplify add_repos_from_file
98d7196a48d4 db: fix permissions of arch file
d2aaf13ee488 commit: sort matched dependencies on error analysis
c259642c006d tests: rework solver tests to not require apk-test binary
08b4d21f922e tests: move solver test data to separate directory
563d36481166 tests: minor updates to root tests
a236fdd39040 pkg: use memfd_create only if target root has dev/fd working
a5aeb3db113f test: unify makefile and meson tests
d86afdef88b0 db: print message when a file is written to .apk-new
5dd91e3c387d db: consider --force-no-chroot when determining /dev/fd availability
5add6fce22d4 apk-tools-3.0.0_pre4
8a13ed96d1d5 test: fix solver.sh for parallel use
fcd4defc18e6 test: move vertest to cmocka based unit testing infrastructure
e38d5b5a9d04 test: add missing alpine tests makefile
19b1df79ebca blob: refactor apk_blob_for_each_segment into apk_blob_foreach_word
76970a938dd7 package: move the location of executable package scripts
1e0411568dad package: respect libexecdir instead of hard-coding /usr/libexec
a4837ae8ffe2 package: don't call make_device_tree when APK_NO_CHROOT is set
ade0be3449e4 db, extract: handle file/directory extraction errors more consistently
4050f9e69d2e db: fix hardlink handling: root directory and v3 checksums
89e4bf1db040 db, fs: do not extract devices in --usermode
64ff8c72d9fb db: allow files starting with a dot in the root directory of apk3 packages
d26b65d30f55 db, audit: remove support for files without embedded checksum
417a93ceae54 pkg: truncate apkv3 description to 256 bytes
Fixes: #16929
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Kuan-Yi Li [Wed, 13 Nov 2024 16:29:21 +0000 (00:29 +0800)]
imagebuilder: fix APK keys dir creation
Make keys directory for APK instead of OPKG while adding local key.
Signed-off-by: Kuan-Yi Li <kyli@abysm.org>
Link: https://github.com/openwrt/openwrt/pull/16942
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
Felix Fietkau [Wed, 13 Nov 2024 06:04:31 +0000 (07:04 +0100)]
build: fix including busybox, procd and apk/opkg in imagebuilder
Since the image builder pulls package lists from metadata directly,
add procd and busybox as depdendencies to base-files.
As for the package manager itself, since it can be disabled it needs
to be added directly in the image builder makefile
Fixes: 44598c233dd9 ("build: remove broken dependency of metadata on toplevel .config variables")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Eric Fahlgren [Tue, 12 Nov 2024 17:10:02 +0000 (09:10 -0800)]
build: create package index.json
Duplicate the old opkg index.json using the new apk database.
Needed to get the ASU server working on new snapshots.
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16931
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
Til Kaiser [Tue, 12 Nov 2024 15:33:56 +0000 (16:33 +0100)]
perf: fix version for APK
Change the version schema of perf to be compatible with APK as
described in this commit:
e8725a932e16eaf6ec51add8c084d959cbe32ff2.
Signed-off-by: Til Kaiser <mail@tk154.de>
Link: https://github.com/openwrt/openwrt/pull/16930
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Felix Fietkau [Mon, 11 Nov 2024 18:52:14 +0000 (19:52 +0100)]
build: remove broken dependency of metadata on toplevel .config variables
Instead of relying on .config symbols for metadata, alter the DEFAULT
variable of affected packages. Fixes enabling opkg vs apk among others.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Mieczyslaw Nalewaj [Mon, 11 Nov 2024 08:14:28 +0000 (09:14 +0100)]
spidev_test: fix version for APK
Refactor version of spidev_test for APK.
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16917
Signed-off-by: Robert Marko <robimarko@gmail.com>
Paul Spooren [Wed, 6 Nov 2024 15:08:32 +0000 (16:08 +0100)]
config: Use APK as package manager by default
This commit comes after a long period of hard work, starting back in
early 2021 as a proof of concept.
Thanks to the Alpine Linux project for creating such a nice package
manager. Thanks to everyone involved; this is going to be great!
Signed-off-by: Paul Spooren <mail@aparcar.org>
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>
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>
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>
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>
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>
Hannu Nyman [Sun, 10 Nov 2024 13:57:01 +0000 (15:57 +0200)]
wolfssl: Adjust version for apk
Adjust wolfssl version for apk by removing the "-stable"
from the OpenWrt version, although it is still needed for
upstream download archive name.
Define PKG_BUILD_DIR accordingly.
Utilize new short version to simplify ABI_VERSION calculation.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/16906
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
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>
Paul Spooren [Sun, 10 Nov 2024 03:26:43 +0000 (04:26 +0100)]
imagebuilder: fix OPKG package inclusion
In
451e2ce006 the code would only move packages separated by dashes,
however OPKG uses underscores to split between package name and version.
Result was the lack of such packages in the packed ImageBuilder.
Use dashes or underscores depending on the select package manger.
Fixes: 451e2ce006 "imagebuilder: fix package inclusion and APK index"
Signed-off-by: Paul Spooren <mail@aparcar.org>
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>
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>
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>
Christian Marangi [Tue, 22 Oct 2024 23:13:15 +0000 (01:13 +0200)]
apk: Implement apk list --full patch
Implement apk list --full patch to mimik opkg package info.
Link: https://github.com/openwrt/openwrt/pull/16759
Link: https://github.com/openwrt/openwrt/pull/16759
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Christian Marangi [Sun, 10 Nov 2024 01:09:43 +0000 (02:09 +0100)]
apk: Bump to version 2024-11-08
Bump APK to version 2024-11-08, multiple fixup and pending arch patch
for ARM Big Endian merged upstream.
Link: https://github.com/openwrt/openwrt/pull/16759
Link: https://github.com/openwrt/openwrt/pull/16759
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
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>
Paul Spooren [Fri, 8 Nov 2024 09:37:16 +0000 (10:37 +0100)]
imagebuilder: init APK dirs every time
The `--initdb` command creates basic folders required by APK,
previoiusly it would only run a single time when package_index is
actually called. Since the function isn't called if nothing changes,
`--initdb` doesn't initialize the rootfs again.
This commit moves it to package_reload, which runs every time.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Paul Spooren [Wed, 6 Nov 2024 15:34:32 +0000 (16:34 +0100)]
imagebuilder: cleanup package inclusion
Previously three different ways to include packages in an ImageBuilder
existed:
* buildbot: include libc, kernel (and base-files) in $(IB_LDIR)
* not buildbot, standalone: include all packages in ./packages/
* not buildbot, not standalone: include libc, kernel (and base-files) in
./packages/
First of, the separation between *buildbot* and *not buildbot, not
standalone* is not required, we can just always copy packages to
./packages instead of ever using the special place $(IB_LDIR).
Doing so drops the need to handle the extra case and also allows to
clean up the OPKG package installation, which no longer requries the
`firstword` logic, things are now always at ./packages.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Paul Spooren [Wed, 6 Nov 2024 15:32:03 +0000 (16:32 +0100)]
imagebuilder: fix package inclusion and APK index
We need to exclude packages from the APK index which must not be
upgraded. To do so, the packages `libc`, `kernel` and `base-files` are
excluded to APK never suggestes them as upgradable.
The previous logic would however match packages like `libcomerr0`,
causing build failures. Make the copying and excluding logic more
precise by adding a single dash.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Paul Spooren [Fri, 1 Nov 2024 11:33:49 +0000 (12:33 +0100)]
imagebuilder: fix APK for packages dir and cache
This commit solves multiple issues. First of just install the three
special packages base-files, libc and kernel directly from the index. In
upstream indexes, those will never appear to prevent accidental upgrades
may breaking the system.
Next, enable caching for the ImageBuilder, which speeds up consecutive
builds from ~33 seconds to ~5 seconds. Using cache however makes APK
create the folder `/var/cache/apk/` which conflicts with the base-files
installation, which ships a symlink from `/var` to `/tmp`, so specify
`--no-cache` for the rootfs initialization.
Lastly, drop the use of `apk update` since APK automatically does that.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Daniel Golle [Sat, 9 Nov 2024 13:06:02 +0000 (13:06 +0000)]
Revert "build: set PATH for post-install scripts"
This reverts commit
21b5ac862eed7ac373361c914cf6098cab04f503.
The approach is flawed and cannot work in the ImageBuilder.
Using /etc/uci-defaults/ which is run on the target is the only
possible way.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
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>
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>
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
Signed-off-by: Petr Štetiar <ynezz@true.cz>
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
Signed-off-by: Petr Štetiar <ynezz@true.cz>
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
Signed-off-by: Petr Štetiar <ynezz@true.cz>