openwrt/staging/blogic.git
14 months agouboot-rockchip: add suport for Radxa ROCK Pi E
Jayantajit Gogoi [Tue, 29 Aug 2023 15:12:28 +0000 (15:12 +0000)]
uboot-rockchip: add suport for Radxa ROCK Pi E

Add uboot support for Radxa ROCK Pi E, rockchip rk3328 board.
Add pre-built files to fix swig dependencies.

Specification:

- CPU: Rockchip RK3328 64-bit Quad-core
- RAM: DDR3 256MB ~ 2GB
- Network:
    1 x 10/100/1000M Ethernet
    1 x 10/100M Ethernet
- USB Host:
    1 x USB3.0 Type A HOST
    1 x USB2.0 OTG (40-pin pin-header)
- Wireless:
    RTL8723DU/RTL8821CU
- Power Supply: Type-C 5V

Installation:
- Write image to SD Card or EMMC with dd
- Boot ROCK Pi E from the SD Card

Signed-off-by: Jayantajit Gogoi <jayanta.gogoi525@gmail.com>
14 months agokernel: backport support for renaming netdevs while up
Felix Fietkau [Mon, 4 Sep 2023 13:28:59 +0000 (15:28 +0200)]
kernel: backport support for renaming netdevs while up

Will be used in upcoming hostapd changes

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agoipq40xx: compress kernel for Magic 2 WiFi next
Thomas Bong [Thu, 31 Aug 2023 08:43:15 +0000 (10:43 +0200)]
ipq40xx: compress kernel for Magic 2 WiFi next

The bootcmd limits the kernel to 4 MiB which is
exceeded when using Device/FitImage. Device/FitzImage
reduces the size to around 3 MiB.

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Thomas Bong <thomas.bong@devolo.de>
14 months agoipq40xx: convert devolo Magic 2 WiFi next to DSA
Thomas Bong [Thu, 31 Aug 2023 05:39:24 +0000 (07:39 +0200)]
ipq40xx: convert devolo Magic 2 WiFi next to DSA

Renamed the interfaces to match the other devices.
Name the interface connected to the builtin G.hn chip 'ghn'.
This might toggle at runtime while the G.hn chip is in the
bootloader.

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Thomas Bong <thomas.bong@devolo.de>
14 months agotools/cmake: update to 3.27.4
Hannu Nyman [Sat, 2 Sep 2023 07:12:40 +0000 (10:12 +0300)]
tools/cmake: update to 3.27.4

Update cmake to 3.27.4
No patch refresh needed.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
14 months agowireless-regdb: update to 2023.09.01
Yuu Toriyama [Sat, 2 Sep 2023 07:21:09 +0000 (16:21 +0900)]
wireless-regdb: update to 2023.09.01

Changes:
    9dc0800 wireless-regdb: Update regulatory rules for Philippines (PH)
    111ba89 wireless-regdb: Update regulatory rules for Egypt (EG) from March 2022 guidelines
    ae1421f wireless-regdb: Update regulatory info for Türkiye (TR)
    20e5b73 wireless-regdb: Update regulatory rules for Australia (AU) for June 2023
    991b1ef wireless-regdb: update regulatory database based on preceding changes

Signed-off-by: Yuu Toriyama <PascalCoffeeLake@gmail.com>
14 months agomvebu: add reset delays of PHYs for Fortinet FortiGate 50E
INAGAKI Hiroshi [Sat, 2 Sep 2023 14:06:20 +0000 (23:06 +0900)]
mvebu: add reset delays of PHYs for Fortinet FortiGate 50E

Add reset-(de)assert-us to ethernet PHYs on Fortinet FortiGate 50E to
solve instability after HW resetting of PHYs. (ex.: restarting "network"
service, etc...)

Fixes: #13391
Fixes: 102dc5a62506 ("mvebu: add support for Fortinet FortiGate 50E")
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
14 months agokernel: bump 6.1 to 6.1.51
John Audia [Sat, 2 Sep 2023 11:32:29 +0000 (07:32 -0400)]
kernel: bump 6.1 to 6.1.51

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

No patches needed a rebased.  Update to checksum only.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agokernel: bump 5.15 to 5.15.130
John Audia [Sat, 2 Sep 2023 12:42:48 +0000 (08:42 -0400)]
kernel: bump 5.15 to 5.15.130

Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.130

No patches needed a rebased. Update to checksum only.

Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agohostapd: allow adding initial AP without breaking STA interface connection
Felix Fietkau [Sun, 3 Sep 2023 07:51:28 +0000 (09:51 +0200)]
hostapd: allow adding initial AP without breaking STA interface connection

When switching from a STA-only configuration to AP+STA on the same phy, the
STA was previously restarted in order to notify hostapd of the new frequency,
which might not match the AP configuration.
Fix the STA restart by querying the operating frequency from within hostapd
when bringing up the AP.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agohostapd: fix config change detection on boolean values
Felix Fietkau [Sun, 3 Sep 2023 07:51:08 +0000 (09:51 +0200)]
hostapd: fix config change detection on boolean values

Check for null instead of truish value

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agohostapd: fix parsing HT secondary channel offset
Felix Fietkau [Sat, 2 Sep 2023 17:36:21 +0000 (19:36 +0200)]
hostapd: fix parsing HT secondary channel offset

It returned the wrong value when using HT40-

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agohostapd: reset center_seg0_idx for 2.4 GHz
Felix Fietkau [Sat, 2 Sep 2023 17:19:56 +0000 (19:19 +0200)]
hostapd: reset center_seg0_idx for 2.4 GHz

Fixes 40 MHz channel bandwidth on 2.4 GHz AP+STA

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agohostapd: use proper helper functions for setting seg0/seg1 idx and chwidth
Felix Fietkau [Fri, 1 Sep 2023 18:39:15 +0000 (20:39 +0200)]
hostapd: use proper helper functions for setting seg0/seg1 idx and chwidth

Simplifies code and removes #ifdef statements

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agomediatek: fix sysupgrade error for WR30U
Hank Moretti [Mon, 28 Aug 2023 15:45:05 +0000 (15:45 +0000)]
mediatek: fix sysupgrade error for WR30U

The NMBM-Enabled layout did not use fit image,
it just need default process. So it was been removed in platform.sh.

It will fix sysupgrade error for xiaomi,mi-router-wr30u-112m-nmbm.

Signed-off-by: Hank Moretti <mchank9999@gmail.com>
14 months agoscripts/download.pl: remove stale GNOME download sites
Hannu Nyman [Fri, 1 Sep 2023 15:56:49 +0000 (18:56 +0300)]
scripts/download.pl: remove stale GNOME download sites

Remove stale sites from @GNOME alias:
* remove 2 sites that have stale 3 years old content
* remove 2 sites that have dropped GNOME
* convert 2 sites from FTP to HTTP

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
14 months agokernel: bump 6.1 to 6.1.50
John Audia [Wed, 30 Aug 2023 17:45:50 +0000 (13:45 -0400)]
kernel: bump 6.1 to 6.1.50

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

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod, ipq806x/R7800
Run-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod, ipq806x/R7800

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agokernel: bump 5.15 to 5.15.129
John Audia [Wed, 30 Aug 2023 18:44:05 +0000 (14:44 -0400)]
kernel: bump 5.15 to 5.15.129

Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.129

All patches automatically rebased.

Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agoscripts/package-metadata.pl: strip already selected conditions from dependencies
Felix Fietkau [Fri, 1 Sep 2023 17:26:29 +0000 (19:26 +0200)]
scripts/package-metadata.pl: strip already selected conditions from dependencies

When a dependency is pulled in via conditional depends, and the condition
is already selected earlier in the chain, drop the condition.
This avoids some corner cases that trigger recursive dependencies.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agoRevert "scripts/package-metadata.pl: fix handling transitive conditional dependencies"
Felix Fietkau [Fri, 1 Sep 2023 16:34:36 +0000 (18:34 +0200)]
Revert "scripts/package-metadata.pl: fix handling transitive conditional dependencies"

This reverts commit 6c3eff9dd8bb8d0f268e8a0dbedbc6a33bdac796.
This appears to cause some regressions in generated config.
Will be replaced with a fixed version later

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agoscripts/package-metadata.pl: sort dependency keys
Felix Fietkau [Fri, 1 Sep 2023 16:15:30 +0000 (18:15 +0200)]
scripts/package-metadata.pl: sort dependency keys

This makes it easier to keep track of changes in the generated output,
when the script is modified

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agofirewall4: update to the latest version
Felix Fietkau [Fri, 1 Sep 2023 12:00:47 +0000 (14:00 +0200)]
firewall4: update to the latest version

23a434d0d15d tests: fix expected test output
840ccdeeabce fw4: avoid emitting invalid rule jump targets
20da9933fd7e fw4: fix another instance of invalid rule jump targets
598d9fbb5179 fw4: remove special cases around hw flow offloading

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agokernel: allow adding devices without hw offload to a hw flowtable
Felix Fietkau [Fri, 1 Sep 2023 10:43:09 +0000 (12:43 +0200)]
kernel: allow adding devices without hw offload to a hw flowtable

This allows supporting a mix of devices with or without hw offloading support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agoscripts/package-metadata.pl: fix handling transitive conditional dependencies
Felix Fietkau [Fri, 1 Sep 2023 10:14:26 +0000 (12:14 +0200)]
scripts/package-metadata.pl: fix handling transitive conditional dependencies

When a package foo depends on PACKAGE_foo:bar (in order to make build
dependencies conditional), tracking transitive dependencies can fail because
the internal seen flag is checked/set before eliminating the fake conditional
dependency. This can show up as a depends on not properly turned into a
select further down in the dependency chain

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agohostapd: remove cfg80211 dependency
Felix Fietkau [Fri, 1 Sep 2023 08:35:00 +0000 (10:35 +0200)]
hostapd: remove cfg80211 dependency

Always enable nl80211 driver support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agobcm53xx: store a copy of NVRAM content in NVMEM driver
Rafał Miłecki [Fri, 1 Sep 2023 09:35:29 +0000 (11:35 +0200)]
bcm53xx: store a copy of NVRAM content in NVMEM driver

This stops NVMEM driver from using MMIO access past booting and messing
with NAND controller state.

Link: https://forum.openwrt.org/t/asus-rt-ac88u-hw-a6-broken-in-22-03-3/147882
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
15 months agonetifd: update to latest git HEAD
Daniel Golle [Fri, 1 Sep 2023 00:02:06 +0000 (01:02 +0100)]
netifd: update to latest git HEAD

1a07f1dff32b make_ethtool_modes_h.sh: apply anti-bashism

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agonetifd: update to latest git HEAD
Daniel Golle [Thu, 31 Aug 2023 20:47:56 +0000 (21:47 +0100)]
netifd: update to latest git HEAD

f429bd94f99e system-linux: switch to new ETHTOOL_xLINKSETTINGS API

Fixes AN announcement for speeds beyond 1 GBit/s.
Adds new UCI options for Ethernet devices:
 - autoneg: switch on or off auto-negotiation
 - pause: if set to 0, do not announce symmetric flow control capability
 - asym_pause: if set to 0, do not announce asymmetric flow control
               capability.
 - rxpause: if set overrides AN and forces RX pause accordingly
 - txpause: if set overrides AN and forces TX pause accordingly

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: mt7622: set DEVICE_DTC_ADDR for BPi-R64
Daniel Golle [Thu, 31 Aug 2023 18:20:49 +0000 (19:20 +0100)]
mediatek: mt7622: set DEVICE_DTC_ADDR for BPi-R64

Relocating the device tree is required for being apply to apply
device tree overylay at boot.

Fixes: 34bb33094a ("mediatek: use updated device tree overlay mechanism for BPi-R64")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agohostapd: select libopenssl-legacy for openssl variants
Felix Fietkau [Thu, 31 Aug 2023 11:12:23 +0000 (13:12 +0200)]
hostapd: select libopenssl-legacy for openssl variants

Without it, a lot of authentication modes fail without obvious error messages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agohostapd: remove eap-eap192 auth type value
Felix Fietkau [Thu, 31 Aug 2023 11:04:19 +0000 (13:04 +0200)]
hostapd: remove eap-eap192 auth type value

It is no longer used

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agonetifd: update to the latest version
Felix Fietkau [Thu, 31 Aug 2023 11:02:00 +0000 (13:02 +0200)]
netifd: update to the latest version

db3934d2f740 scripts/netifd-wireless.sh: properly fix WPA3 Enterprise support

Support the following values for the different WPA3 Enterprise modes:

- wpa3-mixed: WPA3 Enterprise transitional mode
This supports EAP with both SHA1 and SHA-256, with optional MFP
- wpa3: WPA3 Enterprise only mode
This supports only SHA256 with mandatory MFP
- wpa3-192: WPA3 Enterprise with mandatory 192 bit support
This uses only GCMP-256 ciphers

Disable 192 bit support and GCMP-256 ciphers for the regular "wpa3" mode.
It seems that even leaving in optional 192 bit support breaks auth on some
clients, including iOS devices.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agohostapd: support eap-eap2 and eap2 auth_type values
Felix Fietkau [Thu, 31 Aug 2023 09:16:42 +0000 (11:16 +0200)]
hostapd: support eap-eap2 and eap2 auth_type values

WPA3 Enterprise-transitional requires optional MFP support and SHA1+SHA256
WPA3 Enterprise-only requires SHA1 support disabled and mandatory MFP.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agohostapd: fix FILS key mgmt type for WPA3 Enterprise 192 bit
Felix Fietkau [Thu, 31 Aug 2023 09:16:04 +0000 (11:16 +0200)]
hostapd: fix FILS key mgmt type for WPA3 Enterprise 192 bit

Use the SHA384 variant to account for longer keys with more security

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agokernel: add unset CONFIG_INPUT_IBM_PANEL symbol to config-6.1
Rafał Miłecki [Sat, 26 Aug 2023 16:07:54 +0000 (18:07 +0200)]
kernel: add unset CONFIG_INPUT_IBM_PANEL symbol to config-6.1

This symbol was added by commit 2e6f34faa7e0 ("Input: Add IBM Operation
Panel driver") to v6.1. It depends on I2C so it's available to limited
amount of targets. It needs to be specified thought to allow kernel
configuration.

For bcm53xx this fixes:
IBM Operation Panel driver (INPUT_IBM_PANEL) [N/m/?] (NEW)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
15 months agokernel: backport v6.6 nvmem changes
Rafał Miłecki [Wed, 30 Aug 2023 22:28:58 +0000 (00:28 +0200)]
kernel: backport v6.6 nvmem changes

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
15 months agomac80211: remove non-upstream antenna gain configuration patch
Felix Fietkau [Wed, 30 Aug 2023 10:27:04 +0000 (12:27 +0200)]
mac80211: remove non-upstream antenna gain configuration patch

It seems that this was not functioning properly and was likely completely unused.
Keeping this out of tree also introduced some annoying churn when updating, because
of the iw nl80211.h sync patch.
If this is needed, it will be reintroduced when/if it is added upstream

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agokernel: ensure VFIO related suboptions are disabled
Mathew McBride [Sun, 6 Aug 2023 21:21:58 +0000 (21:21 +0000)]
kernel: ensure VFIO related suboptions are disabled

These suboptions (PLATFORM, FSL_MC and MLX5_VFIO_PCI)
may be prompted for when VFIO is enabled, regardless of
architecture.

These are not related to the main vfio use case
(passthrough of PCIe devices)

Signed-off-by: Mathew McBride <matt@traverse.com.au>
15 months agokernel: enable vfio and vfio-pci for armsr-armv8
Mathew McBride [Sun, 6 Aug 2023 21:19:44 +0000 (21:19 +0000)]
kernel: enable vfio and vfio-pci for armsr-armv8

Arm platforms with the right hardware blocks (such as
GICv3.0+ interrupt controller and SMMU/IOMMU) are
able to use vfio-pci to pass through PCI devices
to a VM.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
15 months agokernel: vfio: remove unneeded enable_unsafe_noiommu_mode parameter
Mathew McBride [Fri, 25 Aug 2023 06:00:40 +0000 (06:00 +0000)]
kernel: vfio: remove unneeded enable_unsafe_noiommu_mode parameter

The vfio module only exposes the enable_unsafe_noiommu_mode parameter
if CONFIG_VFIO_NOIOMMU is enabled. When it isn't, the module
will complain about an unknown parameter:

vfio: unknown parameter 'enable_unsafe_noiommu_mode' ignored

As CONFIG_VFIO_NOIOMMU is disabled by the module package,
we can remove the module loading parameter.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
15 months agokernel: bump 6.1 to 6.1.49
John Audia [Mon, 28 Aug 2023 17:25:36 +0000 (13:25 -0400)]
kernel: bump 6.1 to 6.1.49

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

All no patches automatically rebased, just update to checksum for new version.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
15 months agoarm-trusted-firmware-mediatek: enable built-in 2.5G PHY on MT7988
Daniel Golle [Mon, 28 Aug 2023 22:44:52 +0000 (23:44 +0100)]
arm-trusted-firmware-mediatek: enable built-in 2.5G PHY on MT7988

Always enable built-in 2.5G PHY on MT7988 for now, so that it can be
used. In future it would be nice to be able to switch power and MDIO
access via address 0 at run-time in Linux, both, to be able to use
external PHYs at address 0 and to reduce power consumption on systems
not using the built-in 2.5G PHY.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agouboot-mediatek: fix dependency on TF-A for MT7988 RFB (sdmmc)
Daniel Golle [Mon, 28 Aug 2023 22:41:43 +0000 (23:41 +0100)]
uboot-mediatek: fix dependency on TF-A for MT7988 RFB (sdmmc)

The U-Boot build for the MT7988 reference board booting from SD card
wrongly depended on the 'ddr4' variant of the ARM TrustedFirmware-A build
even though the 'comb' variant is used. Fix that dependency.

Fixes: 572ea68070 ("uboot-mediatek: add patches for MT7988 and builds for RFB")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agotools/mpfr: update to 4.2.1
Linhui Liu [Sat, 26 Aug 2023 05:56:53 +0000 (13:56 +0800)]
tools/mpfr: update to 4.2.1

Changes from version 4.2.0 to version 4.2.1:
- Bug fixes (see <https://www.mpfr.org/mpfr-4.2.0/#fixed> and/or the
  ChangeLog file).
- Improved MPFR manual.
- Configure tests: replaced the test of the link with GMP, in order to
  avoid the use of a function without a prototype (Autoconf issue), as
  this is obsolescent in ISO C. The new test should be more robust.

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
15 months agomediatek: filogic: remove stray quote
Daniel Golle [Mon, 28 Aug 2023 20:54:02 +0000 (21:54 +0100)]
mediatek: filogic: remove stray quote

When adapting the network configuration for MT7988 RFB a stray quote
was left in a script. Remove it to fix generating the default network
configuration.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agogeneric: sync MediaTek Ethernet driver with upstream
Daniel Golle [Sat, 26 Aug 2023 01:19:18 +0000 (02:19 +0100)]
generic: sync MediaTek Ethernet driver with upstream

Import commits from upstream Linux replacing some downstream patches.
Move accepted patches from pending-{5.15,6.1} to backport-{5.15,6.1}.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: add support for Ubiquiti UniFi 6 LR v3
Daniel Golle [Sun, 27 Aug 2023 23:14:10 +0000 (00:14 +0100)]
mediatek: add support for Ubiquiti UniFi 6 LR v3

Some recent models of the Ubiquiti Networks UniFi 6 LR access point
come with a RealTek RTL8211FS 1000M/100M/10M PHY instead of the
Aquantia AQR112 2500M/1000M/100M/10M PHY used in both v1 and v2. Add
build for this variant so we can support Ethernet with the PHY.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agouboot-mediatek: add builds for UniFi 6 LR v2 and v3
Daniel Golle [Sun, 27 Aug 2023 23:13:05 +0000 (00:13 +0100)]
uboot-mediatek: add builds for UniFi 6 LR v2 and v3

While the v2 is nearly identical to v1, v3 uses a different PHY and
needs a different build for Ethernet to work in U-Boot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: generate bootloader artifacts for mt7988_rfb
Daniel Golle [Fri, 25 Aug 2023 03:09:28 +0000 (04:09 +0100)]
mediatek: generate bootloader artifacts for mt7988_rfb

Switch to OpenWrt uImage.FIT bootmethod and include various bootloader
artifacts with the generated binaries.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agouboot-mediatek: build fully-featured U-Boot for MT7988 RFB
Daniel Golle [Fri, 25 Aug 2023 02:58:33 +0000 (03:58 +0100)]
uboot-mediatek: build fully-featured U-Boot for MT7988 RFB

Select many potentially useful options for the MT7988 RFB U-Boot builds.
The resulting loader is intended as a development tool and intends to be
generic. It does *not* have a default bootcmd set, but allows to boot
pretty much everything, including EFI executables.

To install this U-Boot build to the eMMC:
  opkg install mmc-utils partx-utils
  mmc bootpart enable 1 1 /dev/mmcblk0
  echo 0 > /sys/block/mmcblk0boot0/force_ro
  dd if=*mediatek_mt7988a-rfb-nand-emmc-preloader.bin of=/dev/mmcblk0boot0
  dd if=*mediatek_mt7988a-rfb-nand-emmc-gpt.bin of=/dev/mmcblk0
  partx -a /dev/mmcblk0
  dd if=*mediatek_mt7988a-rfb-nand-emmc-bl31-uboot.fip of=/dev/mmcblk0p3

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: improve mt7981.dtsi
Daniel Golle [Sun, 27 Aug 2023 14:57:00 +0000 (15:57 +0100)]
mediatek: improve mt7981.dtsi

 * re-factor WED components to boot fine also on limited loaders
 * add LEDs of integrated GE PHY

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: filogic: improve pinctrl drivers
Daniel Golle [Sat, 26 Aug 2023 23:38:38 +0000 (00:38 +0100)]
mediatek: filogic: improve pinctrl drivers

Set correct pull-type data and add additional uart groups for MT7981.
Assign functions to configure pin bias for MT7986.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: i2c: mt65xx: allow optional pmic clock
Daniel Golle [Sat, 26 Aug 2023 21:26:37 +0000 (22:26 +0100)]
mediatek: i2c: mt65xx: allow optional pmic clock

Using the I2C host controller on the MT7981 SoC requires 4 clocks to
be enabled. One of them, the pmic clk, is only enabled in case
'mediatek,have-pmic' is also set which has other consequences which
are not desired in this case.

Allow defining a pmic clk even in case the 'mediatek,have-pmic' propterty
is not present and the bus is not used to connect to a pmic, but may
still require to enable the pmic clock.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: re-add missing patch for Linux 6.1
Daniel Golle [Sun, 27 Aug 2023 15:32:50 +0000 (16:32 +0100)]
mediatek: re-add missing patch for Linux 6.1

The patch was wrongly tagged as being part of Linux 6.0 even though it
was only committed with Linux 6.2 and hence needs to be backported for
Linux 6.1.

Fixes: fa79baf4a6 ("generic: copy backport, hack, pending patch and config from 5.15 to 6.1")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agomediatek: re-add dropped properties on BPi-R3
Daniel Golle [Fri, 25 Aug 2023 13:00:09 +0000 (14:00 +0100)]
mediatek: re-add dropped properties on BPi-R3

Unfortunately some device tree properties have slipped under the table
when switching from our downstream device tree.

Bring back 3W power for SFP cages and restore thermal trip points to
make sense again.

Fixes: 7a0ec001ff ("mediatek: sync MT7986 device trees with upstream")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agobcm53xx: Add support for D-Link DIR-890L
Linus Walleij [Mon, 19 Jun 2023 06:36:16 +0000 (08:36 +0200)]
bcm53xx: Add support for D-Link DIR-890L

The DIR-890L is very similar to DIR-885L, but has both USB2
and USB3. The signature for the wrgac36 board was copied from
DD-Wrt.

The DIR-890L bootstrap will only load the first 2 MB after
the SEAMA header in the NAND flash, uncompress it with LZMA
and execute it. Since the compressed kernel will not fit in
2 MB we have a problem. Solve this by putting a LZMA
compressed U-Boot into the first 128 KB of the flash
followed by the kernel. The bootstrap will then uncompress
and execute U-Boot and then we let U-Boot read the kernel
from flash and execute it.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
15 months agoipq806x: onhub: Enable adm_dma node
Brian Norris [Sat, 12 Aug 2023 00:49:59 +0000 (17:49 -0700)]
ipq806x: onhub: Enable adm_dma node

One of our SPI devices references this node, but we never enabled it.
This clutters up probe deferral logs.

(NB: this SPI device still doesn't have a real driver, so it's just here
for documentation and/or tinkering.)

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
15 months agoipq806x: chromium: Disable kernel's CONFIG_QCOM_SPM
Brian Norris [Sat, 12 Aug 2023 00:49:58 +0000 (17:49 -0700)]
ipq806x: chromium: Disable kernel's CONFIG_QCOM_SPM

The qcom spm driver is currently broken for IPQ8064 OnHub devices on
kernel 6.1, such that it hangs the system when booting, much to the
consternation of users. This is especially bad as these devices don't
yet have a fully-supported release branch, and are still sometimes
landing on snapshot builds.

OnHub devices have their own kernel config, so it's not that wide of an
impact to disable this.

I haven't fully gotten to the bottom of this, but:

(a) The vendor kernel didn't have any SPM driver at all, and didn't
    utilize cpuidle.
(b) The device tree has never included any (non-disabled) cpuidle
    states, so even when this driver was present on 5.15 (last
    known-working kernel), it didn't actually do anything -- it bailed
    early, before ever doing any SPM initialization.
(c) Refactoring in Linux 5.16 [1] caused the SPM driver to be activated
    unconditionally, including setting us into standby mode
    (PM_SLEEP_MODE_STBY) by default.

Removing the one PM_SLEEP_MODE_STBY line from drivers/soc/qcom/spm.c
seems to fix the problem, but that isn't much different than simply
disabling the driver, so I go with that for now.

I also disable CONFIG_ARM_QCOM_SPM_CPUIDLE, becuase it 'select's
QCOM_SPM.

NB: it's possible there's some other deeper root cause involved in here.
For one, I notice that CPU hotplug (e.g., echo 0 >
/sys/devices/system/cpu/cpu1/online, echo 1 > ...) doesn't work right
either. Perhaps there's some mismatch on upstream Linux qcom-scm
behavior and the old boot firmware used for these systems? It wouldn't
be the first time, as we've had some similar incompatibilities on the
next generation of these devices, Google WiFi [2].

[1] Commit 60f3692b5f0b ("cpuidle: qcom_spm: Detach state machine from
    main SPM handling")
[2] [RFC] qcom_scm: IPQ4019 firmware does not support atomic API?
    https://lore.kernel.org/linux-arm-kernel/20200913201608.GA3162100@bDebian/

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
15 months agoltq-vdsl-vr11-mei: fix compilation error with kernel 6.1
Andre Heider [Tue, 22 Aug 2023 12:50:24 +0000 (14:50 +0200)]
ltq-vdsl-vr11-mei: fix compilation error with kernel 6.1

Define the old PDE_DATA marco to the new pde_data function.

Signed-off-by: Andre Heider <a.heider@gmail.com>
15 months agovrx518_tc: fix compilation error with kernel 6.1
Andre Heider [Tue, 22 Aug 2023 12:19:43 +0000 (14:19 +0200)]
vrx518_tc: fix compilation error with kernel 6.1

Define the old PDE_DATA marco to the new pde_data function and
conditionally use the newer APIs.

Signed-off-by: Andre Heider <a.heider@gmail.com>
15 months agovrx518_ep: fix compilation error with kernel 6.1
Andre Heider [Tue, 22 Aug 2023 11:07:02 +0000 (13:07 +0200)]
vrx518_ep: fix compilation error with kernel 6.1

Unconditionally use the newer APIs, since our oldest supported kernel
contains them too.

Signed-off-by: Andre Heider <a.heider@gmail.com>
15 months agoltq-ifxos: fix compilation error with kernel 6.1
Andre Heider [Tue, 22 Aug 2023 10:37:10 +0000 (12:37 +0200)]
ltq-ifxos: fix compilation error with kernel 6.1

Conditionally use the newer APIs.

Signed-off-by: Andre Heider <a.heider@gmail.com>
15 months agorockchip: add support for PINE64 ROCK64
Antonio Flores [Sat, 8 Jul 2023 17:31:49 +0000 (13:31 -0400)]
rockchip: add support for PINE64 ROCK64

This add support for PINE64 ROCK64, rockchip rk3328 board.

Specifications:

 4 x ARM Cortex A53 cores @ 1.5 GHz
 ARM Mali 450 MP2 GPU
 LPDDR3 RAM (up to 4GB)
 Gigabit Ethernet
 Micro SD Slot
 eMMC module slot
 SPI Flash 128Mbit
 4K digital video out
 2x USB 2.0 Host
 1x USB 3.0 Host
 PI-2 bus
 PI-P5+ bus
 IR R/X port
 Real Time Clock (RTC) port
 Power Over Ethernet (POE) (when using optional HAT module)
 A/V jack
 Power, Reset and Recovery buttons
 3.5mm barrel power (5V 3A) port

To install write image to the sd using dd (dd if=*.img of=/*)

Signed-off-by: Antonio Flores <antflores627@gmail.com>
15 months agouboot-rockchip: fix swig dependency for ROCK64
Antonio Flores [Sat, 8 Jul 2023 17:29:56 +0000 (13:29 -0400)]
uboot-rockchip: fix swig dependency for ROCK64

Pre build files to fix swig dependency.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
15 months agouboot-rockchip: add support for PINE64 ROCK64
Antonio Flores [Sat, 8 Jul 2023 17:26:31 +0000 (13:26 -0400)]
uboot-rockchip: add support for PINE64 ROCK64

Add uboot support for PINE64 ROCK64, rockchip rk3328 board.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
15 months agoramips: add support for D-Link DRA-1360
Rani Hod [Mon, 24 Apr 2023 22:26:28 +0000 (01:26 +0300)]
ramips: add support for D-Link DRA-1360

The DRA-1360 rev A is a wall-plug AC1300 repeater.
Hardware is identical (same FCC ID, black case instead of white)
to D-Link DAP-1620 rev B, which is already supported, but a
different model name, revision, and hardware ID are needed.
Thus, the bulk of the DAP-1620 device tree is extracted to a
common dtsi included by the two models' device trees.

Repeating specs and installation instructions from e4c7703:
(note that the RAM size mentioned there was incorrect, oops)

Specs:
- SoC: MT7621AT (880MHz dual-core MIPS1004Kc)
- Memory: 128 MiB RAM, 16 MiB NOR SPI
- WiFi: MT7615DN 2x2 802.11n + 2x2 802.11ac (DBDC)
- Ethernet: 1 RJ45 port 10/100/1000
- Power/status LED: red+green
- LED RSSI bargraph: 2x green, 1x red+green

Installation:
- Keep reset button pressed during plug-in
- Web Recovery Updater is at 192.168.0.50
  (pings are ignored, it listens only for http)
- Upload factory.bin, confirm flashing
  (seems to work best with Chromium-based browsers)

Revert to OEM firmware:
- tail -c+117 DRA1360A1_FW112B03.bin | \
  openssl aes-256-cbc -d -md md5 -out decrypted.bin \
  -k c471706398cb147c6619f8a04a18d53e9c17ede8
- flash decrypted.bin via D-Link Web Recovery

Signed-off-by: Rani Hod <rani.hod@gmail.com>
15 months agokernel: bump 5.15 to 5.15.128
John Audia [Sat, 26 Aug 2023 16:56:53 +0000 (12:56 -0400)]
kernel: bump 5.15 to 5.15.128

Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.128

All patches automatically rebased.

Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
15 months agokernel: bump 6.1 to 6.1.48
John Audia [Sat, 26 Aug 2023 12:36:37 +0000 (08:36 -0400)]
kernel: bump 6.1 to 6.1.48

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

No patches changed in this bump, only update was to checksum.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
15 months agoipq40xx: re-add label MAC address for FritzBox 4040
Fabian Bläse [Sun, 6 Aug 2023 17:57:16 +0000 (19:57 +0200)]
ipq40xx: re-add label MAC address for FritzBox 4040

The MAC address of the GMAC is contained inside the CWMP-Account
number on the label.

The label MAC address alias was defined previously, but it has been
removed with the switch to IPQESS / DSA.

Restore the label MAC address alias.

Fixes: 27b441cbaf42 ("ipq40xx: drop ESSEDMA + AR40xx DTS nodes")
Signed-off-by: Fabian Bläse <fabian@blaese.de>
Reviewed-by: Robert Marko <robimarko@gmail.com>
15 months agouboot-sunxi: bump to 2023.04
Zoltan HERPAI [Wed, 7 Jun 2023 10:13:11 +0000 (12:13 +0200)]
uboot-sunxi: bump to 2023.04

Compile-tested: all boards
Runtime-tested:
 - Cortex-A8: pcDuino
 - Cortex-A7: Bananapro, Bananapi M3
 - Cortex-A53:Pine64+

Notes:
 - binman tries to add firmware for the SCP (system control processor), which
   we don't build, and is optional for the boot process on 64-bit. Disable this
   via setting the SCP envvar to /dev/null. For further info, see [1] .

[1] https://github.com/u-boot/u-boot/blob/master/board/sunxi/README.sunxi64

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
15 months agox86: remove built-in vhost-net driver
Mathew McBride [Tue, 22 Aug 2023 04:49:32 +0000 (04:49 +0000)]
x86: remove built-in vhost-net driver

This is now available as a kmod package (kmod-vhost-net).

Signed-off-by: Mathew McBride <matt@traverse.com.au>
15 months agokernel: add vhost-net module
Mathew McBride [Mon, 21 Aug 2023 06:10:35 +0000 (06:10 +0000)]
kernel: add vhost-net module

vhost-net is used to accelerate traffic to virtualisation
guests that use the virtio-net network card in QEMU.

Generally it is invoked by specifying "vhost=on" to a
QEMU -netdev device:

qemu-system-aarch64 -nographic -M virt -cpu host \
        --enable-kvm -bios u-boot.bin -smp 1 -m 2048 \
        -drive file=openwrt-armsr-armv8.img,format=raw,index=0,media=disk \
        -device "virtio-net,netdev=landev,disable-legacy=off,disable-modern=off" \
        -netdev "tap,id=landev,helper=/usr/lib/qemu-bridge-helper --br=br-lan,vhost=on"

Signed-off-by: Mathew McBride <matt@traverse.com.au>
15 months agoprereq: merge common cases in SetupHostCommand
Jonas Gorski [Wed, 23 Aug 2023 07:47:57 +0000 (09:47 +0200)]
prereq: merge common cases in SetupHostCommand

Now that most cases do the same thing in SetupHostCommand, merge them
together into one. To allow moving the generic symlink check, invert the
check and let it check for relative links by matching on link targets
that do not start with a slash.

This then allows us to also drop the absolute link case, shortening the
case statement further.

This reorders the check to

* if it is not a symlink, do not change it
* if it is a symlink and it points to the found command, do not change it
* if it is a symlink with a relative path, do not change it
* else, update/replace it

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
15 months agoprereq: make existing binary check work for sdk as well
Jonas Gorski [Wed, 16 Aug 2023 09:22:30 +0000 (11:22 +0200)]
prereq: make existing binary check work for sdk as well

To avoid replacing host built binaries with symlinks again, a check for
an appropriate stamp was added in 729909c07f ("prereq-build: do not
replace binaries with symlinks"). Unfortunately the stamp directory does
not exist in the SDK, so the fix was ineffective there.

This caused the packages builders to e.g. use the host tar again, which
in turn made the tarballs created different since it may lack
reproducibility fixes, or implement these differently, causing spurious
hash failures on source repository based packages.

Fix this by dropping the stamp dir check, and just check that the file
is usable.

Fixes: 729909c07f ("prereq-build: do not replace binaries with symlinks")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
15 months agoarm-trusted-firmware-mvebu: bump to v2.9
Robert Marko [Fri, 18 Aug 2023 10:42:03 +0000 (12:42 +0200)]
arm-trusted-firmware-mvebu: bump to v2.9

We are using the outdated 2.7 TF-A, so lets update to current v2.9 version.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agoarm-trusted-firmware-mvebu: update CM3 GCC to 12.3rel1
Robert Marko [Fri, 18 Aug 2023 10:40:27 +0000 (12:40 +0200)]
arm-trusted-firmware-mvebu: update CM3 GCC to 12.3rel1

We are using the outdated 11.2 GCC for CM3, lets update to the current
12.3rel1 version from ARM [1].

[1] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agoarm-trusted-firmware-mvebu: bump cryptopp to version 8.8
Robert Marko [Fri, 18 Aug 2023 10:39:04 +0000 (12:39 +0200)]
arm-trusted-firmware-mvebu: bump cryptopp to version 8.8

We are using the outdated Crypto++ version 8.5, so lets update to the
current version 8.8.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agoarm-trusted-firmware-mvebu: bump mox-boot-builder to current version
Robert Marko [Mon, 21 Aug 2023 09:46:29 +0000 (11:46 +0200)]
arm-trusted-firmware-mvebu: bump mox-boot-builder to current version

We have to move to use git clone as there are no newer tagged releases.

Changes:
604f8f5 Default CROSS_CM3 to arm-none-eabi- instead of armv7m-softfloat-eabi-
b9b9419 Tidy up license information
0290b2c wtmi: Fix typo
a10b8e9 Makefile: fix a53-firmware.bin generation (maximum size is not optimal)
f654082 wtmi: Add const qualifier to isr_vector
4a43a3b wtmi: Improve detection of ESPRESSObin boards with Topaz
189e629 wtmi: Improve detection of boards with insufficient MDIO pull-up
3dac4fe wtmi: Fix detection of Armada 3720 Devel Board
3ca4dfa Bump mox-imager commit

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agoarm-trusted-firmware-mvebu: bump mv-ddr-marvell to current version
Robert Marko [Fri, 18 Aug 2023 10:51:28 +0000 (12:51 +0200)]
arm-trusted-firmware-mvebu: bump mv-ddr-marvell to current version

Changes:
1de442d Convert floating point operations to integer operations
ce6770d Modify mv_ddr4_calibration_validate function body to match function header

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agoarm-trusted-firmware-mvebu: bump a3700-utils to current version
Robert Marko [Fri, 18 Aug 2023 10:46:48 +0000 (12:46 +0200)]
arm-trusted-firmware-mvebu: bump a3700-utils to current version

Changes:
a3e1c67 wtmi: Fix linker output sections
f65e3bf wtmi: Remove usage of non-existant string.h file and memcpy() function

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agokernel: bump 6.1 to 6.1.47
John Audia [Wed, 23 Aug 2023 18:59:59 +0000 (14:59 -0400)]
kernel: bump 6.1 to 6.1.47

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

All patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
15 months agomac80211: Add ath11k to the help text of ATH_DEBUG
Jacob Aharon [Tue, 22 Aug 2023 05:03:45 +0000 (15:03 +1000)]
mac80211: Add ath11k to the help text of ATH_DEBUG

ATH_DEBUG package is required to debug ath11k.

Fixes: 93ae4353cdf6 ("mac80211: add ath11k PCI support")
Signed-off-by: Jacob Aharon <ah.jacob@gmail.com>
15 months agouboot-envtools: fix parallel building
Robert Marko [Mon, 21 Aug 2023 12:58:05 +0000 (14:58 +0200)]
uboot-envtools: fix parallel building

Recent envtools update to 2023.07.02 has introduced a breakage when trying
to parallel build with the following error:
/bin/sh: line 1: scripts/basic/fixdep: No such file or directory

Luckily it can easily be reproduced locally via a simple script so it was
not hard to bisect it down to upstream commit [1].

However, its not that commits fault, it just uncovered an issue with the
way we have been building envtools for a long time, maybe even from the
package introduction.

The issue is that we are trying to build envtools as one of the U-Boot
no-dot-config-targets but envtools was newer a valid target for it but
since we were creating the config headers that were not actually used it
was actually building all this time.

Since the blamed commit [1] a tool called printinitialenv is built and
now a proper config is actually required in order for prerequisites to
get built properly.

So, in order to properly fix this (Hopefully for good) lets stop pretending
that envtools are a valid no-dot-config-targets target and use the
tools-only defconfig which is meant exactly for just building the tools.
This will make a minimal config for the U-Boot sandbox target and then
envtools will build just fine in parallel mode (I tested with 32 threads).
We do hovewer need to override the ARCH passed by OpenWrt and set it to
sandbox as otherwise U-Boot will not find the required headers because the
ARCH is being overriden to an incorrect one.

[1] https://source.denx.de/u-boot/u-boot/-/commit/40b77f2a3ac13a7547c1b7c9c51a4090869de8f4

Fixes: 9db033005210 ("uboot-envtools: update to 2023.07.02")
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
15 months agomediatek: enable NMBM remapping for NWA50AX Pro UBI
David Bauer [Fri, 25 Aug 2023 19:38:13 +0000 (21:38 +0200)]
mediatek: enable NMBM remapping for NWA50AX Pro UBI

Don't skip remapping of the UBI area for the ZyXEL NWA50AX Pro. This is
due to the kernel being loaded from the UBI partition by U-Boot.

Link: https://github.com/openwrt/openwrt/pull/13335
Signed-off-by: David Bauer <mail@david-bauer.net>
15 months agomt76: update to the latest version
Felix Fietkau [Wed, 26 Jul 2023 11:20:43 +0000 (13:20 +0200)]
mt76: update to the latest version

bdf7ca5db707 wifi: mt76: mt7921: move common register definition in mt792x_regs.h
ae15d5c6b567 wifi: mt76: mt7921: convert acpisar and clc pointers to void
02515b6b90f0 wifi: mt76: mt7921: rename mt7921_vif in mt792x_vif
6ed8a8bdc7b6 wifi: mt76: mt7921: rename mt7921_sta in mt792x_sta
80234e64e7c5 wifi: mt76: mt7921: rename mt7921_phy in mt792x_phy
2485b4222d3d wifi: mt76: mt7921: rename mt7921_dev in mt792x_dev
c6fd7cde77e0 wifi: mt76: mt7921: rename mt7921_hif_ops in mt792x_hif_ops
1a1a57b5f8c4 wifi: mt76: mt792x: move shared structure definition in mt792x.h
68508aab4241 wifi: mt76: mt7921: move mt792x_mutex_{acquire/release} in mt792x.h
ff306af07e65 wifi: mt76: mt7921: move mt792x_hw_dev in mt792x.h
4b49d659acab wifi: mt76: mt7921: Replace fake flex-arrays with flexible-array members
93f821cce8f5 wifi: mt76: mt792x: introduce mt792x-lib module
de7b90721280 wifi: mt76: mt7921: move mac shared code in mt792x-lib module
c68ee8a64bef wifi: mt76: mt7921: move dma shared code in mt792x-lib module
8d561811f271 wifi: mt76: mt7921: move debugfs shared code in mt792x-lib module
0034ae289046 wifi: mt76: mt7921: move init shared code in mt792x-lib module
8419c4e793a7 wifi: mt76: mt792x: introduce mt792x_irq_map
b7c7fadf228c wifi: mt76: mt792x: move more dma shared code in mt792x_dma
0b1603ce707c wifi: mt76: mt7921: move hif_ops macro in mt792x.h
e07540abe87a wifi: mt76: mt7921: move shared runtime-pm code on mt792x-lib
3d65cd7a8dad wifi: mt76: mt7921: move runtime-pm pci code in mt792x-lib
4551f8c838e6 wifi: mt76: mt7921: move acpi_sar code in mt792x-lib module
bd84b8ebaff8 wifi: mt76: mt792x: introduce mt792x-usb module
7067ea0f1bab wifi: mt76: mt792x: move mt7921_load_firmware in mt792x-lib module
cf752af84c35 wifi: mt76: mt76_connac3: move lmac queue enumeration in mt76_connac3_mac.h
700041dcf773 wifi: mt76: mt792x: move MT7921_PM_TIMEOUT and MT7921_HW_SCAN_TIMEOUT in common code
58b2b90ad89b wifi: mt76: mt7921: move mt7921_dma_init in pci.c
9e4cb87a04cf wifi: mt76: mt7921: move mt7921u_disconnect mt792x-lib
c19b62fe6b68 wifi: mt76: testmode: add nla_policy for MT76_TM_ATTR_TX_LENGTH
4904ab2f87cd wifi: mt76: fix return value check in mt76x02_mac_process_rx
1f0fbbee359c wifi: mt76: mt7915: fix tlv length of mt7915_mcu_get_chan_mib_info
24a54ee3a5ec wifi: mt76: mt7915: fix power-limits while chan_switch
80b8bcf0e3ea wifi: mt76: mt7603: rework/fix rx pse hang check
a8d9553d8fc4 wifi: mt76: mt7603: improve watchdog reset reliablity
c03d84c0d018 wifi: mt76: mt7603: improve stuck beacon handling
85cc58378d25 wifi: mt76: mt7603: add missing register initialization for MT7628
b14c2351ddb8 wifi: mt76: mt7603: disable A-MSDU tx support on MT7628

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agouboot-mediatek: increase max. memory regions on mt7988-rfb
Daniel Golle [Thu, 24 Aug 2023 16:24:37 +0000 (17:24 +0100)]
uboot-mediatek: increase max. memory regions on mt7988-rfb

WED requires a bunch of additional reserved memory regions. As U-Boot's
LMB allocator defaults to a maximum of only 8 regions, this currently
makes using WED impossible.
Raise LMB_MAX_REGIONS to 64 just like for all other MediaTek boards
with a SoC supporting WED.

Fixes: 572ea68070 ("uboot-mediatek: add patches for MT7988 and builds for RFB")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
15 months agosunxi: add testing kernel 6.1
Zoltan HERPAI [Tue, 9 May 2023 14:15:02 +0000 (16:15 +0200)]
sunxi: add testing kernel 6.1

Compile-tested: all targets
Runtime-tested:
 - Cortex-A53: Pine64+
 - Cortex-A7:  Bananapro, Orange Pi 2
 - Cortex-A8:  pcDuino v2

Patches refreshed.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
15 months agosunxi: copy patches from 5.15 to 6.1
Zoltan HERPAI [Wed, 7 Jun 2023 10:13:38 +0000 (12:13 +0200)]
sunxi: copy patches from 5.15 to 6.1

To start the migration, we copy the patches from 5.15 to 6.1.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
15 months agohostapd: fix bringing up AP+STA when the new channel is on a DFS channel
Felix Fietkau [Thu, 24 Aug 2023 16:27:51 +0000 (18:27 +0200)]
hostapd: fix bringing up AP+STA when the new channel is on a DFS channel

If a CAC is needed because the channel is not available yet, a full AP
interface restart is needed

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agoath79: fix first reboot issue on Netgear WNDR4300 v2 and WNDR4500 v3
Shiji Yang [Sun, 9 Jul 2023 14:10:54 +0000 (22:10 +0800)]
ath79: fix first reboot issue on Netgear WNDR4300 v2 and WNDR4500 v3

From the Netgear u-boot GPL code[1]. Bootloader always unconditionally
marks block 768, 1020 - 1023 as bad blocks on each boot. This may lead
to conflicts with the OpenWrt nand driver since these blocks may be good
blocks. In this case, U-boot will override the oob of these blocks so
that break the ubi volume. The system will be damaged after first reboot.
To avoid this issue, manually skip these blocks by using "mtd-concat".

[1] https://www.downloads.netgear.com/files/GPL/EX7300v2series-V1.0.0.146_gpl_src.tar.bz2.zip

Fixes: https://github.com/openwrt/openwrt/issues/8878
Tested-by: Yousaf <yousaf465@gmail.com>
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
15 months agoath79: rework Netgear nand devices image recipe
Shiji Yang [Sun, 9 Jul 2023 14:10:53 +0000 (22:10 +0800)]
ath79: rework Netgear nand devices image recipe

In Netgear u-boot GPL code, nand devices uses this formula to locate the
rootfs offset.

offset = (((128 + KERNEL_SIZE) / BLOCK_SIZE) + 1) * BLOCK_SIZE;

Howerver, WNDR4500 source code incorrectly define the nand block size to
64k. In some cases, it causes u-boot can't get the correct rootfs offset,
which result in boot failure. This patch workaround it by padding kernel
size to (128k * n - 128 - 1). The additional char '\0' is used to ensure
the (128 + KERNEL_SIZE) can't be divided by the BLOCK_SIZE.

Fixes: https://github.com/openwrt/openwrt/issues/13050
Fixes: 3c1512a25d92 ("ath79: optimize the firmware recipe for Netgear NAND devices")
Tested-by: Yousaf <yousaf465@gmail.com>
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
15 months agohostapd: in AP/STA, shut down AP interfaces when STA enters scanning state
Felix Fietkau [Wed, 23 Aug 2023 16:19:14 +0000 (18:19 +0200)]
hostapd: in AP/STA, shut down AP interfaces when STA enters scanning state

When the STA is brought up, it is set to DISABLED before adding the bss to ucode,
so the first trigger to disable the AP is missed.

Reported-by: Michael-cy Lee (李峻宇) <Michael-cy.Lee@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agohostapd: remove obsolete patch
Felix Fietkau [Tue, 15 Aug 2023 19:19:50 +0000 (21:19 +0200)]
hostapd: remove obsolete patch

It was only needed when hostapd was being started with one instance per PHY

Signed-off-by: Felix Fietkau <nbd@nbd.name>
15 months agomac80211: fix MT7620 Wi-Fi channel scanning function
Shiji Yang [Tue, 22 Aug 2023 18:16:22 +0000 (19:16 +0100)]
mac80211: fix MT7620 Wi-Fi channel scanning function

During the channel scanning process, the driver will continuously
switch channels. It seems that the full RF calibration step in
rt2800_config_channel() caused the channel scanning function to
timeout. To fix it, move the RF calibration to rt2800_enable_radio()
so that it is only executed once. This commit also includes some
coding format adjustments to follow the Linux recommended style.

Fixes: 2824fa6963cf ("mac80211: rework MT7620 PA/LNA RF calibration")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
15 months agomediatek: enable NWA50AX Pro eth LEDs
David Bauer [Mon, 7 Aug 2023 23:04:16 +0000 (01:04 +0200)]
mediatek: enable NWA50AX Pro eth LEDs

Enable the ethernet LED's on the ZyXEL NWA50AX Pro to show link-state as
well as activity.

Both LED's are configured pulsing.

AMBER | 10/100
GREEN | 1000
A+G   | 2500

Signed-off-by: David Bauer <mail@david-bauer.net>
15 months agomediatek: filogic: wax220: cleanup device tree
Stefan Agner [Fri, 30 Jun 2023 10:34:38 +0000 (12:34 +0200)]
mediatek: filogic: wax220: cleanup device tree

Fix compatible string to match what is supported upstream, fix alignment
and order MTD partitions according to offset.

Signed-off-by: Stefan Agner <stefan@agner.ch>
15 months agomediatek: filogic: wax220: support factory image
Stefan Agner [Fri, 30 Jun 2023 09:52:37 +0000 (11:52 +0200)]
mediatek: filogic: wax220: support factory image

Enable building a factory image which can be flashed through the OEM
firmware's web interface. It seems that the web interface requires a
minimum file size of 10MiB, otherwise it will not accept the image.

The update image is a regular sysupgrade tarball packed in a Netgear
encrypted image. The Netgear encrypted image is the same as used in
WAX202 or WAX206, including the encryption keys and IV.

This adds a script which creates the rootfs_data volume on first
startup. This is required since the OEM firmware's sysupgrade scripts
do not create such a paritition. Note that any script ordered after
70_initramfs_test will not get executed on initramfs. Hence this new
script 75_rootfs_prepare won't create the rootfs_data volume when
using the recovery initramfs.

Also, this deletes the kernel_backup and rootfs_backup volumes in case
we have to create the rootfs_data volumes. This makes sure that
OpenWrt is the actual backup firmware instead of the stock firmware.

References in WAX220 GPL source:
https://www.downloads.netgear.com/files/GPL/WAX220-V1.0.2.8-gpl-src.tar.gz

* package/base-files/files/lib/upgrade/nand.sh:186
  Creation of rootfs_data is disabled

* Uboot-upstream/board/mediatek/common/ubi_helper.c
  Automatic creation of UBI backup volumes

Signed-off-by: Stefan Agner <stefan@agner.ch>
15 months agohostapd: allow reduced neighbor report configuration
David Bauer [Tue, 16 May 2023 21:58:39 +0000 (23:58 +0200)]
hostapd: allow reduced neighbor report configuration

Reduced neighbor reports can be enabled by setting the "rnr" uci option
to 1.

Signed-off-by: David Bauer <mail@david-bauer.net>
15 months agomediatek: add missing packages for Acer Predator W6
David Bauer [Thu, 17 Aug 2023 15:55:26 +0000 (17:55 +0200)]
mediatek: add missing packages for Acer Predator W6

Add missing packages for creating the overlay filesystem.

Signed-off-by: David Bauer <mail@david-bauer.net>
15 months agouboot-bcm53xx: Add U-Boot for NorthStar BCM53xx
Linus Walleij [Mon, 19 Jun 2023 06:36:15 +0000 (08:36 +0200)]
uboot-bcm53xx: Add U-Boot for NorthStar BCM53xx

I recently added support for the NorthStar ARM BCM53xx SoCs
to the upstream U-Boot. This is a back port on top of the
2023.04 version already imported to OpenWrt with the 5 necessary
upstream patches.

This is needed to create a small U-Boot for the BCM53xx-based
D-Link DIR-890L and I think also the DIR-885L, so that a
recent (bigger) kernel can be loaded and executed from the
SEAMA partitions on these devices.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>