Upstream has switched to gnu11 not too long ago. One advantage of
backporting this to these older kernels is, that we can encourage and
write better upstreamable kernels. E.g. the kernel devs prefer loop
declarations. Shrinking the master/local gap will be useful in these
cases.
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl> Acked-by: Christian Marangi <ansuelsmth@gmail.com>
Huangbin Zhan [Tue, 29 Mar 2022 16:15:29 +0000 (00:15 +0800)]
build: image: use printf for ModelNameLimit16
Fix syntax error on macos, for substr is undefined results according to
the POSIX standard.
From expr on macos:
According to the POSIX standard, the use of string arguments length,
substr, index, or match produces undefined results. In this version of
expr, these arguments are treated just as their respective string values.
Signed-off-by: Huangbin Zhan <zhanhb88@gmail.com>
[ wrap commit description to 80 columns and improve it ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Felix Fietkau [Mon, 10 Oct 2022 20:50:35 +0000 (22:50 +0200)]
mac80211: fix issues in HE capabilities
Enable HE SU beamformee by default
Fix spatial reuse configuration:
- he_spr_sr_control is not a bool for enabling, it contains multiple bits
which disable features that should be disabled by default
- one of the features (PSR) can be enabled through he_spr_psr_enabled
- add option to disable bss color / spatial reuse
ipq806x: 5.15: add krait-cc modernization patch and fixup
Add multiple patch for krait-cc modernization and multiple fixup for the
driver. Also modify a patch to enable the qsb fixed clock and add pxo to
krait-cc node.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
ipq806x: 5.15: add boot-partitions binding to fix block warning
The patch has changed implementation and now the binding has changed.
Replace the old binding with boot-partitions and reimplement the
definition with the new definition.
The new definition is:
<offset1 size1 offset2 size2 offset3 ...>
and now supports sparsed patch.
Also add missing binding in some dts and add the backup boot partition
to the boot-partitions list.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
ipq806x: 5.15: replace dtsi patches with upstream version
Reorganize dtsi patches with upstream version and drop dtsi in 5.15
files.
Also add an additional upstream patch for hwspinlock support.
Refresh all the dts with needed changes.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
To actually use ccache cache on kernel test from pr, the kernel workflow
has to be run first from a push action.
This will permit as a side effect to test merged commits and catch commit
that may cause regression in kernel compilation even outside the github
system.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
lantiq: dts: vr9: Add missing properties to the CPU port on the switch
The CPU port should define the phy-mode and and a PHY phandle or
fixed-link to indicate how the CPU port is connected to the SoC's
Ethernet controller. On xRX200 this is all internal connection, so use
phy-mode = "internal" along with a fixed-link that matches the
definition inside ð0.
Linux 6.0 shows a warning since upstream commit e09e9873152e3f ("net:
dsa: make phylink-related OF properties mandatory on DSA and CPU
ports"). when these properties are missing. Adding the properties
before OpenWrt is updated to Linux 6.0 is harmless.
Suggested-by: Martin Schiller <ms@dev.tdt.de> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Lech Perczak [Tue, 10 Aug 2021 19:37:17 +0000 (21:37 +0200)]
odhcp6c: respect 'delegate' option for 464XLAT sub-interface
dhcpv6.script contained support for disabling prefix delegation of 464XLAT
sub-interface, but netifd protocol handler was missing the required
export to disable this. Add missing export, akin to DS-Lite and MAP.
Signed-off-by: Lech Perczak <lech.perczak@gmail.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
Daniel Golle [Sun, 9 Oct 2022 15:34:35 +0000 (16:34 +0100)]
mediatek: filogic: set correct PWM clock and clean thermal zone
* set correct clocks for PWM to work.
* MT7986 PWM does have the 26MHz-clock-select, set that in patch
* drop useless 'passive' trip point in thermal zone
* extend pwm-fan to have 3 active operating points
* set reasonable trip points in thermal zone
* invert pwm-fan operating points and set shorter period to allow
less noisy operation of the PWM fan of the BPi-R3.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
In *_enable_learning() only address learning should be configured, so
remove enabling forwarding. Forwarding is configured by the respective
*_enable_flood() functions.
Clean up both functions for RTL838x and RTL839x, and fix the comment on
the number of entries.
INAGAKI Hiroshi [Sun, 7 Aug 2022 06:12:46 +0000 (15:12 +0900)]
realtek: update SMP-related calls in prom_init()
The availabibity of probing CPC depends on CONFIG_MIPS_CPC symbol and it
will be checked in arch/mips/include/asm/mips-cpc.h. RTL9310 selects
this symbol, so the family check is redudant.
Furthermore, mips_cm_probe() is already called from setup_arch() in
mips/kernel/setup.c before prom_init(), and as such is not required.
Also move mips_cpc_probe() to run just before registering SMP ops.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
[squash SMP change commits, reword commit message] Signed-off-by: Sander Vanheule <sander@svanheule.net>
---
This patch only really has an impact on the rtl931x subtarget, which has
no devices. Noboby is currently set up to test these patches either, but
the end result is closer to MIPS_GENERIC, so I do not expect it to cause
issues.
Robert Meijer [Fri, 9 Oct 2020 17:58:46 +0000 (19:58 +0200)]
ath79: increase max tx ring buffer for ag71xx
This allows the user to specify a larger tx ring buffer size via ethtool.
Having symmetrical ring buffer sizes increases throughput on high bandwidth
(1 gbps tested) network connections.
The default value is not changed so the same behaviour is saved.
Signed-off-by: Robert Meijer <robert.s.meijer@gmail.com>
[ improve title, commit description and wrap to 80 columns ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Paul Spooren [Thu, 9 Sep 2021 08:57:46 +0000 (22:57 -1000)]
README: add download section
The *Firmware Selector* was built to simplify users finding suitable
images for their devices. Let's give it more visibility so unleashing
your home router becomes an easier thing.
As an alternative for more advanced user, provide the directl link to
the wiki download section.
Signed-off-by: Paul Spooren <mail@aparcar.org>
[ fix typo in commit description, add link to Wiki download page ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Use ccache to speedup kernel compilation.
Ccache dir is cached across each build test. To refresh ccache directory
we generate an hash of the kernel include files, that includes the
kernel versions of every kernel supported and the kernel compile
includes.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> Reviewed-by: Robert Marko <robimarko@gmail.com>i
[ improve commit description ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Convert luma_wrtq-329acn device to DSA and enable it.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> Reviewed-by: Robert Marko <robimarko@gmail.com>
[ improve commit description ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Koen Vandeputte [Tue, 4 Oct 2022 08:48:18 +0000 (10:48 +0200)]
mac80211: fix compile error when mesh is disabled
This fixes following compile error seen when
building mac80211 with mesh disabled:
.../backports-5.15.58-1/net/mac80211/agg-rx.c: In function 'ieee80211_send_addba_resp':
...backports-5.15.58-1/net/mac80211/agg-rx.c:255:17: error: 'struct sta_info' has no member named 'mesh'
255 | if (!sta->mesh)
| ^~
sta_info.h shows this item as being optional based on flags:
struct mesh_sta *mesh;
Guard the check to fix this.
Fixes: f96744ba6b ("mac80211: mask nested A-MSDU support for mesh") Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>
Petr Štetiar [Thu, 29 Sep 2022 16:45:40 +0000 (18:45 +0200)]
treewide: fix security issues by bumping all packages using libwolfssl
As wolfSSL is having hard time maintaining ABI compatibility between
releases, we need to manually force rebuild of packages depending on
libwolfssl and thus force their upgrade. Otherwise due to the ABI
handling we would endup with possibly two libwolfssl libraries in the
system, including the patched libwolfssl-5.5.1, but still have
vulnerable services running using the vulnerable libwolfssl-5.4.0.
So in order to propagate update of libwolfssl to latest stable release
done in commit ec8fb542ec3e4 ("wolfssl: fix TLSv1.3 RCE in uhttpd by
using 5.5.1-stable (CVE-2022-39173)") which fixes several remotely
exploitable vulnerabilities, we need to bump PKG_RELEASE of all
packages using wolfSSL library.
Petr Štetiar [Fri, 12 Aug 2022 11:51:40 +0000 (13:51 +0200)]
ipq40xx: glinet-b1300: fix LAN and WAN MAC address assigments
When testing the DSA changes with 5.15.60 kernel, I've noticed, that the
MAC addresses are not properly configured, there is single MAC being
used for LAN and WAN interfaces:
Lech Perczak [Wed, 15 Dec 2021 20:10:11 +0000 (21:10 +0100)]
ipq40xx: Meraki MR33: convert MAC addresses to nvmem
This fixes assigning random MAC to br-lan interface upon boot.
While at that, rename at24@50 node to eeprom@50, to align with upstream
device tree style.
Robert Marko [Tue, 14 Dec 2021 00:00:00 +0000 (01:00 +0100)]
ipq40xx: convert some boards to DSA
Convert IPQ40xx boards to DSA setup.
Signed-off-by: Leon M. George <leon@georgemail.eu> Signed-off-by: Lech Perczak <lech.perczak@gmail.com> Signed-off-by: Nick Hainke <vincent@systemli.org> Signed-off-by: ChunAm See <z1250747241@gmail.com> Signed-off-by: Jeff Kletsky <git-commits@allycomm.com> Signed-off-by: Andrew Sim <andrewsimz@gmail.com> Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Serhii and others have experienced PSGMII link degradation up to point
that it actually does not pass packets at all or packets arrive as zeros.
This usually happened after a couple of hot reboots.
Serhii has managed to track it down to PSGMII calibration not being done
properly and has fixed it, so all of the code is Serhii-s work.
Signed-off-by: Serhii Serhieiev <adron@mstnt.com> Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Robert Marko [Mon, 1 Nov 2021 17:30:00 +0000 (18:30 +0100)]
ipq40xx: enable ethernet and DSA driver combo
Select the Ethernet driver, DSA tag driver and the DSA driver itself to
be built in the kernel config.
They automatically pull in switchdev and phylink.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Robert Marko [Mon, 27 Dec 2021 14:11:18 +0000 (15:11 +0100)]
ipq40xx: add DSA switch driver
Qualcomm IPQ40xx SoC-s have a variant of QCA8337N switch built-in.
It shares most of the stuff with its external counterpart, however it is
modified for the SoC.
Namely, it doesn't have second CPU port (Port 6), so it has 6 ports
instead of 7.
It also has no built-in PHY-s but rather requires external PSGMII based
companion PHY-s (QCA8072 and QCA8075) for which it first needs to carry
out calibration before using them.
PSGMII has a SoC built-in PHY that is used to connect to the PHY-s which
unfortunately requires some magic values as the datasheet doesnt document
the bits that are being set or the register at all.
Since its built-in it is MMIO like other peripherals and doesn't have its
own MDIO bus but depends on the SoC provided one.
CPU connection is at Port 0 and it uses some kind of a internal connection
and no traditional RGMII/SGMII.
It also doesn't use in-band tagging like other qca8k switches so a shinfo
based tagger is used.
This is based on the current OpenWrt qca8k version that has been imported
from generic target.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Robert Marko [Mon, 1 Nov 2021 17:59:46 +0000 (18:59 +0100)]
ipq40xx: import qca8k from generic
This is just importing the qca8k driver from the generic target.
It will be used as the based for IPQ40xx version, this is just
to be able to see the diff.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Robert Marko [Mon, 8 Nov 2021 22:06:02 +0000 (23:06 +0100)]
ipq40xx: qca807x: always set PSGMII AZ WAR
There is no point in using a DT property to trigger setting the PSGMII
PHY AZ transmitting ability.
Especially since EEE can be disabled using ethtool anyway.
Fixup the mask for setting the workaround as only BIT(0) is actually being
changed and use the phy_clear_bits_mmd helper instead of reading, then
clearing the bit and writing back as it does everything for us.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Robert Marko [Mon, 1 Nov 2021 11:32:34 +0000 (12:32 +0100)]
ipq40xx: add shinfo based DSA tag driver
IPQ40xx requires a special DSA tag driver despite using the QCA8337N
switch.
However they have changed the header format and the existing QCA tag
driver cannot be reused.
For details on how it actually works and else read the patch commit
description.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Robert Marko [Mon, 25 Oct 2021 16:30:00 +0000 (18:30 +0200)]
ipq40xx: qca807x: add SFP improvements
Currently, QCA807x doesnt do any kind of validation to see whether it
actually supports the inserted module.
So lets add checks to allow only 1000BaseX and 100BaseFX based modules.
While adding validation, move fiber configuration to insert/remove events
instead of always doing it at config time.
This allows getting rid of the DT property for fiber enable and now only
the upstream sfp phandle is required.
Since we are refactoring fiber related code, lets heavily simplify the
status polling as the current logic is overcomplicated due to previous
wish to support non standard SFP cages that dont have pins properly
connected, that is removed now and only proper SFP cages will work.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Josef Schlehofer [Wed, 14 Sep 2022 13:23:45 +0000 (15:23 +0200)]
uboot-mvebu: backport LibreSSL patches for older version of LibreSSL
If you would like to compile the newest version of U-boot together with the stable
OpenWrt version, which does not have LibreSSL >= 3.5, which was updated
in the master branch by commit 5451b03b7ceb2315445c683fe174e28bbdd49c2f
("tools/libressl: bump to v3.5.3"), then you need these two patches to
fix it. They are backported from U-boot repository.
This should be backported to stable OpenWrt versions.
Reported-by: Michal Vasilek <michal.vasilek@nic.cz> Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Josef Schlehofer [Wed, 14 Sep 2022 13:19:56 +0000 (15:19 +0200)]
uboot-mvebu: backport patch to fix compilation on non glibc system
This issue was reported by @paper42, who is using Void Linux with musl
to compile OpenWrt and its packages and found out it is not possible to
compile U-boot for Turris Omnia (neither any other).
It fixes following output:
```
HOSTCC tools/kwboot
tools/kwboot.c: In function 'kwboot_tty_change_baudrate':
tools/kwboot.c:662:6: error: 'struct termios' has no member named 'c_ospeed'
662 | tio.c_ospeed = tio.c_ispeed = baudrate;
| ^
tools/kwboot.c:662:21: error: 'struct termios' has no member named 'c_ispeed'
662 | tio.c_ospeed = tio.c_ispeed = baudrate;
| ^
tools/kwboot.c:690:31: error: 'struct termios' has no member named 'c_ospeed'
690 | if (!_is_within_tolerance(tio.c_ospeed, baudrate, 3))
| ^
tools/kwboot.c:693:31: error: 'struct termios' has no member named 'c_ispeed'
693 | if (!_is_within_tolerance(tio.c_ispeed, baudrate, 3))
|
```
Tested-by: Michal Vasilek <michal.vasilek@nic.cz> Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Changes: c65c02c trace-cmd: Version 3.1.3 14a7aca trace-cmd library: Add API for mapping between host and guests 9191b8e tracecmd extract: Allow using --compression. d63ae35 trace-cmd report: Add callback for kvm plugin to show guest functions 0c7ef72 trace-cmd library: Add man pages for iterator functions 3cd1b55 trace-cmd library: Add tracecmd_follow_event() 27ea9e1 libtracecmd: Add documentation on tracecmd_set/get_private() 3c544ad libtracecmd: Add a man pages for handling of time stamps 5baf7a3 libtracecmd: Add check-manpages.sh ee007a1 trace-cmd library: Make tracecmd_filter_match() local cb04105 tracecmd library documentation: Use star and not underscore for function names 54931be trace-cmd: Do not return zero length name for guest by name 43ffa27 trace-cmd: Close socket descriptor on failed connection 4744ca3 trace-cmd record/agent: Add --notimeout option e512b22 trace-cmd: Add compile time overrides for libraries a6fe935 trace-cmd: README: Add note on installing libtracecmd 067f45f trace-cmd: libtracecmd: Fixing linking to C++ code 689a0d4 tracecmd: Add NO_LIBZSTD option to disable libzstd 6bbcd3e trace-cmd report: Use library tracecmd_filter_*() logic 955d05f trace-cmd report: Make filter arguments match their files 82ed4a9 trace-cmd library: Add filtering logic for iterating events dbd8777 trace-cmd report: Use tracecmd_iterate_events_multi() 78a74b1 trace-cmd library: Allow callers to save private data in tracecmd_input handlers b37903a tracecmd library: Add tracecmd_iterate_events_multi() d83b662 tracecmd utest: Add test to test using the libraries to read 2cb6cc2 tracecmd library: Add tracecmd_iterate_events() 762839a tracecmd: Use make variable instead of if statement for zlib test 1504f3f trace-cmd: Document new proxy args for {agent,record} 9a1c5d7 trace-cmd record: Keep --proxy from being passed to agents ef8a8d7 trace-cmd libs: Initialize msg to NULL tracecmd_msg_read_data() 39ec10a trace-cmd: Do not use instance from trace context
Nick Hainke [Sun, 25 Sep 2022 09:10:15 +0000 (11:10 +0200)]
libtracefs: update to 1.5.0
Changes: 93f4d52 libtracefs: version 1.5 bc857db libtracefs: Add tracefs_u{ret}probe_alloc to generic man page db55441 libtracefs: Add tracefs_debug_dir() to generic libtracefs man page d2d5924 libtracefs: Add test instructions for openSUSE 4a7b475 libtracefs: Fix test suite typo ee8c644 libtracefs: Add tracefs_tracer_available() helper 799d88e libtracefs: Add API to set custom tracing directory 1bb00d1 libtracefs: allow pthread inclusion overrideable in Makefile 04651d0 libtracefs sqlhist: Allow pointers to match longs 9de59a0 libtracefs: Remove double free attempt of new_event in tracefs_synth_echo_cmd() 0aaa86a libtracefs: Fix use after free in tracefs_synth_alloc() d2d5340 libtracefs: Add missed_events to record 9aaa8b0 libtracefs: Set the number of CPUs in tracefs_local_events_system() 56a0ba0 libtracefs: Return negative number when tracefs_filter_string_append() fails c5f849f libtracefs: Set the long size of the tep handle in tracefs_local_events_system() 5c8103e revert: 0de961e74f96 ("libtracefs: Set visibility of parser symbols as 'internal'")