aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/ath10k-ct
Commit message (Collapse)AuthorAgeFilesLines
* ath10k-ct: update to latest versionÁlvaro Fernández Rojas2020-12-284-13/+13
| | | | | | | | | Changelog: - ath10k-ct: Fix invalid use of ath-cb struct Runtime-tested on ath79 (TP-Link Archer C7 v2) and ipq806x (Netgear R7800). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* treewide: nuke DRIVER_11W_SUPPORTDobroslaw Kijowski2020-12-231-2/+2
| | | | | | | | | | | | | | As of hostapd upstream commit 7d2ed8ba "Remove CONFIG_IEEE80211W build parameter" https://w1.fi/cgit/hostap/commit?id=7d2ed8bae86a31dd2df45c24b3f7281d55315482 802.11w feature is always enabled in the build time. It doesn't make sense to opt-in 802.11w per driver as hostapd will always be compiled with this feature enabled. As suggested by Hauke Mehrtens, for now keep 11w enabled in build_features.h for compatibility reasons. This option will be dropped when LuCI is adjusted. Signed-off-by: Dobroslaw Kijowski <dobo90@gmail.com>
* ath10k-ct: switch to driver version 5.8Stijn Tintel2020-11-267-108/+98
| | | | | | | | | | | | | | | | Since we are using mac80211 5.8, let's also switch the ath10k-ct driver to the new 5.8 version. Modify patches so they patch the new ath10k-ct driver version. Adapt 164-ath10k-commit-rates-from-mac80211.patch. Drop upstreamed 205-ath10k-Add-NL80211_EXT_FEATURE_AQL-flag.patch. Drop the other options for CT_KVER from the comment, as it is incorrect and there are too many versions to sum up and maintain there. Runtime-tested on ath79 (D-Link DAP-2695-A1, TP-Link EAP245-v3). Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* ath10k-ct: update to latest versionÁlvaro Fernández Rojas2020-11-245-22/+22
| | | | | | | | 1d28d17 ath10k-ct: Fix RSSI reporting for wave-1 firmware. 0c2949e ath10k-ct: fwcfg allows configuring dma-burst setting. 13319ff ath10k-ct: stable patches, debugfs crashdump, 5.8 driver Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ath10k-ct: update to version 2020-06-30Álvaro Fernández Rojas2020-07-014-14/+14
| | | | | | | | Backports commit "a1769bb68a850508a492e3674ab1e5e479b11254", which reverts upstream commit "76d164f582150fd0259ec0fcbc485470bcd8033e" (ath10k: fix DMA related firmware crashes on multiple devices). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ath10k-ct: update to version 2020-04-29Petr Štetiar2020-04-301-3/+3
| | | | | | | | | | | | | | | | Pulls in workaround for TX rate code firmware bug which might as well help track it down via different printk()s and thus possibly provide more clue for proper fix. Firmware currently sends wrong (0xff) TX rate code which causes WARN_ONCE, so the workaround just changes this bogus value (0xff) into 0. For 5.4 it also pulls in tx-queue-wake throttling patch "ath10k: Restart xmit queues below low-water mark", which should improve performance with high number of concurrent TCP streams. Ref: https://github.com/greearb/ath10k-ct/pull/129 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath10k-ct: remove old patchesÁlvaro Fernández Rojas2020-04-2813-2300/+651
| | | | | | Only keep 5.4 patches. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* ath10k-ct: Support AQL on ath10k CT_KVER-5.4Jose Olivera2020-03-301-0/+10
| | | | | | | | | | | | | | | | | Commit ea50780 backported Airtime Queue Limits (AQL) from Linux 5.5 to OpenWrt's backports 5.4. However, this only enabled AQL for the vanilla ath10k driver. This patch also enables it for ath10k-ct. Tested on: * 2xTP-Link Archer A7v5 (QCA9563/QCA988X) * Backports version 5.4-rc8 & 5.4.27 * ath10k-ct and ath10k-ct-htt firmware version 014 to 017 * ath10k-ct driver versions dc025dc to 3d173a4 (CT_KVER-5.4) * WPA2, 802.11krv Tested since January 25, 2020. Signed-off-by: Jose Olivera <oliverajeo@gmail.com>
* ath10k-ct: update to version 2020-03-25Álvaro Fernández Rojas2020-03-271-3/+3
| | | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> Acked-by: Petr Štetiar <ynezz@true.cz>
* ath10k-ct: Use ath10k-ct version 5.4Hauke Mehrtens2020-02-246-2/+643
| | | | | | This makes ath10k-ct use the version based on kernel 5.4 by default. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: Update to version 2020-02-18Hauke Mehrtens2020-02-243-23/+23
| | | | | | This adds AP VLAN support. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: replace SUBDIRS with M in package recipesTomasz Maciej Nowak2020-02-221-1/+1
| | | | | | | The SUBDIRS variable has been removed in kernel 5.4, and was deprecated since the beginnig of kernel git history in favour of M or KBUILD_EXTMOD. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* ath10k-ct: update to 2020-01-29Michael Yartys2020-02-1310-41/+41
| | | | | | | | | | | | | | | | | Changes: ath10k-ct: Support better RSSI measurements. When used with recent firmware, these changes allow the driver to query per-chain noise-floor from the radio to better calculate the per-chain RSSI. The per-chain RSSI is then summed to provide the 'combined RSSI'. This gives better per-chain RSSI as well as combined RSSI, especially when running with more than 20Mhz bandwidths. Refresh patches. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [ipq806x+qca9984,ipq4019+qca9986] Signed-off-by: Michael Yartys <michael.yartys@protonmail.com>
* kernel: ath10k-ct: provide a build variant for small RAM devicesPaul Fertser2019-12-243-1/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to many bugreports [0][1][2] the default ath10k-ct kernel module is unusable on devices with just 64 MiB RAM or with 128 MiB and dual ath10k cards. The target boards boot but eventually oom-killer starts to interfere with normal operation, so the current state is effectively broken. Since the two patches in question have a performance impact (and possibly some other unexpected side-effects) a dedicated build variant is added so that users of the low RAM devices can still benefit from all the ath10k-ct advantages. According to testing [3] results, the issue can be experienced even with "a 256MB device with three radios". Measured performance impact of implementing small buffers was lowering "the maximum 5 GHz throughput on an IPQ40xx device without RPS/XPS optimizations from 494/432 Mbit/s for TCP transfers (download/upload) to 438/343 Mbit/s" The patches were apparently inspired by QSDK tweaks used by ODMs for the affected devices. [0] http://lists.infradead.org/pipermail/openwrt-devel/2019-December/020573.html [1] https://github.com/openwrt/openwrt/pull/1077 [2] https://bugs.openwrt.org/index.php?do=details&task_id=2664 [3] https://github.com/freifunk-gluon/gluon/pull/1440#issue-195607701 Signed-off-by: Paul Fertser <fercerpav@gmail.com> [Remove double CONFIG_ATH10K-CT_LEDS entry] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.4-rc2Hauke Mehrtens2019-10-193-3/+44
| | | | | | | | | This updates mac80211 to backports based on kernel 5.4-rc2 ath10k-ct was updated to match the API changes and iw now uses the new nl80211.h header file. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: update to version 2019-09-09Robert Marko2019-09-159-18/+18
| | | | | | | | | Update the ath10k-ct driver version to 5e8cd86f90dac966d12df6ece84ac41458d0e95f to enable dynamic VLANs to work. Patches refreshed during the bump. Signed-off-by: Robert Marko <robimarko@gmail.com> [commit description facelift] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ath10k-ct: update to HEAD of 2019-08-14 - 9e5ab2Christian Lamparter2019-08-247-41/+96
| | | | | | | | | | | | | Update ath10k-ct to commit 9e5ab25027e0971fa24ccf93373324c08c4e992d git log --pretty=oneline --abbrev-commit f0aa8130..9e5ab250 9e5ab25 ath10k-ct: Update to latest 5.2 upstream, support bigger mtu, 160Mhz Created with the help of the make-package-update-commit.sh script and refresh patches. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath10k-ct: Revert back to version 4.19Hauke Mehrtens2019-07-181-1/+1
| | | | | | Version 5.2 shows a error when registering the devive for me. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: switch to version 5.2Hauke Mehrtens2019-07-185-3/+606
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: remove patches for old versionsHauke Mehrtens2019-07-188-1426/+0
| | | | | | | | | | | | the ath10k-ct package ships multiple versions of the ath10k-ct driver, OpenWrt currently only uses the version 4.19, but we still ship some patches for older versions. Remove all patches only touching older versions and also remove the patch for older versions from patches which do the same changes to multiple versions of ath10k-ct. This removes some unneeded patches, the end binary should stay the same. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: update to version 2019-06-13Hauke Mehrtens2019-07-185-24/+24
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: Update to 2019-06-13Kevin Darbyshire-Bryant2019-06-139-23/+23
| | | | | | | | | | | | Changes: ath10k: Improve PMF/MPF mgt frame check And add a driver for 5.2 (beta, not even tested yet) kernel. Refresh patches. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ath10k-ct: Update to current versionRobert Marko2019-05-1111-48/+48
| | | | | | | | | | | | | This patch updates ath10k-ct to current version. Changes are: ath10k-ct: Fix printing PN in peer stats. Previous logic was incorrect. Also add set-special API to enable returning PN. Patches refreshed and tested on 8devices Jalapeno dev board(IPQ4019) Signed-off-by: Robert Marko <robimarko@gmail.com>
* ath10k-ct: Update to 2019-04-08Koen Vandeputte2019-04-231-3/+3
| | | | | | | | | | | | | | | | 9cd701a4f028 ath10k-ct: Add PN get/set API for wave-2 firmware. 5c8a4668323b ath10k-ct: Support over-riding the power ctl table in eeprom 75e2705f31bb ath10k-ct: CCA, eeprom, other changes. a696e602a0fc ath10k-ct: Attempt to fix-out-of-tree compile for 4.16 a2aec62262df ath10k: Improve beacon tx status for 4.20 kernel. be5c21a82b15 ath10k-ct: Fix out-of-tree compile for 4.20, pull in stable changes for 4.19 Fixes compile errors when using the 4.20 flavour. Also the amount of beacon errors seems to have dropped. Tested on a Mikrotik RB912UAGS-5HPacD Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath10k-ct: Update to 2019-03-25Christian Lamparter2019-03-256-23/+23
| | | | | | | | 2e917efb607f ath10k: Add slow-pci bus work-around, sw-crypt blockack support. cc73ceb0dbc7 ath10k: Fix out-of-tree compile for 4.16 driver. 4b3cf7c20972 ath10k: Improve tx-status reporting. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath10k-ct: limit available channels via DTDavid Bauer2019-03-061-0/+39
| | | | | | | | | | | | | | | This backports upstream commit 34d5629 ath10k: limit available channels via DT ieee80211-freq-limit to the 4.19 ath10k-ct version. Without this patch, disabled channels are still listed as a supported configuration for the radio. The identical patch was also backported by OpenWRT to the non-ct driver. It can be dropped as soon as we switch to an ath10k-ct version based on 4.20 or higher. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath10k-ct: Update to 2019-02-28Michael Yartys2019-03-0610-53/+53
| | | | | | | | | 9360f389234a ath10k: Support up to 24 vAP per radio, fix DMA bug in wave-1. 9cbf8d430974 ath10k-ct: Add 4.20 driver, SGI support for fixed-rate tx. Runtime tested on: ipq806x Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
* ath10k-ct: fix incorrect multicast/broadcast rate settingSven Eckelmann2019-02-264-2/+82
| | | | | | | | | | | | | | | | | If no mcast_rate is set for the wifi-iface then there is no rate_idx (0) set for the bss. This can break for example 5GHz meshpoint interfaces because 0 maps to a CCK rate (11Mbit/s). It must also be avoided that the ath10k-ct internal state for the rates is not synced with the mac80211 rates state. Otherwise, the user specified rate (e.g. a wifi-iface mcast_rate for a meshpoint interface) will only be set on startup. And a short while after that, ath10k-ct specific code in ath10k_check_apply_special_rates is missing a valid rate in its own structures and is then recalculating a new default rate. This default rate is in most situations not the requested rate. Fixes: 4df3c71cd4c5 ("ath10k-ct: Update to 2018-12-11 and use version based on 4.19") Signed-off-by: Sven Eckelmann <sven@narfation.org>
* ath10k-ct: support for management rate controlSven Eckelmann2019-02-113-1/+156
| | | | | | | | | | | | By default the firmware uses 1Mbps and 6Mbps rate for management packets in 2G and 5G bands respectively. But when the user selects different basic rates from the userspace, we need to send the management packets at the lowest basic rate selected by the user. This change makes use of WMI_VDEV_PARAM_MGMT_RATE param for configuring the management packets rate to the firmware. Signed-off-by: Sven Eckelmann <sven@narfation.org>
* ath10k-ct: Update to 2018-12-20Robert Marko2018-12-244-21/+21
| | | | | | | | | | | This version removes a lot of unusefull warnings that would quickly overflow the dmesg. Warnings like this: ath10k_ahb a800000.wifi: Invalid legacy rate 26 peer stats ath10k_ahb a000000.wifi: Invalid VHT mcs 15 peer stats On this version I only had 2 warnings at all. Tested on 8devices Jalapeno. Signed-off-by: Robert Marko <robimarko@gmail.com>
* ath10k-ct: Update to 2018-12-11 and use version based on 4.19Hauke Mehrtens2018-12-155-24/+583
| | | | | | | | | | This updates the ath10k-ct driver to the version from 2018-12-11 and selects the ath10k-ct version based on kernel 4.19 by default. CONFIG_ATH10K_CE was introduced between kernel 4.16 and 4.19 and is a mandatory option. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: Update to 29-09-2018Robert Marko2018-10-113-102/+4
| | | | | | | | | | | | | | | | | Update ath10k-ct to be able to drop 210-ath10k-fix-recent-bandwidth-conversion-bug.patch as its upstream. b9989fbd5d6e ath10k-ct: Add upstream patch to fix peer rate reporting. ac9224344dbf ath10k-ct: Support sending custom frames with no-ack flag. bc938bc2021e ath10k-ct: Support sending pkts with specific rate on 10.4 firmware. Runtime tested on: - GL-iNet GL-B1300 - Mikrotik RB912 + QCA9882 Signed-off-by: Robert Marko <robimarko@gmail.com> [Added list of all changes from previous version + add own test device] Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath10k-ct: fix bandwidth conversion bugHauke Mehrtens2018-09-281-0/+98
| | | | | | | | | | This backports a patch from the upstream kernel which was also shipped previously in mac80211. This fixes the following warning: WARNING: CPU: 0 PID: 2881 at backports-4.19-rc5-1/net/wireless/util.c:1146 cfg80211_calculate_bitrate+0x238/0x348 [cfg80211] invalid rate bw=2, mcs=0, nss=1 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: adds leds supportAnsuel Smith2018-09-283-0/+663
| | | | | | This rework and adds patch from ath10k source to make leds work also on candela source Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* ath10k-ct: update to version ath10k-4.16Hauke Mehrtens2018-09-264-9/+219
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: bump to git HEADStijn Tintel2018-08-261-3/+3
| | | | | | | | | | e0d2ce0 ath10k: Support setting tx_antenna in descriptor field. 29c644f Update to latest 4.13 and 4.16 ath10k-ct drivers. 20db9db ath10k: Support vdev stats for 4.9, 4.16 kernel fd92066 ath10k: Support 'ct-sta-mode' for 9984 firmware that supports it. 34954f0 ath10k: get_tsf, PMF Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* ath10k-ct: fix build with current mac80211 packageJo-Philipp Wich2018-07-301-4/+15
| | | | | | | | | | | Commit 2dcd955aea ("mac80211: backport and update patches for ath10k") changed the DFS detector API, causing ath10k-ct to fail building due to a missing add_pulse() argument. Extend the already existing kernel compatibility patch to also adjust the add_pulse() call accordingly. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ath10k-ct: search DT for BDF variant infoSven Eckelmann2018-07-073-1/+363
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Board Data File (BDF) is loaded upon driver boot-up procedure. The right board data file is identified on QCA4019 using bus, bmi-chip-id and bmi-board-id. The problem, however, can occur when the (default) board data file cannot fulfill the vendor requirements and it is necessary to use a different board data file. This problem was solved for SMBIOS by adding a special SMBIOS type 0xF8. Something similar has to be provided for systems without SMBIOS but with device trees. No solution was specified by QCA and therefore a new one has to be found for ath10k. The device tree requires addition strings to define the variant name wifi@a000000 { status = "okay"; qcom,ath10k-calibration-variant = "RT-AC58U"; }; wifi@a800000 { status = "okay"; qcom,ath10k-calibration-variant = "RT-AC58U"; }; This would create the boarddata identifiers for the board-2.bin search * bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=RT-AC58U * bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=RT-AC58U Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
* ath10k-ct: Update driver to latestKoen Vandeputte2018-06-011-3/+3
| | | | | | | | | | 127f98189ee5 ath10k: Fix bad return w/out unlock, compile w/out debugfs b8f48f3c138f Fix survey-dump for 4.7, 4.9 and 4.13 kernels. fa8259ad5d6d ath10k-ct: Support survey dump in 10.1 firmware. 2853e1337ecf ath10k-ct: Add 4.16 ath10k-ct driver to package. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com> CC: Ben Greear <greearb@candelatech.com>
* ath10k-ct: make it depend on PCI support againHauke Mehrtens2018-04-181-1/+1
| | | | | | | | | | | | The missing dependency causes build problems on systems without PCI support. The ath10k_pci kernel module depends on PCI support so this dependency should be added. ath10k now also supported the ahb interface on the IPQ4019 SoC, but this SoC also has PCI support so this extra dependency is not as problem. Fixes: d0f3dd5b9f34176 ("ath10k-ct: update to latest version, enable AHB.") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: fix module dependsHauke Mehrtens2018-03-231-5/+5
| | | | | | | | | | | | PKG_EXTMOD_SUBDIRS should be set to the sub directory where the kernel module gets build in, for the ath10k-ct driver this changed in commit 3888e77c1c68 from ath10k to ath10k-4.13. Without this fix the depends line of the ath10*.ko modules is empty and the kernel module load system will not automatically load the depended modules like mac80211. Fixes: 3888e77c1c68 ("ath10k-ct driver: use dma_alloc_coherent, 4.13 based driver") Fixes: 23a388fe41ec ("ath10k-ct: Force loading mac80211 and ath modules.") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath10k-ct: Update driver to latest.Ben Greear2018-03-231-3/+3
| | | | | | | | Among other things, this will check for an htt-mgt variant of ath10k-ct firmware before loading 'normal' firmware, and it disables verbose printing of firmware DBGLOG messages by default. Signed-off-by: Ben Greear <greearb@candelatech.com>
* ath10k-ct: Update DEPENDS and PROVIDESBen Greear2018-03-231-0/+1
| | | | | | | | | | Update DEPENDS and PROVIDES so that ath10k-ct firmware and drivers can be used to replace stock firmware and drivers. The -htt firmware variant, which requires ath10k-ct driver now selects ath10k-ct driver when the firmware is selected. Signed-off-by: Ben Greear <greearb@candelatech.com>
* ath10k-ct: Force loading mac80211 and ath modules.Ben Greear2018-03-221-1/+1
| | | | | | | They are not automatically loaded on IPQ4019 (at least) machines for some reason. Signed-off-by: Ben Greear <greearb@candelatech.com>
* ath10k-ct: update to latest version, enable AHB.Ben Greear2018-03-222-42/+8
| | | | | | | | | | | | | | | | The driver updates include: ath10k driver backport to fix WPA 'pn' related security bugs (4.13 based driver only currently), a fix for off-channel TX for CT wave-1 firmware, a likely fix for napi related crashes, and a backport of the firmware fetch patch. AHB is needed for the IPQ4019 platform radios. Signed-off-by: Ben Greear <greearb@candelatech.com> [use common subject format] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ath9k, ath10k(-ct): move spectral scan support under a separate config symbolMatthias Schiffer2018-01-132-2/+88
| | | | | | | | | | | | | Backport patches that separate spectral scan support from general debugfs support of ath9k/ath10k; this allows to remove the dependency on KERNEL_RELAY from these driver packages even with debugfs enabled and avoids the memory footprint of the relay buffers allocated by ath9k/ath10k even when they aren't used at all. The KERNEL_RELAY dependency is moved to a new config symbol that enables spectral scan support in these drivers. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* build: use KERNEL_MAKE_FLAGS for kernel file compilationsKarl Vogel2017-10-291-2/+1
| | | | | | | The build system already defines KERNEL_CROSS which defaults to TARGET_CROSS. Make use of this variable for kernel makefiles. Signed-off-by: Karl Vogel <karl.vogel@gmail.com>
* ath10k-ct: switch to AutoProbeJonas Gorski2017-10-271-1/+1
| | | | | | | Now that we have working module dependency generation, we can switch to AutoProbe and let modprobe handle loading required modules. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* ath10k-ct: define module directoriesJonas Gorski2017-10-271-0/+1
| | | | | | | Define the module subdir so our buildsystem properly picks up the Module.symvers. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* ath10k-ct: activate user space firmware loading againHauke Mehrtens2017-10-124-10/+46
| | | | | | | | | This backports a patch from kernel 4.14 to the ath10k-ct version based on kernel 4.13. Some devices are using a user space script to load the calibration data from the flash and this was not trigged any more. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>