aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: brcmfmac: backport patches pushed on 2017-03-20Rafał Miłecki2017-03-2111-5/+756
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* rt2x00: mt7620: make fixes requested upstreamDaniel Golle2017-03-111-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-03-091-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>
* mac80211: brcmfmac: always print error when PSM's watchdog firesRafał Miłecki2017-03-012-1/+148
| | | | | | This error is important enough to be displayed even without debugging. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: disable potentially harmful PS software retry for A-MPDU sessionsFelix Fietkau2017-02-231-0/+28
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: rename patch to avoid duplicate numberFelix Fietkau2017-02-221-0/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: refresh patchesFelix Fietkau2017-02-124-95/+106
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport upstream fix for CSA in IBSS modeKoen Vandeputte2017-02-121-0/+34
| | | | | | Allows to change channels on-the-fly using CSA when using IBSS. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath9k: fix various issues in the airtime-fairness implementationFelix Fietkau2017-02-121-0/+107
| | | | | | | 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>
* mac80211: update brcmfmac backporting brcmf_err cleanupsRafał Miłecki2017-02-106-1/+172
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: fix build on linux 3.18Felix Fietkau2017-02-091-0/+43
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* rt2x00: mt7620: lots of improvementsDaniel Golle2017-02-081-118/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit combines all the changes I've made on my staging tree into a single commit fixing many issues with our patch for MT7620. First of all, checkpatch.pl revealed numerous code style issues with the patch, so fix all the white-space and commets. Also use usleep_range instead of legacy timing and relax timing for VCO calibration just like the vendor driver does. Several line programming registers were commented out in the patch. Originally this came from the features present but disabled by default in the vendor's driver (RTMP_TEMPERATURE_CALIBRATION and ADJUST_POWER_CONSUMPTION_SUPPORT). Remove the dead code for now, it can easily be re-added if we actually intend to support those features. Move values from mt7620_freqconfig type into the existing rf_channel struct, this shouldn't be a new typedef and it is possible to use the existing struct because rf_channel got 4 32-bit fields, so two of the 8-bit values from mt7620_freqconfig can easily be stored in the same 32-bit field. Map values such that Rdiv -> rf1 N -> rf2 K -> rf3[0:7] D -> rf3[8:15] Ksd -> rf4 This makes the channel switching logic already look a bit more like what we are used to in rt2x00... Probably many of the read-modify-write calls could still be replaced by macros intended for that. iq calibration seems to be identical to RT5592, so just enable it. Test shows that this improves things quite a lot, datarates went up by a couple of megabits when running iperf, signal quality seems jumpy in the first few seconds once a station connencts, the stabelizes on a value significantly better than what it was before. Add description to the patch and reference the original OpenWrt commit by which it was added. The patch now passes checkpatch.pl and can thus be discussed with the upstream authors of the rt2x00 driver. Funded-by: https://www.kickstarter.com/projects/1327597961/better-support-for-mt7620a-n-in-openwrt-lede/ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: brcmfmac: update Raspberry Pi patches for linux 4.9Álvaro Fernández Rojas2017-02-072-2/+2
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* 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: fix ath9k kernel crash with linux 4.9Felix Fietkau2017-02-071-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: update to wireless-testing 2017-01-31Felix Fietkau2017-02-06203-12867/+1416
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: brcmfmac: backport wowlan netdetect fixesRafał Miłecki2017-02-024-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-022-0/+96
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport minor code cleanupsRafał Miłecki2017-02-029-1/+363
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport 4.10 fixes & typo fixRafał Miłecki2017-02-023-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-0218-11/+2200
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport some old patches from 2016Rafał Miłecki2017-02-028-8/+332
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: rename brcmfmac patches to use higher prefixRafał Miłecki2017-02-023-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>
* 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>
* Add back the commit "ath9k: Add airtime fairness scheduler"Felix Fietkau2017-01-249-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: rt2x00: add support for external LNA on MT7620Daniel Golle2017-01-201-3/+9
| | | | | Reported-by: Tom Psyborg <pozega.tomislav@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: move (& update) upstream accepted brcmfmac patchesRafał Miłecki2017-01-185-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>