openwrt/openwrt.git
10 months agobuild: export GIT_CEILING_DIRECTORIES for package builds
Jeffery To [Wed, 31 May 2023 13:58:34 +0000 (21:58 +0800)]
build: export GIT_CEILING_DIRECTORIES for package builds

A package may run git as part of its build process, and if the package
source code is not from a git checkout, then git may traverse up the
directory tree to find buildroot's repository directory (.git).

For instance, Poetry Core, a Python build backend, will read the
contents of .gitignore for paths to exclude when creating a Python
package. If it finds buildroot's .gitignore file, then Poetry Core will
exclude all of the package's files[1].

This exports GIT_CEILING_DIRECTORIES for both package and host builds so
that git will not traverse beyond $(BUILD_DIR)/$(BUILD_DIR_HOST).

[1]: https://github.com/python-poetry/poetry/issues/5547

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
10 months agoci: build: verify downloaded toolchain tarball
Petr Štetiar [Fri, 26 May 2023 09:41:18 +0000 (11:41 +0200)]
ci: build: verify downloaded toolchain tarball

CDNs are known to ship outdated or corrupted files, if it unpacks
correctly, it necessarily doesn't mean, that we're using the desired
content. So lets fix it by checking the tarball as well.

I'm adding GPG checking explicitly, its not needed, but just double
checking, that everything is working as expected on build
infrastructure.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
10 months agoci: bump buildworker container to version v6
Petr Štetiar [Fri, 26 May 2023 09:38:24 +0000 (11:38 +0200)]
ci: bump buildworker container to version v6

Its being used by buildbot workers, adds g++-multilib to fix node
cross-compilation from a 64-bit build machine to 32-bit host.

References: https://github.com/openwrt/buildbot/pull/7
Signed-off-by: Petr Štetiar <ynezz@true.cz>
10 months agokernel: disable new v6.1 DRM option
Linus Walleij [Tue, 23 May 2023 22:03:12 +0000 (00:03 +0200)]
kernel: disable new v6.1 DRM option

Not many platforms use the DRM configs but Gemini use it
so make sure to disable all new kernel v6.1 features that
we do not want to get prompted about.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [rebased]
10 months agonetifd: update to version 2023-05-31
Petr Štetiar [Wed, 29 Mar 2023 08:57:17 +0000 (10:57 +0200)]
netifd: update to version 2023-05-31

Contains following changes:

 * bridge: bridge_dump_info: add dumping of bridge attributes
 * bridge: make it more clear why the config was applied
 * cmake: fix build by reordering the cflags definitions
 * treewide: fix multiple compiler warnings

Signed-off-by: Petr Štetiar <ynezz@true.cz>
10 months agoCI: kernel: test each subtarget on push events
Christian Marangi [Tue, 30 May 2023 18:43:18 +0000 (20:43 +0200)]
CI: kernel: test each subtarget on push events

Test each subtarget on push events to improve testing and to refresh
ccache of each subtarget.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: add support for getting ccache cache from S3
Christian Marangi [Tue, 30 May 2023 16:57:42 +0000 (18:57 +0200)]
CI: add support for getting ccache cache from S3

Add support for getting ccache cache from S3.
ccache is archieved in a tar and downloaded from S3 Cloud Storage.

For push events, ccache is then uplodaed back to S3 to refresh and have
a ccache cache always fresh.

An additional workflow is added to upload files to an S3 Cloud Storage
from artifacts uplodaed to github. The minio tool is used to upload
files to S3.

If the ccache can't be downloaded from s3, we fallback to github cache
system.

Also limit s3 upload to the openwrt repository since external fork won't
have (obviously) the required secrtes to upload data to the S3 Cloud
Storage.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: limit cache save/delete only on push events
Christian Marangi [Sun, 28 May 2023 07:11:29 +0000 (09:11 +0200)]
CI: build: limit cache save/delete only on push events

Limit ccache cache save/delete only on push events. Saving ccache
cache for pull request will result in bloat and refreshing ccache is not
possible due to security measure on enforcing read permission on
pull_request events.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: coverity: disable ccache usage
Christian Marangi [Sun, 28 May 2023 01:30:12 +0000 (03:30 +0200)]
CI: coverity: disable ccache usage

Disable ccache usage for coverity workflow as it may cause side effect
in the produced bins.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: fix ccache cache usage
Christian Marangi [Sun, 28 May 2023 01:15:50 +0000 (03:15 +0200)]
CI: build: fix ccache cache usage

CCache cache is currently broken due to a funny bug in ccache compiler
type detection. It seems ccache compiler type detection is very fragile
and with the use of external toolchain doesn't correctly detect the
type.
The type detected is set to other instead of gcc resulting in ccache
complaining for unsupported compiler options.

To handle this problem, force the compiler type to gcc to make ccache
correctly work and speedup compilation.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: add option to define custom ccache cache type
Christian Marangi [Sun, 28 May 2023 01:12:54 +0000 (03:12 +0200)]
CI: build: add option to define custom ccache cache type

Add new input to define custom ccache cache type. This is useful to use
a different ccache cache for some special workflow that may do more test
than simple kernel compilation.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: add option to disable use of ccache
Christian Marangi [Sun, 28 May 2023 01:22:51 +0000 (03:22 +0200)]
CI: build: add option to disable use of ccache

Add option to disable use of ccache. This can be useful for some
sensible test that should not use ccache as they can cause side effects
of any sort. (example Coverity Scan)

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: add job to remove previous ccache cache if already exist
Christian Marangi [Sun, 28 May 2023 00:55:26 +0000 (02:55 +0200)]
CI: build: add job to remove previous ccache cache if already exist

Github Actions cache doesn't permit to overwrite cache if it does
already exist. As a trick to refresh and have fresh ccache pool,
delete the ccache cache if it does exist with the help of Github REST
API. An additional permission is needed to access this API. Add this
permittion to each user of the build workflow.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: split cache ccache in separate restore and save jobs
Christian Marangi [Sat, 27 May 2023 15:25:29 +0000 (17:25 +0200)]
CI: build: split cache ccache in separate restore and save jobs

Split caching ccache in separate restore and save jobs to always refresh
the ccache across different runs. Currently if a key is restored, cache
is not saved resulting in a less useful ccache that benefits from
multiple runs.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoCI: build: drop redundant generate ccache hash job
Christian Marangi [Sat, 27 May 2023 20:08:26 +0000 (22:08 +0200)]
CI: build: drop redundant generate ccache hash job

Drop redundant generare ccache hash job as that can be done by
integrated github expressions to generate an hash.
The only change is that the integrated way generate a sha256 hash
instead of an md5 sum.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agotools/meson: update to 1.1.1
Linhui Liu [Sat, 27 May 2023 05:51:10 +0000 (13:51 +0800)]
tools/meson: update to 1.1.1

026644099 Bump versions for 1.1.1 release
72f26cd0a azure pipelines: fix branch patterns to support 1.x release branches
e619b96ad ci: Don't error out CI if codecov upload fails
cf2887d57 ci: Move to the codecov github action
f7b0596bd docs: Fix some typos in feature option examples
0d9e46c84 qt: Allow specifying separate tools for qt4/5/6
be89526e7 rust compiler: use better sanity check logging comparable to the clike one
c953363a7 meson_exe: print suitable debug information for DLL not found errors
6a7cd1350 llvm: Bump broken micro version for CI
3dbeac046 ci: Don't search for llvm modules with LLVM 16.0.x
e17d243aa rust: Also disallow `.` in Rust library target names
630a29f4d rust: Don't allow spaces/dashes in Rust library names
b4c669f6e rust: Don't use prefer-dynamic in case of proc-macro Rust dependencies
225719770 mbuild: .pdb files are created only when debug symbols are enabled
e6cc0f2d8 minstall: Fix install_subdir() excludes with path separators on Win
4269a2401 rust: Use `isinstance(d, build.StaticLibrary)` instead of comparing the type name string
cc481c0da rust: Link staticlib/cdylib link targets like link targets from any other language
0d2c62529 rust: Don't prefer dynamic linking of Rust libraries for cdylibs
1a10b8f77 rust: Use the corresponding rustc version when clippy-driver is chosen as Rust compiler
6dce28185 rust: Don't pass dependency compile arguments to the compiler
b781d1261 Fix paths of Fortran order dependencies Fixes #11047
5886499f8 Fix building python extensions on win-arm64
8014827d0 Python module: emit warning for debug buildtypes with MSVC and no debug Python
a53dcd6f6 Fix unit test that hardcoded `/` and hence broke on Windows
795e39b3a Fix `ERROR: no toolchain found` when run from unittests
35d1def39 Add Cython to Windows CI jobs on Azure
a5ef21302 Use release buildtype in Cython tests, and skip unless ninja backend
8bbf6a5df fix regression in precomputing CMAKE_SIZEOF_VOID_P
26b73afba wrap: Always pass posix paths to patch
6696a754a Don't use dyndep scanner when preprocessing
22163998b Specify c++ 11 flag as code uses c++ 11 features
7c5dc1a79 Fix html coverage report generation when using clang on linux
46e0303c3 yasm: Fix usage of incompatible optimization flags
093ae573b fix python.version() not working in some cases
9bfdae8d7 Add c++23 to the list of C++ standards.
4c72b6da5 select the correct python_command for pyinstaller builds, even on not-Windows
9678aa05f fix data collection with pyinstaller
e5928e63d minstall: work around broken environments with missing UIDs
452d1c567 minstall: do not drop privileges if msetup also ran under sudo
960ae14c4 rust: Convert dashes in crate names to underscores
cb75ce50d backend/vs: Fix OpenMPSupport
11fe12d09 zsh: fix help / descriptions
307cb2573 ci: properly check `test cases/windows` files
1f1f05b8b ci: rename workflow
08e684499 syntax-highlighting: vim: fix mesonSpaceError
de8c4839e packaging: fix options hostArchitectures attribute
560ece485 fix various spelling issues

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
10 months agokernel: bump 5.15 to 5.15.114
John Audia [Tue, 30 May 2023 16:17:13 +0000 (12:17 -0400)]
kernel: bump 5.15 to 5.15.114

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
10 months agobmips: enable testing kernel version with 6.1 version
Álvaro Fernández Rojas [Tue, 30 May 2023 18:51:32 +0000 (20:51 +0200)]
bmips: enable testing kernel version with 6.1 version

Enable testing kernel version with 6.1 kernel version.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 months agobmips: 6.1: refresh config and add missing symbols
Álvaro Fernández Rojas [Tue, 30 May 2023 18:53:27 +0000 (20:53 +0200)]
bmips: 6.1: refresh config and add missing symbols

Refresh config for kernel 6.1 and add missing symbols.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 months agobmips: 6.1: refresh kernel patches
Álvaro Fernández Rojas [Tue, 30 May 2023 18:02:52 +0000 (20:02 +0200)]
bmips: 6.1: refresh kernel patches

Refresh kernel patches for version 6.1.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 months agobmips: 6.1: copy patches, config from 5.15
Álvaro Fernández Rojas [Tue, 30 May 2023 17:28:48 +0000 (19:28 +0200)]
bmips: 6.1: copy patches, config from 5.15

Copy patches and config from 5.15 kernel version.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 months agobmips: enet: add compatibility with kernel 6.1
Álvaro Fernández Rojas [Tue, 30 May 2023 18:50:18 +0000 (20:50 +0200)]
bmips: enet: add compatibility with kernel 6.1

Make bmips ethernet drivers compatible with 6.1 kernel.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 months agokernel: 6.1: add missing Kconfig symbols
Álvaro Fernández Rojas [Tue, 30 May 2023 18:52:46 +0000 (20:52 +0200)]
kernel: 6.1: add missing Kconfig symbols

Add missing symbol found during refreshing bmips Kconfigs.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
10 months agogeneric: import patch fixing workqueue compilation with gcc-13
Nick Hainke [Mon, 29 May 2023 19:37:37 +0000 (21:37 +0200)]
generic: import patch fixing workqueue compilation with gcc-13

Already applied in wq/for-6.5 [0].

Fixes errors in the form of:
  kernel/workqueue.c: In function 'get_work_pwq':
  kernel/workqueue.c:705:24: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    705 |                 return (void *)(data & WORK_STRUCT_WQ_DATA_MASK);
        |                        ^
  kernel/workqueue.c: In function 'get_work_pool':
  kernel/workqueue.c:733:25: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    733 |                 return ((struct pool_workqueue *)
        |                         ^
  kernel/workqueue.c: In function 'get_work_pool_id':
  kernel/workqueue.c:755:25: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
    755 |                 return ((struct pool_workqueue *)
        |                         ^
  cc1: all warnings being treated as errors

[0] - https://lore.kernel.org/all/ZGmEmkcrfh7QdkIz@slm.duckdns.org/

Fixes: #12687 ("mt7621: kernel 5.15 compile failure with GCC 13")
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agokernel: include MT7988 Ethernet support in Linux 6.1
Daniel Golle [Tue, 30 May 2023 01:46:18 +0000 (02:46 +0100)]
kernel: include MT7988 Ethernet support in Linux 6.1

Import pending patches adding Ethernet support for MT7988 which are
already present in pending-5.15 also to pending-6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: backport MT7988 DSA support for Linux 6.1
Daniel Golle [Tue, 30 May 2023 01:44:00 +0000 (02:44 +0100)]
kernel: backport MT7988 DSA support for Linux 6.1

Patches adding DSA support for MT7988 have been backported to
Linux 5.15 but not to Linux 6.1. Import backports also to Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: refresh patches for Linux 6.1
Daniel Golle [Tue, 30 May 2023 01:41:35 +0000 (02:41 +0100)]
kernel: refresh patches for Linux 6.1

Some backported patches generated with git-format-patch were not
refreshed. Use 'make target/linux/refresh' to align them with OpenWrt's
patch style.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agoapm821xx: make crypto4xx as a standalone module
Christian Lamparter [Sun, 28 May 2023 20:13:52 +0000 (22:13 +0200)]
apm821xx: make crypto4xx as a standalone module

Make the crypto4xx crypto accelerator support as a standalone module.
This saves 90kb on a gzipped kernel.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
10 months agoapm821xx: make ata-dwc as a standalone module
Christian Lamparter [Sun, 28 May 2023 19:22:52 +0000 (21:22 +0200)]
apm821xx: make ata-dwc as a standalone module

In order to cut down on the Netgear WNDR4700, the ata
driver can be outsourced. This helps other apm821xx
devices too to save up on kernel size (~200 kb).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
10 months agoapm821xx: add 6.1 testing kernel
Christian Lamparter [Sun, 28 May 2023 20:14:53 +0000 (22:14 +0200)]
apm821xx: add 6.1 testing kernel

refreshed kernel config, otherwise same as 5.15.

10 months agoapm821xx: copy over patches from 5.15
Christian Lamparter [Sun, 28 May 2023 20:13:52 +0000 (22:13 +0200)]
apm821xx: copy over patches from 5.15

dropped tc654 patch as it is upstream.
refreshed the rest.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
10 months agokernel: 6.1: fix swconfig not working
Christian Lamparter [Sun, 28 May 2023 21:00:00 +0000 (23:00 +0200)]
kernel: 6.1: fix swconfig not working

On 6.1 swconfig is not showing up and there's a splat:

| ------------[ cut here ]------------
| WARNING: CPU: 0 PID: 1 at genl_register_family+0xb4/0x81c
| Modules linked in:
| CPU: 0 PID: 1 Comm: swapper Not tainted 6.1.29 #0
| Hardware name: Netgear WNDR4700/WNDR4720 Series APM821XX [...]
| NIP:  c0599370 LR: c0599344 CTR: c08c9950
| REGS: c0c21cb0 TRAP: 0700   Not tainted  (6.1.29)
| MSR:  00029000 <CE,EE,ME>  CR: 48000888  XER: 00000000
|
| GPR00: c0002678 c0c21da0 c0c2cd80 [...]
| NIP [c0599370] genl_register_family+0xb4/0x81c
| LR [c0599344] genl_register_family+0x88/0x81c
| Call Trace:
| [c0c21d80] [c0c21df4] 0xc0c21df4 (unreliable)
| [c0c21e10] [c08c9988] swconfig_init+0x38/0x64
| [c0c21e30] [c0002678] do_one_initcall+0x50/0x260

This is due to it failing to register the netlink
family since changes to upstream linux in patch.

| commit 9c5d03d362519f36cd551aec596388f895c93d2d
|Author: Jakub Kicinski <kuba@kernel.org>
|Date:   Wed Aug 24 17:18:30 2022 -0700
|
|   genetlink: start to validate reserved header byte

this is fixed by adding the proper value to the introduced
"resv_start_op" parameter.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
10 months agoapm821xx: mx60: drop nand-is-boot-medium
Christian Lamparter [Sun, 28 May 2023 19:00:00 +0000 (21:00 +0200)]
apm821xx: mx60: drop nand-is-boot-medium

it was reported that this flag caused the mx60
not to boot anymore.

Fixes: f095822699cc ("apm821xx: convert legacy nand partition layou")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
10 months agorockchip: enable testing kernel version with 6.1 version
Tianling Shen [Thu, 25 May 2023 15:20:20 +0000 (23:20 +0800)]
rockchip: enable testing kernel version with 6.1 version

Enable testing kernel version with 6.1 kernel version.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
10 months agorockchip: 6.1: refresh config and add missing symbols
Tianling Shen [Thu, 25 May 2023 15:07:42 +0000 (23:07 +0800)]
rockchip: 6.1: refresh config and add missing symbols

Refresh config for kernel 6.1 and add missing symbols

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
10 months agorockchip: 6.1: refresh kernel patches
Tianling Shen [Thu, 25 May 2023 14:58:55 +0000 (22:58 +0800)]
rockchip: 6.1: refresh kernel patches

Refresh kernel patches for version 6.1.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
10 months agorockchip: 6.1: copy patches, config from 5.15
Tianling Shen [Thu, 25 May 2023 14:22:52 +0000 (22:22 +0800)]
rockchip: 6.1: copy patches, config from 5.15

Copy patches and config from 5.15 kernel version.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
10 months agokernel: 6.1: add missing Kconfig symbols
Tianling Shen [Fri, 26 May 2023 05:53:07 +0000 (13:53 +0800)]
kernel: 6.1: add missing Kconfig symbols

Add missing symbol found during refreshing rockchip Kconfigs.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
10 months agoipq40xx: e2600ac-c1 remove KERNEL_SIZE
张 鹏 [Fri, 24 Feb 2023 00:58:28 +0000 (08:58 +0800)]
ipq40xx: e2600ac-c1 remove KERNEL_SIZE

Currently, e2600ac-c1 cannot be built as the kernel is larger than the defined KERNEL_SIZE,
however, there is no bootloader limit for the kernel size so remove KERNEL_SIZE completely.

Signed-off-by: 张 鹏 <sd20@qxwlan.com>
[ improve commit title, fix merge conflict ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoipq40xx: add e2600ac c2 to dsa
张 鹏 [Wed, 22 Feb 2023 12:55:44 +0000 (20:55 +0800)]
ipq40xx: add e2600ac c2 to dsa

Convert E2600ac c2 to DSA and enable it.

Signed-off-by: 张 鹏 <sd20@qxwlan.com>
[ rename port to more generic name ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoipq40xx: add e2600ac c1 to dsa
张 鹏 [Wed, 22 Feb 2023 12:46:28 +0000 (20:46 +0800)]
ipq40xx: add e2600ac c1 to dsa

Convert E2600ac c1 to DSA and enable it.

Signed-off-by: 张 鹏 <sd20@qxwlan.com>
[ rename port to more generic name ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agofirmware-utils: package oseama
Rafał Miłecki [Mon, 22 May 2023 08:31:34 +0000 (10:31 +0200)]
firmware-utils: package oseama

It's required by bcm53xx. This allows dropping separated oseama package
and avoids some code duplication.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
10 months agofirmware-utils: new package replacing otrx
Rafał Miłecki [Mon, 22 May 2023 08:31:33 +0000 (10:31 +0200)]
firmware-utils: new package replacing otrx

Some of firmware utils may be required on target devices. It's useful
e.g. for dealing with some firmware formats. That is often required
(supporting specific format) to provide an option to revert to original
firmware.

So far we had packaged "otrx" util only for use on Broadcom targets.
Refactor that to package the whole firmware-utils project so we can
package any single util needed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
10 months agobase-files: x86 fix 01_leds Syntax error
Stan Grishin [Sun, 28 May 2023 04:48:26 +0000 (04:48 +0000)]
base-files: x86 fix 01_leds Syntax error

Cezary Jackiewicz reported:
| Syntax error in line /etc/board.d/01_leds#L22 - missing "\"

Fixes: c191c2d46f00 ("x86: base-files add support for Sophos 135r3/135r3w")
Reported-by: Cezary Jackiewicz <cezary@eko.one.pl>
Signed-off-by: Stan Grishin <stangri@melmac.ca>
(buffed up commit message)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
10 months agolayerscape: kernel: enable MC userspace support
Pawel Dembicki [Fri, 28 Apr 2023 07:24:24 +0000 (09:24 +0200)]
layerscape: kernel: enable MC userspace support

Management Complex (MC) userspace support is required for userspace
helpers working with DPAA2 objects exported by the Management Complex BUS.

Without it, there is the error:

```
root@OpenWrt:/# ls-addni dpmac.1
error: Did not find a device file
Restool wrapper scripts only support the latest major MC version
that currently is MC10.x. Use with caution.
error: Did not find a device file
```

This patch fixes it.

Suggested-by: Alexandra Alth <alexandra@alth.de>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
10 months agopackage: layerscape: change loadaddr address
Pawel Dembicki [Tue, 18 Apr 2023 09:37:04 +0000 (11:37 +0200)]
package: layerscape: change loadaddr address

At this moment loadaddr in most layerscape boards are configured to
0x81000000. 5.15 kernel on some boards is bigger than 5.10 and it cause error:

Loading kernel from FIT Image at 81000000 ...

Using 'config-1' configuration
Trying 'kernel-1' kernel subimage
Description: ARM64 OpenWrt Linux-5.15.112
Created: 2023-05-21 17:39:35 UTC
Type: Kernel Image
Compression: gzip compressed
Data Start: 0x810000ec
Data Size: 7513944 Bytes = 7.2 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x80000000
Entry Point: 0x80000000
Hash algo: crc32
Hash value: 6fd69550
Hash algo: sha1
Hash value: ee34c753ffb615e199a428762824ad4a0aaef90a
Verifying Hash Integrity ... crc32+ sha1+ OK
Loading fdt from FIT Image at 81000000 ...

Using 'config-1' configuration
Trying 'fdt-1' fdt subimage
Description: ARM64 OpenWrt fsl_ls1088a-rdb-sdboot device tree blob
Created: 2023-05-21 17:39:35 UTC
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x8172a98c
Data Size: 19794 Bytes = 19.3 KiB
Architecture: AArch64
Hash algo: crc32
Hash value: 59792ba3
Hash algo: sha1
Hash value: 135585a49f86cd85acea559b78b0098ae99d5e12
Verifying Hash Integrity ... crc32+ sha1+ OK
Booting using the fdt blob at 0x8172a98c
Uncompressing Kernel Image
ERROR: new format image overwritten - must RESET the board to recover
resetting ...

This patch changes loadaddr to 0x88000000 (like LS1012A-FRDM board) to
avoid overlapping for bigger images (like initramfs) too.

Tested-by: Alexandra Alth <alexandra@alth.de> [LS1088ARDB]
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
10 months agonetfilter: add kmod-nft-dup-inet
Michał Kwiatek [Thu, 18 May 2023 19:40:24 +0000 (21:40 +0200)]
netfilter: add kmod-nft-dup-inet

Add kmod-nft-dup-inet package to allow packet duplication in ip/ip6/inet nftables family

Signed-off-by: Michał Kwiatek <michal@kwiatek.it>
10 months agouml: add Kernel 6.1 support via testing
Christian Lamparter [Tue, 23 May 2023 20:08:28 +0000 (22:08 +0200)]
uml: add Kernel 6.1 support via testing

Add the latest default Kernel for testing.

There is no uml_watchdog userspace daemon available,
hence CONFIG_UML_WATCHDOG is disabled.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
11 months agopcre2: fix host compilation of libselinux by enabling PIC
Petr Štetiar [Fri, 26 May 2023 11:08:06 +0000 (13:08 +0200)]
pcre2: fix host compilation of libselinux by enabling PIC

libselinux-3.5 fails to compile in Fedora 38 container due to the
following:

 cc -O2 -I/openwrt/staging_dir/host/include -I/openwrt/staging_dir/hostpkg/include -I/openwrt/staging_dir/target-x86_64_musl/host/include -I../include -D_GNU_SOURCE -DNO_ANDROID_BACKEND -DUSE_PCRE2 -DPCRE2_CODE_UNIT_WIDTH=8 -I/openwrt/staging_dir/hostpkg/include -L/openwrt/staging_dir/host/lib -L/openwrt/staging_dir/hostpkg/lib -L/openwrt/staging_dir/target-x86_64_musl/host/lib -Wl,-rpath=/openwrt/staging_dir/hostpkg/lib -shared -o libselinux.so.1 avc.lo avc_internal.lo avc_sidtab.lo booleans.lo callbacks.lo canonicalize_context.lo checkAccess.lo check_context.lo checkreqprot.lo compute_av.lo compute_create.lo compute_member.lo compute_relabel.lo compute_user.lo context.lo deny_unknown.lo disable.lo enabled.lo fgetfilecon.lo freecon.lo freeconary.lo fsetfilecon.lo get_context_list.lo get_default_type.lo get_initial_context.lo getenforce.lo getfilecon.lo getpeercon.lo init.lo is_customizable_type.lo label.lo label_db.lo label_file.lo label_media.lo label_support.lo label_x.lo lgetfilecon.lo load_policy.lo lsetfilecon.lo mapping.lo matchmediacon.lo matchpathcon.lo policyvers.lo procattr.lo query_user_context.lo regex.lo reject_unknown.lo selinux_check_securetty_context.lo selinux_config.lo selinux_internal.lo selinux_restorecon.lo sestatus.lo setenforce.lo setexecfilecon.lo setfilecon.lo setrans_client.lo seusers.lo sha1.lo stringrep.lo validatetrans.lo -L/openwrt/staging_dir/hostpkg/lib -lpcre2-8 -lfts -ldl -Wl,-soname,libselinux.so.1,--version-script=libselinux.map,-z,defs,-z,relro
 /usr/bin/ld: /openwrt/staging_dir/hostpkg/lib/libpcre2-8.a(pcre2_compile.c.o): relocation R_X86_64_32S against symbol `_pcre2_ucd_stage1_8' can not be used when making a shared object; recompile with -fPIC
 /usr/bin/ld: failed to set dynamic section sizes: bad value

So lets fix it by enabling build of host static library with the
position independent code option enabled.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
11 months agoprereq-build: add missing check for Perl IPC::Cmd
Petr Štetiar [Fri, 26 May 2023 10:37:15 +0000 (12:37 +0200)]
prereq-build: add missing check for Perl IPC::Cmd

OpenSSL fails to compile in Fedora 38 container due to the following:

 Can't locate IPC/Cmd.pm in @INC (you may need to install the IPC::Cmd module) (@INC contains: /openwrt/build_dir/target-x86_64_musl/openssl-3.0.8/util/perl /usr/local/lib64/perl5/5.36 /usr/local/share/perl5/5.36 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /openwrt/build_dir/target-x86_64_musl/openssl-3.0.8/external/perl/Text-Template-1.56/lib) at /openwrt/build_dir/target-x86_64_musl/openssl-3.0.8/util/perl/OpenSSL/config.pm line 19.
 BEGIN failed--compilation aborted at /openwrt/build_dir/target-x86_64_musl/openssl-3.0.8/util/perl/OpenSSL/config.pm line 19.
 Compilation failed in require at ./Configure line 23.
 BEGIN failed--compilation aborted at ./Configure line 23.

Seems like `dnf install -y perl-IPC-Cmd` fixes the issue.

So lets fix it by checking for Perl IPC::Cmd host module availability.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
11 months agoipq807x: enable selecting 6.1 as testing kernel
Robert Marko [Mon, 22 May 2023 21:44:29 +0000 (23:44 +0200)]
ipq807x: enable selecting 6.1 as testing kernel

Allow selecting 6.1 as the testing kernel on ipq807x.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoipq807x: 6.1: fix remoteproc booting
Robert Marko [Fri, 26 May 2023 12:00:45 +0000 (14:00 +0200)]
ipq807x: 6.1: fix remoteproc booting

In 6.1 booting the remoteprocessor that is actually running the WLAN
unfortunatelly broke, so after a long time bisecting we managed to track it
down to commit ("soc: qcom: mdt_loader: Always invoke PAS mem_setup").

Luckily adding back the relocation check and not making an SCM call
qcom_scm_pas_mem_setup() restored the functionality.

Ansuel has sent the patch upstream.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoipq807x: 6.1: refresh kernel config
Robert Marko [Mon, 22 May 2023 21:44:03 +0000 (23:44 +0200)]
ipq807x: 6.1: refresh kernel config

Refresh kernel config by running kernel_menuconfig.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoipq807x: 6.1: refresh patches
Robert Marko [Mon, 22 May 2023 21:23:14 +0000 (23:23 +0200)]
ipq807x: 6.1: refresh patches

Manually refresh tsens, PCI and CPR patches to apply and compile.
Then run automatic refresh on rest of the patches.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoipq807x: drop upstreamed patches
Robert Marko [Mon, 22 May 2023 21:16:11 +0000 (23:16 +0200)]
ipq807x: drop upstreamed patches

Drop all of the patches that have been already been included in kernel 6.1.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoipq807x: 6.1: copy patches and config from 5.15
Robert Marko [Mon, 22 May 2023 21:13:08 +0000 (23:13 +0200)]
ipq807x: 6.1: copy patches and config from 5.15

Copy patches and config from kernel 5.15 to start preparing kernel 6.1
support.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoipq807x: mark merged patches as backports
Robert Marko [Mon, 22 May 2023 21:10:55 +0000 (23:10 +0200)]
ipq807x: mark merged patches as backports

These 3 patches have been merged upstream, so mark them as backports
along with the kernel version they have been merged into.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agokernel: qca-nss-dp: add kernel 6.1 support
Robert Marko [Tue, 23 May 2023 12:13:25 +0000 (14:13 +0200)]
kernel: qca-nss-dp: add kernel 6.1 support

Add the required changes for kernel 6.1 support.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agokernel: qca-ssdk: add kernel 6.1 support
Robert Marko [Tue, 23 May 2023 12:08:09 +0000 (14:08 +0200)]
kernel: qca-ssdk: add kernel 6.1 support

Add kernel 6.1 support to SSDK, it was just a case of adding the kernel
version identification and fixing up get_random_u32.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoath10k-ct: drop spectral fix for 5.10
Robert Marko [Thu, 25 May 2023 18:05:40 +0000 (20:05 +0200)]
ath10k-ct: drop spectral fix for 5.10

This was needed when we had 5.10 kernel as well, but now that all
targets are running 5.15 or 6.1 we can safely drop it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agoath10k-ct: use 6.2 version
Robert Marko [Thu, 25 May 2023 18:02:40 +0000 (20:02 +0200)]
ath10k-ct: use 6.2 version

ath10k-ct now offers 6.2 and 6.4 versions, so lets update to use 6.2
so we can get rid of the API update patch as well as NVMEM as that is
already present in the newer driver.
Ben merged the debug compilation patch so we can remove that one as well.

Update patches to point to 6.2 version and refresh them.

Signed-off-by: Robert Marko <robimarko@gmail.com>
11 months agosifiveu: add new target for SiFive U-based boards
Zoltan HERPAI [Sun, 16 Dec 2018 10:05:58 +0000 (11:05 +0100)]
sifiveu: add new target for SiFive U-based boards

RISC-V is a new CPU architecture aimed to be fully free and open. This
target will add support for it, based on 5.15.

Supports running on:
 - HiFive Unleashed - FU540, first generation
 - HiFive Unmatched - FU740, current latest generation, PCIe

SD-card images are generated, where the partitions are required to have
specific type codes. As it is commonplace nowadays, OpenSBI is used as the
first stage, with U-boot following as the proper bootloader.

Specifications:

HiFive Unleashed:
 - CPU: SiFive FU540 quad-core RISC-V (U54, RV64IMAFDC or RV64GC)
 - Memory: 8Gb
 - Ethernet: 1x 10/100/1000
 - Console: via microUSB

HiFive Unmatched:
 - CPU: SiFive FU740 quad-core RISC-V (U74, RV64IMAFDCB or RV64GCB)
 - Memory: 16Gb
 - Ethernet: 1x 10/100/1000
 - USB: 4x USB 3.2
 - PCIe:  - 1x PCIe Gen3 x8
          - 1x M.2 key M (PCIe x4)
          - 1x M.2 Key E (PCIe x1 / USB2.0)
 - Console: via microUSB

Installation:
Standard SD-card installation via dd-ing the generated image to
an SD-card of at least 256Mb.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 months agouboot-sifiveu: add bootloader package for SiFive Ux40 boards
Zoltan HERPAI [Sun, 26 Jan 2020 22:46:18 +0000 (23:46 +0100)]
uboot-sifiveu: add bootloader package for SiFive Ux40 boards

Add new package for building bootloader for the SiFive U-series boards. Supported
boards at this stage are the HiFive Unleashed and HiFive Unmatched.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 months agofirmware-utils: ptgen: add SiFive-related GUID types
Zoltan HERPAI [Sat, 23 Apr 2022 17:06:28 +0000 (19:06 +0200)]
firmware-utils: ptgen: add SiFive-related GUID types

Add patch until it gets accepted in firmware-utils upstream.

The SiFive RISC-V SoCs use two special partition types in the boot process.
As a first step, the ZSBL (zero-stage bootloader) in the CPU looks for a
partition with a GUID of 5B193300-FC78-40CD-8002-E86C45580B47 to load the
first-stage bootloader - which in OpenWrt's case is an SPL image. The FSBL
(SPL) then looks for a partition with a GUID of
2E54B353-1271-4842-806F-E436D6AF6985 to load the SSBL which is usually an
u-boot.

With ptgen already supporting GPT partition creation, add the required GUID
types and name them accordingly to be invoked with the '-T <GPT partition
type>' parameter.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 months agoopenssl: add linux-riscv64 into the targets list
Zoltan HERPAI [Wed, 15 May 2019 15:21:45 +0000 (17:21 +0200)]
openssl: add linux-riscv64 into the targets list

Add "linux-riscv64-openwrt" into openssl configurations to enable building
on riscv64.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 months agoopensbi: add package for RISC-V
Zoltan HERPAI [Sun, 26 Jan 2020 22:45:48 +0000 (23:45 +0100)]
opensbi: add package for RISC-V

OpenSBI is a form of a first-stage bootloader, which initializes
certain parts of an SoC and then passes on control to the second
stage bootloader i.e. an u-boot image.

We're introducing the package with release v1.2, which provides
SBI v0.3 and the SBI SRST extensions which helps to gracefully
reboot/shutdown various HiFive-U SoCs.

Tested on SiFive Unleashed and Unmatched boards.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 months agogeneric: groundwork for RISC-V
Zoltan HERPAI [Sun, 16 Dec 2018 09:45:53 +0000 (10:45 +0100)]
generic: groundwork for RISC-V

Add build infrastructure for RISC-V.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
11 months agoarmvirt: 6.1: enable kernel for testing
Tony Ambardar [Wed, 3 May 2023 02:31:38 +0000 (19:31 -0700)]
armvirt: 6.1: enable kernel for testing

Build and run-tested on QEMU/armvirt32 and QEMU/armvirt64.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agoarmvirt: 6.1: update kernel configs
Tony Ambardar [Fri, 5 May 2023 00:12:02 +0000 (17:12 -0700)]
armvirt: 6.1: update kernel configs

The following new common symbols are defined:

  CONFIG_ARCH_FORCE_MAX_ORDER=11
  # CONFIG_NET_9P_FD is not set

Removed symbols for armvirt/32 include:

  CONFIG_ARM_CRYPTO=y

New symbols for armvirt/64 include:

  CONFIG_ARM64_SME=y
  CONFIG_CRYPTO_POLYVAL_ARM64_CE=y
  # CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set
  # CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agoarmvirt: 6.1: copy config from kernel 5.15
Tony Ambardar [Tue, 23 May 2023 08:14:03 +0000 (01:14 -0700)]
armvirt: 6.1: copy config from kernel 5.15

Copy config files for kernel 5.15 to kernel 6.1.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agomalta: 6.1: enable kernel for testing
Tony Ambardar [Wed, 3 May 2023 02:31:38 +0000 (19:31 -0700)]
malta: 6.1: enable kernel for testing

Build and run-tested on QEMU/malta-be32 and QEMU/malta-le64.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agomalta: 6.1: update kernel config
Tony Ambardar [Wed, 3 May 2023 02:29:50 +0000 (19:29 -0700)]
malta: 6.1: update kernel config

The following new symbols are defined:

  CONFIG_ARCH_FORCE_MAX_ORDER=11
  CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US=100
  CONFIG_ZBOOT_LOAD_ADDRESS=0x0

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agomalta: 6.1: copy config from kernel 5.15
Tony Ambardar [Tue, 23 May 2023 06:30:38 +0000 (23:30 -0700)]
malta: 6.1: copy config from kernel 5.15

Copy config files for kernel 5.15 to kernel 6.1.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agokernel: 6.1: add missing config symbols
Tony Ambardar [Wed, 3 May 2023 02:19:49 +0000 (19:19 -0700)]
kernel: 6.1: add missing config symbols

Add generic config symbols found updating the malta and armvirt targets.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agokernel: kmod-rxrpc: add missing dependencies
Tony Ambardar [Sat, 27 May 2023 06:22:56 +0000 (23:22 -0700)]
kernel: kmod-rxrpc: add missing dependencies

From commit dc0e6056de ("rxrpc: Fix missing dependency on NET_UDP_TUNNEL")
upstream, kmod-rxrpc uses functions enabled by CONFIG_NET_UDP_TUNNEL.

Add package dependencies on kmod-udptunnel4 and kmod-udptunnel6 to avoid
build errors like:

  Package kmod-rxrpc is missing dependencies for the following libraries:
    ip6_udp_tunnel.ko
    udp_tunnel.ko

This change applies to both kernels 5.15 and 6.1.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
11 months agoCI: use toolchain container for label workflow
Christian Marangi [Sun, 28 May 2023 01:44:01 +0000 (03:44 +0200)]
CI: use toolchain container for label workflow

Use toolchain container for label workflow to skip downloading external
toolchain from openwrt servers.

Fixes: 0fe5776f4a79 ("CI: build: Add support to use container included external toolchain")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
11 months agomediatek: sync MT7988 USXGMII with SDK driver
Daniel Golle [Sat, 27 May 2023 20:03:40 +0000 (21:03 +0100)]
mediatek: sync MT7988 USXGMII with SDK driver

The USXGMII driver in SDK was heavily refactored, some bugs have been
fixed and it has switched to use phylink_pcs. Follow up with changes
in SDK driver and sync our on-top-of-mainline driver with the SDK
driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
11 months agomediatek: follow-up with renamed Build/bl2 and Build/bl31-uboot
Daniel Golle [Sat, 27 May 2023 20:49:55 +0000 (21:49 +0100)]
mediatek: follow-up with renamed Build/bl2 and Build/bl31-uboot

Use renamed build step names for all boards which were not handled by
commit c620409d58 ("mediatek: filogic: add uboot build for mt7981")
and now breaking the build.

Fixes: c620409d58 ("mediatek: filogic: add uboot build for mt7981")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
11 months agoca-certificates: Update to version 20230311
Tianling Shen [Fri, 26 May 2023 04:09:47 +0000 (12:09 +0800)]
ca-certificates: Update to version 20230311

Update the ca-certificates and ca-bundle package from version 20211016 to
version 20230311.

Use TAR_OPTIONS instead of hacking Build/Prepare, refresh patches.

Debian change-log entry [1]:
|[...]
|[ Đoàn Trần Công Danh ]
|* ca-certificates: compat with non-GNU mktemp (closes: #1000847)
|
|[ Ilya Lipnitskiy ]
|* certdata2pem.py: use UTC time when checking cert validity
|
|[ Julien Cristau ]
|* Update Mozilla certificate authority bundle to version 2.60
|   The following certificate authorities were added (+):
|   + "Autoridad de Certificacion Firmaprofesional CIF A62634068"
|   + "Certainly Root E1"
|   + "Certainly Root R1"
|   + "D-TRUST BR Root CA 1 2020"
|   + "D-TRUST EV Root CA 1 2020"
|   + "DigiCert TLS ECC P384 Root G5"
|   + "DigiCert TLS RSA4096 Root G5"
|   + "E-Tugra Global Root CA ECC v3"
|   + "E-Tugra Global Root CA RSA v3"
|   + "HARICA TLS ECC Root CA 2021"
|   + "HARICA TLS RSA Root CA 2021"
|   + "HiPKI Root CA - G1"
|   + "ISRG Root X2"
|   + "Security Communication ECC RootCA1"
|   + "Security Communication RootCA3"
|   + "Telia Root CA v2"
|   + "TunTrust Root CA"
|   + "vTrus ECC Root CA"
|   + "vTrus Root CA"
|  The following certificate authorities were removed (-):
|  - "Cybertrust Global Root" (expired)
|  - "EC-ACC"
|  - "GlobalSign Root CA - R2" (expired)
|  - "Hellenic Academic and Research Institutions RootCA 2011"
|  - "Network Solutions Certificate Authority"
|  - "Staat der Nederlanden EV Root CA" (expired)
|* Drop trailing space from debconf template causing misformatting
|  (closes: #980821)
|
|[ Wataru Ashihara ]
|* Make certdata2pem.py compatible with cryptography >= 35 (closes: #1008244)
|[...]

[1]: https://metadata.ftp-master.debian.org/changelogs/main/c/ca-certificates/ca-certificates_20230311_changelog

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
11 months agoCI: don't add "" in target and subtarget for label workflow
Christian Marangi [Sat, 27 May 2023 17:53:15 +0000 (19:53 +0200)]
CI: don't add "" in target and subtarget for label workflow

Don't add "" in target and subtarget for label workflow from label
detection as it does cause problem in build workflow on container
target/subtarget matching.

Fixes: bf8187d5dc4d ("CI: use split target and subtarget in label workflow")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
11 months agomediatek: filogic: add Qihoo 360T7 support
Chukun Pan [Sat, 29 Apr 2023 15:08:26 +0000 (23:08 +0800)]
mediatek: filogic: add Qihoo 360T7 support

Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: ESMT F50L1G41LB 128MB
  RAM: MT5CC128M16JR-EK 256MB
  Ethernet: 4x 10/100/1000 Mbps
  Switch: MediaTek MT7531AE
  WiFi: MediaTek MT7976C
  Button: Reset, WPS
  Power: DC 12V 1A

Flash instructions:
  1. Attach UART, boot the stock firmware until
     the message about failsafe mode appears.
  2. Enter failsafe mode by pressing "f" and "Enter"
  3. Type "mount_root", then run
     "fw_setenv bootmenu_delay 3"
  4. Back up all mtd partitions before flashing.
  5. Reboot, U-Boot now presents a menu.
  6. Connect to your PC via the Gigabit port of the router,
     set a static ip on the ethernet interface of your PC.
     (ip 192.168.1.254, gateway 192.168.1.1)
  7. Select "Upgrade ATF BL2", then use this file:
     openwrt-mediatek-filogic-qihoo_360t7-preloader.bin
  8. Select "Upgrade ATF FIP", then use this file:
     openwrt-mediatek-filogic-qihoo_360t7-bl31-uboot.fip
  9. Download the initramfs image, and type "reset",
     waiting for tftp recovery to complete.
  a. After openwrt boots up, perform sysupgrade.

Note:
  1. Since NMBM is disabled, we must back up all partitions.
  2. Flash instructions is based on commit 28df7f7.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
11 months agouboot-mediatek: add Qihoo 360T7 support
Chukun Pan [Fri, 28 Apr 2023 15:36:17 +0000 (23:36 +0800)]
uboot-mediatek: add Qihoo 360T7 support

The vendor uboot will verify firmware at boot.
So add a custom uboot build for this device.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
11 months agoarm-trusted-firmware-mediatek: add build for MT7981 DDR3
Chukun Pan [Wed, 26 Apr 2023 15:28:31 +0000 (23:28 +0800)]
arm-trusted-firmware-mediatek: add build for MT7981 DDR3

Add new build option BOARD_QFN/BOARD_BGA.
This option is only useful for MT7981 device.
MT7981A/B: BOARD_BGA, MT7981C: BOARD_QFN.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
11 months agomediatek: filogic: add uboot build for mt7981
Chukun Pan [Tue, 25 Apr 2023 15:06:20 +0000 (23:06 +0800)]
mediatek: filogic: add uboot build for mt7981

Rename previous uboot build to mt7986-*.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
11 months agomediatek: mt7981: add reserved memory to support pstore
Alexander Couzens [Sun, 19 Mar 2023 18:00:51 +0000 (19:00 +0100)]
mediatek: mt7981: add reserved memory to support pstore

Add reserved memory for pstore/ramoops to device tree used by Linux
as well as U-Boot.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
11 months agomediatek: cleanly backport and add fix for I2C driver
Daniel Golle [Fri, 26 May 2023 12:49:02 +0000 (13:49 +0100)]
mediatek: cleanly backport and add fix for I2C driver

Pick accepted patches from upstream Linux tree instead of having to
maintain our slightly different downstream patches.
Import pending patch fixing I2C on MT7981 by making sure all clocks
are enabled before accessing I2C registers.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
11 months agogeneric: add kernel tag to backport patch
Nick Hainke [Fri, 26 May 2023 21:01:59 +0000 (23:01 +0200)]
generic: add kernel tag to backport patch

In the previous commit, the kernel tag was not added when adding the
backport.

Fixes: 537624db39a9 ("generic: backport missing helper for phy interfaces")
Signed-off-by: Nick Hainke <vincent@systemli.org>
11 months agogeneric: backport missing helper for phy interfaces
Nick Hainke [Fri, 26 May 2023 20:16:27 +0000 (22:16 +0200)]
generic: backport missing helper for phy interfaces

The function was defined before in the patch
"hack-5.15/795-backport-phylink_pcs-helpers.patch". However, the hack
did not move to 6.1. Instead of using the hack do the backport of
upstream accepted version.

Fixes errors in the form of:
  make[8]: Entering directory '/home/nick/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-6.1.29'
    CC      drivers/net/pcs/pcs-mtk-lynxi.o
  drivers/net/pcs/pcs-mtk-lynxi.c: In function 'mtk_pcs_lynxi_config':
  drivers/net/pcs/pcs-mtk-lynxi.c:160:30: error: implicit declaration of function 'phylink_get_link_timer_ns' [-Werror=implicit-function-declaration]
    160 |                 link_timer = phylink_get_link_timer_ns(interface);
        |                              ^~~~~~~~~~~~~~~~~~~~~~~~~
  cc1: all warnings being treated as errors

Fixes: fa79baf4a6e2 ("generic: copy backport, hack, pending patch and config from 5.15 to 6.1")
Signed-off-by: Nick Hainke <vincent@systemli.org>
11 months agoramips: mark patches accepted upstream
Nick Hainke [Tue, 23 May 2023 14:47:42 +0000 (16:47 +0200)]
ramips: mark patches accepted upstream

Add kernel tags to the patches that got accepted upstream.

Signed-off-by: Nick Hainke <vincent@systemli.org>
11 months agomediatek: fix, clean and unify SD card image generation
Daniel Golle [Fri, 26 May 2023 09:26:49 +0000 (10:26 +0100)]
mediatek: fix, clean and unify SD card image generation

Make sure sub-images on the SD card are size-checked, allow
generating SD card without squashfs and/or initramfs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
11 months agokernel: disable wireless extension support for 6.1
Felix Fietkau [Fri, 26 May 2023 11:34:40 +0000 (13:34 +0200)]
kernel: disable wireless extension support for 6.1

It is unused

Signed-off-by: Felix Fietkau <nbd@nbd.name>
11 months agomac80211: remove legacy unused lib80211 support patch
Felix Fietkau [Fri, 26 May 2023 11:37:18 +0000 (13:37 +0200)]
mac80211: remove legacy unused lib80211 support patch

Signed-off-by: Felix Fietkau <nbd@nbd.name>
11 months agohostapd: remove unused legacy wireless extension support
Felix Fietkau [Fri, 26 May 2023 11:32:47 +0000 (13:32 +0200)]
hostapd: remove unused legacy wireless extension support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
11 months agoipq-wifi: bump to latest git HEAD
Antti Nykänen [Thu, 25 May 2023 06:43:46 +0000 (09:43 +0300)]
ipq-wifi: bump to latest git HEAD

0f73d32 ipq8074: update RegDB in new submitted BDF
a4cd21f ipq8074: add Compex WPQ873 BDF
c888dd0 qca-wireless: ipq40xx: Add BDFs for Eero Cento
6388ba9 ipq8074: update regdb for Netgear SXK80 BDF
77775d2 ipq8074: add Netgear SXK80

Signed-off-by: Antti Nykänen <antti.nykanen@nokia.com>
11 months agoipq807x: add support for Compex WPQ873
Antti Nykänen [Thu, 25 May 2023 06:42:09 +0000 (09:42 +0300)]
ipq807x: add support for Compex WPQ873

The Compex WPQ873 is a development board with two M.2 B-key
 slots for cellular modems.

Device info:
 - IPQ8072A SoC
 - 512MiB RAM
 - 256MiB NAND flash
 - 8MiB SPI NOR
 - 3x 1GigE ports
 - 1x 2.5GigE port
 - 2.4GHz/5GHz AX WLAN
 - 1x USB 3.0 port
 - 1x M.2 B-key socket with PCIe 3.0
 - 1x M.2 B-key socket with PCIe 2.0 and USB 3.0
 - 4x SIM card slots
 - Bluetooth LE 5.0 (QCA4024)

Prerequisites
1) TFTP server
2) 3.3V USB to TTL cable for UART console
   2.54mm pitch 4-pin header for UART is readily provided on board, no modifications are necessary to access it
   TTL connector pinout: 2=TX, 3=RX, 4=GND
   Arrow marks pin 1 which is 3.3V
   Serial port settings: 115200 8N1 no flow control

The device will most likely ship with a QSDK-based firmware.

1. Power on device and interrupt u-boot to obtain u-boot CLI

2. set serverip to IP address of the TFTP server, for example:

        `setenv serverip 192.168.1.10`

3. Download image from TFTP server:

        `tftpboot 0x44000000 openwrt-ipq807x-generic-compex_wpq873-squashfs-factory.ubi`

4. Flash ubi image to both partitions and reset:

        `sf probe
         imxtract 0x44000000 ubi
         nand device 0
         nand erase 0x0 0x3400000
         nand erase 0x3c00000 0x3400000
         nand write $fileaddr 0x0 $filesize
         nand write $fileaddr 0x3c00000 $filesize
         reset`

Afterwards, you can use sysupgrade to flash new OpenWRT images.

Signed-off-by: Antti Nykänen <antti.nykanen@nokia.com>
11 months agokernel: bump 5.15 to 5.15.113
John Audia [Wed, 24 May 2023 19:10:44 +0000 (15:10 -0400)]
kernel: bump 5.15 to 5.15.113

All patches automatically rebased.

Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
11 months agox86: disable CONFIG_X86_PLATFORM_DRIVERS_HP
John Audia [Thu, 25 May 2023 07:29:58 +0000 (03:29 -0400)]
x86: disable CONFIG_X86_PLATFORM_DRIVERS_HP

New config option defaulted to N for this bump.

Signed-off-by: John Audia <therealgraysky@proton.me>
11 months agoipq806x: Add support for Netgear Nighthawk Pro Gaming XR450
Andrzej Mialkowski [Fri, 19 May 2023 11:09:54 +0000 (04:09 -0700)]
ipq806x: Add support for Netgear Nighthawk Pro Gaming XR450

Motivation:
 Firmware with platform ID "XR450" required for easy installation.

Manufacturer pages:
 Product page: https://www.netgear.com/support/product/xr450
 Product Data Sheet: https://www.netgear.com/images/datasheet/networking/wifirouter/XR450.pdf
 Current firmware: https://www.downloads.netgear.com/files/GDC/XR450/XR450-V2.3.2.134.zip

Specifications:
Almost identical to Netgear XR500(https://openwrt.org/toh/hwdata/netgear/netgear_xr500)

Differences:
Platform ID: XR450, utilized for firmware validation
WLAN 2.4GHz: b/g/n Supports QAM64 (XR500 QAM256)

SoC: Qualcomm Atheros IPQ8065
RAM: 512 MB
Storage: 256 MiB
Wireless: Qualcomm Atheros QCA9984
Switch: Qualcomm Atheros AR8337 rev. 2
Ethernet: 5x 1000/100/10
USB: 2x 3.0

Install via WEB GUI (recommended):
1. Navigate within GUI to firmware update section
2. Select openwrt-ipq806x-netgear_xr450-squashfs-factory.img
3. Dismiss downgrade warning

Install via TFTP recovery (same as XR500/R7800):

1. Configure host PC to use static address 192.168.1.10 https://openwrt.org/toh/netgear/r7800#prerequisites_for_tftp_flashing
2. Flash openwrt-ipq806x-netgear_xr450-squashfs-factory.img using procedure https://openwrt.org/toh/netgear/r7800#tftp_flashing_process

Revert to stock firmware
1. Download current manufacturer firmware, decompress zip file to obtain img file
2. Use TFTP recovery method flash img file (currently XR450-V2.3.2.134.img)
ipq806x: add support to netgear_xr450

Signed-off-by: Andrzej Mialkowski <andrzej.mialkowski@gmail.com>
11 months agokernel: Backport MGLRU patch from 6.4
Kazuki Hashimoto [Wed, 24 May 2023 14:58:03 +0000 (23:58 +0900)]
kernel: Backport MGLRU patch from 6.4

This fixes a bug where the reclaim path could occasionally have long
tail latency.

Signed-off-by: Kazuki Hashimoto <kazukih0205@gmail.com>
11 months agokernel: 6.1: Synchronize MGLRU patches with upstream
Kazuki Hashimoto [Wed, 24 May 2023 14:56:36 +0000 (23:56 +0900)]
kernel: 6.1: Synchronize MGLRU patches with upstream

Replace the refreshed 5.15 backports with backports for 6.1.

This fixes FMODE_CAN_ODIRECT having the same value as
FMODE_NOREUSE.

Signed-off-by: Kazuki Hashimoto <kazukih0205@gmail.com>