openwrt/staging/neocturne.git
14 months agoixp4xx: Add a ixp4xx hardware crypto kernel module
Linus Walleij [Mon, 23 Oct 2023 06:43:08 +0000 (08:43 +0200)]
ixp4xx: Add a ixp4xx hardware crypto kernel module

The IXP4xx crypto module must be loaded after the rootfs is
up as it depends on loading some NPE microcode from the file
system.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agoixp4xx: Resurrect IXP4xx support using device tree
Linus Walleij [Mon, 23 Oct 2023 06:43:07 +0000 (08:43 +0200)]
ixp4xx: Resurrect IXP4xx support using device tree

This resurrects the support for IXP4xx using device tree
rather than the old (deleted) board files. The final pieces
of IXP4xx board files were deleted in Linux v5.19.

Ext4 root filesystems on CF and USB are supported by the
default config.

We support these three initial targets:

- The Gateworks Avila GW2348 reference design has 64MB of RAM
  and 32MB of flash and also supports USB and CompactFlash.

- The Gateworks Cambria GW2358 reference design has 128MB of
  RAM and 32MB of flash and also supports USB and CompactFlash.

- The old and stable Linksys NSLU2 works fine as well, albeit
  it only has 32MB of RAM so it has been marked as non-default.
  The 8MB of flash can only fit the kernel, so it has been
  patched to boot from exteral media on USB. I have used
  it successfully as a NAS with ksmbd and LUCI web API, see:
  https://dflund.se/~triad/krad/ixp4xx/

Signed-off-by: Howard Harte <hharte@magicandroidapps.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
14 months agofirmware: Resurrect the ixp4xx microcode package
Linus Walleij [Mon, 23 Oct 2023 06:43:06 +0000 (08:43 +0200)]
firmware: Resurrect the ixp4xx microcode package

The firmware package for the IXP4xx microcode was deleted but
the source files are still in the file cache so we can easily
resurrect it.

The firmware either supports ethernet (the most common) or
WAN (less common), image targets select the firmware they
want depending on usecase.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agogeneric: Support Altima AMI101L PHY
Linus Walleij [Mon, 23 Oct 2023 06:43:05 +0000 (08:43 +0200)]
generic: Support Altima AMI101L PHY

This is a backport of the patch to support the Altima AMI101L
PHY which is merged for the v6.7 kernel. This PHY is used in the
IXP4xx-based USRobotics USR8200.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agogeneric: RTC7301 byte-addressed IO
Linus Walleij [Mon, 23 Oct 2023 06:43:04 +0000 (08:43 +0200)]
generic: RTC7301 byte-addressed IO

This is a backport of the patch for byte addressed IO to the
Epson RTC7301 driver. This is used by the IXP4xx-based
USRobotics USR8200.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agokernel: netdevices: Package AMD PHY
Linus Walleij [Mon, 23 Oct 2023 06:43:03 +0000 (08:43 +0200)]
kernel: netdevices: Package AMD PHY

This adds a package for the AMD and Altima PHY, found in some
odd devices.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agoimage: Fix the CONFIG_EXTERNAL_CPIO logic
Luca Barbato [Tue, 24 Oct 2023 11:10:51 +0000 (13:10 +0200)]
image: Fix the CONFIG_EXTERNAL_CPIO logic

Fix the qstrip call.

Fixes: #13776.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
14 months agosifiveu: remove 5.15 support
Zoltan HERPAI [Tue, 24 Oct 2023 09:42:46 +0000 (11:42 +0200)]
sifiveu: remove 5.15 support

With 6.1 as the default kernel, there is no reason to keep 5.15 around.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
14 months agosifiveu: switch to kernel v6.1
Zoltan HERPAI [Tue, 24 Oct 2023 09:40:51 +0000 (11:40 +0200)]
sifiveu: switch to kernel v6.1

Enable kernel v6.1 as the default kernel for sifiveu.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
14 months agobcm53xx: disable unused switch ports in downstream patch
Rafał Miłecki [Fri, 13 Oct 2023 11:25:33 +0000 (13:25 +0200)]
bcm53xx: disable unused switch ports in downstream patch

This makes Linux use correct switch ports again.

Fixes: a4792d79e899 ("bcm53xx: backport DT changes from v6.5")
Fixes: https://github.com/openwrt/openwrt/issues/13548
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 months agobcm53xx: backport DT changes queued for v6.7
Rafał Miłecki [Tue, 24 Oct 2023 05:40:37 +0000 (07:40 +0200)]
bcm53xx: backport DT changes queued for v6.7

Among other changes this commit makes Linux use correct switch ports
again.

Fixes: a4792d79e899 ("bcm53xx: backport DT changes from v6.5")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 months agobcm53xx: simplify patch adding switch ports
Rafał Miłecki [Fri, 13 Oct 2023 10:57:35 +0000 (12:57 +0200)]
bcm53xx: simplify patch adding switch ports

We now have all raw ports defined in bcm-ns.dtsi. Leave only lables in
custom device files.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 months agobase-files: functions.sh: Add prepend() homologue to append()
Philip Prindeville [Sun, 24 Sep 2023 17:52:19 +0000 (11:52 -0600)]
base-files: functions.sh: Add prepend() homologue to append()

Sometimes it's useful to be able to prepend to a variable as
well, such as when dealing with domain names, e.g.

    prepend fdqn "$subdomain" "."

will result in:

   fqdn="$subdomain.$fqdn"

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
14 months agokernel: ath79, bmips: refresh 5.15 patches
Marek Behún [Mon, 23 Oct 2023 08:46:59 +0000 (10:46 +0200)]
kernel: ath79, bmips: refresh 5.15 patches

One LED patch for ath79 and one LED patch for bmips need to be
refreshed.

Signed-off-by: Marek Behún <kabel@kernel.org>
14 months agokernel: 5.15: Backport Turris Omnia LED patches
Marek Behún [Sun, 22 Oct 2023 15:48:03 +0000 (17:48 +0200)]
kernel: 5.15: Backport Turris Omnia LED patches

This backports patches
  leds: turris-omnia: convert to use dev_groups
  leds: turris-omnia: Use sysfs_emit() instead of sprintf()
  leds: turris-omnia: Drop unnecessary mutex locking
  leds: turris-omnia: Do not use SMBUS calls
  leds: turris-omnia: Make set_brightness() more efficient
  leds: turris-omnia: Support HW controlled mode via private trigger
  leds: turris-omnia: Add support for enabling/disabling HW gamma correction
  leds: turris-omnia: Fix brightness setting and trigger activating
into backport-5.15.

The above patches replace:
  leds: turris-omnia: support HW controlled mode via private trigger
  leds: turris-omnia: initialize multi-intensity to full
  leds: turris-omnia: change max brightness from 255 to 1
from mvebu/patches-5.15.

Signed-off-by: Marek Behún <kabel@kernel.org>
14 months agobcm53xx: update patch fixing NVMEM driver for NVRAM
Rafał Miłecki [Mon, 23 Oct 2023 08:46:56 +0000 (10:46 +0200)]
bcm53xx: update patch fixing NVMEM driver for NVRAM

1. Avoid corrupting (replacing '=' with '\0') NVRAM content
2. Check actual NVRAM data length to avoid allocating huge buffers

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 months agoRevert "lantiq: xrx200: mark subtarget as source-only"
Hauke Mehrtens [Sun, 8 Oct 2023 22:26:18 +0000 (00:26 +0200)]
Revert "lantiq: xrx200: mark subtarget as source-only"

This reverts commit 0c117e1f6ccbee684ea0589d9024ca9dec4679c9.

Activate the lantiq/xrx200 target again.

There are still some problems with the GSWIP, but it is not leaking
packets to the wrong bridge in normal operations.
It shows some error messages at configuration like these:
[   54.308861] gswip 1e108000.switch: port 5 failed to add ce:9d:84:d1:81:f0 vid 1 to fdb: -22
[   54.325633] gswip 1e108000.switch: port 5 failed to add e8:de:27:95:c1:b4 vid 0 to fdb: -22
[   54.351242] gswip 1e108000.switch: port 5 failed to add e8:de:27:95:c1:b4 vid 1 to fdb: -22
[   54.358311] gswip 1e108000.switch: port 5 failed to delete ce:9d:84:d1:81:f0 vid 1 from fdb: -2

The problems are described in this pull request:
https://github.com/openwrt/openwrt/pull/13200

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
14 months agouboot-mediatek: fix global pll clock override on mtk_spim
Nicolò Veronese [Mon, 2 Oct 2023 20:17:09 +0000 (22:17 +0200)]
uboot-mediatek: fix global pll clock override on mtk_spim

With patch 101-03-spi-mtk_spim-get-spi-clk-rate-only-once.patch
 a new system to calculate the SPI clocks has been added.

Unfortunately, the do_div macro overrides the global
 priv->pll_clk_rate field. This will cause to have a reduced
 clock rate on each subsequent SPI call.

Signed-off-by: Valerio 'ftp21' Mancini <ftp21@ftp21.eu>
Signed-off-by: Nicolò Veronese <nicveronese@gmail.com>
14 months agolibnl: add support for cli
Koen Vandeputte [Wed, 5 Jul 2023 11:56:16 +0000 (13:56 +0200)]
libnl: add support for cli

Some packages (like wavemon >= 0.9.4) depend on libnl-cli. Add support
for this part of the lib. libnl-cli itself depends on libnl-genl and
libnl-nf. On MIPS, this component adds 81kB.

Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
(punctuation correction and reorganisation of commit message)
Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agobcm53xx: Linksys EA9200 nvram and 02_network fixes
Rani Hod [Sat, 30 Sep 2023 23:05:19 +0000 (02:05 +0300)]
bcm53xx: Linksys EA9200 nvram and 02_network fixes

1) clear nvram partialboots upon successful boot
This behavior is already defined for EA9500; enabled for EA9200 too.

2) fix MAC address in board.d/02_network
Use the correct nvram variable to derive lan/wan MAC address.

Signed-off-by: Rani Hod <rani.hod@gmail.com>
14 months agoramips: TP-link archer A6/C6 device tree updates
Rani Hod [Fri, 20 Oct 2023 13:15:38 +0000 (16:15 +0300)]
ramips: TP-link archer A6/C6 device tree updates

Set correct GPIO (10) for the WPS button. This matches GPIO settings in
vendor GPL sources. Note that GPL sources also mention a USB indicator
LED (GPIO 13) but the device has neither an external USB port nor a USB LED.

In addition, prefixes (button-, led-) are added to relevant DT entries,
as well as color and function specifications for LEDs.

Closes: #13736
Reported-by: Waldemar Czabaj <kaball@wp.pl>
Signed-off-by: Rani Hod <rani.hod@gmail.com>
(added led mitigations for wifi leds)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
14 months agouboot-mvebu: armada 388 clearfog: support additional ddr configurations
Josua Mayer [Sun, 8 Oct 2023 15:21:26 +0000 (17:21 +0200)]
uboot-mvebu: armada 388 clearfog: support additional ddr configurations

Fixes Issue #13632.

Patches as submitted in v1 to u-boot mailinglist:
https://lists.denx.de/pipermail/u-boot/2023-October/533148.html

Signed-off-by: Josua Mayer <josua@solid-run.com>
14 months agotools: mold: update to v2.3.1
Andre Heider [Sat, 21 Oct 2023 09:08:44 +0000 (11:08 +0200)]
tools: mold: update to v2.3.1

Release notes:
https://github.com/rui314/mold/releases/tag/v2.3.0
https://github.com/rui314/mold/releases/tag/v2.3.1

Signed-off-by: Andre Heider <a.heider@gmail.com>
14 months agokernel: bump 6.1 to 6.1.59
John Audia [Fri, 20 Oct 2023 08:15:03 +0000 (04:15 -0400)]
kernel: bump 6.1 to 6.1.59

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

Manually rebased:
bcm27xx/patches-6.1/950-0124-Add-support-for-all-the-downstream-rpi-sound-card-dr.patch

Removed upstreamed:
generic/backport-6.1/781-v6.6-02-net-dsa-qca8k-fix-potential-MDIO-bus-conflict-when-a.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.59&id=881050b25b1dda7b0f14d40d1b09bf38cb3b427c

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

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agokernel: bump 6.1 to 6.1.58
John Audia [Fri, 20 Oct 2023 07:37:22 +0000 (03:37 -0400)]
kernel: bump 6.1 to 6.1.58

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

All patches automatically rebased.

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agokernel: fix missing regmap-mmio dependency for rtc-r7301
Christian Marangi [Fri, 20 Oct 2023 13:56:34 +0000 (15:56 +0200)]
kernel: fix missing regmap-mmio dependency for rtc-r7301

Add missing regmap-mmio dependency for rtc-r7301 to fix packaging error.

Fixes: f2bc4c1f1588 ("kernel: Add kmod-rtc-r7301")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agokernel: 6.1: Backport Turris Omnia LED patches
Marek Mojík [Mon, 16 Oct 2023 15:14:18 +0000 (17:14 +0200)]
kernel: 6.1: Backport Turris Omnia LED patches

This backports patches
  leds: turris-omnia: Use sysfs_emit() instead of sprintf()
  leds: turris-omnia: Drop unnecessary mutex locking
  leds: turris-omnia: Do not use SMBUS calls
  leds: turris-omnia: Make set_brightness() more efficient
  leds: turris-omnia: Support HW controlled mode via private trigger
  leds: turris-omnia: Add support for enabling/disabling HW gamma correction
  leds: turris-omnia: Fix brightness setting and trigger activating
into backport-6.1.

The above patches replace:
  leds: turris-omnia: support HW controlled mode via private trigger
  leds: turris-omnia: initialize multi-intensity to full
  leds: turris-omnia: change max brightness from 255 to 1
from mvebu/patches-6.1.

Signed-off-by: Marek Mojík <marek.mojik@nic.cz>
14 months agotoolchain: link ldd when using external toolchain
Arien Judge [Fri, 13 Oct 2023 09:58:16 +0000 (20:58 +1100)]
toolchain: link ldd when using external toolchain

When using an external toolchain, ldd is not linked into the rootfs.
This causes subsequent upgrades to fail with 'Failed to exec upgraded'.
This patch adds the symlink when using an external toolchain and musl.

Signed-off-by: Arien Judge <arienjudge@outlook.com>
14 months agouboot-mediatek: fix typo in bootmenu for GL-MT6000
Jianhui Zhao [Tue, 10 Oct 2023 06:09:38 +0000 (14:09 +0800)]
uboot-mediatek: fix typo in bootmenu for GL-MT6000

Fixes: fe10f97 ("filogic: add support for GL.iNet GL-MT6000")
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
14 months agorealtek: add support for TP-Link T1600G-28TS v3
Andreas Böhler [Wed, 5 Apr 2023 19:10:34 +0000 (21:10 +0200)]
realtek: add support for TP-Link T1600G-28TS v3

This is an RTL8382-based switch with 24 copper ports + 4 SFP ports

Specifications:
---------------
 * SoC:       Realtek RTL8382M
 * Flash:     32 MiB SPI flash
 * RAM:       256 MiB
 * Ethernet:  24x 10/100/1000 Mbps
 * Buttons:   1x "Reset" button
 * UART:      1x serial header, unpopulated
 * SFP:       4 SFP ports

Works:
------
  - (24) RJ-45 ethernet ports
  - Switch functions
  - Buttons
  - Sys LED on front panel (no port LEDs)

Not yet enabled:
----------------
  - Port LEDs (no driver for RTL8231 in this mode)
  - SFP cages (no driver for PHY)

Install via web interface:
-------------------------

Not supported at this time.

Install via serial console/tftp:
--------------------------------

The U-Boot firmware drops to a TP-Link specific "BOOTUTIL" shell at
38400 baud. There is no known way to exit out of this shell, and no
way to do anything useful.

Ideally, one would trick the bootloader into flashing the sysupgrade
image first. However, if the image exceeds 6MiB in size, it will not
work. To install OpenWRT:

Prepare a tftp server with:
 1. server address: 192.168.0.146
 2. the image as: "uImage.img"

Power on device, and stop boot by pressing any key.
Once the shell is active:
 1. Ground out the CLK (pin 16) of the ROM (U6)
 2. Select option "3. Start"
 3. Bootloader notes that "The kernel has been damaged!"
 4. Release CLK as soon as bootloader thinks image is corrupted.
 5. Bootloader enters automatic recovery -- details printed on console
 6. Watch as the bootloader flashes and boots OpenWRT.

Blind install via tftp:
-----------------------

This method works when it's not feasible to install a serial header.

Prepare a tftp server with:
 1. server address: 192.168.0.146
 2. the image as: "uImage.img"
 3. Watch network traffic (tcpdump or wireshark works)
 4. Power on the device.
 5. Wait 1-2 seconds then ground out the CLK (pin 16) of the ROM (U6)
 6. When 192.168.0.30 makes tftp requests, release pin 16
 7. Wait 2-3 minutes for device to auto-flash and boot OpenWRT

Signed-off-by: Andreas Böhler <dev@aboehler.at>
14 months agoipq40xx: wpj428: switch to zimage to fit kernel partition
Leon M. Busch-George [Mon, 16 Oct 2023 17:41:21 +0000 (19:41 +0200)]
ipq40xx: wpj428: switch to zimage to fit kernel partition

Like with some other ipq40xx devices, the kernel image size for the WPJ428
is limited in stock u-boot. For that reason, the current release doesn't
include an image for the board.
By switching to the zImage format, the kernel image size is reduced which
re-enables the build process. The image boots and behaved normally through
a few days of testing.

Before the switch to kernel version 6.1, it was possible to reduce the
image size by enough when disabling UBIFS and its otherwise unneeded
dependencies.

Signed-off-by: Leon M. Busch-George <leon@georgemail.eu>
14 months agoapm821xx: WNDR4700: fix broken sysupgrade, factory images
Christian Lamparter [Fri, 20 Oct 2023 14:20:27 +0000 (16:20 +0200)]
apm821xx: WNDR4700: fix broken sysupgrade, factory images

prepend-dtb got extended to handle the Meraki devices too,
the problem here was that the Netgear WNDR4700 expects an
u-boot header in front of the DTB, whereas Meraki devices
don't.

Since the header was dropped, the WNDR4700's uboot started
to complain:
  Bad Magic Number,it is forbidden to be written to flash!!

when flashing the factory.img since it expects an u-boot
header there.

Fixes: 5dece2d9355a ("apm821xx: switch over from DTB_SIZE to DEVICE_DTC_FLAGS")
Reported-by: @kisgezenguz
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
14 months agoath79: AP105: use fixed layout cell "mac-base"
Christian Lamparter [Fri, 21 Jul 2023 14:44:11 +0000 (16:44 +0200)]
ath79: AP105: use fixed layout cell "mac-base"

This drops a use of the deprecated "mac-address-increment".

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
14 months agotreewide: make use of new toolchain define
Christian Marangi [Thu, 19 Oct 2023 16:16:25 +0000 (18:16 +0200)]
treewide: make use of new toolchain define

Make use of new toolchain define. TOOLCHAIN_DIR should be used only for
toolchain related packages and for everything else TOOLCHAIN_ROOT_DIR
and other define should be used instead.

Switch to new entry where possible.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agorules.mk: make toolchain dirs define more consistent
Christian Marangi [Thu, 19 Oct 2023 15:39:24 +0000 (17:39 +0200)]
rules.mk: make toolchain dirs define more consistent

Make toolchain dirs define more consistent between internal and external
toolchains.

Make use of specific dirs also for intenral toolchain and generilize
include and lib inclusion.

Also set TOOLCHAIN_ROOT_DIR for internal toolchain as this is what
packages should use to reference staging toolchain directory.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agoscripts/ext-toolchain: implement external GCC version detection
Christian Marangi [Thu, 19 Oct 2023 12:19:09 +0000 (14:19 +0200)]
scripts/ext-toolchain: implement external GCC version detection

Some package may needs to enable compatibility option based on the GCC
version.

Currently the GCC version is set based on the default value and doesn't
actually reflect the real value provided by the external toolchain if
used.

Fix this by correctly detecting the GCC version in the external
toolchain and set the correct value in CONFIG_GCC_VERSION.

A new option is added in menuconfig to manually set the GCC version if
needed.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agotreewide: disable QUILT refresh for unsupported packages
Christian Marangi [Sun, 15 Oct 2023 19:11:17 +0000 (21:11 +0200)]
treewide: disable QUILT refresh for unsupported packages

Some packages won't ever have something to patch as they normally
install files or are meta-packages.

For these special packages, disable QUILT refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agodnsmasq: add support for RA option 31
Rahul Thakur [Fri, 20 Oct 2023 04:27:46 +0000 (09:57 +0530)]
dnsmasq: add support for RA option 31

The option 31 in the RA specifies the DNS search list, the support
to configure this via UCI is missing in case dnsmasq-dhcpv6 is used.

This commit uses the uci option domain (same as is done by odhcpd) to
read and pass the DNS search list to dnsmasq, which is then used by RA.

Hence, with this commit, we are able to configure DNS search list for the
RA messages via the uci config when dnsmsaq-dhcpv6 is used.

Signed-off-by: Rahul Thakur <rahul.thakur@iopsys.eu>
14 months agoipq40xx: switch to performance governor by default
Koen Vandeputte [Tue, 12 Sep 2023 13:38:27 +0000 (15:38 +0200)]
ipq40xx: switch to performance governor by default

Doing a simple ping to my device shows this:

64 bytes from 10.0.253.101: icmp_seq=1 ttl=64 time=2.00 ms
64 bytes from 10.0.253.101: icmp_seq=2 ttl=64 time=2.02 ms
64 bytes from 10.0.253.101: icmp_seq=3 ttl=64 time=1.68 ms
64 bytes from 10.0.253.101: icmp_seq=4 ttl=64 time=1.91 ms
64 bytes from 10.0.253.101: icmp_seq=5 ttl=64 time=1.92 ms
64 bytes from 10.0.253.101: icmp_seq=6 ttl=64 time=2.04 ms

Some users even report higher values on older kernels:

64 bytes from 192.168.1.10: seq=0 ttl=64 time=0.612 ms
64 bytes from 192.168.1.10: seq=1 ttl=64 time=2.852 ms
64 bytes from 192.168.1.10: seq=2 ttl=64 time=2.719 ms
64 bytes from 192.168.1.10: seq=3 ttl=64 time=2.741 ms
64 bytes from 192.168.1.10: seq=4 ttl=64 time=2.808 ms

The problem is that the governor is set to Ondemand, which causes
the CPU to clock all the way down to 48MHz in some cases.

Switching to performance governor:

64 bytes from 10.0.253.101: icmp_seq=1 ttl=64 time=0.528 ms
64 bytes from 10.0.253.101: icmp_seq=2 ttl=64 time=0.561 ms
64 bytes from 10.0.253.101: icmp_seq=3 ttl=64 time=0.633 ms
64 bytes from 10.0.253.101: icmp_seq=4 ttl=64 time=0.526 ms

In theory, using the Performance governor should increase power draw,
but it looks like it really does not matter for this soc.

Using a calibrated precision DC power supply (cpu idle):

Ondemand
24.00V * 0.134A = 3.216 Watts
48.00V * 0.096A = 4.608 Watts

Performance
24.00V * 0.135A = 3.240 Watts
48.00V * 0.096A = 4.608 Watts

Let's simply switch to the Performance governor by default
to fix the general jittery behaviour on devices using this soc.

Tested on: MikroTik wAP ac

Fixes: #13649
Reviewed-by: Robert Marko <robimarko@gmail.com>
Reviewed-by: Thibaut VARÈNE <hacks@slashdirt.org>
Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
14 months agonftables: update to 1.0.9
Nick Hainke [Thu, 19 Oct 2023 13:26:44 +0000 (15:26 +0200)]
nftables: update to 1.0.9

ChangeLog:
https://www.netfilter.org/projects/nftables/files/changes-nftables-1.0.9.txt

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agokernel: Add kmod-rtc-r7301
Linus Walleij [Thu, 12 Oct 2023 08:42:19 +0000 (10:42 +0200)]
kernel: Add kmod-rtc-r7301

To support the IXP42x platforms we need a kernel module
for the Epson R7301 RTC so we can load it as an optional
module.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Robert Marko <robimarko@gmail.com>
14 months agokernel: Add kmod-rtc-x1205
Linus Walleij [Thu, 12 Oct 2023 08:42:18 +0000 (10:42 +0200)]
kernel: Add kmod-rtc-x1205

To support the IXP42x platforms we need a kernel module
for the X1205 RTC so we can load it as an optional module.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Robert Marko <robimarko@gmail.com>
14 months agokernel: crypto: armeb build rules for lib-chacha20
Linus Walleij [Thu, 12 Oct 2023 08:42:17 +0000 (10:42 +0200)]
kernel: crypto: armeb build rules for lib-chacha20

The lib-chacha20 library is missing build rules for big endian
ARM, and since IXP4xx is big endian ARM we need those rules to
build for IXP4xx.

Suggested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agoboot/apex: Restore the APEX boot loader
Linus Walleij [Thu, 12 Oct 2023 08:42:16 +0000 (10:42 +0200)]
boot/apex: Restore the APEX boot loader

This is a partial revert of the deletion of the IXP4xx
target: we restore the APEX boot loader so we can use it
for the NSLU2 and related targets.

The APEX upstream is as dead as it gets so I have applied
OpenWrts old patches on top of the never released
v1.6.10 version and forked it into an OpenWrt variant
on GitHub. If the upstream comes back alive I will
happily switch over to it.

The file refers to the external GitHub, I suppose when
integrating this patch the file should be copied to OpenWrts
file repository and the file link changed.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
14 months agonetifd: update to latest git HEAD
Christian Marangi [Fri, 20 Oct 2023 11:00:00 +0000 (13:00 +0200)]
netifd: update to latest git HEAD

5590a80e2566 config: fix incompatible with jshn network-device entry

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agobase-files: fix wrong ucidef_set_network_device_mac network-device entry
Michael 'ASAP' Weinrich [Fri, 6 Oct 2023 02:39:58 +0000 (19:39 -0700)]
base-files: fix wrong ucidef_set_network_device_mac network-device entry

The ucidef_set_network_device_* functions in uci-defaults.sh disagree
on whether to use "network-device" or "network_device" in board.json.
With the additional caveat that jshn will translate hyphens (-) into
underscores (_). This casues problems in netifd which expected
"network_device" causing boards which depend on assigning MACs in
board.json via uci-defaults.sh (or jshn in general) to fail.

This commit addresses the issue by using network_device in
uci-defaults.sh.

The bug was uncovered in the forums here:
https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/57875/2596

This was exposed by commit 4ebba8a05d09 ("realtek: add support for HPE
1920-8g-poe+") where the board_config_load call from 03_gpio introduced
the key normalization by jshn.

Fixes: 9290539ca9c7 ("base-files: allow setting device and bridge macs")
Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Michael 'ASAP' Weinrich <michael@a5ap.net>
[ improve commit title, description and fix wrong Tested-by tag ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agoarmsr: preserve configuration during sysupgrade
Christian Buschau [Tue, 17 Oct 2023 12:51:53 +0000 (14:51 +0200)]
armsr: preserve configuration during sysupgrade

Copy configuration to boot partition (partition 1) instead of root
partition (partition 2) because the root partition is not writable if
it's a suqashfs image.
Move configuration back to root during preinit.

Fixes: https://github.com/openwrt/openwrt/issues/13695
Signed-off-by: Christian Buschau <cbuschau@d00t.de>
14 months agoumdns: update to the latest version
Felix Fietkau [Thu, 19 Oct 2023 17:15:11 +0000 (19:15 +0200)]
umdns: update to the latest version

479c7f8676d9 cache: make record/hostname lookup case-insensitive
26c97a5a50bf ubus: add a browse flag for suppressing cached ip addresses
c286c51a9bd9 Fix AVL tree traversal in cache_record_find and cache_host_is_known
4035fe42df58 interface: use a global socket instead of per-interface ones
c63d465698c7 cache: dump hostname target from srv records
b42b22152d73 use hostname from SRV record to look up IP addresses
d45c443aa1e6 ubus: add array flag support for the hosts method

Signed-off-by: Felix Fietkau <nbd@nbd.name>
14 months agolayerscape: kernel: refresh 6.1 patches
Pawel Dembicki [Fri, 13 Oct 2023 13:20:43 +0000 (15:20 +0200)]
layerscape: kernel: refresh 6.1 patches

Kernel patches copied from 5.15 need to be refreshed.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agogeneric: kernel: add missing symbol
Pawel Dembicki [Thu, 12 Oct 2023 12:52:22 +0000 (14:52 +0200)]
generic: kernel: add missing symbol

It was found during work on layerscape target.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agolayerscape: port "-Werror" fix from NXP tree
Pawel Dembicki [Thu, 19 Oct 2023 10:07:03 +0000 (12:07 +0200)]
layerscape: port "-Werror" fix from NXP tree

At this moment, 702-phy-Add-2.5G-SGMII-interface-mode.patch cause error
durring kernel compilation:

  CC      drivers/net/phy/phylink.o
drivers/net/phy/phylink.c: In function 'phylink_get_capabilities':
drivers/net/phy/phylink.c:443:9: error: enumeration value 'PHY_INTERFACE_MODE_2500SGMII' not handled in switch [-Werror=switch]
  443 |         switch (interface) {
      |         ^~~~~~
cc1: all warnings being treated as errors

NXP take care of it. Let's port their patch.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agolayerscape: add 6.1 kernel as testing
Pawel Dembicki [Tue, 18 Apr 2023 08:30:47 +0000 (10:30 +0200)]
layerscape: add 6.1 kernel as testing

It allow to test 6.1 kernel in Layerscape.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agolayerscape: 6.1: refresh kernel config
Pawel Dembicki [Mon, 17 Apr 2023 15:55:59 +0000 (17:55 +0200)]
layerscape: 6.1: refresh kernel config

Done by 'make kernel_oldconfig'.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agolayerscape: copy config 5.15 to 6.1
Pawel Dembicki [Mon, 17 Apr 2023 15:26:38 +0000 (17:26 +0200)]
layerscape: copy config 5.15 to 6.1

Configs was just copied.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agolayerscape: refresh kernel config
Pawel Dembicki [Mon, 17 Apr 2023 15:15:49 +0000 (17:15 +0200)]
layerscape: refresh kernel config

Done by 'make kernel_oldconfig'.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agolayerscape: copy patches 5.15 to 6.1
Pawel Dembicki [Mon, 17 Apr 2023 14:55:36 +0000 (16:55 +0200)]
layerscape: copy patches 5.15 to 6.1

Patches recreated from NXP 6.1 tree:
400-LF-20-3-mtd-spi-nor-Use-1-bit-mode-of-spansion-s25fs.patch
701-staging-add-fsl_ppfe-driver.patch
702-phy-Add-2.5G-SGMII-interface-mode.patch

Patch 703 includes changes made by Christian Marangi, extracted from commit
0d4a547905d4.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
14 months agoRevert "ramips: convert MT7915 EEPROM to NVMEM format"
Shiji Yang [Tue, 17 Oct 2023 12:57:07 +0000 (20:57 +0800)]
Revert "ramips: convert MT7915 EEPROM to NVMEM format"

Some MT7915 devices need to load the second part of the eeprom to
work properly. The mt76 driver is not yet ready to read the pre-cal
data via the NVMEM cell. Therefore, partially revert commit to fix
the device probe issue on some devices.

P.S.
Except for D-Link and Ubnt devices, It is still uncertain whether
pre-cal data is required for other devices in the patch.

This partially reverts commit 9ac891f8c44124e931c15f1257347cd8ba311a19.

Fixes: https://github.com/openwrt/openwrt/issues/13700
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: add missing mt76 packages for Telco Electronics X1
Shiji Yang [Mon, 2 Oct 2023 03:42:23 +0000 (11:42 +0800)]
ramips: add missing mt76 packages for Telco Electronics X1

Telco Electronics X1 has MT7603E and MT7612E PCIe NICs. They are
driven by kmod-mt7603 and kmod-mt76x2.

Ref: 73e0f52b6e4e ("ramips: add support for Telco Electronics X1")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: fix factory partition size for SNR-CPE-W4N
Shiji Yang [Sun, 15 Oct 2023 03:04:46 +0000 (11:04 +0800)]
ramips: fix factory partition size for SNR-CPE-W4N

The starting address of 'factory' partition is 0x40000, and the
starting address of the next partition is 0x50000. It's obvious
that the correct size for the 'factory' is 0x10000, just like
other MT7620 devices.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: fix frequency limit property for some Edimax devices
Shiji Yang [Sun, 15 Oct 2023 02:57:44 +0000 (10:57 +0800)]
ramips: fix frequency limit property for some Edimax devices

These three devices uses MT7612E PCIe NIC and supported by the
'mt76' driver. So the right frequency limit property should be
`ieee80211-freq-limit`.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: remove useless status property from wmac dts node
Shiji Yang [Sun, 15 Oct 2023 01:40:06 +0000 (09:40 +0800)]
ramips: remove useless status property from wmac dts node

On the ramips target, all 'wmac' nodes in SoC dtsi are enabled by
default except mt7628. There is no need to mark them as 'okay'
again. So these useless properties can be removed.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: convert mt76 PCIe NIC EEPROM to NVMEM format for legacy SoCs
Shiji Yang [Mon, 2 Oct 2023 02:12:02 +0000 (10:12 +0800)]
ramips: convert mt76 PCIe NIC EEPROM to NVMEM format for legacy SoCs

This patch converts MT761{0,2,3} PCIe WiFi calibration data to NVMEM
format for legacy Ralink SoCs (MT7620 and Mt7628). The EEPROM size of
the MT7610 and MT7612 is 0x200. there are only three devices uses
MT7613 NIC, ASUS RT-AC1200 V2, COMFAST CF-WR758AC V2 and Keenetic
KN-1613. The EEPROM size of them is 0x4da8.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: convert MT7628 EEPROM to NVMEM format
Shiji Yang [Mon, 2 Oct 2023 02:12:02 +0000 (10:12 +0800)]
ramips: convert MT7628 EEPROM to NVMEM format

This patch converts MT7628 WiFi calibration data to NVMEM format. The
EEPROM size is 0x400.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: convert rt2x00 EEPROM to NVMEM format
Shiji Yang [Mon, 2 Oct 2023 02:12:02 +0000 (10:12 +0800)]
ramips: convert rt2x00 EEPROM to NVMEM format

This patch converts legacy Ralink SoCs and MT7620 WiFi calibration
data to NVMEM format. The EEPROM size is 0x200.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: fix mtd partition node names for Phicomm PSG1208
Shiji Yang [Mon, 2 Oct 2023 03:54:59 +0000 (11:54 +0800)]
ramips: fix mtd partition node names for Phicomm PSG1208

The mtd partition node name should be "partition@${offset}".
However, the offsets of the PSG1208 don't match the partition
'reg' properties. This patch correct the wrong offsets.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: fix DTS EEPROM property for some MT7628 devices
Shiji Yang [Mon, 2 Oct 2023 03:41:49 +0000 (11:41 +0800)]
ramips: fix DTS EEPROM property for some MT7628 devices

The MT7628 integrated wireless is driven by `mt76`, so the right
EEPROM property name is `mediatek,mtd-eeprom`.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agoramips: convert the remaining mtd-mac-address to NVMEM format
Shiji Yang [Mon, 2 Oct 2023 03:42:08 +0000 (11:42 +0800)]
ramips: convert the remaining mtd-mac-address to NVMEM format

`mtd-mac-address` has been abandoned. Therefore, convert them to
NVMEM format. This patch also removes some useless mtd-mac-address
properties.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
14 months agogmp: update to 6.3
Nick Hainke [Sat, 14 Oct 2023 06:49:29 +0000 (08:49 +0200)]
gmp: update to 6.3

Release Notes:
https://gmplib.org/gmp6.3

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agozlib: update to 1.3
Nick Hainke [Sat, 14 Oct 2023 06:44:53 +0000 (08:44 +0200)]
zlib: update to 1.3

Changes in 1.3 (18 Aug 2023)
- Remove K&R function definitions and zlib2ansi
- Fix bug in deflateBound() for level 0 and memLevel 9
- Fix bug when gzungetc() is used immediately after gzopen()
- Fix bug when using gzflush() with a very small buffer
- Fix crash when gzsetparams() attempted for transparent write
- Fix test/example.c to work with FORCE_STORED
- Rewrite of zran in examples (see zran.c version history)
- Fix minizip to allow it to open an empty zip file
- Fix reading disk number start on zip64 files in minizip
- Fix logic error in minizip argument processing
- Add minizip testing to Makefile
- Read multiple bytes instead of byte-by-byte in minizip unzip.c
- Add memory sanitizer to configure (--memory)
- Various portability improvements
- Various documentation improvements
- Various spelling and typo corrections

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agobinutils: update to 2.41
Nick Hainke [Sat, 14 Oct 2023 06:37:11 +0000 (08:37 +0200)]
binutils: update to 2.41

Release Notes:
https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00009.html

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agoqualcommax: ipq8074: use upstreamed CPUFreq NVMEM support
Robert Marko [Mon, 16 Oct 2023 17:20:17 +0000 (19:20 +0200)]
qualcommax: ipq8074: use upstreamed CPUFreq NVMEM support

IPQ8074 CPUFreq NVMEM support has finally landed upstream, so lets use the
upstreamed version.

This has a benefit of also supporting IPQ8174 (Oak) family for which SMEM
SoC ID-s were also upstreamed.

Signed-off-by: Robert Marko <robimarko@gmail.com>
14 months agolantiq: update binding for ralink EEPROM swap
Christian Marangi [Sun, 15 Oct 2023 14:10:58 +0000 (16:10 +0200)]
lantiq: update binding for ralink EEPROM swap

Binding for ralink EEPROM swap changed from ralink,mtd-eeprom-swap to
ralink,eeprom-swap.

Update every entry.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agomac80211: rt2x00: improve EEPROM load patches
Christian Marangi [Sun, 15 Oct 2023 14:07:22 +0000 (16:07 +0200)]
mac80211: rt2x00: improve EEPROM load patches

Improve EEPROME load patches. Reorganize and rework them.

The current patch are bugged and with the case of MTD loading, leaks and
never free the EEPROM read values.

Also add support for loading EEPROM using NVMEM cells.

As a cleanup, change the binding to swap EEPROM read from mtd to
ralink,eeprom-swap and generilize it.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
14 months agoramips: fix ZyXEL NR7101 bricking typo
Bjørn Mork [Sun, 15 Oct 2023 17:28:51 +0000 (19:28 +0200)]
ramips: fix ZyXEL NR7101 bricking typo

A typo snuck in with the addition of Cudy M1800, changing
"nr7101" to "nt7101". The result is a default network config
for NR7101 without the only ethernet interface on the NR7101,
thereby soft bricking it.

Fixes: f6d394e9f2fd ("ramips: add support for Cudy M1800")
Signed-off-by: Bjørn Mork <bjorn@mork.no>
14 months agoqualcommax: add pending GPLL parent fixes
Robert Marko [Sun, 15 Oct 2023 15:29:39 +0000 (17:29 +0200)]
qualcommax: add pending GPLL parent fixes

SBL will configure IPQ807x cores to boot at 800MHz as a safe default
frequency that is provided by GPLL0, but GPLL0 is not currently configured
as a possible parent in the APSS clock driver not being passed to it via
DTS which will then cause the kernel to not properly identify the current
CPU frequency during booting and will think that CPU is currently at XO
frequency of 19.2MHz instead of 800MHz cores are actually at and print:
cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 19200 KHz, changing to: 1017600 KHz

So, lets import patches pending upstream to prevent GPLL scaling and feed
the GPLL0 clock to APSS clock driver so we get:
cpufreq: cpufreq_online: CPU0: Running at unlisted initial frequency: 800000 KHz, changing to: 1017600 KHz

This is mostly cosmetic fix, but with all of the possible SBL and FW
versions there could be edge cases resolved by this and not scaling GPLL-s
anymore.

Signed-off-by: Robert Marko <robimarko@gmail.com>
14 months agokernel: bump 6.1 to 6.1.57
John Audia [Wed, 11 Oct 2023 18:55:10 +0000 (14:55 -0400)]
kernel: bump 6.1 to 6.1.57

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

Manually rebased:
generic/pending-6.1/702-net-ethernet-mtk_eth_soc-enable-threaded-NAPI.patch

Removed upstreamed:
qualcommax/patches-6.1/0134-PCI-qcom-Fixing-broken-pcie-enumeration-for-2_3_3-co.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.57&id=2dfb5f324d799f4545e17631415aba6d302a8e2b

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

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agoconfig-6.1: disable CONFIG_ARM64_ERRATUM_2966298
John Audia [Fri, 13 Oct 2023 06:29:29 +0000 (02:29 -0400)]
config-6.1: disable CONFIG_ARM64_ERRATUM_2966298

Disable new ksym globally as OpenWrt does not have any targets that
use A520 cores.

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agombedtls: Update to version 2.28.5
Hauke Mehrtens [Fri, 13 Oct 2023 22:37:34 +0000 (00:37 +0200)]
mbedtls: Update to version 2.28.5

This fixes some minor security problems.
Changelog: https://github.com/Mbed-TLS/mbedtls/releases/tag/mbedtls-2.28.5

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
14 months agomac80211: ath11k: sync with ath-next
Robert Marko [Thu, 12 Oct 2023 10:25:32 +0000 (12:25 +0200)]
mac80211: ath11k: sync with ath-next

Synchronize the ath11k backports with the current ath-next tree.

All of the changes are various bugfixes, there is no new major feature.
Notable bugfixes are:
* WCN6855 board name fixes
* One MSI vector booting is working again
This is rather important for most of the older platforms.

* DFS CAC state in virtual interfaces was fixed
* TX power during CAC reporting

Signed-off-by: Robert Marko <robimarko@gmail.com>
14 months agomac80211: backport upstream DFS CAC time export
Robert Marko [Thu, 12 Oct 2023 10:24:06 +0000 (12:24 +0200)]
mac80211: backport upstream DFS CAC time export

DFS CAC time export is required for backport of a ath11k fix so lets
backport the required cfg80211 upstream commit as well.

Signed-off-by: Robert Marko <robimarko@gmail.com>
14 months agotools/mtd-utils: update to 2.1.6
Nick Hainke [Thu, 12 Oct 2023 08:48:58 +0000 (10:48 +0200)]
tools/mtd-utils: update to 2.1.6

Release Notes:
https://lists.infradead.org/pipermail/linux-mtd/2023-August/100922.html

Refresh patch:
- 110-portability.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agoiproute2: update to 6.5.0
Nick Hainke [Thu, 12 Oct 2023 08:19:07 +0000 (10:19 +0200)]
iproute2: update to 6.5.0

Release Notes:
https://lore.kernel.org/netdev/20230906093918.394a1b1d@hermes.local/T/

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agoethtool: update to 6.5
Nick Hainke [Thu, 12 Oct 2023 08:13:12 +0000 (10:13 +0200)]
ethtool: update to 6.5

Release Notes:
https://lore.kernel.org/netdev/20230912223336.zywfpavr3ln3trp3@lion.mk-sys.cz/T/

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agostrace: update to 6.5
Nick Hainke [Thu, 12 Oct 2023 08:02:56 +0000 (10:02 +0200)]
strace: update to 6.5

Release Notes:
https://github.com/strace/strace/releases/tag/v6.5

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agotools/mold: update to 2.2.0
Nick Hainke [Thu, 12 Oct 2023 10:01:07 +0000 (12:01 +0200)]
tools/mold: update to 2.2.0

Release Notes:
https://github.com/rui314/mold/releases/tag/v2.2.0

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agoath79: wpj563: enable 2nd USB controller
Koen Vandeputte [Fri, 13 Oct 2023 15:47:11 +0000 (17:47 +0200)]
ath79: wpj563: enable 2nd USB controller

The compex WPJ563 actually has both usb controllers wired:

usb0 --> pci-e slot
usb1 --> pin header

As the board exposes it for generic use, enable this controller too.

fixes: #13650
Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
14 months agotools/cmake: disable cmake script debugger
Michael Pratt [Thu, 12 Oct 2023 22:07:11 +0000 (18:07 -0400)]
tools/cmake: disable cmake script debugger

Upstream commit a9a592f96e6498da302f8e968be1db0ad3c32123
("cmake: Add debugger") added a huge amount of code
in order to create a debugging feature for CMakeLists.txt
of other projects. This was added to CMake since 3.27.x.

Unforunately, this new debugger will not build on ARM systems
like arm-linux-gnueabihf (Raspberry Pi 4), and takes up
extra build time for something Openwrt doesn't need,
yet it was enabled by default. (Thanks Microsoft....)

Specifically, it's a failure to link to functions like
__atomic_store_8, __atomic_load_8, __atomic_fetch_add_8, etc.

Let's just disable it.

Someone who really needs this for developing can have CMake
with the debugger on their host machine or manually re-enable it here.

Link: https://gitlab.kitware.com/cmake/cmake/-/issues/21510
Link: https://devblogs.microsoft.com/cppblog/cmake-debugger-allows-you-to-debug-your-cmake-scripts-and-more/
Signed-off-by: Michael Pratt <mcpratt@pm.me>
14 months agobcm53xx: build a single device per profile
Rani Hod [Sat, 30 Sep 2023 19:22:13 +0000 (22:22 +0300)]
bcm53xx: build a single device per profile

So far every build of a single bcm53xx Target Profile (it means: when
NOT using CONFIG_TARGET_MULTI_PROFILE) resulted in all target devices
images being built. Now it only builds the one matching selected
profile.

Fixes: #13572
Suggested-by: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Rani Hod <rani.hod@gmail.com>
[rmilecki: update commit subject + body & move PROFILES line]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 months agolibnl: update to 3.8.0
Nick Hainke [Wed, 11 Oct 2023 23:05:38 +0000 (01:05 +0200)]
libnl: update to 3.8.0

Changes:
6b2533c0 libnl-3.8.0 release
1558bd62 build: replace old "NOTE" in configure output and add summary
f66383a4 build: avoid aclocal warning about missing "m4" directory
e4402a4c build: run `autoupdate` for AM_PROG_LIBTOOL
5761b6af build: add "-Wno-portability" to AC_INIT_AUTOMAKE()
661f10a1 license: fix/adjust license for "src/nl-cls-add.c"
c8fcb412 license: fix/adjust license for "src/nl-addr-{add,delete,list}.c"
e3e6fd6d tests: use thread-safe localtime_r() instead of localtime()
f520471c lib/xfrm: use thread-safe gmtime_r() instead of gmtime()
be5add72 tests: avoid srandom()/random() in favor of _nltst_rand_u32()
40578a62 lib: use getprotobyname_r(), getprotobynumber_r() if available
8ee8b05f lib: fix error handling in nl_str2ip_proto()
09f03f29 tests: check nl_str2ip_proto()
74bffbf6 route: fix documentation comment for nl_nh_group_info
59f8db0d clang-format: add "-l" alias for option in "tools/clang-format.sh"
935cc90a clang-format: ignore reformatting commit in ".git-blame-ignore-revs"
53da4712 clang-format: reformat files with new format
65c43bfe clang-format: update ".clang-format" from linux kernel
4c39a2ce include: use <linux/$file> instead of <linux-private/linux/$file>
a1e9fb3d include/linux: add all linux headers that we use
d37ffe15 include/linux: update all linux headers
1af767a8 include: add missing "extern "C"" specifier to public headers
e0a5d12b all: drop "extern "C"" from internal code
d9a1e0ce build: add "check-local-build-headers" test target to build public headers
02b87012 build: add a "check-local" build target
f9413915 include: fix headers "include/netlink/route/{netconf.h,route/qdisc/red.h}" to be self-contained
680df173 idiag: "fix" license for "idiag-socket-details" tool
2f210d9a github: test build on alpine:latest for musl
dcc4c0a5 Revert "gitignore: ignore patch files"
39106309 github: add test for linking with mold and fail on unknown versions
f475c3b2 route/nh: drop not implemented "nh" API from headers
4c681e77 build: fix exporting symbol rtnl_link_info_ops_get
260c9575 include: don't explicitly include headers from "nl-default.h"
98c1e696 tests: cleanup include of netlink headers
42bec462 build: cleanup default include list in Makefile.am
4c1a119a include: include private linux headers with explicit path
ca063725 python: add make target for python build
25c90193 python: drop unused "python/netlink/fixes.h"
3f3da7fd gitignore: ignore python build artifacts
61ef5609 gitignore: ignore generated doc files
298c5dc6 include: drop "netlink-private/netlink.h" and move declarations
862eed54 all: cleanup includes and use "nm-default.h"
2b3cd741 include: add "nl-default.h" header
8952ce6f build: move "lib/defs.h" to "include/config.h"
1010776d include: split and drop "netlink-private/types.h"
d1d57846 include: rename "nl-shared-core" to "nl-priv-dynamic-core"
fc91c4f8 include: rename "nl-hidden-route" to "nl-priv-dynamic-route"
9bb6f770 include: rename "nl-intern-route" to "nl-priv-static-route"
b5195db9 genl: rename private header "nl-priv-genl.h" to "nl-genl.h"
0eacf658 include: make "netlink/route/link/{inet,inet6}.h" self-contained
ad014ad1 route/tc: avoid unalinged access in rtnl_tc_msg_parse()
05bd6366 add support for TC action statistics
776fc5a6 lib: move "include/netlink-private/object-api" to include/nl-shared-core
fad34560 lib: move "include/netlink-private/cache-api" to include/nl-shared-core
ed2be537 route: move "include/netlink-private/route/link/sriov.h" to lib/route/link-sriov.h
97f61eda lib: move "include/netlink-private/socket.h" to lib/nl-core.h
96e1cc5b route: move "include/netlink-private/route/nexthop-encap.h" to lib/route
391e03d3 route: merge "include/netlink-private/tc.h" to lib/route/tc-api.h
7fc4f5b3 route: move rtnl_tc_build_rate_table() to "tc-api.h"
cf41e14d route: move "include/netlink-private/route/tc-api.h" to lib/route
db810cfb route: move hidden symbols from "include/netlink-private/route/tc-api.h"
ff08e618 build: don't add lib/route to include directory for all libs
eb8da16d include: move "include/netlink-private/route/link/api.h" to lib/route
8b2074aa include: move "include/netlink-private/route/utils.h" to nl-intern-route
fd470c06 include: move "include/netlink-private/route/mpls.h" to "lib/mpls.h"
78056ad2 genl: add comment about wrongly exported symbol genl_resolve_id()
befc4ab4 include: move "include/netlink-private/genl.h" to "lib/genl/nl-priv-genl.h"
f6c26127 nl-aux: add "include/nl-aux-{core,route}" headers
2da8481b base: move "netlink-private/utils.h" to "base/nl-base-utils.h"
d3e9b513 include/utils: move nl-auto base defines to "utils.h"
543b9f8f clang-format: reformat "include/netlink-private/nl-auto.h"
aa565460 route: cleanup ATTR_DIFF() macros
beba5a18 cli: add nl-nh-list utility
780d06ae route: add nh type
1b6433d9 neigh: add support of NHID attribute
e0140c5f include: import kernel headers "linux/{neighbour,nexthop,rtnetlink}.h"
eef06744 utils: add static-assert for signedness of arguments of _NL_CMP_DIRECT() macro
679c4c51 cli: use <netlink-private/utils.h> in cli and _nl_{init,exit}
a9c5de52 lib: use _nl_{init,exit} instead of __{init,exit}
102f9bd2 include/private: add _nl_init/_nl_exit macros
6782678e include/private: drop unused __deprecated macro
a0535a58 all: use "_nl_packed" macro instead of "__attribute__((packed))"
8c9f98cf all: rework ATTR_DIFF() macros to not generate attribute names
ca34ad52 lib: handle negative and zero size in nla_memcpy()
859b89dc include: drop now unused min()/max()/min_t()/max_t() macros
2e0ae977 all: use _NL_{MIN,MAX}() macros
57c451fa utils: add various helpers to "include/netlink-private/utils.h"
a9a9dcea style: format "include/netlink-private/utils.h" with clang-format
590e8a61 tools: improve failure message with "tools/clang-format.sh -n"
06dc5ae0 github: fix format checking with clang-format
7738f239 route/trivial: sort entries in "libnl-route-3.sym" asciibetically
fc805c56 route/bond: Add support for link_info for bond
6af26981 lib: accept NULL argument in nla_nest_cancel() for robustness
e9662091 macsec: Drop offload capability validation check
35a68109 github: update flake8 linter to not explicitly select checks
9a266405 python: add ".flake8" file for configuring "flake8"
e6b934a5 python: fix flake8 warnings E712
2cea738b python: fix flake8 warnings E711
d561096c python: fix flake8 warnings E302
29b06d0f python: fix flake8 warnings E741
4dc1f498 python: fix flake8 warnings F841
f4875c69 python: fix flake8 warnings W605
9a3d91df python: fix flake8 warnings F401
6baf2339 clang-format: add "tools/clang-format-container.sh" script
ee2876e3 github: add test for checking clang-format style
45c7aae3 clang-format: add "tools/clang-format.sh" script
02e0fd3f github: check python-black code formatting in github actions
2dd53895 build: add ".git-blame-ignore-revs" file for "blame.ignoreRevsFile" git config
3c753e3c python: reformat all Python files with python-black
298ee58e python add "pyproject.toml" for configuring black
a0e4b7f9 github: skip Python flake8 test with clang build
c4240c0b github: run "Build Release" test also with clang
143cee1d bridge: fix bridge info parsing
96bbe55c test-cache-mngr: Flush output after object dumps
cf5dcbcd test-cache-mngr: Add option to print timestamps
bd570952 test-cache-mngr: Add an option to iterate over all supported address families
bf80da90 test-cache-mngr: Add dump interval options
80febeea test-cache-mngr: Add an option to control which oo_dump function is used
6519a917 route/link: prevent segfault in af_request_type()
a68260f8 github: fix installing python dependencies via pip
39c04bc7 build: drop redundant "autogen.sh" call from "tools/build_release.sh"
d411b88d build: change proper working directory in "doc/autogen.sh"
2fa73ce0 build: ensure "autogen.sh" scripts fail on error
fc786296 gitignore: ignore "*~" files
4c4e614b docs: rtnl_link_put() 'releases' instead of 'returns'
336b15dc include/linux: update copy of kernel header "linux/ipv6.h"
e2cacc26 route/link: improve handling of IFLA_INET6_CONF
ec8c493c route/link: remove rtnl_link_inet6_set_conf() API
e790f8ad route/link: various fixes for rtnl_link_inet6_get_conf() API
d83c6d54 route/link: add accessor API for IPv6 DEVCONF
9167504d bridge: drop unnecessary goto in bridge_info_parse()
984d6e93 bridge: don't normalize the u8 argument in rtnl_link_bridge_set_vlan_filtering() to boolean
3662a5da bridge: expose rtnl_link_bridge_get_vlan_protocol() in host byte order
5a1ef219 bridge: fix parsing vlan-protocol in bridge_info_parse()
ad1c2927 bridge: minor cleanups in "bridge_info.c"
1c74725a bridge: use SPDX license identifiers in bridge_info files
26ca549d bridge: reformat bridge_info file with clang-format
08dc5d9c bridge: extend libnl with options needed for VLAN aware forwarding
7391a38e bridge: Add support for link_info of a bridge
1f1e8385 route/vlan: drop unnecessary "else" in vlan_put_attrs()
2bc30e57 route/vlan: fix error handling in 'lib/route/link/vlan.c'
8273d6ce build: add comments to linker version scripts about the version tags
6ac7a812 doc: fix typo
07d274ab doc: fix typo
0461a425 attr: reject zero length addresses
8d40d9eb route: construct all-zero addresses for default route destination
25d42a4f addr: allow constructing all-zero addresses
0c0aee82 addr: create an all-zero addresses when parsing "any" or "default"

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agolibmd: update to 1.1.0
Nick Hainke [Wed, 11 Oct 2023 22:58:20 +0000 (00:58 +0200)]
libmd: update to 1.1.0

Changes:
16d68ab Release libmd 1.1.0
054bca1 build: Terminate lists in variables with «# EOL»
84d269e test: Add cases for SHA224 and SHA512-256
a677e68 test: Add a new test_eq() helper function
4c5931f Sync SHA2 changes from OpenBSD
9934d94 Sync SHA1 changes from OpenBSD
457e30a Sync RMD160 changes from OpenBSD
b2e54bc Sync MD5 changes from OpenBSD
ee56a52 Sync MD4 changes from OpenBSD
b9496ac Sync MD2 changes from NetBSD
09d5824 Remove unused <assert.h>
08b2c5d build: Rename libmd_alias() to libmd_strong_alias()
ed69599 On Darwin use assembler to support symbol aliases
b74b777 build: Do not use strong aliases on macOS
94838ec build: Require automake 1.11
39cbc7b build: Fix configure.ac indentation
4620a04 build: Switch to debian:latest Docker image
e408786 build: Fix version script linker support detection
0ef1e4d doc: Move mailing list reference to the end
a3f1671 man: Add new libmd(7) man page

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agolibjson-c: update to 0.17
Nick Hainke [Wed, 11 Oct 2023 22:51:16 +0000 (00:51 +0200)]
libjson-c: update to 0.17

Release Notes:
https://github.com/json-c/json-c/blob/ad8b8afa7d567053b87f2d37ee4a534e13c210c7/ChangeLog#L2

Refresh patch:
- 001-dont-build-docs.patch

Delete upstreamed patch:
- 010-fix-build-with-clang-15.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agotools/zlib: update to 1.3
Nick Hainke [Wed, 11 Oct 2023 22:33:04 +0000 (00:33 +0200)]
tools/zlib: update to 1.3

Changes in 1.3 (18 Aug 2023)
- Remove K&R function definitions and zlib2ansi
- Fix bug in deflateBound() for level 0 and memLevel 9
- Fix bug when gzungetc() is used immediately after gzopen()
- Fix bug when using gzflush() with a very small buffer
- Fix crash when gzsetparams() attempted for transparent write
- Fix test/example.c to work with FORCE_STORED
- Rewrite of zran in examples (see zran.c version history)
- Fix minizip to allow it to open an empty zip file
- Fix reading disk number start on zip64 files in minizip
- Fix logic error in minizip argument processing
- Add minizip testing to Makefile
- Read multiple bytes instead of byte-by-byte in minizip unzip.c
- Add memory sanitizer to configure (--memory)
- Various portability improvements
- Various documentation improvements
- Various spelling and typo corrections

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agokernel: bump 5.15 to 5.15.135
John Audia [Wed, 11 Oct 2023 19:53:45 +0000 (15:53 -0400)]
kernel: bump 5.15 to 5.15.135

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

All patches automatically rebased.

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

Signed-off-by: John Audia <therealgraysky@proton.me>
14 months agotools/pkgconf: update to 2.0.3
Nick Hainke [Wed, 11 Oct 2023 15:22:40 +0000 (17:22 +0200)]
tools/pkgconf: update to 2.0.3

News:
- https://github.com/pkgconf/pkgconf/blob/752a9825dc8660d247c457aa4d256db4800ebd7c/NEWS#L13
- https://github.com/pkgconf/pkgconf/blob/752a9825dc8660d247c457aa4d256db4800ebd7c/NEWS#L4

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agotools/libdeflate: update to 1.19
Nick Hainke [Wed, 11 Oct 2023 15:04:00 +0000 (17:04 +0200)]
tools/libdeflate: update to 1.19

Release Notes:
https://github.com/ebiggers/libdeflate/blob/master/NEWS.md#version-119

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agotools/gmp: update to 6.3
Nick Hainke [Wed, 11 Oct 2023 14:54:13 +0000 (16:54 +0200)]
tools/gmp: update to 6.3

Release Notes:
https://gmplib.org/gmp6.3

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agotools/ccache: update to 4.8.3
Nick Hainke [Wed, 11 Oct 2023 12:38:51 +0000 (14:38 +0200)]
tools/ccache: update to 4.8.3

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

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agotools/cmake: update to 3.27.5
Nick Hainke [Wed, 11 Oct 2023 06:28:24 +0000 (08:28 +0200)]
tools/cmake: update to 3.27.5

Release Notes:
- https://www.kitware.com/cmake-3-27-5-available-for-download/
- https://www.kitware.com/cmake-3-27-6-available-for-download/
- https://www.kitware.com/cmake-3-27-7-available-for-download/

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agoutil-linux: update to 2.39.2
Nick Hainke [Tue, 1 Aug 2023 21:43:12 +0000 (23:43 +0200)]
util-linux: update to 2.39.2

Changelog:
4d3079ad4 build-sys: release++ (v2.39.2)
9dc7d9808 docs: update v2.39.2-ReleaseNotes
4ffb7ac7c docs: update AUTHORS file
20781132f po-man: merge changes
76228ce1c po: merge changes
86c851c27 po-man: update sr.po (from translationproject.org)
c695dce97 po: update sr.po (from translationproject.org)
b168eef36 po: update ja.po (from translationproject.org)
83557da34 po: update hr.po (from translationproject.org)
5495eeb64 po: update es.po (from translationproject.org)
7de55c1ea setarch: add PER_LINUX_FDPIC fallback
b101de3d0 libblkid: fix topology chain types mismatch
131098cc8 uuidd: improve man page for -cont-clock
112d2245e zramctl: add hint about supported algorithms
f5b01cd95 meson: check for HAVE_STRUCT_STATX_STX_MNT_ID
a1f803340 include: define pidfd syscalls if needed
032c502d5 wall: do not error for ttys that do not exist
140404e1f column: fix -l
1632bd6d4 lscpu: Even more Arm part numbers (early 2023)
fc0a64480 chrt: (man) add note about --sched-period lower limit
073d02941 meson: add check for struct statx
9d54f7c99 meson: add check for linux/mount.h
d14d39cbd libmount: improve EPERM interpretation
ce266c9e1 libmount: ifdef statx() call
a64cec15a libmount: check for struct statx
396798d6b libmount: check for linux/mount.h
03435a7c6 libmount: (utils) fix statx fallback
993581379 libmount: cleanup --fake mode
501227232 libmount: (python): work around python 3.12 bug
8950e9852 build-sys: add AX_COMPARE_VERSION
1e05167df libmount: update documentation for MNT_ERR_APPLYFLAGS
e7c34902f libmount: fix typo
e5858dbb6 libmount: use some MS_* flags as superblock flags
f1875239b libmount: use mount(2) for remount on Linux < 5.14
58cb00c63 github: check apt-cache in more robust way
0a9bf6166 libmount: handle failure to apply flags as part of a mount operation
e98ef85a8 build-sys: release++ (v2.39.1)
12169133e docs: update v2.39.1-ReleaseNotes
508e25110 docs: update AUTHORS file
6b865e1b0 po-man: merge changes
aa4f94cb5 po: merge changes
cad75b635 po-man: add ro.po (from translationproject.org)
8acfe93b7 po-man: add ko.po (from translationproject.org)
5f31e774c po-man: update uk.po (from translationproject.org)
29626b095 po: update hr.po (from translationproject.org)
90835e74a cal: fix long option name for -c
7826c3ebe cal: fix error message for bad -c argument
07e6b9a12 lib/strutils: fix typo
cc99bfd06 build-sys: don't call pkg-config --static if unnecessary
3b59942da logger: initialize socket credentials contol union
4746cf936 unshare: fix error message for unexpected time offsets
a34e6aced losetup: deduplicate find_unused() logic
423d9efab lib/loopdev: consistently return error values from loopcxt_find_unused()
8feec98a8 lib/loopdev: document function return values
36ce0c250 tests: (run.sh) detect builddir from working directory
1943ad6cd hardlink: (man) add missing comma
1a4522541 libmount: fix sync options between context and fs structs
3aba3fb95 tests: (lsfd) add a case for verifying ENDPOINTS column output in JSON mode
c289c152a lsfd: use ARRAY_STRING for ENDPOINTS column in JSON output mode
665e28c30 lsfd: (filter) weakly support ARRAY_STRING and ARRAY_NUMBER json types
d9fca2b62 sfdisk: add hint about duplicate UUIDs when use dump
d84ee5a46 lib: remove pager.c from libcommon
c50da4b07 lib/ include/: cleanup license headers
d5adeed7a lib/color-names: fix license header
868f7f10c tests: fix update special mount test output
2278e2f91 tests: backport special mount script
d8a4e680f libmount: always ignore user=<name>
22d0a6557 meson: check for _NL_TIME_WEEK_1STDAY in langinfo.h
205e88e51 meson: conditionalize waitpid
aebfa97d5 meson: add conditionalization for test progs
bbe24d5b1 meson: implement HAVE_PTY
bc58e3b35 meson: install write setgid
f5a411883 meson: install wall setgid
64e67f720 meson: install umount setuid
4c3c05006 meson: install mount setuid
58c107277 meson: install newgrp setuid
8549017af meson: install su setuid
fa818dc8d meson: install chsh setuid
1e9fc724e meson: install chfn setuid
53ff0fcda libmount: introduce LIBMOUNT_FORCE_MOUNT2={always,never,auto}
61307a950 libmount: (optlist) correctly detect ro status
8c85b0805 tests: backport mount_setattr test
5004732d8 libblkid: jfs - avoid undefined shift
c082e6182 build-sys: fix typo in waitpid check
b04446bfd Update fsck.8.adoc
9429cc72b dmesg: make kmsg read() buffer big enough for kernel
198fd3fb2 Fix Blizzard-M2-Max
20c04a509 Add recent Apple ARM cores
9d4d768f2 libmount: don't call hooks after mount.<type> helper
98ed3edf8 meson: install symlink for vigr man page
f25cc3372 meson: include bash-completion for write
760c01641 meson: include bash-completion for newgrp
ddf48064f libmount: cleanup enosys returns from mount hoop
230459358 libmount: don't call mount.<type> helper with usernames
6fa034d0a libmount: fix options prepend/insert and merging
f8c9ef62e libmount: check for availability of mount_setattr
9422991c9 libmount: don't pass option "defaults" to helper
2806759b5 build-sys: add --disable-waitpid
01e3ec515 mesg.1 cleanups/updates
00a19fb8c libblkid: (bcache) also calculate checksum over journal buckets
158639a2a libblkid: (bcache) extend superblock definition
43926e0b0 ci: prevent prompts during installation
01bb5d12d tools: (asciidoctor) explicitly require extensions module
da22c179c build-sys: only pass --failure-level if supported
1bfc285fa lsfd: (tests) fix typo
66fac3e71 blkzone: don't take address of struct blk_zone
d2e3ac959 enosys: add support for loongarch
a369feacc meson: require 0.57
f084562c3 enosys: split audit arch detection into dedicated header
88f76e37a enosys: add support for sparc
f65c49002 waitpid: only build when pidfd_open is available
ddf9b36ea libsmartcols: (samples): fix format truncation warning
0d0766fbe test_uuidd: make pthread_t formatting more robust
873a896e0 mkfs.minix: handle 64bit time on 32bit system
69d8400e4 enosys: add support for MIPS, PowerPC and ARC
0ee8ac065 test_enosys: fix build on old kernels

Remove upstreamed patches:
- 0001-test_enosys-add-support-for-mips.patch
- 200-meson-no-po.patch

Backport patch:
- 001-meson-properly-handle-gettext-non-existence.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
14 months agolantiq: Fix an sleeping function called from invalid context
Hauke Mehrtens [Mon, 9 Oct 2023 00:06:55 +0000 (02:06 +0200)]
lantiq: Fix an sleeping function called from invalid context

The ifx_pcie_bus_enum_hack() function is called in
ifx_pcie_read_config() while holding the ifx_pcie_lock spinlock. The
ifx_pcie_bus_enum_hack() function calls pci_get_slot() which could
sleep. Add a new function for pci_get_slot() which does not use a
semaphore, the mutex should be sufficient. This fixes the sleep in
atomic context which could cause a hang of the system.

This fixes the following warning seen with
CONFIG_KERNEL_DEBUG_ATOMIC_SLEEP=y.

[   12.264300] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff]
[   12.272226] BUG: sleeping function called from invalid context at kernel/locking/rwsem.c:1487
[   12.280684] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 9, name: kworker/u4:0
[   12.288781] CPU: 0 PID: 9 Comm: kworker/u4:0 Not tainted 5.15.134 #0
[   12.295135] Workqueue: events_unbound deferred_probe_work_func
[   12.300964] Stack : 80e70000 8008ac80 00000000 00000004 807c776c 8145b9ec 81424c00 800520ec
[   12.309316]         808a0000 8145ba2b 8145b844 8145b838 80414178 00000001 8145b9f8 81439ea0
[   12.317674]         00000000 00000000 807c776c 8145b838 ffffefff 00000000 00000000 ffffffea
[   12.326030]         00000081 8145b844 00000081 808a6f50 807c776c 00000000 00000000 80910000
[   12.334391]         00111bef 00000000 00000001 00000000 00000018 00000030 00000000 80e40000
[   12.342741]         ...
[   12.345177] Call Trace:
[   12.347613] [<8000c1d0>] show_stack+0x28/0xf0
[   12.351974] [<8038ba1c>] dump_stack_lvl+0x60/0x80
[   12.356667] [<8005eefc>] ___might_sleep+0x124/0x138
[   12.361547] [<806daf30>] down_read+0x24/0x88
[   12.365807] [<803cdd20>] pci_get_slot+0x2c/0xc0
[   12.370333] [<806d56ac>] ifx_pcie_read_config+0x164/0x330
[   12.375735] [<803be610>] pci_bus_read_config_dword+0x6c/0xd0
[   12.381399] [<803c20cc>] pci_bus_generic_read_dev_vendor_id+0x3c/0x1a8
[   12.387915] [<803c27ec>] pci_scan_single_device+0x88/0x154
[   12.393404] [<803c2928>] pci_scan_slot+0x70/0x134
[   12.398099] [<803c3bf0>] pci_scan_child_bus_extend+0x5c/0x320
[   12.403849] [<803c4178>] pci_scan_root_bus_bridge+0xd0/0xec
[   12.409414] [<806d45a8>] pcibios_scanbus+0xe4/0x21c
[   12.414293] [<806d4908>] register_pci_controller+0xb8/0x11c
[   12.419858] [<806d5f9c>] ifx_pcie_bios_probe+0x724/0x940
[   12.425174] [<80417574>] platform_probe+0x38/0x90
[   12.429868] [<80414d68>] really_probe.part.0+0xac/0x354
[   12.435103] [<80415298>] driver_probe_device+0x4c/0x154
[   12.440313] [<80415904>] __device_attach_driver+0xd0/0x15c
[   12.445802] [<804129d8>] bus_for_each_drv+0x70/0xb0
[   12.450676] [<80415610>] __device_attach+0xdc/0x194
[   12.455545] [<80413ca8>] bus_probe_device+0x9c/0xb8
[   12.460419] [<8041420c>] deferred_probe_work_func+0x94/0xd4
[   12.465995] [<8004fcb4>] process_one_work+0x27c/0x4c8
[   12.471044] [<80050710>] worker_thread+0x34c/0x5f8
[   12.475825] [<800587a8>] kthread+0x168/0x18c
[   12.480090] [<80006ef8>] ret_from_kernel_thread+0x14/0x1c

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>