openwrt/staging/stintel.git
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
17 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 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>
18 months agoCI: build: fix parse toolchain step failing for git strict rules
Christian Marangi [Thu, 25 May 2023 00:44:21 +0000 (02:44 +0200)]
CI: build: fix parse toolchain step failing for git strict rules

Commit 1cb8cdb ("ci: use new buildbot worker images with Debian 11")
introduced new Git version with strict rules for owner of the git
directory.

To handle this and not cause major change, just move the parsing before
the change of ownership of the openwrt directory permitting the correct
run of git fetch command with the same user that did the repository
checkout.

Fixes: 1cb8cdb ("ci: use new buildbot worker images with Debian 11")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: correctly output subtarget in label workflow
Christian Marangi [Thu, 25 May 2023 21:09:59 +0000 (23:09 +0200)]
CI: correctly output subtarget in label workflow

Commit bf8187d5dc4d ("CI: use split target and subtarget in label
workflow") didn't correctly output subtarget resulting in calling with
an empty subtarget. Fix this and correctly output generated subtarget.

Fixes: bf8187d5dc4d ("CI: use split target and subtarget in label workflow")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: use split target and subtarget in label workflow
Christian Marangi [Thu, 25 May 2023 16:24:00 +0000 (18:24 +0200)]
CI: use split target and subtarget in label workflow

With eecc6e48117b ("CI: rework build workflow to have split target and
subtarget directly") target and subtarget are split in 2 different
variables. Label workflow were not aligned to this change and are
currently broken.

Fix them and correctly pass split target and subtarget.

Fixes: eecc6e48117b ("CI: rework build workflow to have split target and subtarget directly")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: ignore master branch for push events
Christian Marangi [Thu, 25 May 2023 11:52:03 +0000 (13:52 +0200)]
CI: ignore master branch for push events

Due to problem with migrating from master to main as the default branch
and downstream project still requiring the master branch to be present,
we currently have for push events double CI runs, one for main and one
for master. To solve this ignore any push event to the master branch for
every workflow that react on push events.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agogeneric: filter out CONFIG_PAHOLE_HAS_SPLIT_BTF
Robert Marko [Mon, 22 May 2023 21:42:13 +0000 (23:42 +0200)]
generic: filter out CONFIG_PAHOLE_HAS_SPLIT_BTF

CONFIG_PAHOLE_HAS_SPLIT_BTF should be runtime detected as it depends on
pahole being available on the host, so filter it out of configs.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agogeneric: 6.1: disable CONFIG_VMWARE_VMCI by default
Robert Marko [Mon, 22 May 2023 21:38:44 +0000 (23:38 +0200)]
generic: 6.1: disable CONFIG_VMWARE_VMCI by default

There is no reason for VMware VMCI to be disabled in targets, so disable
it in the generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agogeneric: 6.1: disable CONFIG_OCTEON_EP by default
Robert Marko [Mon, 22 May 2023 21:36:44 +0000 (23:36 +0200)]
generic: 6.1: disable CONFIG_OCTEON_EP by default

There is no reason for Octeon PCI endpoint driver to be disabled in targets
so disable it in generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agogeneric: 6.1: disable CONFIG_HP_WATCHDOG by default
Robert Marko [Mon, 22 May 2023 21:34:01 +0000 (23:34 +0200)]
generic: 6.1: disable CONFIG_HP_WATCHDOG by default

There is no reason for HP ProLiant HW watchdog to be disabled in individual
targets, so disable it in generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agogeneric: 6.1: disable CONFIG_ARCH_NXP by default
Robert Marko [Mon, 22 May 2023 21:31:05 +0000 (23:31 +0200)]
generic: 6.1: disable CONFIG_ARCH_NXP by default

There is no reason for CONFIG_ARCH_NXP to have to be disabled in individual
targets, so just disable CONFIG_ARCH_NXP in generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agogeneric: 6.1: disable CONFIG_SURFACE_PLATFORMS by default
Robert Marko [Mon, 22 May 2023 21:28:05 +0000 (23:28 +0200)]
generic: 6.1: disable CONFIG_SURFACE_PLATFORMS by default

There is no need for Surface platform drivers to be enabled by default,
especially on OpenWrt so disable CONFIG_SURFACE_PLATFORMS in the generic
config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agobpftools: update, split off bpftool and libbpf packages
Tony Ambardar [Sun, 21 May 2023 09:14:37 +0000 (02:14 -0700)]
bpftools: update, split off bpftool and libbpf packages

My original bpftools package made "variant" builds of bpftool and libbpf
as a convenience, since both used the same local kernel sources with the
same versioning. This is no longer the case, since the commit below
switched to using an out-of-tree build mirror hosting repos for each.

Replace bpftools with separate bpftool and libbpf packages, each simplified
and correctly versioned. Also fix the broken libbpf ABI introduced in the
same commit. Existing build .config files are not impacted.

Fixes: 00cbf6f6ab1d ("bpftools: update to standalone bpftools + libbpf, use the latest version")
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
18 months agotools/meson: update to 1.1.0
Nick Hainke [Mon, 29 Aug 2022 06:03:08 +0000 (08:03 +0200)]
tools/meson: update to 1.1.0

Remove upstreamed:
- 010-wsl2.patch

Release Notes:
- 0.62.0 https://mesonbuild.com/Release-notes-for-0-62-0.html
- 0.63.0 https://mesonbuild.com/Release-notes-for-0-63-0.html
- 0.64.0 https://mesonbuild.com/Release-notes-for-0-64-0.html
- 1.0.0 https://mesonbuild.com/Release-notes-for-1-0-0.html
- 1.1.0 https://mesonbuild.com/Release-notes-for-1-1-0.html

Signed-off-by: Nick Hainke <vincent@systemli.org>
18 months agoubnt-ledbar: depend on mediatek and ramips subtargets
Tomasz Maciej Nowak [Thu, 27 Apr 2023 14:34:49 +0000 (16:34 +0200)]
ubnt-ledbar: depend on mediatek and ramips subtargets

It's only used on devices in mt7621 and mt7622 subtargets, so no reason
to compile it for others.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
18 months agoubnt-ledbar: add kernel 6.1 compat
Tomasz Maciej Nowak [Thu, 27 Apr 2023 14:34:48 +0000 (16:34 +0200)]
ubnt-ledbar: add kernel 6.1 compat

As of ed5c2f5fd10d ("i2c: Make remove callback return void") return
value of remove function is ignored.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
18 months agokernel: qca-ssdk: backport support for building as kernel module
Robert Marko [Tue, 23 May 2023 12:55:48 +0000 (14:55 +0200)]
kernel: qca-ssdk: backport support for building as kernel module

Currently, SSDK is rather special in the sense that its not being built as
a proper out of tree module at all but rather like a userspace application
and that involves a lot of make magic which unfortunately broke with make
version 4.4 and newer.

Luckily QCA finally added a way to build SSDK as an out of tree module
and it uses the kernel buildsystem which makes it compile with make 4.4
as well.
So lets backport the support for it and switch to using it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
18 months agoCI: build: Add support to use container included external toolchain
Christian Marangi [Sat, 17 Dec 2022 14:07:28 +0000 (15:07 +0100)]
CI: build: Add support to use container included external toolchain

Add support to use container included external toolchain and skip
redownloading external sdk for each test.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: push-containers: build and push container with external toolchain
Christian Marangi [Fri, 16 Dec 2022 23:21:31 +0000 (00:21 +0100)]
CI: push-containers: build and push container with external toolchain

Build and push container with external toolchain embedded in the
container image.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: build: add checks to test if toolchain container can be used
Christian Marangi [Tue, 23 May 2023 13:25:56 +0000 (15:25 +0200)]
CI: build: add checks to test if toolchain container can be used

Add checks to test if toolchain container can be used.
This is to handle case of new target or migration of any sort.

If the toolchain container can't be found, the tools container is used
instead.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: build: add option to configure container to use
Christian Marangi [Sat, 17 Dec 2022 01:02:26 +0000 (02:02 +0100)]
CI: build: add option to configure container to use

Add option to configure container to use for build test.
By default the tools container is used if no option is provided.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoCI: build: package external toolchain after build
Christian Marangi [Tue, 20 Dec 2022 19:02:35 +0000 (20:02 +0100)]
CI: build: package external toolchain after build

Package external toolchain after correct build.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
18 months agoci: push-containers: trigger job on release branching
Petr Štetiar [Tue, 23 May 2023 14:56:09 +0000 (16:56 +0200)]
ci: push-containers: trigger job on release branching

Currently all 23.05 related CI jobs are failing as the containers are
not available, so lets fix it by pushing those containers when the
version.mk changes.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
18 months agoci: tools: run the job on changes in include directory as well
Petr Štetiar [Tue, 23 May 2023 12:27:05 +0000 (14:27 +0200)]
ci: tools: run the job on changes in include directory as well

In order to prevent regressions like with #12617.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
18 months agoprereq: SetupHostCommand: fix wrong check result
Petr Štetiar [Tue, 23 May 2023 12:17:47 +0000 (14:17 +0200)]
prereq: SetupHostCommand: fix wrong check result

Tony has reported, that CI tools job is failing for him in macOS
container due to prereq check failure for GNU `install` utility.

Michael diagnosed it and from his traces it was clear, that the issue is
caused by a wrong return value in the success check case, so lets fix it
accordingly.

Fixes: f75204036ccc ("prereq-build: allow host command symlinks to update")
Reported-by: Tony Ambardar <itugrok@yahoo.com>
Diagnosed-by: Michael Pratt <mcpratt@pm.me>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
18 months agomediatek: add basic mt7988 device tree support
Sam Shih [Sun, 19 Feb 2023 02:18:36 +0000 (10:18 +0800)]
mediatek: add basic mt7988 device tree support

This add basic device tree support for mediatek MT7988 SoC

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: backport cpufreq changes to support MT7988
Daniel Golle [Sun, 30 Apr 2023 17:03:00 +0000 (18:03 +0100)]
mediatek: backport cpufreq changes to support MT7988

Backport cpufreq changes from upstream so that the MediaTek MT7988 SoC
can be supported.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: filogic: add driver for Richtek RT5190A regulator
Daniel Golle [Sun, 30 Apr 2023 16:13:33 +0000 (17:13 +0100)]
mediatek: filogic: add driver for Richtek RT5190A regulator

The Richtek RT5190A is used on the MT7988 reference board. Backport and
enable the driver on the filogic subtarget, so we can support cpufreq
on the MT7988 reference board.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: add driver for built-in 2.5G Ethernet PHY
Daniel Golle [Sun, 30 Apr 2023 16:41:22 +0000 (17:41 +0100)]
mediatek: add driver for built-in 2.5G Ethernet PHY

Add driver for the built-in 2.5G Ethernet PHY found in the MT7988 SoC.
To function the PHY also needs firmware files which have not yet been
published via linux-firmware.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: update pending SoC Ethernet PHY driver
Daniel Golle [Sun, 30 Apr 2023 16:34:55 +0000 (17:34 +0100)]
mediatek: update pending SoC Ethernet PHY driver

Update driver for MediaTek's built-in Gigabit Ethernet PHYs which can be
found in the MT7981 and MT7988 SoCs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agogeneric: mt7530: backport support for the MT7988 built-in switch
Daniel Golle [Sun, 30 Apr 2023 13:32:03 +0000 (14:32 +0100)]
generic: mt7530: backport support for the MT7988 built-in switch

Backport commits adding support for the MT7988 built-in switch to the
mt7530 driver.

This change results in the Kconfig symbol NET_DSA_MT7530 to be extended
by NET_DSA_MT7530_MDIO (everything formally covered by NET_DSA_MT7530)
and NET_DSA_MT7530_MMIO (a new driver for the MMIO-connected built-in
switch of the MT7988 SoC).

Select NET_DSA_MT7530_MDIO for all targets previously selecting
NET_DSA_MT7530, with the exception of mediatek/filogic which also
selects NET_DSA_MT7530_MMIO.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agogeneric: add support for MediaTek NETSYS v3
Daniel Golle [Sun, 30 Apr 2023 16:16:12 +0000 (17:16 +0100)]
generic: add support for MediaTek NETSYS v3

In order to support Ethernet on the MT7988 SoC add support for NETSYS v3
as well as new paths and USXGMII SerDes to the mtk_eth_soc driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: add mt7988 pinctrl driver support
Sam Shih [Sun, 19 Feb 2023 02:15:10 +0000 (10:15 +0800)]
mediatek: add mt7988 pinctrl driver support

This adds provisional pinctrl driver support for the MediaTek MT7988 SoC.

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: add mt7988 clock drivers support
Sam Shih [Sun, 19 Feb 2023 02:11:50 +0000 (10:11 +0800)]
mediatek: add mt7988 clock drivers support

This adds clock drivers for the MediaTek MT7988 SoC

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: mt7981: setup all clocks needed for eMMC
Daniel Golle [Tue, 23 May 2023 01:14:32 +0000 (02:14 +0100)]
mediatek: mt7981: setup all clocks needed for eMMC

Setup all necessary clocks to get MMC to work on MT7981, similar to
how it is done also on MT7986.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
18 months agomediatek: mt7981: usb enable 3.0 by default
Chukun Pan [Mon, 1 May 2023 15:20:28 +0000 (23:20 +0800)]
mediatek: mt7981: usb enable 3.0 by default

There is no reason to limit USB to 2.0 mode
by default, delete this limit.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
18 months agokernel: enable (ARM|ARM64)_MODULE_PLTS in generic config
Tony Ambardar [Fri, 5 May 2023 02:17:35 +0000 (19:17 -0700)]
kernel: enable (ARM|ARM64)_MODULE_PLTS in generic config

This allows loading modules with large memory requirements, recently needed
while testing on armvirt/32. Past forum discussions [1] and bug reports [2]
also raised this and the ipq806x target already set it in response [3].
Given this increases kernel image size by only ~1KB, is generally useful on
multi-platform kernels, and enabled by default on upstream arm32 Linux, add
it to the generic config.

The setting has similar utility on arm64, is a requirement for KASLR, and
already enabled on most OpenWrt aarch64 targets, so pull this into the
top-level generic config.

[1]: https://forum.openwrt.org/t/vmap-allocation-for-size-442368-failed-use-vmalloc-size-to-increase-size/34545/7
[2]: https://github.com/openwrt/openwrt/issues/8282
[3]: f81e148eb6 ("ipq806x: update 4.19 kernel config").

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>