aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: Update to version 5.15.74-1Hauke Mehrtens2022-10-2325-2254/+19
| | | | | | | | | This updates mac80211 to version 5.15.74-1 which is based on kernel 5.15.74. The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 58b65525f3165792a998fdb24fda11aa4097a7be)
* mac80211: backport security fixesFelix Fietkau2022-10-1315-1/+2057
| | | | | | | | | | | | This mainly affects scanning and beacon parsing, especially with MBSSID enabled Fixes: CVE-2022-41674 Fixes: CVE-2022-42719 Fixes: CVE-2022-42720 Fixes: CVE-2022-42721 Fixes: CVE-2022-42722 Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 26f400210d6b3780fcc0deb89b9741837df9c8b8)
* mac80211: merge upstream fixesKoen Vandeputte2022-10-133-0/+179
| | | | | | | fetched from upstream kernel v5.15.67 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com> (cherry-picked from commit aa9be386d40f3a5e559c0f2183c772175a45cf0d)
* mac80211: rt2x00: experimental improvements for MT7620 wifiDaniel Golle2022-09-1924-483/+1411
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Serge Vasilugin reports: To improve mt7620 built-in wifi performance some changes: 1. Correct BW20/BW40 switching (see comments with mark (1)) 2. Correct TX_SW_CFG1 MAC reg from v3 of vendor driver see https://gitlab.com/dm38/padavan-ng/-/blob/master/trunk/proprietary/rt_wifi/rtpci/3.0.X.X/mt76x2/chips/rt6352.c#L531 3. Set bbp66 for all chains. 4. US_CYC_CNT init based on Programming guide, default value was 33 (pci), set chipset bus clock with fallback to cpu clock/3. 5. Don't overwrite default values for mt7620. 6. Correct some typos. 7. Add support for external LNA: a) RF and BBP regs never be corrected for this mode b) eLNA is driven the same way as ePA with mt7620's pin PA but vendor driver explicitly pin PA to gpio mode (for forrect calibration?) so I'm not sure that request for pa_pin in dts-file will be enough First 5 changes (really 2) improve performance for boards w/o eLNA/ePA. Changes 7 add support for eLNA Configuration w/o eLAN/ePA and with eLNA show results tx/rx (from router point of view) for each stream: 35-40/30-35 Mbps for HT20 65-70/60-65 Mbps for HT40 Yes. Max results for 2T2R client is 140-145/135-140 with peaks 160/150, It correspond to mediatek driver results. Boards with ePA untested. Reported-by: Serge Vasilugin <vasilugin@yandex.ru> Signed-off-by: Daniel Golle <daniel@makrotopia.org> [directly include v3 of the patchset submitted upstream] (cherry picked from commit 31a6605de04218e1c04bd5c2436c24d7d1c07506) (cherry picked from commit e785ca05e9f0502894772f5df92192b816ba5d7c) (cherry picked from commit 412fcf3d4400f84551f3ead0514834c62d94a251)
* mac80211: rt2x00: fix typoSungbo Eo2022-09-192-5/+3
| | | | | | | Add missing semicolon and refresh patches. Signed-off-by: Sungbo Eo <mans0n@gorani.run> (cherry picked from commit d826c91704d2baa5e389c225791740e4c61d62c4)
* mac80211: add patch descriptions to rt2x00 patchesDaniel Golle2022-09-186-1/+76
| | | | | | | | Prepare patches for sending upstream by adding patch descriptions generated from the original OpenWrt commits adding each patch. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit d4feb66048f6a8f387eedfb162a1184cdae9d756)
* mac80211: backport tx queueing bugfixes add a bug fix for a rare crashFelix Fietkau2022-09-154-0/+171
| | | | | | | | | | Re-introduce the queue wake fix that was reverted due to a regression, but this time with the follow-up fixes that take care of the regression. Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry picked from commit 9a93b62f315ad4c9f021c414ed80ba337ab4a01e) (cherry-picked from commit 8b804cae5e039142bc63896a75f15146eca3bebc) (cherry-picked from commit 8b06e06832ebe757246582b65306ad2a2537741f)
* mac80211: parse the correct set of HE capabilities for AP modeSultan Alsawaf2022-08-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | It is common for 802.11ax NICs to support more than just AP mode, which results in there being a distinct set of HE capabilities for each mode. As (bad) luck would have it, iw prints out info for each HE mode in sequential order according to `enum nl80211_iftype`, and AP mode isn't always first. As a result, the wrong set of HE capabilities can be parsed if an AP NIC supports station (managed) mode or any other mode preceding AP mode, since only the first set of HE capabilities printed by iw is parsed from awk's output. This has a noticeable impact on beamforming for example, since managed mode usually doesn't have beamformer capabilities enabled, while AP mode does. Hostapd won't be set up with the configs to enable beamformer capabilities in this scenario, causing hostapd to disable beamforming to HE stations even when it's supported by the AP. Always parse the correct set of HE capabilities for AP mode to fix this. This is achieved by trimming all of iw's output prior to the AP mode capabilities, which ensures that the first set of HE capabilities are always for AP mode. Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com> (cherry picked from commit f338f76a66a50d201ae57c98852aa9c74e9e278a)
* mac80211: Update to version 5.15.58-1Hauke Mehrtens2022-07-3128-206/+70
| | | | | | | | | This updates mac80211 to version 5.15.58-1 which is based on kernel 5.15.58. The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 3aa18f71f9c8a5447bdd2deda4e681175338164f)
* mac80211: fix AQL issue with multicast trafficFelix Fietkau2022-07-131-0/+30
| | | | | | | Exclude multicast from pending AQL budget Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 9f1d6223289b5571ddc77c0e5327ab51137199d9)
* mac80211: fix mesh queue selection issueFelix Fietkau2022-07-021-0/+28
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 51e9d496ba7958fb9f2d3eb4bc7f257837145dd0)
* mac80211: ath10k: backport bus and device specific API 1 BDF selectionRobert Marko2022-07-011-0/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some ath10k IPQ40xx devices like the MikroTik hAP ac2 and ac3 require the BDF-s to be extracted from the device storage instead of shipping packaged API 2 BDF-s. This is required as MikroTik has started shipping boards that require BDF-s to be updated, as otherwise their WLAN performance really suffers. This is however impossible as the devices that require this are release under the same revision and its not possible to differentiate them from devices using the older BDF-s. In OpenWrt we are extracting the calibration data during runtime and we are able to extract the BDF-s in the same manner, however we cannot package the BDF-s to API 2 format on the fly and can only use API 1 to provide BDF-s on the fly. This is an issue as the ath10k driver explicitly looks only for the board.bin file and not for something like board-bus-device.bin like it does for pre-cal data. Due to this we have no way of providing correct BDF-s on the fly, so lets extend the ath10k driver to first look for BDF-s in the board-bus-device.bin format, for example: board-ahb-a800000.wifi.bin If that fails, look for the default board file name as defined previously. So, backport the upstream ath10k patch. Signed-off-by: Robert Marko <robimarko@gmail.com> (cherry picked from commit 3daf2d477ee728b5b066fe7f31808a5f19bb98a1) [prune unrelated patch refreshes] Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* mac80211: increase airtime scheduler quantumFelix Fietkau2022-06-271-0/+53
| | | | | | | improves performance by requiring fewer iterations over tx queues Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 7bf5233a2a2b1c81fae2f3a85bb971ef2a7f9b27)
* mac80211: add airtime fairness improvementsFelix Fietkau2022-06-278-3/+1695
| | | | | | | | | This reverts the airtime scheduler back from the virtual-time based scheduler to the deficit round robin scheduler implementation. This reduces burstiness and improves fairness by improving interaction with AQL. Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 6d49a25804d78d639e08a67c86b26991ce6485d8)
* Revert "mac80211: add a bug fix for a rare crash"David Bauer2022-06-181-38/+0
| | | | | | | | | | This reverts commit 33df033b73365487c5bb5a58b77aed04d4ca6ac1. It was reported this commit breaks 802.11s mesh connections, failing link establishment. Reported-by: Andreas Ziegler <dev@andreas-ziegler.de> Signed-off-by: David Bauer <mail@david-bauer.net>
* mac80211: add a bug fix for a rare crashFelix Fietkau2022-06-071-0/+38
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry picked from commit 9a93b62f315ad4c9f021c414ed80ba337ab4a01e)
* mac80211: fix QCA9561 PA biasThibaut VARÈNE2022-04-181-0/+47
| | | | | | | | | | | | | | | This patch fixes an invalid TX PA DC bias level on QCA9561, which results in a very low output power and very low throughput as devices are further away from the AP (compared to other 2.4GHz APs), following a suggestion from nbd[1]. This patch has been submitted upstream[2]. [1] https://lore.kernel.org/all/91c58969-c60e-2f41-00ac-737786d435ae@nbd.name [2] https://lore.kernel.org/linux-wireless/20220417145145.1847-1-hacks+kernel@slashdirt.org/ Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> (cherry picked from commit 7dc52a78ae2c2f748a0c0c4adcb13979260b3498)
* mac80211: backport minstrel_ht fix for legacy ratesFelix Fietkau2022-04-121-0/+61
| | | | | | | Fixes OFDM rates on 5 GHz Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 5d5afd51772c9a992cb6bb9e0a9dce6feaa3fdef)
* mac80211: Update to version 5.15.33-1Hauke Mehrtens2022-04-1133-439/+85
| | | | | | | | | | | | | | | This updates mac80211 to version 5.15.33-1 which is based on kernel 5.15.33. The removed patches were applied upstream. This new release contains many fixes which were merged into the upstream Linux kernel. This also contains the following new drivers which are needed for ath11k: * net/qrtr/ * drivers/bus/mhi/ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 3aa96efa24c13c6e0aafa5ad826f3f95a3bd74f9)
* mac80211: backport patch that allows receiving packets with non-standard VHT ↵Felix Fietkau2022-03-271-0/+36
| | | | | | | MCS10-11 rates Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry picked from commit 56ae4eb90864373dd4663f579851290be74430aa)
* mac80211: backport MBSSID supportFelix Fietkau2022-03-185-7/+554
| | | | | | Required for an upcoming mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: headers: fix lockdep_assert_not_held()Petr Štetiar2022-03-152-1/+40
| | | | | | | | | | | | | | LOCK_STATE_HELD define was omitted during backport of lockdep_assert_not_held() which leads to build failures of kernels with CONFIG_LOCKDEP=y: backports-5.15.8-1/backport-include/linux/lockdep.h:16:47: error: 'LOCK_STATE_HELD' undeclared (first use in this function) Fix it by adding missing LOCK_STATE_HELD define. References: PR#9373 Reported-by: Oskari Rauta <oskari.rauta@gmail.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* mac80211: add #if guards against 5.4 compile failuresChristian Lamparter2022-02-253-8/+14
| | | | | | | | | | | | | | | | | Both struct net_device_path_ctx and struct net_device_path are not available in 5.4. This causes an build error on the bcm63xx target. |mac80211/driver-ops.h: In function 'drv_net_fill_forward_path': |driver-ops.h:1502:57: error: passing argument 4 of |'local->ops->net_fill_forward_path' from incompatible pointer type | [-Werror=incompatible-pointer-types] | 1502 | ctx, path); | | ^~~ | | | | | struct net_device_path_ctx * Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: add debug compile option for rtw88 devicesFlorian Eckert2022-02-201-0/+18
| | | | | | | | | | | | | This commit adds the following package compile options. CONFIG_PACKAGE_RTW88_DEBGUG: Compile the driver with additional debug logging output CONFIG_PACKAGE_RTW88_DEBGUGFS: Add the possibility to map information about the driver rtw88 into debugfs. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mac80211: fix traffic stalls on forwarded mesh packets due to wrong AC selectionFelix Fietkau2022-02-151-0/+50
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix rekey failure in drivers with 802.3 decap offloadFelix Fietkau2022-02-121-0/+43
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport support for background radar detectionFelix Fietkau2022-02-039-12/+1627
| | | | | | Will be used in an upcoming mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport MBSSID/EMA support patchesFelix Fietkau2022-02-033-16/+771
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: reorganize patchesFelix Fietkau2022-02-0312-0/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport support for ndo_fill_forward_pathFelix Fietkau2022-02-031-0/+172
| | | | | | Will be used in an upcoming mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: mac80211: refresh patchsetNick Hainke2021-12-241-5/+5
| | | | | | | Refreshed: - 311-mac80211-use-coarse-boottime-for-airtime-fairness-co.patch Signed-off-by: Nick Hainke <vincent@systemli.org>
* kernel: ath10k: provide a build variant for small RAM devicesNick Hainke2021-12-243-4/+82
| | | | | | | | | | | | | | | | | | | | | | | Based on: 1ac627024de9 ("kernel: ath10k-ct: provide a build variant for small RAM devices") Like described in the ath10k-ct-smallbuffers version, oom-killer gets triggered frequently by devices with small RAM. That change is necessary for many community mesh networks which use ath10k based devices with too little RAM. The -ct driver has been proven unstable if used with 11s meshing and only wave2 chipsets are supporting 11s. Freifunk Berlin is nowadays assembling its firmware-based completely of vanilla OpenWRT with some package additions which are made through the imagebuilder. Therefore we cannot take the approach other freifunk communities have taken to maintain that patch downstream [1]. Other communities consider these devices as broken and that change would pretty much give those devices a second life [2]. [1] - https://git.freifunk-franken.de/mirror/openwrt/commit/450b306e540bc0f2c8a8841bbe4d9612f2b8cdea [2] - https://github.com/freifunk-gluon/gluon/issues/1988#issuecomment-619532909 Signed-off-by: Simon Polack <spolack+git@mailbox.org> Signed-off-by: Nick Hainke <vincent@systemli.org>
* mac80211: optimize airtime fairness code to reduce cpu usageFelix Fietkau2021-12-171-0/+60
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: Update to version 5.15.8Hauke Mehrtens2021-12-1419-390/+29
| | | | | | | | | | | | | The following patches were backported from upstream before and are not needed any more: package/kernel/mac80211/patches/ath10k/081-ath10k-fix-module-load-regression-with-iram-recovery-feature.patch package/kernel/mac80211/patches/ath10k/980-ath10k-fix-max-antenna-gain-unit.patch package/kernel/mac80211/patches/build/010-headers-Add-devm_platform_get_and_ioremap_resource.patch package/kernel/mac80211/patches/subsys/300-mac80211-drop-check-for-DONT_REORDER-in-__ieee80211_.patch package/kernel/mac80211/patches/subsys/307-mac80211-do-not-access-the-IV-when-it-was-stripped.patch package/kernel/mac80211/patches/subsys/308-mac80211-fix-radiotap-header-generation.patch Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: fix tx aggregation locking issueFelix Fietkau2021-12-021-0/+79
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix queue assignment of aggregation start requestsFelix Fietkau2021-12-021-0/+28
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fixed missing cfg80211 dependency on kmod-rfkillOldřich Jedlička2021-11-291-1/+1
| | | | | | | | | | | | | | | | | | | When compiling with CONFIG_USE_RFKILL=y, the build fails and mentions that dependency on kmod-rfkill is missing, which is correct [1]. Add this dependency to the Makefile. Depend on +USE_RFKILL and not PACKAGE_kmod-rfkill, because it forces selection of kmod-rfkill package. Other combinations in DEPENDS like USE_RFKILL:kmod-rfkill or (+)PACKAGE_kmod-rfkill:kmod-rfkill do not force selection of kmod-rfkill package. The kmod-rfkill package itself depends on USE_RFKILL, so with +USE_RFKILL in kmod-cfg80211 package it is not possible to select wrong combination of packages. [1] https://linux-wireless.vger.kernel.narkive.com/m8JY9Iks/cfg80211-depends-on-rfkill-or-not Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
* ath10k: support nvmem-cells for (pre-)calibrationChristian Lamparter2021-11-285-13/+175
| | | | | | refreshes mac80211 + ath10k-ct patches. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: fix a regression in generating radiotap headersFelix Fietkau2021-11-261-0/+49
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport fix for dealing with stripped IV on rxFelix Fietkau2021-11-261-0/+26
| | | | | | This fixes potental rx drop issues Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: add a fix for kernel warnings when forwarding packets in mesh modeFelix Fietkau2021-11-241-0/+62
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix regression in SSN handling of addba txFelix Fietkau2021-11-241-0/+44
| | | | | | | | Some drivers that do their own sequence number allocation (e.g. ath9k, mwlwifi) rely on being able to modify params->ssn on starting tx ampdu sessions. This was broken by a change that modified it to use sta->tid_seq[tid] instead. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix crash in drivers relying on mac80211 retransmitting packets ↵Felix Fietkau2021-11-231-0/+35
| | | | | | | | for powersave clients This showed up primarily on rt2x00 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: set beamformer/beamformee number of antennas in VHT capsFelix Fietkau2021-11-221-0/+16
| | | | | | Without this, beamforming is probably not working Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix IBSS/adhoc mode for brcmfmacBastian Bittorf2021-11-191-0/+1
| | | | | | | | | | | | | | | | | | | | On systems using brmcfmac (e.g. Raspberry Pi Zero W) without this fix, the final setup-call: iw dev wlan0 ibss join ... fails with returncode 161 and message: "command failed: Not supported (-95)" So this patch calls an explicit: iw dev wlan0 set type ibss just prior to the 'ibss join' command. I have tested several ath9k and mt76xx devices with different revisions: this patch does not harm. please also apply to stable branch. Signed-off-by: Bastian Bittorf <bb@npl.de>
* mac80211: Fix deadlock when configuring wifiHauke Mehrtens2021-11-131-7/+9
| | | | | | | | | | | | | | | | | | | | | The nl80211_set_wiphy() function was changed between kernel 5.11 and 5.12 to take the rdev->wiphy lock which should be freed at the end again. The 500-mac80211_configure_antenna_gain.patch added some code which just returned in some cases without unlocking. This resulted in a deadlock with brcmfmac. This patch fixes this by also jumping to the out label in case we want to leave the function. This fixes a hanging system when brcmfmac is in use. I do not know why we do not see this with other driver. The kernel returns very useful debug details when setting these OpenWrt configuration options: CONFIG_KERNEL_DETECT_HUNG_TASK=y CONFIG_KERNEL_PROVE_LOCKING=y Fixes: FS#4122 Fixes: b96c2569ac76 ("mac80211: Update to version 5.12.19-1") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: fix queue selection issueFelix Fietkau2021-11-101-0/+37
| | | | | | | | | When __ieee80211_select_queue is called, skb->cb has not been cleared yet, which means that info->control.flags can contain garbage. In some cases this leads to IEEE80211_TX_CTRL_DONT_REORDER being set, causing packets marked for other queues to randomly end up in BE instead. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: nvmem for ath9k caldataChristian Lamparter2021-11-067-12/+346
| | | | | | | | | | | | | | | | With "getting WIFI MAC from NVMEM" working on ath79 on 5.10, the next logical step I think is to utilize nvmem subsystem to also get the calibration data from there. This will tremendously speed up the wifi bring-up, since we no longer need the userspace helper for the simple devices that can just load them from there. included with this patch is a package/mac80211/refresh. Tested on: WNDR3700v2, TP-Link Archer C7v2 Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath10k: backport fix for module load regression with iram-recoveryZhijun You2021-10-304-5/+126
| | | | | | | | Backport upstream fix for module load regression caused by IRAM recovery. Without this patch devices using mainline ath10k driver could lost wireless function because ath10k module failed to load. Signed-off-by: Zhijun You <hujy652@gmail.com>
* ath9k: OF: qca,disable-(2|5)ghz => ieee80211-freq-limitChristian Lamparter2021-10-303-22/+30
| | | | | | | | | | | | | | | | | | OpenWrt maintains two special out-of-tree DT properties: "qca,disable-5ghz" and "qca,disable-2ghz". These are implemented in a mac80211 ath9k patch "550-ath9k-disable-bands-via-dt.patch". With the things being what they are, now might be a good point to switch the devices to the generic and upstream "ieee80211-freq-limit" property. This property is much broader and works differently. Instead of disabling the drivers logic which would add the affected band and channels. It now disables all channels which are not within the specified frequency range. Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> # HH5A Signed-off-by: Christian Lamparter <chunkeey@gmail.com>