openwrt/staging/stintel.git
3 months agouqmi: update to latest HEAD
David Bauer [Sun, 25 Aug 2024 21:25:41 +0000 (23:25 +0200)]
uqmi: update to latest HEAD

28b48a1 uim: add support for ICC communication channel
f582e00 qmi: fix dynamic array macro
d381f80 data: add support for ICC channel

Signed-off-by: David Bauer <mail@david-bauer.net>
3 months agomt76: update to Git HEAD (2024-08-25)
Felix Fietkau [Sun, 25 Aug 2024 19:24:44 +0000 (21:24 +0200)]
mt76: update to Git HEAD (2024-08-25)

dbc9b0df7c01 linux-firmware: update firmware for MT7996
4e8167b94175 wifi: mt76: connac: fix checksum offload fields of connac3 RXD
084eaaf4792e wifi: mt76: mt7915: fix sta poll list corruption on hw restart
aea16bfe8d50 firmware: update MT7981 firmware to version 20240507201102
65bbd4c394a9 firmware: update MT7986 firmware to version 20240507160203
1f4ac8faa529 wifi: mt76: connac: move mt7615_mcu_del_wtbl_all to connac
b76f16ea6521 wifi: mt76: mt7915: improve hardware restart reliability
e6afe9218a27 wifi: mt76: mt7915: fix unused variable error
d6611d015efd firmware: update mt7916/mt7981/mt7986 firmware to version 20240823
ddeb304aae6d wifi: mt76: mt7921: fix wrong UNII-4 freq range check for the channel usage
904ef52a8d04 wifi: mt76: mt7996: fix uninitialized TLV data

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 months agoustream-ssl: update to Git HEAD (2024-07-28)
Petr Štetiar [Sun, 28 Jul 2024 08:11:39 +0000 (08:11 +0000)]
ustream-ssl: update to Git HEAD (2024-07-28)

99bd3d2b167c ustream-openssl: fix compilation with OPENSSL_NO_DEPRECATED

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Link: https://github.com/openwrt/openwrt/pull/16020
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agomediatek: filogic: add support for Cudy AP3000 Outdoor
Pawel Dembicki [Sun, 4 Aug 2024 20:47:47 +0000 (22:47 +0200)]
mediatek: filogic: add support for Cudy AP3000 Outdoor

Hardware highlights:
  - MediaTek MT7981 WiSoC
  - 256MB DDR3 RAM
  - 64MB SPI-NAND
  - MediaTek MT7981 2x2 DBDC 802.11ax 2T2R (2.4 / 5)
  - 1x LED in two colors
  - 2x Button
  - 1x 1GbE
  - Two detachable antenas, two internal pcb antenas
  - PoE powered (standalone)

MAC:
LAN MAC: label mac
2.4G MAC: label mac -1
5G MAC: label mac

How to install:
1. Apply Cudy Intermediate OpenWrt image for AP3000 Outdoor V1
2. Install OpenWrt sysupgrade image

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16156
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agotreewide: rename ZyXEL to Zyxel
Goetz Goerisch [Fri, 7 Jun 2024 12:42:32 +0000 (14:42 +0200)]
treewide: rename ZyXEL to Zyxel

The company Zyxel rebranded some years ago.
Currently the casing is according to the old branding even
for newer devices which already use the new branding.

This commit aligns the casing of Zyxel everywhere.

Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15652
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: fix model name for Radxa ROCK 3A
FUKAUMI Naoki [Fri, 23 Aug 2024 04:18:25 +0000 (13:18 +0900)]
rockchip: fix model name for Radxa ROCK 3A

This patch fixes model name in dts as below:

Radxa ROCK3 model A -> Radxa ROCK 3A

Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
Link: https://github.com/openwrt/openwrt/pull/16232
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agouboot-rockchip: fix model name for Radxa ROCK 3A, 5A, and 5B
FUKAUMI Naoki [Fri, 23 Aug 2024 04:16:15 +0000 (13:16 +0900)]
uboot-rockchip: fix model name for Radxa ROCK 3A, 5A, and 5B

This patch fixes model name in dts as below:

Radxa ROCK3 model A  -> Radxa ROCK 3A
Radxa ROCK 5 model A -> Radxa ROCK 5A
Radxa ROCK 5 model B -> Radxa ROCK 5B

Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
Link: https://github.com/openwrt/openwrt/pull/16232
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoarmsr: use console=tty1 to make console more readily available
Mark Mentovai [Fri, 28 Jun 2024 17:14:59 +0000 (13:14 -0400)]
armsr: use console=tty1 to make console more readily available

Like x86, armsr is frequently virtualized, and is used for development
and debugging. Kernel messages should be more readily apparent by
default. This can be achieved by adding console=tty1 to the kernel
command line, enabling the console on a (possibly virtual) display and
keyboard, in addition to a serial port.

This also enables failsafe on tty1. Failsafe mode operates on consoles
known by the kernel, without regard to /etc/inittab.

armsr's /etc/inittab is also updated to specify tty1 instead of tty0.
tty1 is technically more correct: tty1 is the first virtual console,
where tty0 reflects the current active virtual console (which is likely
to be tty1).

This configuration matches x86, which is another target commonly used
for virtualization, development, and debugging in the same way. x86's
kernel command line had specified console=tty0, although console=tty1 is
more correct for the reasons given above. This also brings x86's kernel
command line console= into agreement with its /etc/inittab, which
already used tty1.

Signed-off-by: Mark Mentovai <mark@mentovai.com>
Link: https://github.com/openwrt/openwrt/pull/16213
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agoramips: mt7621_nand: don't set owner
Rosen Penev [Thu, 15 Aug 2024 02:59:19 +0000 (19:59 -0700)]
ramips: mt7621_nand: don't set owner

Found with coccinelle:

No need to set .owner here. The core will do it.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16217
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agotrace-cmd: update to 3.3
Rosen Penev [Sun, 11 Aug 2024 22:38:27 +0000 (15:38 -0700)]
trace-cmd: update to 3.3

Use local tarballs instead of upstream generated ones. Smaller.

Fix version to be compatible with apk.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16219
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agodnsmasq: Add EDNS0 Upstream support
Carsten Schuette [Wed, 17 Jul 2024 18:09:46 +0000 (20:09 +0200)]
dnsmasq: Add EDNS0 Upstream support

Forward client mac address and subnet on dns queries. Pi-hole and Adguard use this feature to send the originators ip address/subnet so it can be logged and not just the nat address of the router. This feature has been added since version 2.56 of dnsmasq and would be nice to expose this feature in openwrt.

Signed-off-by: Carsten Schuette <schuettecarsten@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/15965
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agobmips: add support for TP-Link TD-W8968 V3
Mathesh Velayudan [Thu, 4 Jul 2024 12:09:51 +0000 (17:39 +0530)]
bmips: add support for TP-Link TD-W8968 V3

TP-Link TD-W8968 v3 is an 300Mbps Wireless N USB ADSL2+ Modem Router based on
Broadcom BCM6318 SoC.

Hardware:
   CPU:          Broadcom BCM6318, 333 MHz, 1 core
   Flash:        8MB
   RAM:          64 MB
   Ethernet:     4x 10/100 Mbps
   Wireless:     802.11b/g/n, BCM43217
   LEDs/Buttons: 10x / 3x
   USB:          1x 2.0

Flash instructions:
* Assign static IP 192.168.1.100 to PC
* Unplug the power source
* Press the RESET button at the router, don't release it yet!
* Plug the power source. Wait for some seconds
* Release the RESET button
* Browse to http://192.168.1.1
* Upload the openwrt-bmips-bcm6318-tp-link_td-w8968-v3-squashfs-cfe.bin file
* Wait some minutes until the firmware upgrade finish.

Signed-off-by: Mathesh Velayudan <123v.mathesh@gmail.com>
3 months agogeneric: 6.6: backport upstream Realtek PHY patch
Álvaro Fernández Rojas [Sat, 24 Aug 2024 13:05:30 +0000 (15:05 +0200)]
generic: 6.6: backport upstream Realtek PHY patch

- Fix setting of PHY LEDs Mode B bit on RTL8211F.
- Rename pending Realtek PHY patches.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 months agomt76: Change AutoLoad macro call for mt7925e and mt7925u
Daniel Pawlik [Thu, 22 Aug 2024 19:00:40 +0000 (21:00 +0200)]
mt76: Change AutoLoad macro call for mt7925e and mt7925u

There was a typo done for mt7925e and mt7925u in the KernelPackage
definitions, which caused the system to load the wrong kernel modules.

Signed-off-by: Daniel Pawlik <pawlik.dan@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16236
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: fix compatible string for Radxa ROCK 5A
FUKAUMI Naoki [Thu, 22 Aug 2024 01:38:59 +0000 (10:38 +0900)]
rockchip: fix compatible string for Radxa ROCK 5A

revert unwanted change for compatible string.

Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
Link: https://github.com/openwrt/openwrt/pull/16221
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: add support for nanopc t6
xiaobo tian [Wed, 21 Aug 2024 06:40:27 +0000 (14:40 +0800)]
rockchip: add support for nanopc t6

SoC: Rockchip RK3588
CPU: Quad-core ARM Cortex-A76(up to 2.4GHz) and quad-core Cortex-A55 CPU (up to 1.8GHz)
GPU: Mali-G610 MP4, compatible with OpenGLES 1.1, 2.0, and 3.2, OpenCL up to 2.2 and Vulkan1.2
VPU: 8K@60fps H.265 and VP9 decoder, 8K@30fps H.264 decoder, 4K@60fps AV1 decoder, 8K@30fps H.264 and H.265 encoder
NPU: 6TOPs, supports INT4/INT8/INT16/FP16
RAM: 64-bit 4GB/8GB/16GB LPDDR4X at 2133MHz
Flash: 32GB/64GB/256GB eMMC, at HS400 mode
microSD: support up to SDR104 mode
Ethernet: 2x PCIe 2.5G Ethernet

Signed-off-by: xiaobo tian <peterwillcn@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16158
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agomt76: Add firmware files into mt7925-firmware package
Daniel Pawlik [Fri, 23 Aug 2024 14:48:53 +0000 (16:48 +0200)]
mt76: Add firmware files into mt7925-firmware package

The firmware binaries were missing in kmod-mt7925-firmware package.

Signed-off-by: Daniel Pawlik <pawlik.dan@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16239
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agolinux-firmware: add Intel CPU-integrated GPU (iGPU) firmware
Johannes Truschnigg [Sun, 4 Aug 2024 19:21:13 +0000 (21:21 +0200)]
linux-firmware: add Intel CPU-integrated GPU (iGPU) firmware

On latest Intel x86 CPUs, DMC firmware is required for the iGPU to reach
its lowest power states. If the driver cannot load it, it will print a
warning and unnecessarily make the iGPU draw a bit more power when idle.

GUC firmware (various "offload" mechanisms that deal with scheduling GPU
workloads) and HUC firmware (required for accelerated media codec
operations for HEVC/H.265) are probably more niche, but could also
provde useful for some - for example, when building an
Intel/OpenWrt-based security camera.

Signed-off-by: Johannes Truschnigg <johannes@truschnigg.info>
Link: https://github.com/openwrt/openwrt/pull/16069
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoath79: update Sophos AP15 to indicate that it uses an QCA9557 SoC
Martin Blumenstingl [Sun, 11 Aug 2024 19:55:16 +0000 (21:55 +0200)]
ath79: update Sophos AP15 to indicate that it uses an QCA9557 SoC

Device support for Sophos AP15 is based on Sophos AP55(C) and AP100(C).
Those other Sophos access points uss a QCA9558 SoC (some of them with
one of the three chains on the built-in SoC's wifi disabled) while the
AP15 uses a QCA9557 SoC (which only has two chains enabled in the
package or silicon).

This is mostly cosmetic since QCA9558 and QCA9557 are virtually
identical and all differences are automatically detected and/or managed
by the ART calibration.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/16187
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoath79: remove 5GHz wifi bits from Sophos AP15
Martin Blumenstingl [Sun, 11 Aug 2024 19:53:24 +0000 (21:53 +0200)]
ath79: remove 5GHz wifi bits from Sophos AP15

Sophos AP15 only uses the SoC's built-in wifi. There's no external PCIe
chipset.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/16187
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agolantiq: vgv7510kw22: use NVMEM for mac addresses
Rosen Penev [Thu, 15 Aug 2024 19:57:51 +0000 (12:57 -0700)]
lantiq: vgv7510kw22: use NVMEM for mac addresses

Userspace handling is deprecated.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16230
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agompc85xx: Add QCA8327 LED nodes to tl-wdr4900-v1 dts
Pawel Dembicki [Thu, 22 Aug 2024 12:49:31 +0000 (14:49 +0200)]
mpc85xx: Add QCA8327 LED nodes to tl-wdr4900-v1 dts

This commit introduces led nodes in tl-wdr4900-v1 dts.
It allows to configure switch leds from userspace.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16226
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agompc85xx: add usb trigger to tl-wdr4900-v1 leds
Pawel Dembicki [Thu, 22 Aug 2024 11:45:11 +0000 (13:45 +0200)]
mpc85xx: add usb trigger to tl-wdr4900-v1 leds

TP-Link tl-wdr4900-v1 has two usb leds. Modern kernels can handle usb
led trigger. Let's enable it.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16226
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agompc85xx: refresh tl-wdr4900-v1 led configuration
Pawel Dembicki [Thu, 22 Aug 2024 11:42:21 +0000 (13:42 +0200)]
mpc85xx: refresh tl-wdr4900-v1 led configuration

This commit change led description in dts file from old method to new
approach accepted by upstream.

USB power gpio is handled by gpio-export now.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16226
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agotmon: make version apk compatible
Rosen Penev [Sun, 18 Aug 2024 22:53:44 +0000 (15:53 -0700)]
tmon: make version apk compatible

No need to override version.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 months agogeneric: 5.15, 6.1: enable CNP support
Robert Marko [Thu, 22 Aug 2024 09:45:16 +0000 (11:45 +0200)]
generic: 5.15, 6.1: enable CNP support

Ever since CONFIG_ARM64_PAN was enabled Common Not Private (CNP) is now
visible and kernel builds will stop as they are not set in kernel config
for 5.15 and 6.1.

So, lets enable Common Not Private (CNP) which is ARMv8.2 feature and will
be NOP of CPU-s that dont support it.

Fixes: a2662309aae1 ("kernel: Enable CONFIG_ARM64_PAN to restrict kernel access to user space memory")
Link: https://github.com/openwrt/openwrt/pull/16211
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agogeneric: 6.6: disable EPAN support
Robert Marko [Thu, 22 Aug 2024 09:43:52 +0000 (11:43 +0200)]
generic: 6.6: disable EPAN support

Enhanced Privileged Access Never (EPAN) is an ARMv8.7 feature, and since
we dont have any SoC-s implementing it lets disable it.

Link: https://github.com/openwrt/openwrt/pull/16211
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agomediatek/mt7622: fix config symbol for 2.5GE MTK driver
Rany Hany [Thu, 22 Aug 2024 09:09:24 +0000 (09:09 +0000)]
mediatek/mt7622: fix config symbol for 2.5GE MTK driver

The commit backporting new MTK patches did not update the
Kernel config for mediatek/mt7622 causing the build to
fail.

Simply use the new config symbol name for the driver to
fix the issue.

Fixes: 1069514978 ("mediatek: backport pending Ethernet PHY driver patches")
Signed-off-by: Rany Hany <rany_hany@riseup.net>
Link: https://github.com/openwrt/openwrt/pull/16225
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agomediatek: backport pending Ethernet PHY driver patches
Daniel Golle [Tue, 20 Aug 2024 16:20:29 +0000 (17:20 +0100)]
mediatek: backport pending Ethernet PHY driver patches

Use pending patchset for 2.5GE PHY driver, unifying LED handling
accross all MediaTek Ethernet PHYs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 months agokernel: add missing config symbols
Daniel Golle [Wed, 21 Aug 2024 23:10:13 +0000 (00:10 +0100)]
kernel: add missing config symbols

Kconfig symbols CONFIG_ARM64_CNP and CONFIG_ARM64_EPAN got exposed
by enabling CONFIG_ARM64_PAN. Enable them as well, as just like for
PAN, also EPAN and CNP will be detected at runtime at no cost.

Fixes: a2662309aa ("kernel: Enable CONFIG_ARM64_PAN to restrict kernel access to user space memory")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 months agompc85xx: tl-wdr4900: move platform code to dts
Rosen Penev [Mon, 19 Aug 2024 22:08:55 +0000 (15:08 -0700)]
mpc85xx: tl-wdr4900: move platform code to dts

No benefit in doing so in platform file. Code for dts has already been
written. Might as well use it.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16125
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agompc85xx: use NVMEM for wifi
Rosen Penev [Fri, 9 Aug 2024 20:40:27 +0000 (13:40 -0700)]
mpc85xx: use NVMEM for wifi

Userspace handling is deprecated. No need for any of this.

Calibration size was adjusted to 440, which is the standard value for
ath9k radios.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16125
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agompc85xx: tl-wdr4900: use NVMEM for WAN
Rosen Penev [Fri, 9 Aug 2024 20:27:20 +0000 (13:27 -0700)]
mpc85xx: tl-wdr4900: use NVMEM for WAN

Now that the ports are defined in DTS, this is trivial to do.

Avoids userspace handling.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16125
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agomt76: update to Git HEAD (2024-08-21)
Felix Fietkau [Wed, 21 Aug 2024 14:51:56 +0000 (16:51 +0200)]
mt76: update to Git HEAD (2024-08-21)

5c9fbdd64313 wifi: mt7915: fix wcid allocation leak
d547c25cabab wifi: mt76: mt7915: fix last argument to mt7915_mcu_add_sta
caed4843c5cd wifi: mt76: fix station muar index
3cd1c1740280 wifi: mt76: mt7915: hold dev->mt76.mutex while disabling tx worker
a5e630ef458c wifi: mt76: mt7916: fix regression in .sta_state migration

Signed-off-by: Felix Fietkau <nbd@nbd.name>
3 months agox86: enable console keyboard
Mark Mentovai [Wed, 31 Jul 2024 20:51:01 +0000 (16:51 -0400)]
x86: enable console keyboard

The kernel support necessary to use a console keyboard was not built on
x86, affecting real and virtual machines alike. The console keyboard
would function properly in GRUB, but would not work at all once Linux
booted. It appeared that the console was intended to work because
console video appeared on the display, including prompts to enter
failsafe or select the debug log level from the keyboard, and the prompt
to "Press Enter to activate this console", but there was no way to
provide input to it. All keystrokes were ignored.

This enables several kernel configuration options to enable HID and USB
HID support (CONFIG_HID, CONFIG_HID_SUPPORT, CONFIG_HID_GENERIC, and
CONFIG_USB_HID), making the keyboard functional. For alignment with
armsr, CONFIG_USB_HIDDEV is also added, although not strictly necessary
for keyboard support. Note that this change also causes
CONFIG_HID_HYPERV_MOUSE to be enabled for x86/64 and x86/generic: it was
already set in these subarchitectures' kernel configurations, but was
ineffective due to CONFIG_HID being absent.

The omission of keyboard support on x86 may not have been widely noticed
because USB HID is not used on production OpenWrt x86 machines such as
pc-engines,apu2 which only have a serial console, or with the default
x86 configuration used by scripts/qemustart, which uses -nographic and
does not configure a virtual physical console but instead uses a serial
console.

This configuration change results in, for x86_64, +40kB in kernel.bin
and just over +40kB in gzip-compressed "combined" images. This should
not be a problem for the non-storage-constrained x86 target.

Until 2a86425de107, CONFIG_HID, CONFIG_USB_HID, and CONFIG_USB_HIDDEV
were set in the target-level kernel configuration, and
CONFIG_HID_GENERIC was set at the subtarget level. These are
reintroduced strictly at the subtarget level by request. This applies to
the 64, generic, and legacy subtargets, omitting geode.

Fixes: https://github.com/openwrt/openwrt/issues/16157
Signed-off-by: Mark Mentovai <mark@mentovai.com>
Link: https://github.com/openwrt/openwrt/pull/16208
Signed-off-by: Robert Marko <robimarko@gmail.com>
3 months agokernel: Enable CONFIG_ARM64_PAN to restrict kernel access to user space memory
Hauke Mehrtens [Sat, 17 Aug 2024 13:12:31 +0000 (15:12 +0200)]
kernel: Enable CONFIG_ARM64_PAN to restrict kernel access to user space memory

Enable the CONFIG_ARM64_PAN kernel security option, which leverages the
ARMv8.1 Privileged Access Never (PAN) extension to prevent the kernel
from directly accessing user space memory.

Instead, copy_to_user and similar functions must be used for data
transfer between kernel and user space. This feature is automatically
disabled at runtime on CPUs without PAN support, making it a no-op in
those cases.

Link: https://github.com/openwrt/openwrt/pull/16189
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agokernel: Activate CONFIG_LIST_HARDENED
Hauke Mehrtens [Sat, 17 Aug 2024 12:42:50 +0000 (14:42 +0200)]
kernel: Activate CONFIG_LIST_HARDENED

Activate the kernel option CONFIG_LIST_HARDENED for all targets.
This adds some inline checks to list_add() and list_del() operations
in the kernel. Before kernel 6.6 these checks were only available with
CONFIG_DEBUG_LIST option, but now a light version is available which
should only add very few extra instructions to such operations.

The performance penalty is very low from my point of view. It should
make it much harder to use bugs in Linux kernel list handling when
exploiting the Linux kernel.

Link: https://github.com/openwrt/openwrt/pull/16189
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: add Radxa ROCK 5B support
Tianling Shen [Mon, 5 Aug 2024 08:51:25 +0000 (16:51 +0800)]
rockchip: add Radxa ROCK 5B support

Hardware
--------
RockChip RK3588 ARM64 (8 cores)
4/8/16/32GB LPDDR4X RAM
2500 Base-T
RGB LED
eMMC Connector
SPI-NOR 16MB
Micro-SD Slot
2x USB 2.0 Port
2x USB 3.0 Port
Headphone Jack
M.2 E-Key
M.2 M-Key
USB PD 5/9/12/15/20V Power

Install
--------
Uncompress the OpenWrt sysupgrade and write it to a micro SD card or
internal eMMC using dd.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agouboot-rockchip: add ROCK 5B support
Tianling Shen [Mon, 5 Aug 2024 08:37:24 +0000 (16:37 +0800)]
uboot-rockchip: add ROCK 5B support

Add support for the Radxa ROCK 5B board.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: add Radxa ROCK 5A support
Tianling Shen [Mon, 5 Aug 2024 08:22:47 +0000 (16:22 +0800)]
rockchip: add Radxa ROCK 5A support

Hardware
--------
RockChip RK3588 ARM64 (8 cores)
4/8/16/32GB LPDDR4X RAM
1000 Base-T
Status LED
eMMC/SPI Connector
Micro-SD Slot
2x USB 3.0 Port
2x USB 2.0 Port
Headphone Jack
M.2 E-Key
USB PD/QC 5/9/12/15/20V Power

Install
--------
Uncompress the OpenWrt sysupgrade and write it to a micro SD card or
internal eMMC using dd.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agouboot-rockchip: add ROCK 5A support
Tianling Shen [Mon, 5 Aug 2024 08:10:42 +0000 (16:10 +0800)]
uboot-rockchip: add ROCK 5A support

Add support for the Radxa ROCK 5A board.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: extend BOARDNAME
Tianling Shen [Wed, 26 Jun 2024 18:43:03 +0000 (02:43 +0800)]
rockchip: extend BOARDNAME

Now we have rk3588 support :)

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: update Kconfig for rk3588
Tianling Shen [Wed, 26 Jun 2024 18:31:59 +0000 (02:31 +0800)]
rockchip: update Kconfig for rk3588

Enable OTP/USBDP drivers for rk3588.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: backport dts updates for rk3588
Tianling Shen [Wed, 26 Jun 2024 18:31:28 +0000 (02:31 +0800)]
rockchip: backport dts updates for rk3588

Backport upstreamed dts updates for rk3588.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: backport driver updates for rk3588
Tianling Shen [Wed, 26 Jun 2024 18:29:30 +0000 (02:29 +0800)]
rockchip: backport driver updates for rk3588

Backport upstreamed clk/mfd/phy/usb updates for rk3588.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agorockchip: reorder patches
Tianling Shen [Wed, 26 Jun 2024 18:22:46 +0000 (02:22 +0800)]
rockchip: reorder patches

Reorder to start from 001.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/16149
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agokernel: bump 6.1 to 6.1.106
Zxl hhyccc [Mon, 19 Aug 2024 14:06:15 +0000 (22:06 +0800)]
kernel: bump 6.1 to 6.1.106

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

All patches automatically rebased.

Build system: bcm4908 bcm53xx

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16174
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agokernel: bump 6.1 to 6.1.105
Zxl hhyccc [Thu, 15 Aug 2024 06:00:00 +0000 (14:00 +0800)]
kernel: bump 6.1 to 6.1.105

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

Removed upstreamed:
generic/backport-6.1/860-v6.6-bus-mhi-host-pci_generic-add-support-for-Telit-FE990.patch
See: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/drivers/bus/mhi/host/pci_generic.c?h=v6.1.105&id=da578d3b2d236b50e356b1a9d770ad19165de31c

All other patches automatically rebased.

Build system: bcm4908 bcm53xx

Adjusted generic/config-6.1 for new ksym: ARM64_ERRATUM_3194386 and 3312417[2]

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/arm64/Kconfig?h=linux-6.1.y&id=286c8ca924b220212fdeab81cb652fdaa77e38fe

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16174
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agokernel: bump 6.6 to 6.6.47
John Audia [Mon, 19 Aug 2024 14:57:02 +0000 (10:57 -0400)]
kernel: bump 6.6 to 6.6.47

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

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16173
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agokernel: bump 6.6 to 6.6.46
John Audia [Fri, 16 Aug 2024 19:16:04 +0000 (15:16 -0400)]
kernel: bump 6.6 to 6.6.46

This commit makes three changes all needed for the update of the 6.6 kernel.

1. Upstream kernel bump to 6.6.46

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.46
Manually rebased:
         bcm27xx/patches-6.6/950-0320-spi-spidev-Restore-loading-from-Device-Tree.patch
All other patches automatically rebased.

2. Adjusted the following for new ksym[1] enabling it:

        armsr/config-6.6
        bcm27xx/bcm2712/config-6.6

3. Added a fix to receiving fraglist GSO packets:

generic/pending-6.6/601-udp-fix-receiving-fraglist-GSO_packets.patch[2]

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/arch/arm64/Kconfig?id=v6.6.46&id2=v6.6.45
2. https://marc.info/?l=linux-netdev&m=172407994500599&w=2

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16173
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 months agoRevert "bcm27xx: align and enable hwmon/thermal symbols"
Álvaro Fernández Rojas [Tue, 20 Aug 2024 16:00:18 +0000 (18:00 +0200)]
Revert "bcm27xx: align and enable hwmon/thermal symbols"

This reverts commit f98f95359b60ba25f7f458190f1da4835410003d.

It seems that this commit is causing issues with the PWM fan on the RPi 5 as
reported here: https://github.com/openwrt/openwrt/issues/16191

So let's revert this for now.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 months agobmips: bcm6328: add support for D-Link DSL-2750B rev B1
Samuele Longhi [Fri, 16 Aug 2024 10:38:42 +0000 (12:38 +0200)]
bmips: bcm6328: add support for D-Link DSL-2750B rev B1

The D-Link DSL-2750B rev B1 (AW4339U) is a wifi fast ethernet router, 2.4 GHz single band
with two external antennas.

This ports the device from old target bcm63xx/generic to bmips/bcm6328.
The hardware is the same of D-Link DSL-2740B rev F1 and DSL-2741B rev F1, plus a usb2 port.

Hardware:
 - SoC: Broadcom BCM63281
 - CPU: single core BMIPS4350 @ 320Mhz
 - RAM: 64 MB (Nanya NT5TU32M16DG)
 - Flash: 8 MB NOR (Macronix MX25L6406ENI-12G)
 - Ethernet LAN: 4x 100Mbit (Broadcom BCM63281)
 - Wifi 2.4 GHz: 802.11bgn (Atheros AR9287)
 - USB: 1x 2.0
 - Buttons: 3x
 - LEDs: 10x
 - UART: yes

Installation via CFE web UI:
  1. Power off the router.
  2. Press reset button near the power switch.
  3. Keep it pressed while powering up during ~20+ seconds.
  4. Browse to http://192.168.1.1 and upload the firmware.
  5. Wait a few minutes for it to finish.

Signed-off-by: Samuele Longhi <agave@dracaena.it>
3 months agobmips: fix gpio-leds DTS nodes
Álvaro Fernández Rojas [Tue, 20 Aug 2024 10:19:43 +0000 (12:19 +0200)]
bmips: fix gpio-leds DTS nodes

gpio-leds doesn't have reg property and pin number is not an address, so "-"
should be used instead of "@".
https://github.com/torvalds/linux/blob/6e4436539ae182dc86d57d13849862bcafaa4709/Documentation/devicetree/bindings/leds/leds-gpio.yaml#L24

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agogeneric: 6.6: backport upstream r8169 patches
Álvaro Fernández Rojas [Mon, 19 Aug 2024 15:55:00 +0000 (17:55 +0200)]
generic: 6.6: backport upstream r8169 patches

- improve RTL8411b phy-down fixup
- remove not needed check in rtl_fw_write_firmware
- remove multicast filter limit
- improve handling task scheduling
- simplify EEE handling
- simplify code by using core-provided pcpu stats allocation
- add generic rtl_set_eee_txidle_timer function
- support setting the EEE tx idle timer on RTL8168h
- add support for returning tx_lpi_timer in ethtool get_eee
- annotate writes on dev->mtu from ndo_change_mtu()
- disable interrupt source RxOverflow
- remove detection of chip version 11 (early RTL8168b)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agobcm53xx: refresh 6.6 kernel patches
Álvaro Fernández Rojas [Mon, 19 Aug 2024 18:36:51 +0000 (20:36 +0200)]
bcm53xx: refresh 6.6 kernel patches

Refresh bcm53xx kernel patches after 17f07040e7808a0c9cba2afc0e0b22e5589da133.

Fixes: 17f07040e780 ("kernel: prevent tunnel drivers from mangling fraglist GSO packets")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agogeneric: 6.6: fix early RTL8221B detection
Álvaro Fernández Rojas [Mon, 19 Aug 2024 16:52:37 +0000 (18:52 +0200)]
generic: 6.6: fix early RTL8221B detection

Fixes the issue of RTL8221B-VB-CG not being detected correctly after ca44690.

Fixes: ca4469045f6a ("generic: 6.6: backport upstream RealTek PHY patches")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 months agogeneric: 6.6: backport realtek phy patches from v6.11
Álvaro Fernández Rojas [Mon, 19 Aug 2024 16:30:59 +0000 (18:30 +0200)]
generic: 6.6: backport realtek phy patches from v6.11

- add support for rtl8224 2.5Gbps PHY
- add support for PHY LEDs on RTL8211F

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agofailsafe: fix console failsafe shell
Mark Mentovai [Mon, 6 Jun 2022 18:53:31 +0000 (14:53 -0400)]
failsafe: fix console failsafe shell

When running a failsafe shell on a console, job control was unavailable,
and ^C did not function correctly.

This change invokes console failsafe shells via `setsid`, making them
session leaders and allowing them to claim controlling terminals, which
makes job control function properly. To support this, the busybox
`setsid` utility is enabled. This has a minimal 149-byte size impact on
a test x86_64 squashfs rootfs image.

^C was ignored in subprocesses of failsafe shells: it was not possible
to ^C out of a program that would not exit on its own, such as many
typical `ping` invocations. As job control was unavailable, it was not
possible to suspend these subprocesses either, causing a hung program to
tie up a console indefinitely, unless another means to signal the
program was available. This was caused by SIGINT being placed at
disposition SIG_IGN by the shell running preinit, which it did because
the console shell was executed asynchronously with &. That disposition
was inherited by the console shell and its subprocesses, generally
causing ^C to have no effect.

As there is no way in busybox `ash` to reset the disposition of a signal
already ignored at shell entry, and no apparent way to avoid SIGINT
being placed at SIG_IGN when & is used in preinit, an alternative
construct is needed. Now, `start-stop-daemon` is used to start (-S) the
console failsafe shell in the background (-b). This approach does not
alter SIGINT, allowing the console shell to be started with that
signal's handling intact, and normal ^C processing to occur.

busybox `ash` has some behaviors conditional on SHLVL, and while the
console shells ought to run at SHLVL=1, they were not by virtue of being
started by the shell-based preinit system. Additionally, a variety of
detritus was present in the console shell's environment, carried over
from preinit. These conditions are corrected by running the console
shell via `env -i` to clear the environment and establish a minimum and
correct set of environment variables for operation, in the same manner
as `login`. HOME is not explicitly set, because it's addressed in
/etc/profile. For non-failsafe console shells when
system.@system[0].ttylogin = 0, `login -f root` achieves a similar
effect. (`login` already started non-failsafe console shells when
ttylogin = 1 and behaved correctly. This brings the ttylogin = 0 case to
parity.) Note that even `login -f` is somewhat undesirable for failsafe
shells because it requires a viable /etc/passwd, hence the `env -i`
construct in that case.

The TERM environment variable from the preinit environment, with value
"linux", would rarely be correct for serial consoles. Now, the preinit
TERM value is preserved (or set to "linux" if unset) only when the
console is /dev/console or /dev/tty[0-9]*. Otherwise, it will be set to
a safe default appropriate for serial consoles, "vt102", as used for
serial consoles by busybox init. This "linux"/"vt102" TERM setting is
also duplicated for non-failsafe console shells.

This also indicates failsafe mode by showing "- failsafe -" on all
consoles (not just the last-defined one). It sets a hostname of
"OpenWrt-failsafe" in failsafe mode which is rendered in the shell's
prompt as a reminder of the mode during interactive failsafe use.
Previously, no hostname was set, which resulted in the kernel-default
hostname, "(none)", appearing in failsafe shell prompts.

Signed-off-by: Mark Mentovai <mark@mentovai.com>
Link: https://github.com/openwrt/openwrt/pull/16113
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agoxfrm: remove requirement for underlying device
Matt Eaton [Thu, 1 Aug 2024 15:57:54 +0000 (11:57 -0400)]
xfrm: remove requirement for underlying device

Since kernel 5.3, phydev (dev) is no longer required

   torvalds/linux@22d6552

Signed-off-by: Matt Eaton <git@divinehawk.com>
Link: https://github.com/openwrt/openwrt/pull/16046
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agouhttpd: restart daemon if certificate has changed
Sylvain Monné [Mon, 5 Aug 2024 13:40:12 +0000 (15:40 +0200)]
uhttpd: restart daemon if certificate has changed

Fixes #16075

When the SSL certificate used by uhttpd has been changed, calling
`/etc/init.d/uhttpd reload` will now have the effect of restarting the
daemon to make the change effective.

Signed-off-by: Sylvain Monné <sylvain@monne.contact>
Link: https://github.com/openwrt/openwrt/pull/16076
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agompc85xx: panda: use DSA B53 driver
Rosen Penev [Tue, 6 Aug 2024 22:05:13 +0000 (15:05 -0700)]
mpc85xx: panda: use DSA B53 driver

It's upstream and a replacement for the swconfig driver.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16124
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agoramips: ethernet: use devm for request_irq
Rosen Penev [Tue, 30 Jul 2024 01:31:53 +0000 (18:31 -0700)]
ramips: ethernet: use devm for request_irq

Allows removing free_irq. Simpler.

Oddly enough the other switch code already does this.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16050
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agokernel: r8126: print link status when link up
Álvaro Fernández Rojas [Sat, 17 Aug 2024 19:55:42 +0000 (21:55 +0200)]
kernel: r8126: print link status when link up

Like other Ethernet drivers, print link speed and duplex mode
when the interface is up. Formatting output at the same time.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
4 months agokernel: r8125: print link status when link up
Álvaro Fernández Rojas [Sat, 17 Aug 2024 19:49:37 +0000 (21:49 +0200)]
kernel: r8125: print link status when link up

Like other Ethernet drivers, print link speed and duplex mode
when the interface is up. Formatting output at the same time.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
4 months agokernel: r8168: print link status when link up
Álvaro Fernández Rojas [Sat, 17 Aug 2024 19:41:31 +0000 (21:41 +0200)]
kernel: r8168: print link status when link up

Like other Ethernet drivers, print link speed and duplex mode
when the interface is up. Formatting output at the same time.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
4 months agokernel: r8101: print link status when link up
Álvaro Fernández Rojas [Sat, 17 Aug 2024 19:30:35 +0000 (21:30 +0200)]
kernel: r8101: print link status when link up

Like other Ethernet drivers, print link speed and duplex mode
when the interface is up. Formatting output at the same time.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agokernel: r8126: ignore the rss rxnfc log
Álvaro Fernández Rojas [Mon, 12 Aug 2024 13:26:01 +0000 (21:26 +0800)]
kernel: r8126: ignore the rss rxnfc log

This log is noisy and useless, just ignore it.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
4 months agokernel: r8125: ignore the rss rxnfc log
Chukun Pan [Mon, 12 Aug 2024 13:26:01 +0000 (21:26 +0800)]
kernel: r8125: ignore the rss rxnfc log

This log is noisy and useless, just ignore it.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
4 months agomt76: update to Git HEAD (2024-08-18)
Felix Fietkau [Sun, 18 Aug 2024 07:55:38 +0000 (09:55 +0200)]
mt76: update to Git HEAD (2024-08-18)

0ac3041a9ac8 wifi: mt76: fix off-channel wcid pending queue handling

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 months agopackage: add kmod-r8101 ethernet driver
Álvaro Fernández Rojas [Fri, 16 Aug 2024 18:22:56 +0000 (20:22 +0200)]
package: add kmod-r8101 ethernet driver

r8101 is an out of tree driver provided by Realtek for RTL8101 devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agokernel: r8168/r8125/r8126: update PKG_SOURCE_URL
Álvaro Fernández Rojas [Fri, 16 Aug 2024 18:37:41 +0000 (20:37 +0200)]
kernel: r8168/r8125/r8126: update PKG_SOURCE_URL

r8168, r8125 and r8126 have been transferred from https://github.com/noltari to
https://github.com/openwrt.
The old URL should still work after the transfer, but let's update it anyway.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agomt76: update to Git HEAD (2024-08-16)
Felix Fietkau [Fri, 16 Aug 2024 17:58:57 +0000 (19:58 +0200)]
mt76: update to Git HEAD (2024-08-16)

58d187e4a97c wifi: mt76: mt792x: add struct mt792x_bss_conf
eb278f9863be wifi: mt76: mt792x: add struct mt792x_link_sta
156bd77d3264 wifi: mt76: mt792x: add struct mt792x_chanctx
017001536f34 wifi: mt76: mt7925: support for split bss_info_changed method
f6979f7bac2d wifi: mt76: mt792x: extend mt76_connac_mcu_uni_add_dev for per-link BSS
a72414b0929b wifi: mt76: mt7925: extend mt7925_mcu_set_tx with for per-link BSS
ccc741182b32 wifi: mt76: mt7925: extend mt7925_mcu_add_bss_info for per-link BSS
a6072c1cb337 wifi: mt76: mt7925: extend mt7925_mcu_set_timing for per-link BSS
8bc843c9a1bc wifi: mt76: mt7925: extend mt7925_mcu_bss_ifs_tlv for per-link BSS
57770675f269 wifi: mt76: mt7925: extend mt7925_mcu_bss_color_tlv for per-link BSS
69cbc0f03c2e wifi: mt76: mt7925: extend mt7925_mcu_bss_he_tlv for per-link BSS
36712505c8c6 wifi: mt76: mt7925: extend mt7925_mcu_bss_qos_tlv for per-link BSS
5399d0439cc6 wifi: mt76: mt7925: extend mt7925_mcu_bss_mld_tlv for per-link BSS
92abc8b3efb4 wifi: mt76: mt7925: extend mt7925_mcu_bss_bmc_tlv for per-link BSS
cca65ef81a47 wifi: mt76: mt7925: remove unused parameters in mt7925_mcu_bss_bmc_tlv
7a4997a2fc70 wifi: mt76: mt7925: extend mt7925_mcu_bss_sec_tlv for per-link BSS
eafc690d3e00 wifi: mt76: mt7925: extend mt7925_mcu_bss_basic_tlv for per-link BSS
a215af375b85 wifi: mt76: mt7925: extend mt7925_mcu_set_bss_pm for per-link BSS
b310e0dd4245 wifi: mt76: mt7925: extend mt7925_mcu_[abort, set]_roc for per-link BSS
b71940427ae7 wifi: mt76: mt7925: extend mt7925_mcu_uni_bss_bcnft for per-link BSS
4e2eadef7d59 wifi: mt76: mt7925: extend mt7925_mcu_uni_bss_ps for per-link BSS
0bec7c7124f7 wifi: mt76: mt7925: add mt7925_mcu_bss_rlm_tlv to constitue the RLM TLV
21d15e680a6d wifi: mt76: mt7925: mt7925_mcu_set_chctx rely on mt7925_mcu_bss_rlm_tlv
63e0bb14bd71 wifi: mt76: mt7925: extend mt7925_mcu_sta_update for per-link STA
f5a819c97e71 wifi: mt76: mt7925: extend mt7925_mcu_sta_state_v2_tlv for per-link STA
737235764c4c wifi: mt76: mt7925: extend mt7925_mcu_sta_rate_ctrl_tlv with per-link STA
a59201b4f003 wifi: mt76: mt7925: extend mt7925_mcu_sta_eht_tlv for per-link STA
25e12096e568 wifi: mt76: mt7925: extend mt7925_mcu_sta_he_6g_tlv for per-link STA
5e326a87bc46 wifi: mt76: mt7925: extend mt7925_mcu_sta_he_tlv for per-link STA
5c21555c6c79 wifi: mt76: mt7925: extend mt7925_mcu_sta_amsdu_tlv for per-link STA
d5bb9a9e735c wifi: mt76: mt7925: extend mt7925_mcu_sta_vht_tlv for per-link STA
a9e4e795652c wifi: mt76: mt7925: extend mt7925_mcu_sta_ht_tlv for per-link STA
daccf349f24f wifi: mt76: mt7925: extend mt7925_mcu_sta_phy_tlv for per-link STA
454b8f332428 wifi: mt76: mt7925: extend mt7925_get_phy_mode_ext for per-link STA
54dad0c287a5 wifi: mt76: mt7925: extend mt7925_get_phy_mode for per-link STA
c7248fea9557 wifi: mt76: mt792x: extend mt76_connac_get_phy_mode_v2 for per-link STA
afe6c142b1ee wifi: mt76: mt762x: extend mt76_connac_mcu_sta_basic_tlv for per-link STA
bb8bc43f3400 wifi: mt76: mt7925: extend mt7925_mcu_sta_hdr_trans_tlv for per-link STA
92262378ae20 wifi: mt76: mt7925: extend mt7925_mcu_add_bss_info for per-link STA
371667695674 wifi: mt76: mt7925: extend mt7925_mcu_bss_mld_tlv for per-link STA
990e9c62a7f2 wifi: mt76: mt7925: extend mt7925_mcu_bss_basic_tlv for per-link STA
070efb705591 wifi: mt76: mt7925: add mt7925_mac_link_sta_add to create per-link STA
90a7976363a7 wifi: mt76: mt7925: add mt7925_mac_link_sta_assoc to associate per-link STA
8695a2500bbd wifi: mt76: mt7925: add mt7925_mac_link_sta_remove to remove per-link STA
ac251c6d65e1 wifi: mt76: mt7925: add mt7925_mac_link_bss_add to create per-link BSS
f4f4e3238dc1 wifi: mt76: mt7925: add mt7925_mac_link_bss_remove to remove per-link BSS
64378d3a036e wifi: mt76: mt7925: simpify mt7925_mcu_sta_cmd logic by removing fw_offload
436e75a67e40 wifi: mt76: mt7925: update mt76_connac_mcu_uni_add_dev for MLO
aa913a43f20c wifi: mt76: mt7925: update mt7925_mac_link_sta_[add, assoc, remove] for MLO
74d518be9812 wifi: mt76: mt7925: set Tx queue parameters according to link id
94e751a0f549 wifi: mt76: mt7925: set mt7925_mcu_sta_key_tlv according to link id
15054d71a61a wifi: mt76: mt7925: add mt7925_set_link_key
41e7149458ef wifi: mt76: mt7925: extend mt7925_mcu_uni_roc_event
56064fc172b7 wifi: mt76: mt7925: add mt7925_change_vif_links
74138b229be6 wifi: mt76: mt7925: add mt7925_change_sta_links
6f628298f9ae wifi: mt76: mt7925: add link handling in mt7925_mac_sta_add
79f3aaf2765a wifi: mt76: mt7925: add link handling in mt7925_mac_sta_remove
950578348506 wifi: mt76: mt7925: add link handling to txwi
b6a07bce6000 wifi: mt76: mt7925: add link handling in mt7925_set_key
f1a7ab0544ae wifi: mt76: mt7925: add link handling to mt7925_change_chanctx
14d2ae0cdf16 wifi: mt76: mt7925: add link handling in the BSS_CHANGED_PS handler
f68bdb9b9d64 wifi: mt76: mt7925: add link handling in mt7925_mcu_set_beacon_filter
18ee40e548d1 wifi: mt76: mt7925: add link handling in mt7925_txwi_free
415503c237cf wifi: mt76: mt7925: add link handling in mt7925_mac_sta_assoc
6dfcb265aa97 wifi: mt76: mt7925: add link handling in mt7925_sta_set_decap_offload
18471bb0d671 wifi: mt76: mt7925: add link handling in mt7925_vif_connect_iter
ac8ab0853432 wifi: mt76: mt7925: add link handling in the BSS_CHANGED_ARP_FILTER handler
b14f7c02c79c wifi: mt76: mt7925: add link handling in the mt7925_ipv6_addr_change
6ebeb5f0150d wifi: mt76: mt7925: update rate index according to link id
ebd522981ba6 wifi: mt76: mt7925: report link information in rx status
2304e6146cf9 wifi: mt76: add def_wcid to struct mt76_wcid
1fc2bab3f510 wifi: mt76: mt7925: add mt7925_[assign,unassign]_vif_chanctx
2a23c1e5fef2 wifi: mt76: mt7925: update mt7925_mcu_sta_mld_tlv for MLO
2a226b8c06f7 wifi: mt76: mt7925: update mt7925_mcu_bss_mld_tlv for MLO
45df65348e26 wifi: mt76: mt7925: update mt7925_mcu_add_bss_info for MLO
7eb17943de6b wifi: mt76: mt7925: update mt7925_mcu_sta_update for MLO
d2b28297551e wifi: mt76: mt7925: add mt7925_mcu_sta_eht_mld_tlv for MLO
e385735a67a1 wifi: mt76: mt7925: update mt7925_mcu_sta_rate_ctrl_tlv for MLO
aedb640a90ad wifi: mt76: mt7925: update mt7925_mcu_sta_phy_tlv for MLO
6a3af6e618e4 wifi: mt76: mt7925: update mt7925_mcu_set_timing for MLO
783bb8314585 wifi: mt76: mt7925: update mt7925_mcu_bss_basic_tlv for MLO
17f5ef8058ef wifi: mt76: mt7925: update mt7925_mac_link_bss_add for MLO
94fe68018774 wifi: mt76: mt7925: remove the unused mt7925_mcu_set_chan_info
e0b4763428eb wifi: mt76: mt7925: enabling MLO when the firmware supports it
3a367258d9d6 wifi: mt76: mt792x: fix scheduler interference in drv own process
b6fd8fe5d260 wifi: mt76: mt7996: Use DECLARE_FLEX_ARRAY() and fix -Warray-bounds warnings
e25fb9a010f9 wifi: mt76: mt7921: add missing bss_conf vif init
6585a4353a51 wifi: mt76: mt7921: fix crash on ipv6 addr notification during vif bringup
fdba7f408873 wifi: mt76: fix mt76_get_rate
c13032ba4721 wifi: mt76: mt7915: always query station rx rate from firmware
d5286f465f83 wifi: mt76: connac: add support for IEEE 802.11 fragmentation
c4c66f6b119d wifi: mt76: mt7915: add dummy HW offload of IEEE 802.11 fragmentation
b4da028f990a wifi: mt76: mt7915: fix rx filter setting for bfee functionality
6ccafa50c647 firmware: update firmware for MT7915 to 20240429200502
b80c997b3ff6 wifi: mt76: partially move channel change code to core
891031ee051d wifi: mt76: add separate tx scheduling queue for off-channel tx
4eea0786d83f wifi: mt76: mt7915: disable tx worker during tx BA session enable/disable
e0a409af5526 wifi: mt76: mt7915: allocate vif wcid in the same range as stations
1305484d044a wifi: mt76: connac: add support for passing connection state directly
ea8c3eac128e wifi: mt76: change .sta_assoc callback to .sta_event
5af2f7c8e884 wifi: mt76: mt7915: use mac80211 .sta_state op
863b3a5f521e wifi: mt76: mt7915: set MT76_MCU_RESET early in mt7915_mac_full_reset
a1a65d860812 wifi: mt76: mt7915: retry mcu messages
362fec004cea wifi: mt76: mt7915: reset the device after MCU timeout
37955a4d08db wifi: mt76: mt7996: use hweight16 to get correct tx antenna
b980637b11e8 wifi: mt76: mt7996: fix traffic delay when switching back to working channel
a5aa259fb137 wifi: mt76: mt7996: fix wmm set of station interface to 3
8e2f906cb154 wifi: mt76: mt7996: advertize beacon_int_min_gcd
bf2eeec731c6 wifi: mt76: mt7996: fix HE and EHT beamforming capabilities
c2c6940e60c4 wifi: mt76: mt7996: set correct beamformee SS capability
5cf02b0a2682 wifi: mt76: mt7996: fix EHT beamforming capability check
4a90f927311c wifi: mt76: mt7996: set correct value in beamforming mcu command for mt7992
c4e34c8bb963 wifi: mt76: mt7996: fix handling mbss enable/disable
bb6a5dbbb7aa wifi: mt76: connac: add IEEE 802.11 fragmentation support for mt7996
437ec1b9e282 wifi: mt76: mt7996: set IEEE80211_KEY_FLAG_GENERATE_MMIE for other ciphers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 months agoarm-trusted-firmware-mediatek: build RAM boot images for MT7622
Daniel Golle [Fri, 16 Aug 2024 03:43:14 +0000 (04:43 +0100)]
arm-trusted-firmware-mediatek: build RAM boot images for MT7622

Build images for use with mtk_uartboot also for MT7622.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 months agoarm-trusted-firmware-mediatek: only build bl2 for RAM boot images
Daniel Golle [Fri, 16 Aug 2024 03:43:57 +0000 (04:43 +0100)]
arm-trusted-firmware-mediatek: only build bl2 for RAM boot images

There is no need to build BL31 as anyway only the bl2 image is
relevant for use with mtk_uartboot. Build only bl2 in this case.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 months agotoolchain: binutils: add support for 2.43
Chuanhong Guo [Thu, 15 Aug 2024 07:34:24 +0000 (15:34 +0800)]
toolchain: binutils: add support for 2.43

Drop two backported patches, and autorefresh the rest.

Release notes:
https://lists.gnu.org/archive/html/info-gnu/2024-08/msg00001.html

Link: https://github.com/openwrt/openwrt/pull/16175
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
4 months agokernel: prevent tunnel drivers from mangling fraglist GSO packets
Felix Fietkau [Thu, 15 Aug 2024 19:25:33 +0000 (21:25 +0200)]
kernel: prevent tunnel drivers from mangling fraglist GSO packets

Fixes crashes on segmenting packets, mainly when dereferencing a no longer
existing fragment chain.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 months agokernel: backport upstream GSO improvements
Felix Fietkau [Thu, 15 Aug 2024 17:06:05 +0000 (19:06 +0200)]
kernel: backport upstream GSO improvements

Fixes some corner cases regarding segmenting packets that were assembled
by GRO.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
4 months agoramips: mt76x8: add support for Yuncore M300
Daniel Golle [Wed, 14 Aug 2024 18:21:06 +0000 (19:21 +0100)]
ramips: mt76x8: add support for Yuncore M300

Hardware:
 - SoC: MediaTek MT7628DAN (MIPS 580MHz)
 - Flash: 8 MiB Spansion S25FL064K
 - RAM: 64 MiB (built-into SoC)
 - WLAN: 2.4 GHz (MT7628)
 - Ethernet: 1x 10/100 Mbps WAN, 1x 10/100 LAN (MT7628)
 - Buttons: 1 Reset button
 - LEDs: 1x Red, 1x Green
 - Serial console: unpopulated header, 57600 8n1 (RX only)
 - Power: 12 VDC, 1 A

There are unpopulated areas on the board for 5 GHz WiFi via PCIe as well
as (most likely) Quectel EG25-G 4G module. As both are not populated on
my board support for both is missing for now.

Installation:
The installation can be done via the recovery HTTP server which is built
into the bootloader. Hold down the reset button while connecting the
device to power and keep holding a bit more than 3 seconds. Connect to
http://192.168.188.253/ and upload sysupgrade.bin file.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 months agokernel: Fix section mismatch in ubi
Romanov Danila [Wed, 14 Aug 2024 12:58:43 +0000 (15:58 +0300)]
kernel: Fix section mismatch in ubi

Fix ubiblock_create_from_param() ubiblock_create_auto_rootfs section mismatch.
Without this, the system upgrade will not work if the kernel was compiled with clang-18.

WARNING: modpost: vmlinux: section mismatch in reference: ubiblock_notify+0x190 (section: .text) -> ubiblock_create_auto_rootfs (section: .init.text)

```
[33342.080771] Call trace:
[33342.083205]  ubiblock_create_auto_rootfs+0x0/0xd0
[33342.087902]  blocking_notifier_call_chain+0xb0/0x1a0
[33342.092857]  ubi_volume_notify+0xcc/0xdc
[33342.096773]  ubi_create_volume+0x520/0x684
[33342.100861]  ubi_cdev_ioctl+0x2ac/0x834
[33342.104688]  __arm64_sys_ioctl+0x14f0/0x15f4
[33342.108947]  invoke_syscall+0x44/0xc8
[33342.112601]  do_el0_svc+0x78/0xa8
[33342.115907]  el0_svc+0x24/0x50
[33342.118951]  el0t_64_sync_handler+0x88/0xf0
[33342.123126]  el0t_64_sync+0x150/0x154
[33342.126784] Code: ???????? ???????? ???????? ???????? (????????)
```
Signed-off-by: Romanov Danila <pervokur@gmail.com>
4 months agoconfig: kernel: Add support for configuring BTRFS to be built-in
Marek Behún [Mon, 22 Jul 2024 14:57:50 +0000 (16:57 +0200)]
config: kernel: Add support for configuring BTRFS to be built-in

Add the KERNEL_BTRFS_FS config option so that targets can select
whether BTRFS support must be built-in.

Select this option (alongside KERNEL_BTRFS_FS_POSIX_ACL) from the
layerscape/armv8_64b subtarget instead of enabling it in
target/linux/layerscape/armv8_64b/config-* files.

Move disabling of CONFIG_BTRFS_FS_CHECK_INTEGRITY into generic configs.

This makes it possible for OpenWRT to be built with built-in BTRFS
support on specific boards, instead of whole targets.

Signed-off-by: Marek Behún <kabel@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/15990
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agomediatek: Add support for Linksys EA7500 v3
Roland Reinl [Thu, 18 Jul 2024 14:10:53 +0000 (16:10 +0200)]
mediatek: Add support for Linksys EA7500 v3

Specification:
- MT7629 CPU
- MT7531 switch
- MT7761N and MT7762N wifi
- 256 MB RAM
- 128 MB NAND flash with dual-boot partitions
- 2 buttons: WPS and reset
- 1 WAN port (1G)
- 4 LAN ports (1G)
- 1 USB port

Limitations (same as other MT7629/MT7761N/MT7762N devices):
- Wifi is not working
- Second core is not working (kernel error message "CPU1: failed to come online")

Disassembly:
- There are two screws under the front rubber feet and two under the label on the bottom (in the corners towards the back, you should be able to feel them).

Serial Interface:
- UART pin header is already soldered on the board. Pinning from front to back:
1 - VCC
2 - TX
3 - RX
4 - n/a
5 - GND

GPIO:
- 1 white LED, connected to GPIO 52
- 1 reset button, connected to GPIO 60
- 1 WPS button, connected to GPIO 58

MAC Adresses:
- The MAC address printed on the device label is used for LAN and WAN
- The MAC address is stored in the devinfo partition in ASCII format (hw_mac_addr=aa:bb:cc:dd:ee)
- 2.4 GHz wifi uses MAC of the device label + 1
- 5 GHz wifi uses MAC of the device label + 2

Flashing:
- OpenWrt is only runnig in the first partition of dual boot
- To ensure to be able to go back to the factory image, flash the last OEM firmware via OEM web interface. This will ensure that the OEM firmware is present on both partitions
- Because of dual boot partitions, flashing via OEM interface is not supported
- Start a TFTP server and provide the initramfs image. Default settings:
  - Router IP: 192.168.1.1
  - TFTP server IP: 192.168.1.100
  - TFTP file name: 7531.bin
- Open the device, connect UART and select " 1. System Load Linux to SDRAM via TFTP." during startup
- Adapt the settings to your environment, if required
- After initramfs is booted, flash the sysupgrade image

Return to OEM firmware:
- Run the following commands in OpenWrt to switch to the second partition
  fw_setenv boot_part 2
  fw_setenv bootimage 2
- Reboot the device. OEM firmware will start up again

Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16067
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agorockchip: fix sysupgrade for Radxa ROCK Pi S
FUKAUMI Naoki [Wed, 14 Aug 2024 01:20:12 +0000 (10:20 +0900)]
rockchip: fix sysupgrade for Radxa ROCK Pi S

SUPPORTED_DEVICES is required for Radxa ROCK Pi S.

Signed-off-by: FUKAUMI Naoki <naoki@radxa.com>
Link: https://github.com/openwrt/openwrt/pull/16167
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agomac80211: add rtw89 driver
Antonio Flores [Sat, 10 Aug 2024 18:48:34 +0000 (14:48 -0400)]
mac80211: add rtw89 driver

This commits adds the RTW89 driver from Realtek.
Supports the Realtek 8851BE/8852AE/8852BE/8852CE PCIe wireless chips.

Signed-off-by: Antonio Flores <antflores627@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16131
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agobmips: inteno-xg6846: Add DSA LED definitions
Linus Walleij [Wed, 14 Aug 2024 08:26:26 +0000 (10:26 +0200)]
bmips: inteno-xg6846: Add DSA LED definitions

This adds the LED definitons for the XG6846 DSA port LEDs.
These are standard properties compatible with the existing
Marvell 88e6xxx DT bindings and fully standardized so this
is fine to add. They will be used by the in-flight Marvell
88e6xxx LEDs support patch.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
[add empty lines between leds, remove default-state="off"]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agobmips: inteno-xg6846: Add EEPROM node
Linus Walleij [Wed, 14 Aug 2024 08:26:25 +0000 (10:26 +0200)]
bmips: inteno-xg6846: Add EEPROM node

For some troublesome devices it is necessary to obtain direct access
to the SFP module EEPROM so define it in the device tree.

Suggested-by: Paul Donald <newtwen@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 months agobmips: inteno-xg6846: Activate USB port
Linus Walleij [Wed, 14 Aug 2024 08:26:24 +0000 (10:26 +0200)]
bmips: inteno-xg6846: Activate USB port

Some versions of the Inteno XG6846 has a USB port mounted.
For these machines the corresponing USB port nodes need to
be enabled.

Suggested-by: Henrik Ginstmark <henrik@ginstmark.se>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
[reorder DTS alphabetically]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 months agouhttpd: Decrease the default validity time of certificate
Hannu Nyman [Wed, 1 May 2024 10:53:34 +0000 (13:53 +0300)]
uhttpd: Decrease the default validity time of certificate

The recommended maximum validity period is currently 397 days
and some browsers throw warning with longer periods.

Reference to
https://cabforum.org/working-groups/server/baseline-requirements/
 6.3.2 Certificate operational periods and key pair usage periods
 Subscriber Certificates issued on or after 1 September 2020
 SHOULD NOT have a Validity Period greater than 397 days and
 MUST NOT have a Validity Period greater than 398 days.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/15366
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agouhttpd: Include new extensions in uhttpd self-signed certs
Pat Fruth [Wed, 1 May 2024 10:50:23 +0000 (13:50 +0300)]
uhttpd: Include new extensions in uhttpd self-signed certs

The introduction of MacOS Catalina includes new requirements for self-signed certificates.
See: https://support.apple.com/en-us/HT210176
These new requirements include the addition of two TLS server certificate extensions.
- extendedKeyUsage
- subjectAltName
The extendedKeyUsage must be set to serverAuth.
The subjectAltName must be set to the DNS name of the server.
In the absense of these new extensions, when the LUCI web interface is configured to use HTTPS and
self-signed certs, MacOS user running Google Chrome browsers will not be able to access the LUCI web enterface.
If you are generating self-signed certs which do not include that extension, Chrome will
report "NET::ERR_CERT_INVALID" instead of "NET::ERR_CERT_AUTHORITY_INVALID".  You can click through to
ignore the latter, but not the former.

This change updates the uhttpd init script to generate self-signed cert that meets the new requirements.
Signed-off-by: Pat Fruth <pat@patfruth.com>
Link: https://github.com/openwrt/openwrt/pull/15366
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agopx5g-mbedtls: add subjectAltName and extendedKeyUsage to SSL certs
Hannu Nyman [Wed, 1 May 2024 11:49:46 +0000 (14:49 +0300)]
px5g-mbedtls: add subjectAltName and extendedKeyUsage to SSL certs

To better acommodate with the current browsers' requirements, also
self-signed certificates should have subjectAltName and
extendedKeyUsage defined in the self-signed x509 SSL certificates.

The following case sensitive options are now possible:
-addext subjectAltName=DNS:...
-addext subjectAltName=EMAIL:...
-addext subjectAltName=IP:...
-addext subjectAltName=URI:...
-addext extendedKeyUsage=serverAuth OR -addext extendedKeyUsage=any

Initial draft by Paul Donald <newtwen@gmail.com>

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/15366
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agofirmware: omnia-mcu-firmware: Bump to 4.1
Marek Behún [Tue, 13 Aug 2024 07:24:11 +0000 (09:24 +0200)]
firmware: omnia-mcu-firmware: Bump to 4.1

Bump `omnia-mcu-firmware` to version 4.1.

This version fixes the following issue on boards with GD32 MCU:
* the user has old GD32 MCU bootloader and application (version 2.0)
* the user upgraded MCU application firmware to newer version (from
  2.99 to 4.0)
* the user wants to upgrade application again, but it is impossible,
  because when MCU application firmware jumps into the old MCU
  bootloader firmware (2.0), the old bootloader firmware gets stuck in
  exception
* the user has to restart the board and upgrade the bootloader firmware
  first, which is not ideal, since if bootloader firmware upgrade is
  interrupted, the board gets bricked

Therefore the `omnia-mcutool` utility version 0.3-rc3 will refuse to
upgrade MCU application firmware to versions 2.99 to 4.0 if the MCU
bootloader firmware is at version 2.0.

For users to be able to upgrade MCU application firmware on GD32
boards, they will need this new 4.1 version.

Users that already upgraded the MCU application firmware to a version
version between 2.99 and 4.0 (using a previous version of the
`omnia-mcutool` utility) have no other choice but to upgrade MCU
bootloader firmware as well.

Signed-off-by: Marek Behún <kabel@kernel.org>
Link: https://github.com/openwrt/openwrt/pull/16159
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agotools/cmake: Update to 3.30.2
Hannu Nyman [Sat, 3 Aug 2024 06:46:18 +0000 (09:46 +0300)]
tools/cmake: Update to 3.30.2

Update cmake to version 3.30.2
Release notes: https://cmake.org/cmake/help/v3.30/release/3.30.html

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/16059
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agompc85xx: fix wdr4900 ethernet
Rosen Penev [Mon, 12 Aug 2024 17:23:06 +0000 (10:23 -0700)]
mpc85xx: fix wdr4900 ethernet

997acc7f86ca985cba52f7ea8b72f0661a1e3c52 split this PHY driver up such
that external QCA switches now use CONFIG_QCA83XX_PHY. Fix it here so
that ethernet works again.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16154
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agoramips: add support for Xiaomi R4AC v2 (intl)
Anton Stratonnikov [Mon, 25 Dec 2023 22:35:24 +0000 (01:35 +0300)]
ramips: add support for Xiaomi R4AC v2 (intl)

The second edition of international version of Mi Router 4A 100M is
very similar to the non-international one, but has another wireless chip.

 Installation
--------------

1. Initialize build-in firmware (use webgui for 192.168.31.1)
  You should install root password

2. Run OpenWRTInvasion for the first time (probably it will fail)
  Version 0.0.10 is working as well as 0.0.1.

3. Run OpenWRTInvasion for the second time
  It will create an access to your router

4. Upload sysupgrade image to router (/tmp/fw.bin)
  pc# nc -l 8080 < …/ramips/mt76x8/…-100m-intl-v2-squashfs-sysupgrade.bin
  router# nc 192.168.31.175 8080 > /tmp/fw.bin

5. Flash new firmware
  router# run mtd -r write /tmp/fw.bin OS1

6. Check result
  Wait about 5-10 minutes after flash. Router should reboot itself and
  turn left led from orange to blue.

In case of failure one can use Xiaomi 4a 100m debrick tool
(it uploads special image via tftpd in recovery mode)
After that you can start again from step 1.

Another actions are very similar to original Mi Router 4A 100M

 Original mtd paritions:
-------------------------

```
Creating 9 MTD partitions on "raspi":
0x000000000000-0x000001000000 : "ALL"
0x000000000000-0x000000020000 : "Bootloader"
0x000000020000-0x000000030000 : "Config"
0x000000030000-0x000000040000 : "Factory"
0x000000040000-0x000000050000 : "crash"
0x000000050000-0x000000060000 : "cfg_bak"
0x000000060000-0x000000160000 : "overlay"
0x000000160000-0x000000dc0000 : "OS1"
0x000000dc0000-0x000001000000 : "disk"
with special sub-partition
0x0000002c0000-0x000000dc0000 : "rootfs"
```

We will use OS1+disk space:
```
0x000000160000-0x000001000000 : "firmware"
```

Co-authored-by: Nita Vesa <nita.vesa@elektrik.link>
Signed-off-by: Anton Stratonnikov <billic@yandex.ru>
Link: https://github.com/openwrt/openwrt/pull/14304
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agokernel: bump 6.1 to 6.1.104
Zxl hhyccc [Sun, 11 Aug 2024 12:40:56 +0000 (20:40 +0800)]
kernel: bump 6.1 to 6.1.104

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

All patches automatically rebased.

1 mm: restrict the pcp batch scale factor to avoid too long latency
a new kconfig option (PCP_BATCH_SCALE_MAX) is added to
set the max batch scale factor.Whose default value is 5,
and users can reduce it when necessary.

https://lore.kernel.org/all/20231016053002.756205-5-ying.huang@intel.com/T/#u

Build system: bcm4908 bcm53xx

Signed-off-by: Zxl hhyccc <zxlhhy@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16141
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agokernel: bump 6.6 to 6.6.45 and update config-6.6
John Audia [Sun, 11 Aug 2024 14:57:59 +0000 (10:57 -0400)]
kernel: bump 6.6 to 6.6.45 and update config-6.6

Build on at leasst x86/64 failed without adding the new ksym:
CONFIG_PCP_BATCH_SCALE_MAX=5

According to www.kernelconfig.io[1], this option seems to apply
to all arches so I placed it in target/linux/generic/config-6.6

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

Removed upstreamed:
generic/backport-6.6/719-v6.11-net-phy-realtek-add-support-for-RTL8366S-Gigabit-PHY.patch[2]

All other patches automatically rebased.

1. https://www.kernelconfig.io/config_pcp_batch_scale_max?q=&kernelversion=6.10.3&arch=x86
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.45&id=b45cbfa204b2a0985eb85dcb33d51714ee089bb9

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

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/16144
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agotoolchain: gcc: update GCC 14 to 14.2.0
Thomas Weißschuh [Thu, 1 Aug 2024 15:59:42 +0000 (17:59 +0200)]
toolchain: gcc: update GCC 14 to 14.2.0

All patches automatically rebased.

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/16047
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agohostapd: Add support for APuP
Gioacchino Mazzurco [Wed, 20 Mar 2024 10:06:54 +0000 (11:06 +0100)]
hostapd: Add support for APuP

Add support for hostapd Access Point Micro Peering

Signed-off-by: Gioacchino Mazzurco <gio@polymathes.cc>
Link: https://gitlab.com/g10h4ck/hostap/-/commits/APuP
Link: https://github.com/openwrt/openwrt/pull/15442
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 months agolantiq: arv7525pw: use nvmem for eeprom
Rosen Penev [Tue, 6 Aug 2024 01:18:49 +0000 (18:18 -0700)]
lantiq: arv7525pw: use nvmem for eeprom

NVMEM is the upstream replacement for this. ralink,mtd-eeprom is
deprecated. The others need to stay as there's byte swapping going on.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16084
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agouboot-envtools: Add support for Orange Pi R1 Plus & LTS
Vyacheslav Ivanov [Tue, 6 Aug 2024 09:44:49 +0000 (12:44 +0300)]
uboot-envtools: Add support for Orange Pi R1 Plus & LTS

Add support this boards to envtools config
This commit integrates the latest changes from new U-Boot, which includes important updates to the DTSI files for the Orange Pi R1 Plus and Orange Pi R1 Plus LTS boards.

Signed-off-by: Vyacheslav Ivanov <islavaivanov76@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16090
Signed-off-by: Robert Marko <robimarko@gmail.com>
4 months agoimx: drop 6.1 support
Mieczyslaw Nalewaj [Wed, 7 Aug 2024 19:01:22 +0000 (21:01 +0200)]
imx: drop 6.1 support

Drop config and files for Linux 6.1.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/16107
Signed-off-by: Robert Marko <robimarko@gmail.com>