openwrt/staging/blocktrron.git
10 months agouboot-mediatek: mt7988: set rootdisk according to boot device
Daniel Golle [Tue, 5 Dec 2023 04:10:31 +0000 (04:10 +0000)]
uboot-mediatek: mt7988: set rootdisk according to boot device

If nodes /chosen/rootdisk-${bootdevice} exists, set /chosen/rootdisk
phandle according to boot device selected by the bootstrap pins.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agouboot-mediatek: fix MMC erase timeout
Daniel Golle [Tue, 5 Dec 2023 04:08:13 +0000 (04:08 +0000)]
uboot-mediatek: fix MMC erase timeout

When erasing large amounts of blocks at once this can take a long
time on slow cards. Instead of a fixed timeout, wait longer if more
blocks are being erased.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agouboot-mediatek: add basic build for ZBT-WG3526 (MT7621, 16M SPI-NOR)
Daniel Golle [Tue, 9 Aug 2022 22:59:50 +0000 (00:59 +0200)]
uboot-mediatek: add basic build for ZBT-WG3526 (MT7621, 16M SPI-NOR)

Add basic U-Boot drop-in replacement compatible with the flash layout
of the vendor loader of the Zbtlink WG3526 (16M) MT7621 router board.
The idea here is a to have a reference build of uboot-mediatek also for
a simple MIPS boards more popular than MT7621 RFB.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: add patch for xsphy driver to support pcie2 on MT7988
Daniel Golle [Fri, 8 Dec 2023 01:04:39 +0000 (01:04 +0000)]
mediatek: add patch for xsphy driver to support pcie2 on MT7988

Import patch from MediaTek SDK which allows using the third
PCIe host controller of the MT7988 SoC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: dts: mt7988: add uart1 and uart2
Daniel Golle [Tue, 13 Feb 2024 05:32:49 +0000 (05:32 +0000)]
mediatek: dts: mt7988: add uart1 and uart2

Add device tree nodes for uart1 and uart2 of the MT7988 SoC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: pinctrl-mt7988: add additional uart1_2_lite group
Daniel Golle [Tue, 13 Feb 2024 05:30:24 +0000 (05:30 +0000)]
mediatek: pinctrl-mt7988: add additional uart1_2_lite group

Add UART pinctrl group for using only pins 80 and 81 for uart1.
This is needed on the BPi-R4 as RTS/CTS signals are used for other
on-board functions.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: pinctrl-mt7988: add pinconf map
Daniel Golle [Thu, 25 Jan 2024 01:22:10 +0000 (01:22 +0000)]
mediatek: pinctrl-mt7988: add pinconf map

Add pull-up/pull-down configuration for pins of MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: switch to pending XFI 10G Ethernet drivers
Daniel Golle [Sun, 28 Jan 2024 03:55:15 +0000 (03:55 +0000)]
mediatek: switch to pending XFI 10G Ethernet drivers

Replace previous patch adding paths and SerDes modes with patch series
pending upstream adding dedicated drivers for XFI T-PHY and USXGMII PCS,
extends LynxI PCS to be a standalone platform driver and as a consequence
makes much less changes to the actual Ethernet driver mtk_eth_soc.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: backport a hell of thermal commits
Daniel Golle [Sun, 28 Jan 2024 03:46:58 +0000 (03:46 +0000)]
mediatek: backport a hell of thermal commits

Backport almost 50 commits from upstream Linux to improve thermal
drivers for MediaTek SoCs and add new LVTS driver for MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: replace mt7988 clk files with accepted patches
Daniel Golle [Sun, 28 Jan 2024 03:45:53 +0000 (03:45 +0000)]
mediatek: replace mt7988 clk files with accepted patches

Replace clock drivers for MT7988 with backported upstream commits.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: backport phylink changes from mainline Linux
Daniel Golle [Sun, 28 Jan 2024 03:36:40 +0000 (03:36 +0000)]
kernel: backport phylink changes from mainline Linux

Let's pick a bunch of useful phylink changes which allow us to keep
drivers in sync with mainline Linux.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agomediatek: switch to Linux version 6.1
Daniel Golle [Mon, 4 Dec 2023 23:41:39 +0000 (23:41 +0000)]
mediatek: switch to Linux version 6.1

Drop support for Linux 5.15 and switch to Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agopackage: add fitblk util to release /dev/fit* devices
Daniel Golle [Tue, 13 Jun 2023 14:32:15 +0000 (15:32 +0100)]
package: add fitblk util to release /dev/fit* devices

Add minimalistic tool to allow releasing /dev/fit* devices which is
needed on sysupgrade when using the fitblk driver.
The package is hidden in menuconfig, it should only be selected by
adding it to the default package selection of boards using it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: add pending fitblk uImage.FIT sub-image block driver
Daniel Golle [Tue, 5 Dec 2023 00:20:42 +0000 (00:20 +0000)]
kernel: add pending fitblk uImage.FIT sub-image block driver

Add 'fitblk' driver to replace the rejected/deprecated uImage.FIT
partition parser.
To use the new driver, add phandle /chosen/rootdisk and point it to
the MTD partition, UBI volume or block device holding the uImage.FIT.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: import pending patches adding support for NVMEM on UBI and MMC
Daniel Golle [Mon, 4 Dec 2023 23:48:40 +0000 (23:48 +0000)]
kernel: import pending patches adding support for NVMEM on UBI and MMC

Similar to supporting nvmem-layouts on MTD devices, also allow referencing
UBI and MMC devices in DT.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: allow skipping deprecated uImage.FIT partition parser
Daniel Golle [Fri, 24 Nov 2023 12:22:27 +0000 (12:22 +0000)]
kernel: allow skipping deprecated uImage.FIT partition parser

In order to allow gradually migrating the boards currently using the
uImage.FIT partition (deprecated/rejected) parser to the new fitblk
driver, skip the partition parser code in case the new fitblk driver
(which serves the same purpose) is used.

As an indicator for the use of the new fitblk driver, check if the
/chosen/rootdisk property is present in the Device Tree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: move uImage.FIT partition parser to mediatek target
Daniel Golle [Mon, 4 Dec 2023 23:25:12 +0000 (23:25 +0000)]
kernel: move uImage.FIT partition parser to mediatek target

The partition parser approach has been rejected upstream, it will be
replaced by a small block driver which is the solution suggestion by
upstream maintainers.
As the partition parser has only been used by the mediatek target, as
a first step, move it there.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agokernel: 6.1: backport UBI device model improvements
Daniel Golle [Tue, 5 Dec 2023 03:44:05 +0000 (03:44 +0000)]
kernel: 6.1: backport UBI device model improvements

Backport two commits from Linux 6.3 wiring up device node parents of
ubi devices (pointing to their MTD parent) as well as ubiblock devices
(poiting to their parent UBI volume).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agoarm-trusted-firmware-mediatek: use UBI on new NAND targets
Daniel Golle [Fri, 12 Jan 2024 02:36:59 +0000 (02:36 +0000)]
arm-trusted-firmware-mediatek: use UBI on new NAND targets

Make use of recently added UBI support in MediaTek's ARM
TrustedFirmware-A on new MT7988 SoC.

Load fip from static UBI volume instead of fixed offset on SPIM-NAND
and SNFI.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agoarm-trusted-firmware-mediatek: set HIDDEN=y
Daniel Golle [Fri, 12 Jan 2024 02:40:20 +0000 (02:40 +0000)]
arm-trusted-firmware-mediatek: set HIDDEN=y

Hide arm-trusted-firmware-mediatek packages from interactive config.
Exposing them only causes confusion and needed variants are anyway
selected as dependencies by uboot-mediatek packages.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agoipq807x: add support for CMCC RM2-6
Chukun Pan [Sat, 26 Aug 2023 15:29:20 +0000 (23:29 +0800)]
ipq807x: add support for CMCC RM2-6

Hardware specifications:
  SoC: Qualcomm IPQ8070A
  RAM: 512MB of DDR3
  Flash: 256MB Micron NAND
  Ethernet: 2x 1G RJ45 port
  WiFi1: QCN5024 2x2 2.4GHz
  WiFi2: QCN5054 2x2 5GHz
  Fan: 1x GPIO controlled
  Button: Reset, WPS

Flash instructions:
  Upload factory.bin in stock firmware's upgrade page.

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Reviewed-by: Robert Marko <robimarko@gmail.com>
10 months agoqualcommax: ipq807x: MX4200 convert qca807x PHY to new implementation
Paweł Owoc [Wed, 14 Feb 2024 13:16:09 +0000 (14:16 +0100)]
qualcommax: ipq807x: MX4200 convert qca807x PHY to new implementation

Convert qca807x PHY to new implementation like for other devices.

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Reviewed-by: Robert Marko <robimarko@gmail.com>
10 months agoqca-ssdk: drop not used Malibu PHY patch
Robert Marko [Tue, 13 Feb 2024 20:47:54 +0000 (21:47 +0100)]
qca-ssdk: drop not used Malibu PHY patch

Now that Malibu (QCA807x) PHY-s use an upstream driver we dont need support
for defining address of the first PHY in the package so drop the patch.

Signed-off-by: Robert Marko <robimarko@gmail.com>
10 months agoqualcommax: remove usage of malibu_first_phy_addr
Robert Marko [Tue, 13 Feb 2024 20:48:52 +0000 (21:48 +0100)]
qualcommax: remove usage of malibu_first_phy_addr

Now that Malibu (QCA807x) PHY is using the upstream driver, we dont need
support to define address of the first PHY in package, so remove the
malibu_first_phy_addr DTS property.

Signed-off-by: Robert Marko <robimarko@gmail.com>
10 months agogeneric: 6.1: use upstreamed QCA807x fixup
Robert Marko [Thu, 15 Feb 2024 12:00:01 +0000 (13:00 +0100)]
generic: 6.1: use upstreamed QCA807x fixup

Now that QCA807x interface mode check was upstreamed, use the upstreamed
version and mark it as such.

Signed-off-by: Robert Marko <robimarko@gmail.com>
10 months agotools/expat: fix build error with ccache
Koen Vandeputte [Thu, 15 Feb 2024 10:52:29 +0000 (11:52 +0100)]
tools/expat: fix build error with ccache

Disable compilation of separate tests as it causes
a build error when combined with ccache

Fixes: 4a3f430d72 ("tools/expat: update to 2.6.0")
Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
10 months agokernel: fix bidirectional hardware flow offload
Felix Fietkau [Wed, 14 Feb 2024 15:21:36 +0000 (16:21 +0100)]
kernel: fix bidirectional hardware flow offload

Fix a bug that was introduced upstream

Signed-off-by: Felix Fietkau <nbd@nbd.name>
10 months agougps: update to Git HEAD (2024-02-14)
Petr Štetiar [Wed, 14 Feb 2024 10:02:25 +0000 (10:02 +0000)]
ugps: update to Git HEAD (2024-02-14)

69561a074d6f ugps: add quality measurement parameters

Signed-off-by: Petr Štetiar <ynezz@true.cz>
10 months agowifi-scripts: create the wlan object in board_data if not present
Felix Fietkau [Tue, 13 Feb 2024 18:24:53 +0000 (19:24 +0100)]
wifi-scripts: create the wlan object in board_data if not present

Fixes an error in wifi detection

Signed-off-by: Felix Fietkau <nbd@nbd.name>
10 months agoomap: drop kernel 5.15
Andre Heider [Thu, 8 Feb 2024 11:12:02 +0000 (12:12 +0100)]
omap: drop kernel 5.15

One version is sufficient for this minor target.

Signed-off-by: Andre Heider <a.heider@gmail.com>
10 months agoomap: switch to kernel 6.1
Andre Heider [Thu, 8 Feb 2024 09:38:14 +0000 (10:38 +0100)]
omap: switch to kernel 6.1

Lightly tested on boneblack, no fallout observed so far.

Signed-off-by: Andre Heider <a.heider@gmail.com>
10 months agoomap: run kernel_oldconfig for 6.1
Andre Heider [Thu, 8 Feb 2024 09:38:01 +0000 (10:38 +0100)]
omap: run kernel_oldconfig for 6.1

No manual changes done.

Signed-off-by: Andre Heider <a.heider@gmail.com>
10 months agoomap: copy kernel config for 6.1
Andre Heider [Thu, 8 Feb 2024 09:32:24 +0000 (10:32 +0100)]
omap: copy kernel config for 6.1

Unmodified copy to ease reviewing follow-up changes.

Signed-off-by: Andre Heider <a.heider@gmail.com>
10 months agoucode: update to Git HEAD (2024-02-13)
Jo-Philipp Wich [Tue, 13 Feb 2024 16:16:04 +0000 (17:16 +0100)]
ucode: update to Git HEAD (2024-02-13)

7e5830edfb38 nl80211: fix datatype of NL80211_BAND_IFTYPE_ATTR_HE_CAP_{MAC,PHY} attrs
5c8fd34bac42 nl80211: fix parsing of NL80211_BAND_ATTR_VHT_MCS_SET attribute
e8d4e4fe967d nl80211: fix decoding of NL80211_BAND_IFTYPE_ATTR_HE_CAP_MCS_SET attribute
30a3f7ad0433 rtnl: store callback in listener registry only on success
9cbe8294909f rtnl: optimize reception of rtnl events
534417132e18 rtnl: increase event socket rx buffer size limit to 1 MiB
3f9811d2f7b7 compiler: close upvalues on loop control statements

Fixes: https://github.com/jow-/ucode.git/issues/187
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
10 months agolibxml2: update to 2.12.5
Nick Hainke [Mon, 12 Feb 2024 22:48:46 +0000 (23:48 +0100)]
libxml2: update to 2.12.5

Release Notes:
https://gitlab.gnome.org/GNOME/libxml2/-/releases/v2.12.5

Fixes: CVE-2024-25062
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agomediatek: filogic: fixup mt7988a DTS coding style
Rafał Miłecki [Tue, 13 Feb 2024 10:27:13 +0000 (11:27 +0100)]
mediatek: filogic: fixup mt7988a DTS coding style

Use coding style as described as preferred in upstream DTS Coding Style.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
10 months agomediatek: filogic: reorder mt7988a DTS properties
Rafał Miłecki [Tue, 13 Feb 2024 10:22:06 +0000 (11:22 +0100)]
mediatek: filogic: reorder mt7988a DTS properties

Use order described as preferred in DTS Coding Style. Mostly just move
"compatible", "reg", "ranges" and "status" properties.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
10 months agobinutils: update to 2.42
Nick Hainke [Wed, 7 Feb 2024 11:52:46 +0000 (12:52 +0100)]
binutils: update to 2.42

Refresh patch:
- 001-replace-attribute_const.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agobase-files: move uci_set_poe() to uci-defaults.sh
Sander Vanheule [Wed, 24 Jan 2024 10:20:08 +0000 (11:20 +0100)]
base-files: move uci_set_poe() to uci-defaults.sh

PoE devices in the realtek target have the possibility to add PSE info
to the board description via 02_network. Make this available for all
targets, by moving the uci_set_poe() function to the globally available
uci-default.sh script.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
10 months agorealtek: move port filtering out of uci_set_poe()
Sander Vanheule [Wed, 24 Jan 2024 09:49:41 +0000 (10:49 +0100)]
realtek: move port filtering out of uci_set_poe()

uci_set_poe() now performs two duties: filtering the list of device
ports to exclude non-PoE ports, and generating the PoE related device
config.

Extract the port filtering to an external function, which is made a bit
more readable by the use of 'sort -V [-r] | uniq -u' to filter duplicate
entries out of a (reverse) version sorted list.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
10 months agorealtek: add support for chassis fan on ZyXEL XGS1250-12
Tobias Schramm [Tue, 6 Feb 2024 18:31:04 +0000 (19:31 +0100)]
realtek: add support for chassis fan on ZyXEL XGS1250-12

The ZyXEL XGS1250-12 has a chassis fan. The fan is positioned perfectly to
provide additional cooling to the Aquantia NBase-T phys. Testing has shown
that the phys can reach temperatures upwards of 72 degrees Celsius quite
easily at about 20 degrees Celsius ambient.
Support the chassis fan to give the phys a bit of extra cooling.

Signed-off-by: Tobias Schramm <tobias@t-sys.eu>
10 months agoRevert "build: align SOURCE path for build system and SDK"
Daniel Golle [Mon, 12 Feb 2024 19:02:48 +0000 (19:02 +0000)]
Revert "build: align SOURCE path for build system and SDK"

This reverts commit 131e41614dcfae1f995e55330ada6573ca244ba3.
Sadly it makes menuconfig fail with
tmp/.config-package.in:171: glob failed: No files found "feeds/base/utils/busybox/Config.in"
make: *** [/usr/src/openwrt/include/toplevel.mk:136: menuconfig] Error 1

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
10 months agobuild: align SOURCE path for build system and SDK
Paul Spooren [Mon, 12 Feb 2024 15:59:50 +0000 (16:59 +0100)]
build: align SOURCE path for build system and SDK

Building a package in the build system or the SDK results in different
values for the `SOURCE` property, it's either `packages/<package name>`
or `feeds/base/<package name>`. The reason is that the SDK handles
`openwrt.git` as an external feed called while the build system contains
the *base* packages directly.

Since packages created with either method are (ideally) the same (bit
for bit), align the content of SOURCE. To do so this commit creates a
symlink from `feeds/base` to `$(TOPDIR)/package` and adopts the SOURCE
when building from inside the build system.

Signed-off-by: Paul Spooren <mail@aparcar.org>
10 months agogeneric: 6.1: fixup QCA807x upstream PHY
Robert Marko [Mon, 12 Feb 2024 11:35:58 +0000 (12:35 +0100)]
generic: 6.1: fixup QCA807x upstream PHY

Currently, we are checking whether the PHY package mode matches the
individual PHY interface modes at PHY package probe time, but at that time
we only know the PHY package mode and not the individual PHY interface
modes as of_get_phy_mode() that populates it will only get called once the
netdev to which PHY-s are attached to is being probed and thus this check
will always fail and return -EINVAL.

So, lets move this check to .config_init_once as at that point individual
PHY interface modes should be populated.

Fixes: 16364e410039 ("generic: 6.1: backport QCA807x PHY patches")
Signed-off-by: Robert Marko <robimarko@gmail.com>
10 months agotools/expat: update to 2.6.0
Nick Hainke [Mon, 12 Feb 2024 00:02:06 +0000 (01:02 +0100)]
tools/expat: update to 2.6.0

Changelog:
https://github.com/libexpat/libexpat/blob/R_2_6_0/expat/Changes

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agotools/ccache: update to 4.9.1
Nick Hainke [Mon, 12 Feb 2024 00:14:11 +0000 (01:14 +0100)]
tools/ccache: update to 4.9.1

Release Notes:
https://ccache.dev/releasenotes.html#_ccache_4_9_1

Manually refresh patch:
- 100-honour-copts.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: mt76x8: drop AT803X phy driver
Shiji Yang [Sat, 10 Feb 2024 03:30:54 +0000 (11:30 +0800)]
ramips: mt76x8: drop AT803X phy driver

This Qualcomm Gigabit phy driver was mistakenly added because
MT76x8 does not support external phy, and it only supports max
100M full duplex speed.

Fixes: cadf5171074f ("ralink: add support for mt7628")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
10 months agoqca-ssdk: drop deprecated Xiaomi LEDs quirk patch
Christian Marangi [Wed, 15 Nov 2023 00:36:35 +0000 (01:36 +0100)]
qca-ssdk: drop deprecated Xiaomi LEDs quirk patch

Drop deprecated Xiaomi LEDs quirk patches as they are not needed anymore
as LEDs are now supported by the upstream qca807x driver.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: apply special PHY LEDs configuration for Xiaomi AX9000
Christian Marangi [Wed, 15 Nov 2023 00:31:14 +0000 (01:31 +0100)]
qualcommax: apply special PHY LEDs configuration for Xiaomi AX9000

Xiaomi AX9000 apply a special PHY LEDs configuration where the unique
green LED for each qca807x PHY port is turned on also on 1000Mbps link.

Apply this special configuration to reflect original implementation.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: apply special PHY LEDs configuration for Xiaomi AX3600
Christian Marangi [Wed, 15 Nov 2023 00:35:04 +0000 (01:35 +0100)]
qualcommax: apply special PHY LEDs configuration for Xiaomi AX3600

Xiaomi AX3600 apply a special PHY LEDs configuration where the unique
green LED for each qca807x PHY port is turned on also on 1000Mbps link.

Apply this special configuration to reflect original implementation.

Also enable CONFIG_PHYLIB_LEDS to actually expose the PHY LEDs if
defined in DT.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: convert qca807x PHY to PHY package implementation
Christian Marangi [Fri, 17 Nov 2023 16:52:42 +0000 (17:52 +0100)]
qualcommax: convert qca807x PHY to PHY package implementation

Convert every qca807x PHY definition in DT to new PHY package
implementation to correctly support applying fixup for the correct PHY
mode.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: set correct PHY mode for port 0-4
Christian Marangi [Tue, 14 Nov 2023 23:59:59 +0000 (00:59 +0100)]
qualcommax: set correct PHY mode for port 0-4

Port 0-4 have the mode set to SGMII instead of PSGMII. Now that we use
the 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 ipq8074-ess.dtsi.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqca-ssdk: add patch to support detection of PSGMII mode for PHY
Christian Marangi [Wed, 15 Nov 2023 00:04:06 +0000 (01:04 +0100)]
qca-ssdk: add patch to support detection of PSGMII mode for PHY

If a PHY doesn't use the integrated driver, SSDK use poll the phydev to
get the real PHY mode. qca807x use PSGMII as PHY mode and this specific
mode is not detected in qca SSDK while used in the entire driver.

Add support for it in the hsl_port_phydev_interface_mode_status_get
function used to translate PHY mode to the internal SSDK value.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: enable qca807x PHY driver
Christian Marangi [Wed, 15 Nov 2023 00:08:37 +0000 (01:08 +0100)]
qualcommax: enable qca807x PHY driver

IPQ807x have integrated qca8074 PHY supported by the upstream qca807x driver.

Enable it to use it instead of the downstream qca SSDK variant.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqca-ssdk: disable Malibu PHY in favor of upstream version
Christian Marangi [Wed, 15 Nov 2023 00:07:18 +0000 (01:07 +0100)]
qca-ssdk: disable Malibu PHY in favor of upstream version

Disable Malibu PHY driver in Qca SSDK in favor of the upstream version.
The same workaround are applied and the version upstream is just a drop
in replacement and is well tested from the ipq40xx target.

Also using the upstream version permits further support for LEDs.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoipq40xx: adapt to new Upstream QCA807x PHY driver
Christian Marangi [Sat, 10 Feb 2024 22:39:32 +0000 (23:39 +0100)]
ipq40xx: adapt to new Upstream QCA807x PHY driver

Adapt patches to new Upstream QCA807x PHY driver.

Rework the PHY patch to new PHY Package nodes.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agogeneric: 6.1: backport QCA807x PHY patches
Christian Marangi [Sat, 10 Feb 2024 18:27:33 +0000 (19:27 +0100)]
generic: 6.1: backport QCA807x PHY patches

Backport QCA807x PHY patches merged upstream that introduce the new
concept of PHY package.

Also add in generic config the new Kconfig CONFIG_QCA807X_PHY.

All affected patch automatically refreshed with make
target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agogeneric: 6.1: move LEDs netdev trigger patch from pending to backport
Christian Marangi [Sun, 11 Feb 2024 15:37:18 +0000 (16:37 +0100)]
generic: 6.1: move LEDs netdev trigger patch from pending to backport

Move LEDs netdev trigger patch from pending to backport as it has been
merged upstream.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agogeneric: 6.1: backport Aquantia PHY endianess patch
Christian Marangi [Sun, 11 Feb 2024 15:28:16 +0000 (16:28 +0100)]
generic: 6.1: backport Aquantia PHY endianess patch

Backport Aquantia PHY endianess patch. While the current implementation
works ok for Little-Endian targets, backport patch to prevent any kind
of malfunction if in the future we will have Big-Endian target with
Aquantia PHYs.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: fix wrong PHY node definition for Buffalo WXR-5950AX12
Christian Marangi [Sun, 11 Feb 2024 14:58:21 +0000 (15:58 +0100)]
qualcommax: fix wrong PHY node definition for Buffalo WXR-5950AX12

Commit d737ae99cb36 ("qualcommax: Fix Buffalo WXR-5950AX12 Ethernet
DTS") reverted the switch bmp to the original OEM definition and
added the malibu_first_phy_addr property.

Problem is that OEM bmp definition is wrong and actually doesn't make sense,
probably caused by copy-paste of the QCOM reference DTS without actually
setting real values. What actually fixed the regression was adding the
malibu_first_phy_addr as without it the MALIBU PHY was actually not
correctly configured and the Aquantia PHY were actually configured as
MALIBU PHY.

Fix all these wrong PHY definition.

The BPM is reverted and the following fixes are applied:
- Drop ESS_PORT1 as it's not actually attached in HW.
- Move ESS_PORT5 AGAIN from lan to wan. This refer to the first Aquantia
  PHY that is labelled "wan"
- Move ESS_PORT6 AGAIN from wan to lan. This refer to the second
  Aquantia PHY that is labelled "lan1".

Also PHY tag in MDIO node are renumbered to start from 0 following the
tagging standard used also in other dts and the not attached one (reg
0x18 and reg 0x1c) are correctly dropped.

Definition for port@1 in phyinfo is dropped as it doesn't exist.

dp nodes are updated to reference the new PHY tag numbering.

Fixes: d737ae99cb36 ("qualcommax: Fix Buffalo WXR-5950AX12 Ethernet DTS")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agomediatek: fix failsafe ethernet for NWA50AX Pro
David Bauer [Sun, 11 Feb 2024 13:44:08 +0000 (14:44 +0100)]
mediatek: fix failsafe ethernet for NWA50AX Pro

The NWA50AX Pro only has a eth0 interface for its only ethernet port.
Use this port for preinit.

Fixes non-working network in failsafe mode.

Signed-off-by: David Bauer <mail@david-bauer.net>
10 months agoramips: mtk_eth_soc: fix NULL pointer dereference for syncp
Shiji Yang [Sat, 10 Feb 2024 12:35:46 +0000 (20:35 +0800)]
ramips: mtk_eth_soc: fix NULL pointer dereference for syncp

u64_stats_init() has been unable to handle NULL pointer since
6.1 kernel. This patch fixes kernel oops on mt76x8 and rt305x
sub-target.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
10 months agouboot-envtools: backport some usefull patches from v2024.04-rc1
Shiji Yang [Sat, 10 Feb 2024 13:47:40 +0000 (13:47 +0000)]
uboot-envtools: backport some usefull patches from v2024.04-rc1

Highlights:
- Silence small page read warning.
- Autodetect NAND erase size and env sectors.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
10 months agoramips: hsdma-mtk: fix build on 5.15 kernel
Shiji Yang [Sun, 11 Feb 2024 03:50:32 +0000 (11:50 +0800)]
ramips: hsdma-mtk: fix build on 5.15 kernel

In the 5.15 kernel, we use the staging driver version instead of the
downstream file.

Fixes: 88d982e3bd87 ("ramips: 6.1: mt7621-dma: add hsdma driver to files")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
10 months agoramips: add support for 6.1 kernel
Nick Hainke [Fri, 26 May 2023 18:07:15 +0000 (20:07 +0200)]
ramips: add support for 6.1 kernel

Remove upstreamed patches:
- 000-v5.18-01-dt-bindings-reset-add-dt-binding-header-for-Mediatek.patch
- 000-v5.18-02-staging-mt7621-dts-align-resets-with-binding-documen.patch
- 001-v5.18-01-dt-bindings-clock-mediatek-mt7621-sysc-add-reset-cel.patch
- 001-v5.18-02-clk-ralink-make-system-controller-node-a-reset-provi.patch
- 002-v6.0-MIPS-ralink-mt7621-avoid-to-init-common-ralink-reset.patch
- 100-v5.16-PCI-mt7621-Add-MediaTek-MT7621-PCIe-host-controller-.patch
- 101-v5.17-PCI-mt7621-Rename-mt7621_pci_-to-mt7621_pcie_.patch
- 102-v5.17-PCI-mt7621-Declare-mt7621_pci_ops-static.patch
- 103-v5.17-PCI-mt7621-Move-MIPS-setup-to-pcibios_root_bridge_pr.patch
- 104-v5.17-PCI-mt7621-Drop-of_match_ptr-to-avoid-unused-variabl.patch
- 105-v5.17-PCI-mt7621-Remove-unused-function-pcie_rmw.patch
- 106-v5.17-PCI-Let-pcibios_root_bridge_prepare-access-bridge-wi.patch
- 107-v6.2-PCI-mt7621-Add-sentinel-to-quirks-table.patch
- 108-v6.3-PCI-mt7621-Delay-phy-ports-initialization.patch

Manually refresh:
- 006-v6.5-mips-ralink-introduce-commonly-used-remap-node-funct.patch
- 320-MIPS-add-support-for-buggy-MT7621S-core-detection.patch
- 405-mtd-spi-nor-Add-support-for-BoHong-bh25q128as.patch
- 410-mtd-rawnand-add-driver-support-for-MT7621-nand-flash.patch
- 805-pinctrl-AW9523.patch
- 825-i2c-MIPS-adds-ralink-I2C-driver.patch
- 830-mmc-MIPS-ralink-add-sdhci-for-mt7620a-SoC.patch

Automatically refresh:
- 200-add-ralink-eth.patch
- 314-MIPS-add-bootargs-override-property.patch
- 315-owrt-hack-fix-mt7688-cache-issue.patch
- 700-net-ethernet-mediatek-support-net-labels.patch
- 720-Revert-net-phy-simplify-phy_link_change-arguments.patch
- 721-NET-no-auto-carrier-off-support.patch
- 800-dmaengine-mediatek-add-HSDMA-support-for-mt7621.patch
- 802-GPIO-MIPS-ralink-add-gpio-driver-for-ralink-SoC.patch
- 810-uvc-add-iPassion-iP2970-support.patch
- 821-SPI-ralink-add-Ralink-SoC-spi-driver.patch
- 835-asoc-add-mt7620-support.patch
- 840-serial-add-ugly-custom-baud-rate-hack.patch
- 845-pwm-add-mediatek-support.patch
- 850-awake-rt305x-dwc2-controller.patch

Tested-by: Andre Heider <a.heider@gmail.com> # netgear,wac124
Tested-by: Andrey Jr. Melnikov <temnota.am@gmail.com> # Xiaomi Mi Router 3G
Tested-by: Timo Dorfner <timo.capa@gmail.com> # mt7621/mir3g mt7621/rm2100
Reviewed-by: Shiji Yang <yangshiji66@qq.com>
Co-Developed-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: ralink: fix ethernet driver with 6.1
Mieczyslaw Nalewaj [Thu, 8 Feb 2024 21:13:50 +0000 (22:13 +0100)]
ramips: 6.1: ralink: fix ethernet driver with 6.1

Fixes errors in the form of:
  make[9]: Entering directory '/home/nick/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7620/linux-6.1.77'
    CC      drivers/net/ethernet/ralink/mtk_eth_soc.o
  drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_init':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1368:51: warning: passing argument 2 of 'of_get_mac_address' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   1368 |         of_get_mac_address(priv->dev->of_node, dev->dev_addr);
        |                                                ~~~^~~~~~~~~~
  In file included from drivers/net/ethernet/ralink/mtk_eth_soc.c:26:
  ./include/linux/of_net.h:16:59: note: expected 'u8 *' {aka 'unsigned char *'} but argument is of type 'const unsigned char *'
     16 | extern int of_get_mac_address(struct device_node *np, u8 *mac);
        |                                                       ~~~~^~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_probe':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1641:9: error: too many arguments to function 'netif_napi_add'
   1641 |         netif_napi_add(netdev, &priv->rx_napi, fe_poll, napi_weight);
        |         ^~~~~~~~~~~~~~
  In file included from ./include/linux/etherdevice.h:21,
                   from drivers/net/ethernet/ralink/mtk_eth_soc.c:21:
  ./include/linux/netdevice.h:2611:1: note: declared here
   2611 | netif_napi_add(struct net_device *dev, struct napi_struct *napi,
        | ^~~~~~~~~~~~~~

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
[split commit and rewrite commit message]
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: spi: fix patch by replacing cs_gpio with cs_gpiod
Mieczyslaw Nalewaj [Thu, 8 Feb 2024 20:57:12 +0000 (21:57 +0100)]
ramips: 6.1: spi: fix patch by replacing cs_gpio with cs_gpiod

Upstream commit f48dc6b96649 ("spi: Retire legacy GPIO handling") [0]
removed support using GPIOs as chip select. Fix it by replacing cs_gpio
with cs_gpiod.

[0] - https://github.com/torvalds/linux/commit/f48dc6b9664963107e500aecfc2f4df27dc5afb6

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
[split commit and rewrite commit message]
Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: ralink: fix const warning in the ethernet driver
Nick Hainke [Thu, 8 Feb 2024 13:48:50 +0000 (14:48 +0100)]
ramips: 6.1: ralink: fix const warning in the ethernet driver

Change fe_hw_set_macaddr and the set_mac parameter to const to fix
errors in the form of:

   drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_set_mac_address':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:174:53: error: passing argument 2 of 'priv->soc->set_mac' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
    174 |                         priv->soc->set_mac(priv, dev->dev_addr);
        |                                                  ~~~^~~~~~~~~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c:174:53: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
  drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_hw_init':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1220:45: error: passing argument 2 of 'priv->soc->set_mac' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
   1220 |                 priv->soc->set_mac(priv, dev->dev_addr);
        |                                          ~~~^~~~~~~~~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1220:45: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1222:44: error: passing argument 2 of 'fe_hw_set_macaddr' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
   1222 |                 fe_hw_set_macaddr(priv, dev->dev_addr);
        |                                         ~~~^~~~~~~~~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c:155:75: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
    155 | static inline void fe_hw_set_macaddr(struct fe_priv *priv, unsigned char *mac)
        |                                                            ~~~~~~~~~~~~~~~^~~
  cc1: all warnings being treated as errors

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: pwm: rewrite mtk_pwm_ops to fix pwm driver
Nick Hainke [Thu, 8 Feb 2024 14:08:18 +0000 (15:08 +0100)]
ramips: 6.1: pwm: rewrite mtk_pwm_ops to fix pwm driver

Upstream dropped support for legacy driver [0]. Rewrite the driver like
the renesas pwm driver [1].

Fixes erros in the form of:
   make: *** [/__w/openwrt/openwrt/openwrt/include/toplevel.mk:232: target/compile] Error 1
  ====== Make errors from logs/target/linux/compile.txt ======
        |                   ^~~~~~~~~~~~~~
  drivers/pwm/pwm-mediatek-ramips.c:107:19: note: (near initialization for 'mtk_pwm_ops.free')
  drivers/pwm/pwm-mediatek-ramips.c:108:10: error: 'const struct pwm_ops' has no member named 'disable'
    108 |         .disable = mtk_pwm_disable,
        |          ^~~~~~~
  drivers/pwm/pwm-mediatek-ramips.c:108:20: error: initialization of 'int (*)(struct pwm_chip *, struct pwm_device *, struct pwm_capture *, long unsigned int)' from incompatible pointer type 'void (*)(struct pwm_chip *, struct pwm_device *)' [-Werror=incompatible-pointer-types]
    108 |         .disable = mtk_pwm_disable,
        |                    ^~~~~~~~~~~~~~~
  drivers/pwm/pwm-mediatek-ramips.c:108:20: note: (near initialization for 'mtk_pwm_ops.capture')
  cc1: all warnings being treated as errors

[0] - https://github.com/torvalds/linux/commit/0829c35dc5346e90f428de61896362b51ab58296
[1] - https://github.com/torvalds/linux/commit/ec00cd5e63f05461ab48128775c73c851c3c2b18

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: dai_dma: drop dma_data->slave_id in mt7620 support patch
Nick Hainke [Thu, 8 Feb 2024 13:15:40 +0000 (14:15 +0100)]
ramips: 6.1: dai_dma: drop dma_data->slave_id in mt7620 support patch

Upstream dropped slave_id in dai_dma [0]. So drop it also in the mt7620
support patch.

Fixes errors in the form of:
   sound/soc/ralink/ralink-i2s.c: In function 'ralink_i2s_init_dma_data':
  sound/soc/ralink/ralink-i2s.c:452:17: error: 'struct snd_dmaengine_dai_dma_data' has no member named 'slave_id'
    452 |         dma_data->slave_id = i2s->txdma_req;
        |                 ^~
  sound/soc/ralink/ralink-i2s.c:462:17: error: 'struct snd_dmaengine_dai_dma_data' has no member named 'slave_id'
    462 |         dma_data->slave_id = i2s->rxdma_req;
        |                 ^~

[0] - https://lore.kernel.org/r/20211122222203.4103644-3-arnd@kernel.org

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: pinctrl: fix compilation with 6.1
Nick Hainke [Fri, 26 May 2023 19:01:01 +0000 (21:01 +0200)]
ramips: 6.1: pinctrl: fix compilation with 6.1

Upstream changed in ed5c2f5fd10d ("i2c: Make remove callback return void")
the i2c driver's remove function to return no value. Adapt the driver code
to compile with 5.15 and 6.1 like it is done in other projects [0].

Fixes errors in the form of:
  make[8]: Leaving directory '/home/nick/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-6.1.29'
    CC      drivers/pinctrl/pinctrl-aw9523.o
  drivers/pinctrl/pinctrl-aw9523.c:1117:19: error: initialization of 'void (*)(struct i2c_client *)' from incompatible pointer type 'int (*)(struct i2c_client *)' [-Werror=incompatible-pointer-types]
 1117 |         .remove = aw9523_remove,
      |                   ^~~~~~~~~~~~~
  drivers/pinctrl/pinctrl-aw9523.c:1117:19: note: (near initialization for 'aw9523_driver.remove')
  cc1: all warnings being treated as errors

[0] - https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/10/diffs

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: mt7621-dma: apply dma handle error from device_reset patch
Nick Hainke [Fri, 26 May 2023 18:04:25 +0000 (20:04 +0200)]
ramips: 6.1: mt7621-dma: apply dma handle error from device_reset patch

Apply the "109-drivers-mt7621-dma-handle-error-from-device_reset.patch"
directly on the downstream maintained dma driver.

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: mt7621-dma: add hsdma driver to files
Nick Hainke [Fri, 26 May 2023 18:01:38 +0000 (20:01 +0200)]
ramips: 6.1: mt7621-dma: add hsdma driver to files

Commit 87dd67f496f7 ("staging: mt7621-dma: remove driver from tree")
removed the mt7621-dma driver. Maintain the driver downstream in the
folder of the other mediatek drivers.

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agoramips: 6.1: copy config and patches
Nick Hainke [Fri, 26 May 2023 16:50:15 +0000 (18:50 +0200)]
ramips: 6.1: copy config and patches

Copy config and patches from 5.15. This simplifies reviewing process.

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agotoolchain: glibc: Update glibc 2.37 to recent HEAD
Hauke Mehrtens [Wed, 7 Feb 2024 20:30:52 +0000 (21:30 +0100)]
toolchain: glibc: Update glibc 2.37 to recent HEAD

512e30fd56 Revert "elf: Remove unused l_text_end field from struct link_map"
55d3dfadf8 Revert "elf: Always call destructors in reverse constructor order (bug 30785)"
8e20aedfd7 Revert "elf: Move l_init_called_next to old place of l_text_end in link map"
5014fb12f4 elf: Fix wrong break removal from 8ee878592c
874d418697 elf: Fix TLS modid reuse generation assignment (BZ 29039)
8bd00f5b6d x86-64: Fix the dtv field load for x32 [BZ #31184]
d052665f35 x86-64: Fix the tcb field load for x32 [BZ #31185]
0ca9ba3a9e NEWS: Mention bug fixes for 29039/30745/30843
9b90e763db getaddrinfo: translate ENOMEM to EAI_MEMORY (bug 31163)
bd9f194c34 libio: Check remaining buffer size in _IO_wdo_write (bug 31183)
8b8a3f0aaf sunrpc: Fix netname build with older gcc
97a4292aa4 syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6246)
67062eccd9 syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6779)
2b58cba076 syslog: Fix integer overflow in __vsyslog_internal (CVE-2023-6780)
1d8bb622df i386: Use pthread_barrier for synchronization on tst-bz21269
32450f6e8d sysdeps: tst-bz21269: fix test parameter
f7e97cea20 sysdeps: tst-bz21269: handle ENOSYS & skip appropriately
d97929eadc sysdeps: tst-bz21269: fix -Wreturn-type
5bbe7e0da5 x86_64: Optimize ffsll function code size.
98ec3e004e sparc: Fix broken memset for sparc32 [BZ #31068]
2ce7abef67 sparc64: Remove unwind information from signal return stubs [BZ#31244]
18da90677c sparc: Fix sparc64 memmove length comparison (BZ 31266)
8b849f70b3 sparc: Remove unwind information from signal return stubs [BZ #31244]
eee7525d35 arm: Remove wrong ldr from _dl_start_user (BZ 31339)

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
10 months agoqualcommax: refresh kernel patches
Christian Marangi [Fri, 9 Feb 2024 13:33:43 +0000 (14:33 +0100)]
qualcommax: refresh kernel patches

Refresh kernel patches changed from the just introduced ipq60xx new
subtarget.

Patch automatically refreshed with make target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqualcommax: move generic image recipes to target Makefile
Robert Marko [Sat, 14 Oct 2023 18:15:22 +0000 (20:15 +0200)]
qualcommax: move generic image recipes to target Makefile

These recipes are generic and will be used for other subtargets, so lets
move them to the target Makefile so they can reused.

Signed-off-by: Robert Marko <robimarko@gmail.com>
10 months agoqualcommax: add ipq60xx support
Mantas Pucka [Sat, 14 Oct 2023 17:36:38 +0000 (19:36 +0200)]
qualcommax: add ipq60xx support

Introduce support for the Qualcomm IPQ60xx SoC. WiFi support still has
to be handled and correctly fix hence this is currently marked as
source-only to have a solid base to progress on correct support of this
and hope Upstream QUIC publish newers ath11k drivers for this SoC.

Co-developed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Mantas Pucka <mantas@8devices.com>
[ improve commit description, add SoB for Robert, make it source-only ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agoqca-ssdk: add support for ipq60xx
Robert Marko [Sat, 14 Oct 2023 18:48:28 +0000 (20:48 +0200)]
qca-ssdk: add support for ipq60xx

IPQ60xx uses a different codename for SSDK, so lets pass the correct one
as otherwise SSDK asumes we are building for the old MIPS SoC-s.

Signed-off-by: Robert Marko <robimarko@gmail.com>
[ drop outdated commit description info ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agouboot-envtools: update to 2024.01
Nick Hainke [Mon, 29 Jan 2024 18:38:20 +0000 (19:38 +0100)]
uboot-envtools: update to 2024.01

Update to latest version.

Refresh patches:
- 002-Revert-tools-env-use-run-to-store-lockfile.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
10 months agowifi-scripts: fix fullmac phy detection
Felix Fietkau [Fri, 9 Feb 2024 11:18:57 +0000 (12:18 +0100)]
wifi-scripts: fix fullmac phy detection

Checking for AP_VLAN misdetects ath10k-ath12k as fullmac, because of software
crypto limitations. Check for monitor mode support instead, which is more
reliable.

Fixes: https://github.com/openwrt/openwrt/issues/14575
Signed-off-by: Felix Fietkau <nbd@nbd.name>
10 months agodropbear: better handle interfaces
Konstantin Demin [Mon, 15 Jan 2024 07:38:59 +0000 (10:38 +0300)]
dropbear: better handle interfaces

- introduce 'DirectInterface' option to bind exactly to specified interface;
  fixes #9666 and late IPv4/IPv6 address assignment
- option 'DirectInterface' takes precedence over 'Interface'
- improve interface/address handling,
  e.g. verify count of listening endpoints due to dropbear limit (10 for now)

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: better handle receive window size
Konstantin Demin [Tue, 9 Jan 2024 00:40:02 +0000 (03:40 +0300)]
dropbear: better handle receive window size

- correct maximum receive window size
- adjust receive window size against maximum allowed value
- warn about too high receive window size in syslog

improves f95eecfb

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: adjust file permissions
Konstantin Demin [Tue, 9 Jan 2024 00:40:02 +0000 (03:40 +0300)]
dropbear: adjust file permissions

runtime:
- adjust ownership/permissions while starting dropbear
build time:
- correct file permissions for preseed files in $(TOPDIR)/files/etc/dropbear/ (if any)

closes #10849

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: 'rsakeyfile' -> 'keyfile' transition
Konstantin Demin [Tue, 9 Jan 2024 00:40:02 +0000 (03:40 +0300)]
dropbear: 'rsakeyfile' -> 'keyfile' transition

end users should have done this since OpenWrt 19.07.
if they didn't do this yet - perform auto-transition.

schedule 'rsakeyfile' removal for next year release.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: failsafe: handle all supported key types
Konstantin Demin [Tue, 9 Jan 2024 00:40:02 +0000 (03:40 +0300)]
dropbear: failsafe: handle all supported key types

dropbear may be configured and compiled with support for different host key types

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: minor config reorder
Konstantin Demin [Tue, 9 Jan 2024 00:40:02 +0000 (03:40 +0300)]
dropbear: minor config reorder

move DROPBEAR_ASKPASS under DROPBEAR_DBCLIENT (in all meanings)

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: split U2F/FIDO support
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: split U2F/FIDO support

these options allow one to configure U2F/FIDO support in more granular way

inspired by upstream commit aa6559db

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: add option to enable modern crypto only
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: add option to enable modern crypto only

reduces binary/package size and increases overall performance

also:
- adjust 910-signkey-fix-use-of-rsa-sha2-256-pubkeys.patch
  to build without DROPBEAR_RSA/DROPBEAR_RSA_SHA256

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: adjust allowed shell list
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: adjust allowed shell list

this takes an effect only if getusershell(3) is missing

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: honor CONFIG_TARGET_INIT_PATH
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: honor CONFIG_TARGET_INIT_PATH

fixes 65256aee

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: disable two weak kex/mac algorithms
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: disable two weak kex/mac algorithms

hmac-sha1 and diffie-hellman-group14-sha1 are weak algorithms.
A future deprecation notice of ssh-rsa (2048-bit) has been issued. [1]

It has no place in a potentially internet-facing daemon like dropbear.
Upstream has acknowledged this and offered this solution to disable
these two until this is made to be the default in the next release
of dropbear next year. [2]

1. https://www.openssh.com/txt/release-8.2
2. https://github.com/mkj/dropbear/issues/138

Signed-off-by: John Audia <therealgraysky@proton.me>
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: minor config clarification
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: minor config clarification

- "default n" is not needed: options are not selected by default
- wrap config on 80 characters width (assuming tab is 8 characters long)
- add feature cost size and security notes for DROPBEAR_AGENTFORWARD
  and DROPBEAR_DBCLIENT_AGENTFORWARD:
  describe why and where it should be disabled

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: better object cleanup
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: better object cleanup

improves b78aae79

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: allow more complex configuration
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: allow more complex configuration

- switch DB_OPT_COMMON and DB_OPT_CONFIG to comma-separated lists:
  this allows to have values with "|" in DB_OPT_COMMON and DB_OPT_CONFIG
  which is more likely to be than values with commas;
  use $(comma) variable for values with commas.
- sort DB_OPT_COMMON and DB_OPT_CONFIG to have "overrides" on top of list.
- allow DB_OPT_COMMON to have values with commas.
- allow to replace multiline definitions in sysoptions.h.

improves e1bd9645

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: cherry-pick upstream patches
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: cherry-pick upstream patches

critical fixes:
- libtommath: possible integer overflow (CVE-2023-36328)
- implement Strict KEX mode (CVE-2023-48795)

various fixes:
- fix DROPBEAR_DSS and DROPBEAR_RSA config options
- y2038 issues
- remove SO_LINGER socket option
- make banner reading failure non-fatal
- fix "noremotetcp" behavior
- don't try to shutdown a pty
- fix test for multiuser kernels

adds new features:
- option to bind to interface
- allow inetd with non-syslog
- ignore unsupported command line options with dropbearkey

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agodropbear: bump to 2022.83
Konstantin Demin [Tue, 9 Jan 2024 00:40:01 +0000 (03:40 +0300)]
dropbear: bump to 2022.83

- update dropbear to latest stable 2022.83;
  for the changes see https://matt.ucc.asn.au/dropbear/CHANGES
- drop patches:
  - 001-fix-MAX_UNAUTH_CLIENTS-regression.patch
- rework patches:
  - 901-bundled-libs-cflags.patch
- refresh remaining patches

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
10 months agoipq40xx: fix dts error in LED color/function conversion
Christian Marangi [Fri, 9 Feb 2024 00:44:19 +0000 (01:44 +0100)]
ipq40xx: fix dts error in LED color/function conversion

Fix DTS error in LED color/function conversion due to a bug in the
conversion script.

Fixes: a9e0d97e1fc8 ("ipq40xx: convert to new LED color/function format where possible")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agolinux: add dtb makefile target to targets list
Christian Marangi [Thu, 8 Feb 2024 22:04:55 +0000 (23:04 +0100)]
linux: add dtb makefile target to targets list

Add dtb makefile target to targets list to permit correct working of

make target/linux/dtb

Fixes: c47532b1ea7f ("kernel-build\eOnmk: add support for compiling only DTS")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
10 months agokernel-build.mk: add support for compiling only DTS
Christian Marangi [Wed, 7 Feb 2024 23:49:27 +0000 (00:49 +0100)]
kernel-build.mk: add support for compiling only DTS

Add support for compiling DTS for the selected target. This can be
useful for testing if the DTS correctly compile and doesn't produce any
error.

This adds a new make target. To compile only DTS use:

make target/linux/dtb

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>