aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches
Commit message (Collapse)AuthorAgeFilesLines
* 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: Update to version 5.15.58-1Hauke Mehrtens2022-07-3127-203/+67
| | | | | | | | | 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-1132-435/+81
| | | | | | | | | | | | | | | 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-151-0/+39
| | | | | | | | | | | | | | 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: 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-241-0/+64
| | | | | | | | | | | | | | | | | | | | | | | 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-1418-387/+26
| | | | | | | | | | | | | 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>
* 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: 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>
* mac80211: Add devm_platform_get_and_ioremap_resource()Hauke Mehrtens2021-10-241-0/+79
| | | | | | | | This function is missing in kernel 5.4, but it is sued by ath10k. This fixes the build of ath10k on some targets. Fixes: cfe0eb7485d8 ("mac80211: Update to version 5.14.13-1") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.15-rc6-1Hauke Mehrtens2021-10-2415-1755/+23
| | | | | | | | The removed patches were applied upstream. The Cisco Aironet 802.11b driver was removed from backports, remove it also from OpenWrt. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.14.13-1Hauke Mehrtens2021-10-2420-1907/+115
| | | | | | The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.13.19-1Hauke Mehrtens2021-10-2429-1097/+130
| | | | | | | | | The removed patches were applied upstream. of_get_mac_address() was backported in our OpenWrt kernel, remove the change from backports. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.12.19-1Hauke Mehrtens2021-10-2385-6096/+246
| | | | | | The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.11.22-1Hauke Mehrtens2021-10-2387-1992/+363
| | | | | | | | The removed patches were applied upstream. This backports version 5.11.22 and later does not support kernel versions < 4.4, this allows us to remove some patches too. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: add missing patch chunk for mac80211_hwsimFelix Fietkau2021-10-202-4/+42
| | | | | | Fixes build error Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport a few trivial patchesFelix Fietkau2021-10-203-0/+419
| | | | | | | No functional changes, just some renames to make it easier to keep mt76 in sync with upstream Signed-off-by: Felix Fietkau <nbd@nbd.name>