openwrt/staging/xback.git
8 months agomediatek: mt7622: rtl8367c: add casts to fix compiler warnings
Daniel Golle [Fri, 1 Mar 2024 00:06:47 +0000 (00:06 +0000)]
mediatek: mt7622: rtl8367c: add casts to fix compiler warnings

Use type casts to prevent compiler warnings which are going to turn
into errors when we switch to Linux 6.6.
In the long run we should try to get rid of this downstream driver
now that RTL8367S is support by the rtl8365mb DSA driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: rename or replace accepted patches
Daniel Golle [Thu, 29 Feb 2024 23:52:56 +0000 (23:52 +0000)]
mediatek: rename or replace accepted patches

Rename kernel patches accepted upstream to indicate at which version
they have been accepted, replacing downstream variants which what was
accepted upstream. Note that some of them are fixes which will
find their way to older kernel versions as well via linux-stable.
No functional changes.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: fix version tag in thermal patches
Daniel Golle [Thu, 29 Feb 2024 19:30:10 +0000 (19:30 +0000)]
mediatek: fix version tag in thermal patches

Some backported thermal patches ended up with the wrong kernel
version in their filename. Fix this.

Fixes: c36de2e73a ("mediatek: backport a hell of thermal commits")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agouboot-mediatek: remove rootfs_data before attempting to replace fip
Daniel Golle [Thu, 29 Feb 2024 19:22:43 +0000 (19:22 +0000)]
uboot-mediatek: remove rootfs_data before attempting to replace fip

Make sure there is enough space to replace 'fip' volume and always
remove rootfs_data before.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agokirkwood: Add Marvell RTC to all machines with nothing else
Linus Walleij [Fri, 23 Feb 2024 07:23:47 +0000 (08:23 +0100)]
kirkwood: Add Marvell RTC to all machines with nothing else

The Kirkwood SoCs all have an onchip RTC that can hold the time
over e.g. a reboot which will help if no NTP servers are available.

Create a kernel module package for the Marvell RTC, and add it to
all Kirkwood devices that do not have their own discrete
battery-backed RTC. Adding it to platforms with a proper RTC
is just surplus.

All Kirkwoods have at least one RTC so add RTC to the features
list for Kirkwood as well.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
8 months agoath79: nand: add SUPPORTED_DEVICES for Meraki MR18
Samuele Longhi [Fri, 23 Feb 2024 09:36:58 +0000 (10:36 +0100)]
ath79: nand: add SUPPORTED_DEVICES for Meraki MR18

This adds the board name from ar71xx to support upgrade without
-F for the Meraki MR18.

Signed-off-by: Samuele Longhi <agave@dracaena.it>
8 months agoramips: fix nvmem-cells for routers based on TP-Link Archer
Mieczyslaw Nalewaj [Fri, 23 Feb 2024 20:23:05 +0000 (21:23 +0100)]
ramips: fix nvmem-cells for routers based on TP-Link Archer

Added missing nvmem-cells located in the loaded file mt7620a_tplink_archer.dtsi

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agomediatek: filogic: add support for Cudy RE3000 v1
Robert Senderek [Fri, 16 Feb 2024 13:04:40 +0000 (14:04 +0100)]
mediatek: filogic: add support for Cudy RE3000 v1

MT7981B /256MB /16MB SPI (XM25QH128C)
AX 2.4Ghz
AX 5Ghz 160Mhz wide
1Gbit LAN

OEM:
root@RE3000:~# ifconfig |grep HWaddr
br-lan    Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0 (label)
br-wan    Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
eth0      Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
ra0       Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
ra2       Link encap:Ethernet  HWaddr 82:XX:XX:28:XX:X0
rax0      Link encap:Ethernet  HWaddr 82:XX:XX:38:XX:X0
rax2      Link encap:Ethernet  HWaddr 82:XX:XX:58:XX:X0

OpenWrt
root@OpenWrt:/# ifconfig |grep HW
br-lan    Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
eth0      Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
phy0-ap0  Link encap:Ethernet  HWaddr 80:XX:XX:08:XX:X0
phy1-ap0  Link encap:Ethernet  HWaddr 82:XX:XX:08:XX:X1

 tftp Installation via u-boot:

Connect TTL3.3V converter
connector is under the radiator Set speed 115200 8 N 1
Interrupt boot process by holding down-arrow key during boot then
>> 6. Load image
>> 0 - TFTP client (Default)
enter IP adresses and initramfs-kernel.bin

write to flash via sysupgrade or gui

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
8 months agouboot-d1: cleanup Makefile
Zoltan HERPAI [Thu, 29 Feb 2024 16:06:04 +0000 (17:06 +0100)]
uboot-d1: cleanup Makefile

Clean up leftover PKG_HASH.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agod1: add new target
Zoltan HERPAI [Wed, 24 May 2023 21:51:14 +0000 (23:51 +0200)]
d1: add new target

This target adds support for the Allwinner D1 RISC-V based SoCs.

 - RISC-V single-core T-Head C906 (RV64GCV)
 - Tensilica HiFi4 DSP
 - DDR2/DDR3 support
 - 10/100/1000M ethernet
 - usual peripherals like USB2, SPI, I2C, PWM, etc.

Four boards are supported:
 - Dongshan Nezha STU
    - 512Mb RAM
    - ethernet

 - LicheePi RV Dock
    - 512Mb RAM
    - wireless-only (RTL8723DS)

 - MangoPi MQ-Pro
    - 512Mb RAM
    - there are pads available for an SPI flash
    - wireless-only (RTL8723DS)

 - Nezha D1
    - 512Mb/1Gb/2Gb RAM
    - 256Mb NAND flash
    - ethernet, wireless

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

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agouboot-d1: add bootloader for upcoming d1 target
Zoltan HERPAI [Wed, 7 Jun 2023 12:34:06 +0000 (14:34 +0200)]
uboot-d1: add bootloader for upcoming d1 target

Add u-boot bootloader based on 2023.01 to support D1-based boards, currently:

 - Dongshan Nezha STU
 - LicheePi RV Dock
 - MangoPi MQ-Pro
 - Nezha D1

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agoopensbi: allow building on upcoming d1 target
Zoltan HERPAI [Wed, 7 Jun 2023 09:54:34 +0000 (11:54 +0200)]
opensbi: allow building on upcoming d1 target

U-boot on D1 also uses OpenSBI as its payload. As the current version of
OpenSBI already supports D1 with no further patches required, allow
building it on the upcoming TARGET_d1 too.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
8 months agobase-files: sysupgrade: add uci-defaults script disabling services #2
Rafał Miłecki [Wed, 28 Feb 2024 10:51:02 +0000 (11:51 +0100)]
base-files: sysupgrade: add uci-defaults script disabling services #2

Disabled services should be kept disabled after sysupgrade. This can be
easily handled using a proper uci-defaults script.

Extend sysupgrade to check for disabled services, generate uci-defaults
script disabling them and include it in backup.

Cc: Christian Marangi <ansuelsmth@gmail.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jo-Philipp Wich <jo@mein.io>
8 months agobase-files: sysupgrade: use tar helper to include installed_packages.txt
Rafał Miłecki [Wed, 28 Feb 2024 10:51:01 +0000 (11:51 +0100)]
base-files: sysupgrade: use tar helper to include installed_packages.txt

Replace mount + overlay with manually built tar archive that gets
prepended to the actual config files backup. This allows more
flexibility with including extra backup files. They can be included at
any paths and don't require writing to flash or mounting an overlay
which has its own limitations (mount points).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jo-Philipp Wich <jo@mein.io>
8 months agobase-files: sysupgrade: add tar.sh with helpers for building archives
Jo-Philipp Wich [Wed, 28 Feb 2024 10:51:00 +0000 (11:51 +0100)]
base-files: sysupgrade: add tar.sh with helpers for building archives

This allows building uncompressed tar archives from shell scripts (and
compressing them later if needed)

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
[rmilecki: adapt to sysupgrade needs]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
8 months agotools/dwarves: update to 1.26
Tony Ambardar [Wed, 28 Feb 2024 23:04:57 +0000 (15:04 -0800)]
tools/dwarves: update to 1.26

Release Notes:
https://lore.kernel.org/dwarves/20240228193921.JWQp1Mc2M47ffhgIjnHKh8538u4uztVKuznlck9Pk9E@z/

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
8 months agomediatek: re-enable mt7622-rfb1-ubi with changed partition layout
Felix Fietkau [Wed, 28 Feb 2024 08:52:08 +0000 (09:52 +0100)]
mediatek: re-enable mt7622-rfb1-ubi with changed partition layout

The boot loader does not have a fixed size limit for the kernel,
so we're free to change the layout. This may break sysupgrade, but a fresh
flash from initramfs works.

Fixes: 6e2962d4c548 ("mediatek: mt7622: skip build for MT7622 rfb1 (UBI)")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
8 months agouboot-mediatek: correct board name for BananaPi BPi-R3 Mini
Tianling Shen [Sun, 25 Feb 2024 12:21:40 +0000 (20:21 +0800)]
uboot-mediatek: correct board name for BananaPi BPi-R3 Mini

It should be "BananaPi BPi-R3 Mini" instead of just "BananaPi BPi-R3".

Fixes: bc25519f98cd ("uboot-mediatek: add builds for BananaPi BPi-R3 mini")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
8 months agobuild: fix shebang line
Michael Seibt [Mon, 5 Feb 2024 23:40:21 +0000 (00:40 +0100)]
build: fix shebang line

Remove space between sharp-exclamation and interpreter.

Signed-off-by: Michael Seibt <github@roboschmie.de>
8 months agolantiq: add support for Arcadyan VRV9510KWAC23
Daniel Huici [Sun, 4 Feb 2024 22:59:48 +0000 (23:59 +0100)]
lantiq: add support for Arcadyan VRV9510KWAC23

The Arcadyan VRV9510KWAC23 (trade name Livebox Next) is a Lantiq router distributed by some spanish ISPs

Hardware:
-   SoC: Lantiq VRX200
-   CPU: 2x MIPS 34Kc 500 MHz
-   RAM: 256 MiB DDR2
-   Flash: 128 MiB NAND
-   Ethernet: Built-in Gigabit Ethernet switch, 5x 1GbE
-   Wifi 2.4GHz: Broadcom BCM43222KFBG 802.11b/g/b MIMO 2T2R
-   Wifi 5GHz: Broadcom BCM4360KMLG 802.11ac MIMO 3T3R
-   USB: 2x USB 2.0
-   DSL: Built-in VDSL/ADSL2+ XWAY VRX208
-   LEDs: 8x
-   Buttons: 4x
-   Phone: Lantiq PEF 42068 V XWAY SLIC120

Install instructions:
Detailed instructions can be found on the wiki https://openwrt.org/toh/arcadyan/vrv9510kwac23
1. Boot into UART mode and upload the the https://raw.githubusercontent.com/danielhuici/arcadyan-vrv9510kwac23-utils/main/u-boot.asc file via serial console to boot into U-Boot.
2. Perform a backup of the NAND
3. Setup a TFTP server and serve the https://github.com/danielhuici/arcadyan-vrv9510kwac23-utils/raw/main/u-boot.ltq.lzo.nandspl. Replace the OEM bootloader with this one. Erase your NAND and write the image into it
4. Reboot the router
5. Serve the OpenWrt ramdisk image on your TFTP server and boot it via U-Boot
6. When OpenWrt boots, flash the SquashFS OpenWrt image using LuCi interface, so OpenWrt gets installed into the NAND

Signed-off-by: Daniel Huici <danielhuici@hotmail.com>
8 months agoramips: removing unnecessary compatibility for TP-Link Archer C2 v1
Mieczyslaw Nalewaj [Thu, 15 Feb 2024 20:58:31 +0000 (21:58 +0100)]
ramips: removing unnecessary compatibility for TP-Link Archer C2 v1

Removing: compatible = "rtl8367b"
This string is not used anywhere in the code.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agoumdns: prevent a few 'uci: Entry not found'
Paul Donald [Sun, 11 Feb 2024 22:44:42 +0000 (23:44 +0100)]
umdns: prevent a few 'uci: Entry not found'

pass '-q' switch to uci to prevent spurious output

Signed-off-by: Paul Donald <newtwen@gmail.com>
8 months agogeneric l2tp: drop flow hash on forward
David Bauer [Mon, 26 Feb 2024 13:43:09 +0000 (14:43 +0100)]
generic l2tp: drop flow hash on forward

Drop the flow-hash of the skb when forwarding to the L2TP netdev.

This avoids the L2TP qdisc from using the flow-hash from the outer
packet, which is identical for every flow within the tunnel.

This does not affect every platform but is specific for the ethernet
driver. It depends on the platform including L4 information in the
flow-hash.

Signed-off-by: David Bauer <mail@david-bauer.net>
8 months agogeneric vxlan: don't learn non-unicast L2 destinations
David Bauer [Sat, 17 Feb 2024 21:37:05 +0000 (22:37 +0100)]
generic vxlan: don't learn non-unicast L2 destinations

This patch avoids learning non-unicast targets in the vxlan FDB. They
are non-unicast and thus should be sent to the broadcast-IPv6 instead of
a unicast address

Link: https://lore.kernel.org/netdev/15ee0cc7-9252-466b-8ce7-5225d605dde8@david-bauer.net/
Link: https://github.com/freifunk-gluon/gluon/issues/3191
Signed-off-by: David Bauer <mail@david-bauer.net>
8 months agomvebu: add kernel module for Turris Omnia Wi-Fi 6
Jan Jasper de Kroon [Mon, 5 Feb 2024 08:02:57 +0000 (09:02 +0100)]
mvebu: add kernel module for Turris Omnia Wi-Fi 6

The following kernel module package was added to the build recipe for the
Turris Omnia: kmod-mt7915-firmware

This module enables support for the official Wi-Fi 6 upgrade kit sold by
CZ.NIC, which includes the AW7915-NP1 miniPCIE board based on Mediatek
MT7915AN, providing 5 GHz Wi-Fi 6 connectivity. With this commit we now
support the latest Turris Omnia Wi-Fi 6 Edition

Signed-off-by: Jan Jasper de Kroon <jajadekroon@gmail.com>
8 months agodnsmasq: Fix wrong format for --dhcp-boot option
Julius Lehmann [Thu, 22 Feb 2024 17:01:04 +0000 (18:01 +0100)]
dnsmasq: Fix wrong format for --dhcp-boot option

dnsmasq --dhcp-boot option uses 'tag' instead of 'net' to specify tags

Signed-off-by: Julius Lehmann <lehmanju@devpi.de>
8 months agoe2fsprogs: add libe2p and development headers
Oskari Rauta [Wed, 14 Feb 2024 04:38:49 +0000 (06:38 +0200)]
e2fsprogs: add libe2p and development headers

this patch separates libe2p from e2fsprogs package, like all other
provided libraries are their own packages. Also some development headers
were missing so I added those along with pkg-config files.

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
8 months agomvebu: fill additional info for mvneta tx queue workaround patch
Tomasz Maciej Nowak [Mon, 26 Feb 2024 16:26:42 +0000 (17:26 +0100)]
mvebu: fill additional info for mvneta tx queue workaround patch

Because some still unresolved bugs in this driver, which sprout
occasional questions what this patch works around, point to the issue
which started this. Being here, fill headers required by git am.

Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
8 months agoairoha: dts: fix pcie ranges properties
Lorenzo Bianconi [Fri, 5 Jan 2024 16:17:53 +0000 (17:17 +0100)]
airoha: dts: fix pcie ranges properties

Reduce and split pcie controller memory ranges for en7523 SoC
in order to properly load a pcie card on the second port.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
8 months agomediatek: filogic: Cudy WR3000 v1 wps button fix
Robert Senderek [Thu, 22 Feb 2024 15:42:21 +0000 (16:42 +0100)]
mediatek: filogic: Cudy WR3000 v1 wps button fix

WPS button activation method is wrong .  It should be active low

Signed-off-by: Robert Senderek <robert.senderek@10g.pl>
8 months agobase-files: export whole disk of fitblk backing partition
Daniel Golle [Mon, 26 Feb 2024 03:56:36 +0000 (03:56 +0000)]
base-files: export whole disk of fitblk backing partition

After commit ad62247800 ("base-files: improve lib/upgrade/common.sh")
behavior of export_bootdevice has been made consistent in such way that
always the whole disk device is exported (as that was the case already
when matching via UUID) rather than the partition device.
Do the same for the device holding the fitblk backing partition.

Fixes: 5992f976b3 ("base-files: recognize bootdevice on devices using fitblk")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: include 'fitblk' package for subtargets
Daniel Golle [Mon, 26 Feb 2024 01:50:50 +0000 (01:50 +0000)]
mediatek: include 'fitblk' package for subtargets

If selected on a per-board base, fitblk doesn't end up in initramfs
images which always only come with the subtarget's default packages.
Hence fitblk needs to be included as a default package of all
subtargets making use of fitblk instead of it being selected for
individual boards.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agomediatek: drop platform_get_bootdev
Daniel Golle [Sun, 25 Feb 2024 21:12:10 +0000 (21:12 +0000)]
mediatek: drop platform_get_bootdev

Now that we got fitblk_get_bootdev in /lib/upgrade/common.sh we don't
need platform_get_bootdev in each of the subtargets any longer.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agouboot-envtools: replace use of platform_get_bootdev
Daniel Golle [Sun, 25 Feb 2024 21:08:57 +0000 (21:08 +0000)]
uboot-envtools: replace use of platform_get_bootdev

Use new function fitblk_get_bootdev in /lib/upgrade/common.sh instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agobase-files: recognize bootdevice on devices using fitblk
Daniel Golle [Sun, 25 Feb 2024 21:01:01 +0000 (21:01 +0000)]
base-files: recognize bootdevice on devices using fitblk

Boards using the fitblk driver need special treatment when it comes to
detecting the actual block device used to store the image used to boot
from. Transparently handle this in 'export_bootdevice' and provide new
'fitblk_get_bootdev' function to replace implementations in
/lib/upgrade/platform.sh.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agokernel: fix compiler warning caused by NVMEM-on-UBI
Daniel Golle [Sun, 25 Feb 2024 23:56:55 +0000 (23:56 +0000)]
kernel: fix compiler warning caused by NVMEM-on-UBI

When building the UBI NVMEM provider on 32-bit platforms a compiler
warning is triggered due to different sizeof(int).
Fix this by using integer types with well-defined size.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoipq-wifi: update to version 2024-02-25, remove unused ipq8174 extension
Paweł Owoc [Sun, 25 Feb 2024 14:04:31 +0000 (15:04 +0100)]
ipq-wifi: update to version 2024-02-25, remove unused ipq8174 extension

fc30aee ipq8074: remove regdomain, update regdb and rename MX4200 BDF
Remove unused ipq8174 extension

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
8 months agoairoha: allow selecting 6.1 as test kernel
Robert Marko [Mon, 19 Feb 2024 20:42:20 +0000 (21:42 +0100)]
airoha: allow selecting 6.1 as test kernel

Add 6.1 as the test kernel for airoha.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: 6.1: refresh config
Robert Marko [Mon, 19 Feb 2024 20:41:51 +0000 (21:41 +0100)]
airoha: 6.1: refresh config

Refresh the 6.1 config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: make files 5.15 only
Robert Marko [Mon, 19 Feb 2024 20:34:37 +0000 (21:34 +0100)]
airoha: make files 5.15 only

Contents of the files folder were upstreamed in 6.1 so make it 5.15 only.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: 6.1: make patches apply
Robert Marko [Mon, 19 Feb 2024 20:32:06 +0000 (21:32 +0100)]
airoha: 6.1: make patches apply

Drop upstreamed patches and refresh the left SPI controller patch.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agoairoha: copy 5.15 files to 6.1
Robert Marko [Mon, 19 Feb 2024 20:05:27 +0000 (21:05 +0100)]
airoha: copy 5.15 files to 6.1

Start working on updating airoha to 6.1 by copying 5.15 config and
patches to 6.1.

Signed-off-by: Robert Marko <robimarko@gmail.com>
8 months agorockchip: fix device packages for nanopi r4s enterprise edition
Tianling Shen [Sun, 25 Feb 2024 04:36:02 +0000 (12:36 +0800)]
rockchip: fix device packages for nanopi r4s enterprise edition

In official OpenWrt we use kmod-r8169 driver provided by upstream kernel
instead of kmod-r8168 driver from Realtek.

Fixes: afca1236f318 ("rockchip: add NanoPi R4S Enterprise Edition build")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
8 months agomediatek: mt7623: bpi-r2: bump compat version on boot
Daniel Golle [Sun, 25 Feb 2024 01:38:39 +0000 (01:38 +0000)]
mediatek: mt7623: bpi-r2: bump compat version on boot

The device booting successfully indicates that bootloader has been
updated. Set compat_version to 1.1 on new configs and bump
compat_version to 1.1 on first boot after a successful sysupgrade.

Fixes: 6368ed1ae5 ("mediatek: mt7623: phase out uImage.FIT partition parser")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
8 months agoramips: TP-Link Archer C5 v4: license and file formatting fixes
Mieczyslaw Nalewaj [Sat, 24 Feb 2024 20:59:40 +0000 (21:59 +0100)]
ramips: TP-Link Archer C5 v4: license and file formatting fixes

mt7620a_tplink_archer-c5-v4.dts - added missing SPDX-License-Identifier

mt7620.mk: added missing tabulator

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agoipq40xx: Netgear LBR20 fix for proper img builds
Marcin Gajda [Sat, 24 Feb 2024 16:49:49 +0000 (17:49 +0100)]
ipq40xx: Netgear LBR20 fix for proper img builds

Without UBINIZE_OPTS it is possile to have error:
"ubi0 error: ubi_attach_mtd_dev: failed to atach mtd23, error -22"

This solve this problem.

Signed-off-by: Marcin Gajda <mgajda@o2.pl>
8 months agokernel: bump 6.1 to 6.1.79
John Audia [Fri, 23 Feb 2024 20:40:12 +0000 (15:40 -0500)]
kernel: bump 6.1 to 6.1.79

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

Manually rebased:
ath79/patches-6.1/900-unaligned_access_hacks.patch

All other patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
8 months agoramips: add support for TP-Link Archer C5 v4
Mieczyslaw Nalewaj [Fri, 23 Feb 2024 19:53:37 +0000 (20:53 +0100)]
ramips: add support for TP-Link Archer C5 v4

TP-Link Archer C5 v4 is a dual band router with 5 GbE ports
Advertised as AC1200 for its 867Mbps (2x2) 5GHz band
and 300 Mbps (2x2) 2.4GHz band.

Specs:
- SoC: MediaTek MT7620A
- Ethernet: 5x GbE ports (Realtek RTL8367S)
- Wireless 2.4GHz: MediaTek MT7620A
- Wireless 5GHz: MediaTek MT7612E
- RAM: 64MiB
- ROM: 8MiB (GD25Q64CSIG)
- 1 USB 2.0 port
- 2 Buttons (WPS and reset)
- 8 LEDs

Flash instructions:
Currently one has to install OpenWrt only via the serial console

1. Rename the factory.bin to to test.bin
2. start a TFTP server from IP address 192.168.0.225 and serve the image named test.bin
3. connect your device to the LAN port
4. power up the router and press 4 on the console to stop the boot process.
5. enter the following commands on the router console
tftp 0x80060000 test.bin
erase tplink 0x20000 0x7a0000
cp.b 0x80060000 0x20000 0x7a0000
reset

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[Update leds, add fast-read]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[Rebuilt version based on mt7620 tplink_archer.dtsi, support for external LNA, remove bad cell count info]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agoramips: fix TP-Link Archer MAC address for ethernet
Mieczyslaw Nalewaj [Fri, 23 Feb 2024 19:51:12 +0000 (20:51 +0100)]
ramips: fix TP-Link Archer MAC address for ethernet

This fixes:
[    0.981884] OF: /ethernet@10100000: #nvmem-cell-cells = 1 found 0

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agokernel: support for RTL8367C/S switch
Mieczyslaw Nalewaj [Wed, 14 Feb 2024 19:27:23 +0000 (20:27 +0100)]
kernel: support for RTL8367C/S switch

From driver point of view no differance between rtl8367b and rtl8367s
if it connected through EXT2 (rgmii only).
So this trivial patch add some identification and initialization only.
SGMII/HSGMII mode for EXT1 is not implemented for the sake of patch
clairity.

Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru>
[Fix code format]
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[add flags to separate chip_num/chip_id detection; drop error print in
rtl8367b_init_regs, drop unnecessary info prints, code style fixes]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[rebase; use MII macros]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[code optimization]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agokernel: rtl8366_smi: explicitly set phy addr for switch
Mieczyslaw Nalewaj [Wed, 14 Feb 2024 12:14:10 +0000 (13:14 +0100)]
kernel: rtl8366_smi: explicitly set phy addr for switch

By default rtl8366_smi use phy addr 0 at mii-bus to access switch registers.
This patch allow to set it explicitly in dts-file:

rtl8367 {
compatible = "realtek,rtl8367b";
phy-id = <29>; /* switch address at mii-bus */
realtek,extif2 = <1 0 1 1 1 1 1 1 2>;
mii-bus = <&mdio>;
cpu-port = <7>;
}

Use default 0 address if not set.
Backward compatibility tested on tplink archer c2 v1 (rtl8367rb switch)

Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru>
[code style fixes, add explicit phy_id assignment in probe_plat, use
phy-id instead of phy_id for of property name]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[rebase]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[added phy_id to struct rtl8366_smi]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
8 months agomediatek: mt7623: bpi-r2: set root=/dev/fit0 in bootargs
Daniel Golle [Sat, 24 Feb 2024 17:00:46 +0000 (17:00 +0000)]
mediatek: mt7623: bpi-r2: set root=/dev/fit0 in bootargs

Set root=/dev/fit0 cmdline parameter as the kernel won't mount rootfs
otherwise after the change from the FIT partition parser to the fitblk
driver which replaces it.

Fixes: 6368ed1ae5 ("mediatek: mt7623: phase out uImage.FIT partition parser")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agoprocd: update to git HEAD
Daniel Golle [Sat, 24 Feb 2024 03:59:02 +0000 (03:59 +0000)]
procd: update to git HEAD

 2f94972 hotplug-dispatch: don't filter empty env variables
 1901aba system: break infite loop resolving rootfs type

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agokernel: fix warning when building fitblk on 32-bit platforms
Daniel Golle [Sat, 24 Feb 2024 03:32:13 +0000 (03:32 +0000)]
kernel: fix warning when building fitblk on 32-bit platforms

Kernel warns about comparision of different types without cast when
building the fitblk driver on 32-bit platforms.
Fix this by using `min_t(size_t, ...`.

Fixes: 8fc5457869 ("kernel: add pending fitblk uImage.FIT sub-image block driver")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agomediatek: mt7623: phase out uImage.FIT partition parser
Daniel Golle [Sat, 24 Feb 2024 03:00:27 +0000 (03:00 +0000)]
mediatek: mt7623: phase out uImage.FIT partition parser

Use the new fitblk driver on the BananaPi R2 as well as UniElec U7623.
Introduce boot device selection for fitblk's /chosen/rootdisk
handle, similar to how it is already done on MT7622, MT7986 and MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agouboot-mediatek: fix truncated patch
Daniel Golle [Sat, 24 Feb 2024 03:00:46 +0000 (03:00 +0000)]
uboot-mediatek: fix truncated patch

The default environment for the Linksys E8450 and Belkin RT3200 got
truncated by one line due to a broken patch. While the impact was
luckily only cosmetic, fix it so bootmenu title also shows U-Boot
version again.

Fixes: 6aec3c7b5b ("mediatek: mt7622: modernize Linksys E8450 / Belkin RT3200 UBI build")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agoipq40xx: Add support Netgear LBR20
Marcin Gajda [Sun, 11 Feb 2024 15:20:21 +0000 (16:20 +0100)]
ipq40xx: Add support Netgear LBR20

**Netgear LBR20** is a router with two gigabit ethernets , three wifi radios and integrated LTE cat.18 modem.

SoC Type: Qualcomm IPQ4019
RAM: 512 MiB
Flash: 256 MiB , SLC NAND, 2 Gbit (Macronix MX30LF2G18AC)
Bootloader: U-Boot
Modem: LTE CAT.18 Quectel EG-18EA ,  Max. 1.2Gbps downlink / 150Mbps uplink

WiFi class AC2200:
- radio0 : 5G on QCA9888 , WiFi5- 802.11a/n/ac MU-MIMO 2x2 , 887Mbps , 80MHz - limited for low channels
- radio1: 2,4G on IPQ4019 ,WiFi4- 802.11b/g/n MIMO2x2 300Mbps 40Mhz
- radio2: 5G on IPQ4019 , WiFi5- 802.11a/n/ac MU-MIMO 2x2 , 887Mbps ,80Mhz - limited for high channels  (from 100 up to 165) . Becouse of DFS remember to set country before turning on.

Ethernet: 2x1GbE (WAN/LAN1, LAN2)
LEDs:  section power : green and red  , section on top (orbi) drived by TLC59208F: red, green ,blue and white
USB ports: No
Buttons:  2 Reset and SYNC(WPS)
Power: 12 VDC, 2,5 A
Connector type: Barrel

OpenWRT Installation
1. Simplest way is just do upgrade from webpage with *factory.img
2. You can also do it with standard tool for Netgear's debricking - NMPRFlash
3. Most advanced way is to open device , connect to UART console and :
- Prepare OpenWrt initramfs image in TFTP server root (server IP 192.168.1.10)
- Connect serial console (115200,8n1) to UART connector
- Connect TFTP server to RJ-45 port
- Stop in u-Boot and run u-Boot command:

> setenv serverip 192.168.1.10
> set fdt_high 0x85000000
> tftpboot 0x83000000 openwrt-ipq40xx-generic-netgear_lbr20-initramfs-zImage.itb
> bootm 0x83000000

- Login via ssh
- upload or download *sysupgrade.bin ( like wget ... or scp transfer)
-  Install image via "sysupgrade -n" (like “sysupgrade -n /tmp/openwrt-ipq40xx-generic-netgear_lbr20-squashfs-sysupgrade.bin”)

Back to Stock
- Download firmware from official Netgear's webpage , it will be *.img file after decompressing.
- Use NMRPFlash tool  ( detailed insructions on project page https://github.com/jclehner/nmrpflash )

Open the case
- Unscrew nuts and remove washers from antenna's conectors.
- There are two Torx T10 screws under the label next to antenna conectors. You have to unglue this label from left and right corner to get it
- Two parts of shell covers will slide out from eachother , you have to unglue two small rubber pads and namplate sticker on bottom to do that.
- PCB is screwed with 4Pcs of Torx T10 screws
- Before lifting up PCB remove pigtiles for LTE antennas and release them from PCB and radiator (black and white wires)
- On other side of PCB ,in left bottom corner there is already soldered with 4 pins UART connector for console. Counting from left it is  +3,3V , TX , RX ,GND (reffer to this picture: https://i.ibb.co/Pmrf9KB/20240116-103524.jpg )

BDF's files are in firmware_qca-wireless  https://github.com/openwrt/firmware_qca-wireless/ and in parallel sent to ath10k@lists.infradead.org.

Signed-off-by: Marcin Gajda <mgajda@o2.pl>
9 months agoipq806x: refresh Kconfig
Christian Marangi [Fri, 23 Feb 2024 17:05:09 +0000 (18:05 +0100)]
ipq806x: refresh Kconfig

Refresh Kconfig due to new changes in ARM decompressor with
kernel_makemenuconfig.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
9 months agoipq806x: replace ARM bootloader patch with pending upstream version
Christian Marangi [Fri, 23 Feb 2024 16:54:52 +0000 (17:54 +0100)]
ipq806x: replace ARM bootloader patch with pending upstream version

Replace ARM bootloader patch with pending upstream version. The patch
got reviewed upstream and tested on a Netgear R7800.

This fix a problem with the ARM decompressor and permits to use
AUTO_ZRELADDR without having to hardcode PHYS_OFFSET as the bootloader
now correctly parse the memory modes in the appended DTB.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
9 months agoRevert "build: don't drop 'user' flag when using the ImageBuilder"
Daniel Golle [Thu, 22 Feb 2024 19:13:34 +0000 (19:13 +0000)]
Revert "build: don't drop 'user' flag when using the ImageBuilder"

This reverts commit c42b915af0ea53bc1b65bc72afc9875da08b14d2.
Now that rpcd uses the 'Auto-Installed' field to differentiate between
deliberately and implicitely installed packages we can remove the
hotfix.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agorpcd: update to latest git HEAD
Daniel Golle [Thu, 22 Feb 2024 19:12:03 +0000 (19:12 +0000)]
rpcd: update to latest git HEAD

 8ef4c25 sys: use "Auto-Installed" field for packagelist

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agomediatek: mt7622: no longer select FIT_PARTITION
Daniel Golle [Fri, 23 Feb 2024 13:43:43 +0000 (13:43 +0000)]
mediatek: mt7622: no longer select FIT_PARTITION

All mt7622 board previously using the FIT partition parser have been
converted to use the fitblk driver:
 6aec3c7b5b mediatek: mt7622: modernize Linksys E8450 / Belkin RT3200 UBI build
 41c053141e mediatek: mt7622: convert unifi6lr-v{1,2,3}-ubootmod to fitblk
 208f6c1232 mediatek: mt7622: convert BPi-R64 to all-UBI layout and fitblk

Remove the now no longer needed FIT partition parser from builds for
mt7622.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agomediatek: filogic: asus-tuf-ax6000: use NVMEM-on-UBI
Daniel Golle [Mon, 19 Feb 2024 03:22:52 +0000 (03:22 +0000)]
mediatek: filogic: asus-tuf-ax6000: use NVMEM-on-UBI

Use newly added support for NVMEM-on-UBI instead of extracting MAC
address and WiFi EEPROM data in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agomediatek: filogic: asus-tuf-ax4200: use NVMEM-on-UBI
Daniel Golle [Mon, 19 Feb 2024 03:18:47 +0000 (03:18 +0000)]
mediatek: filogic: asus-tuf-ax4200: use NVMEM-on-UBI

Use newly added support for NVMEM-on-UBI instead of extracting MAC
address and WiFi EEPROM data in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agomediatek: filogic: asus-rt-ax59u: use NVMEM-on-UBI
Daniel Golle [Mon, 19 Feb 2024 03:11:18 +0000 (03:11 +0000)]
mediatek: filogic: asus-rt-ax59u: use NVMEM-on-UBI

Use newly added support for NVMEM-on-UBI instead of extracting MAC
address and WiFi EEPROM data in userspace.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 months agoipq-wifi: fix archive hash
Robert Marko [Fri, 23 Feb 2024 13:14:05 +0000 (14:14 +0100)]
ipq-wifi: fix archive hash

It seems that ipq-wifi bump included and incorrect PKG_MIRROR_HASH value,
so fix it by using:
make package/firmware/ipq-wifi/check FIXUP=1

Fixes: 70fd815e57dc ("qualcommax: ipq807x: add support for Linksys MX5300")
Signed-off-by: Robert Marko <robimarko@gmail.com>
9 months agomac80211: only build ath10k with smallbuffers
Eneas U de Queiroz [Tue, 10 Oct 2023 19:36:12 +0000 (16:36 -0300)]
mac80211: only build ath10k with smallbuffers

When both variants of ath10k drivers are selected, any driver that is
selected along is being built twice, one for each ath10k variant.

Avoid these redundant builds by introducing an optional second parameter
to config_package that lists the variants for which the package is to be
built.

If the symbol is to be set for all of the variants, $(ALL_VARIANTS) can
be used.  This is the case for the mac80211 and cfg80211 modules.  If
the parameter is empty, then the module will be selected and thus built
when the first variant is compiled.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
9 months agomac80211: build each variant in its own dir
Eneas U de Queiroz [Tue, 10 Oct 2023 18:58:01 +0000 (15:58 -0300)]
mac80211: build each variant in its own dir

Having different build directories is the default when the package
Makefile defines more than one variant.

Mac80211 overrides PKG_BUILD_DIR, not taking different variants in
consideration, which causes clobbering the directories when both
variants are built.

When compiled with AUTOREMOVE=y, the effect is that the package is
unnecessarily rebuilt when the package is compiled again.

Wihout AUTOREMOVE, the problem is worse: the second variant will not be
rebuilt, and you end up with the smallbuffers variant being a copy of
the regular one.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
9 months agoqualcommax: ipq807x: add support for Linksys MX5300
Paweł Owoc [Fri, 24 Nov 2023 21:15:44 +0000 (22:15 +0100)]
qualcommax: ipq807x: add support for Linksys MX5300

Hardware specification:
========
SoC: Qualcomm IPQ8072A
Flash: 512MB (Winbond W29N04GZBIBA)
RAM: 1GB (2x Nanya DDR3L NT5CC256M16ER-EK)
Ethernet: 5x 10/100/1000Mbps (Qualcomm QCA8075)
WiFi1: 5GHz ac 4x4 (Qualcomm QCA9984 + Skyworks SKY85746-11) - channels 100-169
WiFi2: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-64
WiFi3: 2.4GHz ax 4x4 (Qualcomm QCN5024 + Skyworks SKY8340-11)
IoT: Bluetooth 5, Zigbee and Thread (Qualcomm QCA4024 + Skyworks SE2433T-R)
IoT Flash: 4MB (Macronix MX25R3235F)
RTC: ST M41T00S
LED: 1x RGB status (NXP PCA9633)
USB: 1x USB 3.0
Button: WPS, Reset

Flash instructions:
========
1. Manually upgrade firmware using openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin image.
More details can be found here: https://www.linksys.com/hk/support-article?articleNum=274497
After first boot check actual partition:
- fw_printenv -n boot_part
and install firmware on second partition using command in case of 2:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin kernel
and in case of 1:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin alt_kernel

2. Installation using serial connection from OEM firmware (default login: root, password: admin):
- fw_printenv -n boot_part
In case of 2:
- flash_erase /dev/mtd21 0 0
  nandwrite -p /dev/mtd21 openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin
or in case of 1:
- flash_erase /dev/mtd23 0 0
  nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin
After first boot install firmware on second partition:
- mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin kernel
or:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin alt_kernel

3. Installation from initramfs image using USB FAT32 formatted drive:
Stop u-boot and run:
- usb start && fatload usb 0:1 $loadaddr openwrt-qualcommax-ipq807x-linksys_mx5300-initramfs-uImage.itb && bootm $loadaddr
Write firmware to the flash from initramfs:
- mtd -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin kernel
and:
- mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx5300-squashfs-factory.bin alt_kernel

4. Back to the OEM firmware:
- mtd -e kernel -n write FW_MX5300_1.1.9.200251_prod.img kernel
and:
- mtd -r -e alt_kernel -n write FW_MX5300_1.1.9.200251_prod.img alt_kernel

5. USB recovery:
- fw_setenv usbimage 'openwrt-qualcommax-ipq807x-linksys_mx5300-initramfs-uImage.itb'
  fw_setenv bootusb 'usb start && fatload usb 0:1 $loadaddr $usbimage && bootm $loadaddr'
  fw_setenv bootcmd 'run bootusb; aq_load_fw && if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi'

Notes:
========
IoT device is accesible over spi. Not yet supported.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Reviewed-by: Robert Marko <robimarko@gmail.com>
9 months agoqualcommax: ipq807x: add patch for QUP4 SPI node
Robert Marko [Fri, 24 Nov 2023 22:09:58 +0000 (23:09 +0100)]
qualcommax: ipq807x: add patch for QUP4 SPI node

Add node to support the QUP4 SPI controller inside of IPQ8074.
Some devices use this bus to communicate to a Bluetooth controller.

Signed-off-by: Robert Marko <robimarko@gmail.com>
9 months agoqualcommax: ipq807x: reordering, combine the same commands
Paweł Owoc [Thu, 30 Nov 2023 23:30:20 +0000 (00:30 +0100)]
qualcommax: ipq807x: reordering, combine the same commands

Reordering, combine the same commands for ipq807x devices

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
9 months agoramips: fix and clean up D-Link MAC address
Alan Luck [Thu, 15 Feb 2024 05:31:12 +0000 (16:31 +1100)]
ramips: fix and clean up D-Link MAC address

add back WIFI eprom addresses pointer in mt7621_dlink_dir-xx60-a1.dtsi
Change MAC address pointer from factory_e006 to factory_e000 + 3
same as used in D-link firmware 1.11 DIR-1960-A1
DIR-1960-A1,DIR-2640-A1,DIR-2660-A1,DIR-3060-A1

Clean-up MAC addresses in D-Link NOR devices DTS's
Change WIFI MAC Addressees to the same as NAND cousins macaddr_factory_e000 + ?
as later devices don't have the MAC address in factory configuration
same as used in D-Link firmware 1.30 DIR-878-A1
DIR-867-A1,DIR-878-A1,DIR-878-R1,DIR-882-A1,DIR-882-R1,DIR-1935-A1

* D-link software differs between source of wan address

Signed-off-by: Alan Luck <luckyhome2008@gmail.com>
9 months agobase-files: sysupgrade: rename add_*files() functions
Rafał Miłecki [Mon, 12 Feb 2024 10:57:01 +0000 (11:57 +0100)]
base-files: sysupgrade: rename add_*files() functions

Usage of word "add" was somehow misleading in those functions:
1. They don't really add (as in: append) anything. Result files are
   created from scratch.
2. It wasn't clear what adding files means. It could be understood as
   adding actual files somewhere (to existing archive?).

Also the word "add" was also a bit ambiguous.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agobase-files: sysupgrade: s/do_save_conffiles/create_backup_archive/
Rafał Miłecki [Mon, 12 Feb 2024 10:57:00 +0000 (11:57 +0100)]
base-files: sysupgrade: s/do_save_conffiles/create_backup_archive/

Rename function to more accurate and self-explanatory name:
1. Use "archive" in name as this functions creates tar archive
2. Avoid "conffiles" as this function may archive more than that

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agobase-files: sysupgrade: exit with no error for --help
Rafał Miłecki [Mon, 12 Feb 2024 10:56:59 +0000 (11:56 +0100)]
base-files: sysupgrade: exit with no error for --help

Calling "sysupgrade --help" should result in printing help and exiting
with 0 code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agobase-files: sysupgrade: group & cleanup global variables
Rafał Miłecki [Mon, 12 Feb 2024 10:56:58 +0000 (11:56 +0100)]
base-files: sysupgrade: group & cleanup global variables

Group & describe them by type, drop unneeded exports.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agobase-files: sysupgrade: replace UMOUNT_ETCBACKUP_DIR with a local variable
Rafał Miłecki [Mon, 12 Feb 2024 10:56:57 +0000 (11:56 +0100)]
base-files: sysupgrade: replace UMOUNT_ETCBACKUP_DIR with a local variable

It was used inside do_save_conffiles() only.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agobase-files: sysupgrade: fix error message and typo
Luiz Angelo Daros de Luca [Thu, 20 Oct 2022 02:56:22 +0000 (23:56 -0300)]
base-files: sysupgrade: fix error message and typo

Some minor error message and comment fixes.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
9 months agoRevert "base-files: sysupgrade: always setup overlay when creating backup"
Rafał Miłecki [Thu, 22 Feb 2024 15:43:47 +0000 (16:43 +0100)]
Revert "base-files: sysupgrade: always setup overlay when creating backup"

This reverts commit 4fa9aaf0bed984d200b3c48d1cc81fca7847c394.

That seemed like a good idea allowing us to include any runtime
generated file in archive. Unfortuantely it broke backups with files
from mounted directories.

When mounting overlay with / as lowerdir its mounts don't propagete in
the mountpoint. That resulted in empty directories:
/tmp/overlay.XXXXXX/backup/tmp/
/tmp/overlay.XXXXXX/backup/var/
/tmp/overlay.XXXXXX/backup/dev/
/tmp/overlay.XXXXXX/backup/proc/
etc.

As some platforms / users try to backup files like /var/dhcp.leases or
/boot/cmdline.txt it means we can't use that solution.

Link: http://lists.openwrt.org/pipermail/openwrt-devel/2024-February/042320.html
Link: https://lore.kernel.org/linux-fsdevel/67bb0571-a6e0-44ea-9ab6-91c267d0642f@gmail.com/T/#u
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agoRevert "base-files: sysupgrade: include uci-defaults script disabling services"
Rafał Miłecki [Thu, 22 Feb 2024 15:40:56 +0000 (16:40 +0100)]
Revert "base-files: sysupgrade: include uci-defaults script disabling services"

This reverts commit bf304d10e97c11de8c637fda02578cce79a3a0b4.

That uci-defaults script worked great but generating it required
mounting root dir as overlay lowerdir that needs to be reverted.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
9 months agowifi-scripts: Support HE Iftypes with multiple entries
Hauke Mehrtens [Sat, 17 Feb 2024 16:58:50 +0000 (17:58 +0100)]
wifi-scripts: Support HE Iftypes with multiple entries

With mac80211_hwsim I have seen such entries in OpenWrt 22.03:
    HE Iftypes: managed, AP
The mac80211.sh script did not detect the entry and failed. Allow
arbitrary other entries before to fix this problem.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
9 months agorockchip: remove LED label hack
Tianling Shen [Mon, 12 Feb 2024 11:21:38 +0000 (19:21 +0800)]
rockchip: remove LED label hack

Now we support parsing the color and function properties.
Ref: e814acc59948 ("base-files: support parse DT LED color and function")

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
9 months agodnsmasq: rework network interface ignore
Yegor Yefremov [Thu, 15 Feb 2024 08:43:09 +0000 (09:43 +0100)]
dnsmasq: rework network interface ignore

In some situations (slow protocol or interfaces with auto 0), the
interfaces are not available during the dnsmasq initialization and
hence, the ignore setting will be skipped.

Install an interface trigger for ignored interfaces in case their
ifname cannot be resolved.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
9 months agoucode: update to Git HEAD (2024-02-21)
Jo-Philipp Wich [Wed, 21 Feb 2024 21:33:00 +0000 (22:33 +0100)]
ucode: update to Git HEAD (2024-02-21)

ee4af9b55cb4 vm: rework object iteration
a275399dd8e2 uci: refactor uci.changes() to match documentation
ba3855ae3775 lib: fix documentation typo for `pop()` function

Fixes: https://github.com/jow-/ucode/issues/188
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
9 months agoqualcommax: ipq60xx: Add 8devices Mango DVK
Mantas Pucka [Mon, 22 Jan 2024 09:28:32 +0000 (11:28 +0200)]
qualcommax: ipq60xx: Add 8devices Mango DVK

8devices Mango DVK is a single board computer / devkit for 8devices Mango
system-on-module (SoM).

Specifications:
* CPU: Qualcomm IPQ6010 Quad core Cortex-A53 1.8GHz
* RAM: 512 MB
* Storage:
    * 32 MB serial NOR flash (on SoM)
    * 256 MB parallel NAND flash (on DVK)
* Ethernet:
    * 2x1G RJ45 ports(QCA8072 or QCA8075)
    * 1x2.5G RJ45 port (QCA8081)
    * 1xSFP (shares SGMII with QCA8081)
* Switch: Qualcomm Atheros IPQ6010
* WLAN:
    * 2.4GHz: QCN5121 2x2 802.11b/g/n/ax 574 Mbps PHY rate
    * 5GHz: QCN5152 2x2 802.11a/n/ac/ax 1201 Mbps PHY rate
* USB:
    * 1x USB3.0 Type-A port
    * 1x USB2.0 available at mini PCIe slot
* PCIe: 1x mini PCIe slot 1xLane Gen3 (8GT/s)
* SD/eMMC (on a single shared bus - only one can be active):
    * micro SD slot
    * eMMC module connector
* LEDs:
    * Green power led (not controllable)
    * Green 2.4GHz radio led (GPIO 67)
    * Green 5GHz radio led (GPIO 66)
* Buttons:
    * 1x (WPS GPIO79) button
* GPIOs: 2.54mm header brings out 18 GPIOs (1.8V level)
* UART: 4-pin UART header (3.3V level)
    * 115200 8N1, 3.3V-Tx-Rx-GND (3.3V is pin 1 close to boot-switch SW2)
* Power:
    * PoE IN on 2.5G port (passive 24-48V)
    * DC power terminal (12-58V)

Installation instructions:

Vendor image format is compatible with squashfs-sysupgrade image. Run:

sysupgrade -n -F openwrt-qualcommax-ipq60xx-8devices_mango-dvk-squashfs-sysupgrade.bin

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agoipq-wifi: add support for 8devices Mango board
Mantas Pucka [Wed, 3 Jan 2024 09:25:59 +0000 (11:25 +0200)]
ipq-wifi: add support for 8devices Mango board

Add support for .ipq6018 BDF suffix and add Mango board entry

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agoipq-wifi: update to Git HEAD (2024-02-19)
Mantas Pucka [Tue, 20 Feb 2024 08:44:06 +0000 (10:44 +0200)]
ipq-wifi: update to Git HEAD (2024-02-19)

1cc59e1 ipq6018: add 8devices Mango BDF
10279cc ipq40xx:Add support for Netgear LBR20 with two BDF's

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agoath11k-firmware: add wifi firmware for ipq6018
Mantas Pucka [Wed, 3 Jan 2024 09:21:58 +0000 (11:21 +0200)]
ath11k-firmware: add wifi firmware for ipq6018

So far only stable FW is v2.4. It exists in a different
git repo, so add custom download routine.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agomac80211: ath11k: disable coldboot for ipq6018
Mantas Pucka [Wed, 3 Jan 2024 09:31:03 +0000 (11:31 +0200)]
mac80211: ath11k: disable coldboot for ipq6018

Coldboot calibration does not work at the moment and causes failure during
wifi startup.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agoqca-ssdk: support selecting PCS channel for PORT3 on IPQ6018
Mantas Pucka [Mon, 12 Feb 2024 13:05:25 +0000 (15:05 +0200)]
qca-ssdk: support selecting PCS channel for PORT3 on IPQ6018

When QCA8072 is used in PSGMII mode with IPQ6018, PCS used for second
PHY port would overlap with one used by SGMII+ port. SoC has register
to select different PCS in such case.

Original code used PHY_ID for this decision, which also had other
issues, but is no longer viable since we moved to upstream QCA807x
driver.

Introduce DT property port3_pcs_channel to allow describing this in DT.
Default value is <2>, and for some QCA8072 designs <4> would be needed.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agoqualcommax: ipq60xx: set correct PHY mode for port 0-4
Mantas Pucka [Mon, 12 Feb 2024 13:09:30 +0000 (15:09 +0200)]
qualcommax: ipq60xx: set correct PHY mode for port 0-4

[port 8ed390a (qualcommax: set correct PHY mode for port 0-4) to ipq60xx]

Port 0-4 have the mode set to SGMII instead of PSGMII. Now that we use
he upstream qca807x driver, this conflicts with the qca SSDK driver
that expects the mode to be PSGMII as for not integrated driver, it does
refer to the real PHY mode.

Update the entry for port 0-4 to PSGMII to solve warning from qca SSDK
in ipq6018-ess.dtsi.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
9 months agoqualcommax: ipq807x: skip factory.ubi image for MX4200
Paweł Owoc [Tue, 16 Jan 2024 22:29:01 +0000 (23:29 +0100)]
qualcommax: ipq807x: skip factory.ubi image for MX4200

Skip building not used factory.ubi image

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
9 months agoqualcommax: ipq807x: remove duplicated sysupgrade image definitions
Paweł Owoc [Thu, 15 Feb 2024 20:33:28 +0000 (21:33 +0100)]
qualcommax: ipq807x: remove duplicated sysupgrade image definitions

Image sysupgrade.bin is defined by default and there is no need to define it.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
9 months agoqualcommax: ipq807x: fix variable definition
Paweł Owoc [Tue, 16 Jan 2024 22:14:58 +0000 (23:14 +0100)]
qualcommax: ipq807x: fix variable definition

Fix variable definition, prevent displaying warnings:
- warning: overriding recipe for target
- warning: ignoring old recipe for target

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
9 months agomac80211: add a fix for racy drv_sta_rc_update calls
Felix Fietkau [Wed, 21 Feb 2024 14:28:31 +0000 (15:28 +0100)]
mac80211: add a fix for racy drv_sta_rc_update calls

Fixes potential crash issues in mt76 and other drivers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
9 months agoramips: clean up useless dts partition labels
Shiji Yang [Sat, 17 Feb 2024 14:10:10 +0000 (22:10 +0800)]
ramips: clean up useless dts partition labels

The previous NVMEM eeprom conversions[1][2] left a lot of partition
labels that were no longer used. They can be removed now.

[1] https://github.com/openwrt/openwrt/pull/13584
[2] https://github.com/openwrt/openwrt/pull/13587

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
9 months agorockchip: add Radxa CM3 IO board support
Marius Durbaca [Tue, 20 Feb 2024 14:34:43 +0000 (14:34 +0000)]
rockchip: add Radxa CM3 IO board support

Hardware
--------
RockChip RK3566 ARM64 (4 cores)
- up to 8GB LPDDR4X
- 1x HDMI,
- 2x MIPI DSI
- 2x MIPI CSI2
- 1x eDP
- 1x PCIe card
- 2x SATA
- 2x USB 2.0 Host
- 1x USB 3.0
- 1x USB 2.0 OTG
- 10/100/1000 Base-T
- microSD slot
- 40-pin GPIO expansion header
- 12V DC

Radxa CM3 needs to mount on top of this IO board in order to create
complete Radxa CM3 IO board platform.

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

Reviewed-by: Tianling Shen <cnsztl@immortalwrt.org>
Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
9 months agouboot-rockchip: add Radxa CM3 IO board support
Marius Durbaca [Tue, 20 Feb 2024 14:33:11 +0000 (14:33 +0000)]
uboot-rockchip: add Radxa CM3 IO board support

Add support for the Radxa CM3 IO board.

Reviewed-by: Tianling Shen <cnsztl@immortalwrt.org>
Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
9 months agorkbin: add rk3566 atf/tpl blobs
Marius Durbaca [Mon, 19 Feb 2024 18:33:24 +0000 (18:33 +0000)]
rkbin: add rk3566 atf/tpl blobs

Currently there are no atf/tpl blobs for rk3566 SoCs
so this commit adds the prebuilt firmware from the vendor.

Signed-off-by: Marius Durbaca <mariusd84@gmail.com>
9 months agomac80211: add AQL support for broadcast/multicast packets
Felix Fietkau [Fri, 9 Feb 2024 19:47:39 +0000 (20:47 +0100)]
mac80211: add AQL support for broadcast/multicast packets

Should improve performance/reliability with lots of mcast packets

Signed-off-by: Felix Fietkau <nbd@nbd.name>