aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: rt2x00: fix MT7620 LNA gain and VCO-after-ALCDaniel Golle2017-05-022-0/+88
| | | | | | | This should fix issues with bad RX as well as AP not coming up and/or scanning failing. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: rt2x00: import upstream changes and rebase our patchesDaniel Golle2017-05-0249-189/+1676
| | | | | | | | Some of our local patches have been accepted upstream. And there are some more relevant changes (mostly for rt2800usb). Import them and rebase our remaining local patches on top. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* rt2x00: mt7620: make fixes requested upstreamDaniel Golle2017-05-021-170/+674
| | | | | | | | Introduce RT6352 instead of matching against RF7620. Clean up channel setting rfvals. Port bandwidth filter calibration. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* rt2x00: mt7620: yet another beauty sessionDaniel Golle2017-05-021-171/+524
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So here is another round of improvements for MT7620 WiFi. This commit fixes a few significant issues related to TX_PWR_CFG_x and TX_ALC and also makes the code more readable by adding register descriptions for things added for MT7620 and use the usual bit-field access macros and the now defined macros instead of plain bit-ops and magic numbers. Properly describe EEPROM_TARGET_POWER at word 0x68 (== byte 0xD0) and thereby fix internal TXALC which would otherwise just read out-of-bounds of the EEPROM map. Split-out tx-power/ALC related stuff into an additional function. Fix VCO calibration, it was carried out properly in the channel switching but incomplete in the actual VCO calibration function. Also there is no need to trigger VCO calibration in channel switching, the VCO calibration function is already being called at this point. Remove it from channel switching function to avoid redundant code. The TX power calibration differs significantly from all other Mediatek/Ralink chips: They finally allow 0.5dB steps stored as 8-bit values for (almost) each bitrate -- and promptly ran out of space and for some reason didn't want to change the EEPROM layout. The hence opted for a scheme of sharing values for some adjecent bitrates and a highly over-complicated (or obfuscated?) way to populate the TX_PWR_CFG_x registers with the values stored in the EEPROM. The code here now looks much less complicated than what you see in the vendor's driver, however, it does the exact same thing: bGpwrdeltaMinus is a constant and always TRUE, hence half of the code was dead. Gpwrdelta is always 0 (rather than using the value read from the EEPROM). What remains is some very grotesque effort to avoid 0x20, probably some hardware bug related to some misunderstanding of what a singed 8-bit value is (imagine: if it was a signed 6-bit value then someone could believe that 0x20 == 0x0). And then they didn't clean it up once they later on anandonned that whole story of having a constant offset for 40 MHz channels and just set the offset to be constant 0 -- there is no effort for avoiding 0x20 for the 20 MHz values stored in the EEPROM, hence that's probably just a forbidden value in the EEPROM specs and won't appear anyway... Anyway, the whole thing felt like solving some college math test where in the end everything cancels out and the result equals 0 ;) To make sure that channel bandwidth power compensation really doesn't need to be taken care of, output a warning when the corresponding value stored in the EEPROM is non-zero. Also there is no apparent reason to refrain from initializing RFCSR register 13, it doesn't fail what-so-ever. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath9k: fix power limits on initFelix Fietkau2017-05-021-0/+47
| | | | | | | | | | | | | | | The tx power applied by set_txpower is limited by the CTL (conformance test limit) entries in the EEPROM. These can change based on the user configured regulatory domain. Depending on the EEPROM data this can cause the tx power to become too limited, if the original regdomain CTLs impose lowr limits than the CTLs of the user configured regdomain. To fix this issue, set the initial channel limits without any CTL restrictions and only apply the CTL at run time when setting the channel and the real tx power. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath: do not apply broken power limits with ATH_USER_REGDFelix Fietkau2017-05-023-12/+44
| | | | | | | | | If a device uses the default EEPROM code, typically only the main CTLs are valid, and they do not apply properly when switching to a different regulatory domain. If the regdomain deviates from the EEPROM one, force the world roaming regdomain to ensure that power limits are sane Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport an upstream fix for queue start/stop handlingFelix Fietkau2017-04-031-0/+29
| | | | | | Fixes issues with 802.11s Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: sync with master branch as of 9edff13abd97Felix Fietkau2017-02-24213-12938/+1795
| | | | | | | | | | | | | | | | Includes the following changes: 9edff13abd mac80211: disable potentially harmful PS software retry for A-MPDU sessions 75216a76b0 mac80211: backport upstream fix for CSA in IBSS mode 368cc8ef47 mac80211: update brcmfmac backporting brcmf_err cleanups 66a63d25c4 mac80211: fix build on linux 3.18 9eacb9d7fc rt2x00: mt7620: lots of improvements fd94fa61a7 mac80211: brcmfmac: update Raspberry Pi patches for linux 4.9 649e766a64 mac80211: update to wireless-testing 2017-01-31 47540afa5d ath9k: add a warning to the tx99 config option b367eef21d mac80211: rt2x00: add support for external LNA on MT7620 9200e168f2 mac80211: move (& update) upstream accepted brcmfmac patches Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: fix various issues in the airtime-fairness implementationFelix Fietkau2017-02-122-1/+108
| | | | | | | Effects of the bugs could include memory corruption, tx hangs, kernel crahes, possibly other things as well Signed-off-by: Felix Fietkau <nbd@nbd.name>
* brcmfmac: improve Raspberry Pi 3 stabilityÁlvaro Fernández Rojas2017-02-072-2/+25
| | | | | | | - Really disable power management (wrong config flags). - Disable internal roaming engine. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: brcmfmac: backport wowlan netdetect fixesRafał Miłecki2017-02-064-2/+149
| | | | | | | | | | | | | | I needed a moment to figure out relation between this patchset and the nl80211: fix validation of scheduled scan info for wowlan netdetect It appears nl80211 commit will go on top of brcmfmac changes so it's safe to backport these patches. One patch that was excluded is commit 2a2a5d1835b6 ("brcmfmac: add .update_connect_params() callback") as it depends on missing commit 088e8df82f91 ("cfg80211: Add support to update connection parameters"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport PSM watchdog improvementsRafał Miłecki2017-02-062-0/+96
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport minor code cleanupsRafał Miłecki2017-02-069-1/+363
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport 4.10 fixes & typo fixRafał Miłecki2017-02-063-0/+111
| | | | | | This includes memory leak fix in initialization path. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport scheduled scan cleanup and chip supportRafał Miłecki2017-02-0618-11/+2200
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport some old patches from 2016Rafał Miłecki2017-02-068-8/+332
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: rename brcmfmac patches to use higher prefixRafał Miłecki2017-02-063-0/+0
| | | | | | There are more patches to backport that should go before these. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ath9k: remove the deaf rx path state check patchFelix Fietkau2017-01-3110-149/+53
| | | | | | | This needs to be refined and reworked before we can safely leave it enabled by default Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: fix up a refcount imbalance error in the IRQ related fixFelix Fietkau2017-01-273-7/+39
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: add stability fixes for long standing hang issues (FS#13, #34, #373, ↵Felix Fietkau2017-01-2516-57/+523
| | | | | | | | | | | | | #383) The radio would stop communicating completely. This issue was easiest to trigger on AR913x devices, e.g. the TP-Link TL-WR1043ND, but other hardware was occasionally affected as well. The most critical issue was a race condition in disabling/enabling IRQs between the IRQ handler and the IRQ processing tasklet Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: refresh patchFelix Fietkau2017-01-251-17/+17
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Add back the commit "ath9k: Add airtime fairness scheduler"Felix Fietkau2017-01-259-15/+728
| | | | | | | | | This reverts commit c296ba834db4ce8c71e0ad7030aab188fe60b27b. According to several reports, the issues with the airtime fairness changes are gone in current versions. It's time to re-apply the patch now. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: brcmfmac: don't use uninitialize mem for country codesRafał Miłecki2017-01-241-2/+2
| | | | | | | There was a bug in brcmfmac patch that could result in treating random memory as source of country codes. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: move (& update) upstream accepted brcmfmac patchesRafał Miłecki2017-01-245-0/+3
| | | | | | These 3 patches are now in wireless-drivers-next tree. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: add early (& hacky) patch for storing country codesRafał Miłecki2017-01-161-0/+60
| | | | | | | This allows some basic region switching on Netgear R8000. More devices & codes may be added. Ideally it should be converted into DT info & patch. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: use wiphy_read_of_freq_limits in brcmfmacRafał Miłecki2017-01-151-0/+31
| | | | | | | | This makes use of cfg80211 feature backported & described in 188626f17c09 ("mac80211: backport cfg80211 support for ieee80211-freq-limit DT property"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport a fix for a tx related race conditionFelix Fietkau2017-01-141-0/+107
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: refresh patchesFelix Fietkau2017-01-148-109/+123
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport some upstream fixesKoen Vandeputte2017-01-143-0/+200
| | | | | | | | | | | | Backports the following upstream fixes: mac80211: initialize fast-xmit 'info' later mac80211: fix legacy and invalid rx-rate report mac80211: fix tid_agg_rx NULL dereference Compiled and tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: update 4.4 kernel to 4.4.42Hauke Mehrtens2017-01-131-0/+15
| | | | | | | Refresh patches on all 4.4 supported platforms. Compile & run tested: lantiq/xrx200 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: fix broken spatial multiplexing defaultsFelix Fietkau2017-01-132-2/+43
| | | | | | | | | Most mac80211 drivers leave the SMPS field in the HT capabilities uninitialized (unfortunately defaults to static SMPS), which leads to some devices limiting themselves to single-stream rates in some modes (mostly mesh and IBSS). Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: pending brcmfmac patches cleaning channels managementRafał Miłecki2017-01-106-2/+257
| | | | | | They prepare brcmfmac for using wiphy_read_of_freq_limits. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: rename b43 patches to make more spaceRafał Miłecki2017-01-106-0/+0
| | | | | | Just 6 patches were using 80*, 81*, 82* and 84* prefixes. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport cfg80211 support for ieee80211-freq-limit DT propertyRafał Miłecki2017-01-062-0/+312
| | | | | | | | This property allows specifying extra limits for wireless device in DT. For a full documentation see upstream commit b330b25eaabd ("dt-bindings: document common IEEE 802.11 frequency limit property"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ath9k: don't run periodic and nf calibration at the same timeFelix Fietkau2017-01-051-0/+26
| | | | | | Might fix some stability issues on older chips Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Revert "ath9k: Add airtime fairness scheduler"Felix Fietkau2017-01-049-728/+15
| | | | | | | | This reverts commit 528f46d0826afa01877ccc7670f2120a7a3b3ea8. After this commit, several users reported stability issues. Revert it now so it doesn't cause issues for the upcoming release Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: fix issues with external reset on AR913xFelix Fietkau2016-12-274-9/+10
| | | | | | | | An external reset patch for AR955x accidentally led to external reset being issued twice on AR913x, once before the RTC reset and once after. This may be causing some stability issues. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath5k: drop bogus warning on drv_set_key with unsupported cipher (FS#334)Felix Fietkau2016-12-271-0/+23
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: remove old rx dma stop check optimizationFelix Fietkau2016-12-271-28/+0
| | | | | | | | | | This commit was added to improve reset time on old SoC devices that run into chip hangs more frequently. However with the more recent addition of full WMAC reset on these chips, it could be problematic. Drop this patch to ensure that DMA activity is really stopped before the chip reset is issued Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: Add airtime fairness schedulerToke Høiland-Jørgensen2016-12-229-15/+728
| | | | | | | | | This adds a patch that introduces airtime fairness scheduling to ath9k, which can significantly improve network efficiency in mixed-rate environments. Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Revert "ath9k: Add airtime fairness scheduler"Felix Fietkau2016-12-196-104/+7
| | | | | | Accidentally pushed to the wrong branch This reverts commit 47bc081e76f6b04c0e9db687c8abb78eb437021f.
* ath9k: Add airtime fairness schedulerToke Høiland-Jørgensen2016-12-196-7/+104
| | | | | | | | | This adds a patch that introduces airtime fairness scheduling to ath9k, which can significantly improve network efficiency in mixed-rate environments. Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport "cfg80211: limit scan results cache size"Christian Lamparter2016-12-191-0/+150
| | | | | | | | | | | | | | | | | | | | | | | The patch commit states: "It's possible to make scanning consume almost arbitrary amounts of memory, e.g. by sending beacon frames with random BSSIDs at high rates while somebody is scanning. Limit the number of BSS table entries we're willing to cache to 1000, limiting maximum memory usage to maybe 4-5MB, but lower in practice - that would be the case for having both full-sized beacon and probe response frames for each entry; this seems not possible in practice, so a limit of 1000 entries will likely be closer to 0.5 MB." Signed-off-by: Johannes Berg <johannes.berg@intel.com>" This patch was added in 4.4.36. But because LEDE backports cfg80211, mac80211 and the wifi drivers separately, it needs to be added manually for now. It can be dropped later as it will be part of the next mac80211 refresh. Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
* mac80211: merge a number of minstrel/minstrel_ht performance and memory ↵Felix Fietkau2016-12-199-0/+822
| | | | | | usage improvements Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath10k: fix a soft-lockup on firmware restartFelix Fietkau2016-12-142-2/+51
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath10k: fix a bug on sending null-func framesFelix Fietkau2016-12-141-0/+42
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath10k: fix DMA allocation issuesFelix Fietkau2016-12-132-0/+108
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: refresh all patchesFelix Fietkau2016-12-1310-42/+39
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: add a RCU related bugfixFelix Fietkau2016-12-131-0/+65
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: mac80211: disable ath9k bands via device treeMartin Blumenstingl2016-11-291-0/+32
| | | | | | | | | | | | | These properties allow overriding the settings from the EEPROM which indicate whether a band is enabled or not. Setting this property is only needed when the RF circuit does not support the 2.4GHz or 5GHz band while it is enabled nevertheless in the EEPROM. These patches will be replaced with a future upstream version which will introduces an ieee80211 device tree property to disable bands. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>