aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: rt2800: fix mt7620 E2 channel registersTomislav Požega2017-04-181-0/+41
| | | | | | | | update RF register 47 and 54 values according to vendor driver Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org> [daniel@makrotopia.org: moved changes into a separate patch]
* mac80211: rt2800: fix mt7620 vco calibration registersTomislav Požega2017-04-181-0/+50
| | | | | | | | | | Use register values from init LNA function instead of the ones from restore LNA function. Apply register values based on rx path configuration. Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org> [daniel@makrotopia.org: moved changes into a separate patch]
* mac80211: fix kconfig recursive dependency warningFelix Fietkau2017-04-181-2/+1
| | | | | | | | | | | | | Make brcmfmac depend on !TARGET_uml. Technically, brcmfmac could be built for uml because only SDIO support won't work on that target. However, selectively avoiding the dependency propagation of !TARGET_uml from kmod-mmc to avoid including a reference to BRCMFMAC_SDIO doesn't work. In practice, brcmfmac is completely useless on uml, so let's just disable it there. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: rt2x00: fix MT7620 LNA gain and VCO-after-ALCDaniel Golle2017-04-172-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: add rt2x00 debug symbols to PKG_CONFIG_DEPENDSJonas Gorski2017-04-121-0/+2
| | | | | | | Chaning these symbols require a recompilation of the modules, so make the system aware of it. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* mac80211: manually apply dependencies to prevent a recoursive oneJonas Gorski2017-04-121-1/+2
| | | | | | | Apply the !UML dependency to both the symbol and the DEPENDS so there is no recursive dependency anymore. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* mac80211: conistent wireless.wiki.kernel.orgMatthias Fritzsche2017-04-121-7/+7
| | | | | | | Change all the URLs to wireless.wiki.kernel.org to have the same protocol, domain and path. Signed-off-by: Matthias Fritzsche <txt.file@txtfile.eu>
* ath9k: drop obsolete patchMathias Kresin2017-04-084-43/+4
| | | | | | | Now that the wireless LEDs are added via platform leds this patch isn't required any longer. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath9k: ignore led_pin if ath9k GPIO controller is used with DTMathias Kresin2017-04-082-6/+8
| | | | | | | | Don't setup the default led pin if the ath9k GPIO controller is used via device tree to prevent collision. In case any of the pins exposed by the ath9k is used, the phyNtpt trigger needs to be set in userspace. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath9k: enable GPIO chip only if requested via DTMathias Kresin2017-04-082-10/+21
| | | | | | | | In case that the atheros device tree binding is used, enable access to the GPIO chip only if the gpio-controller device tree parameter is used for the ath9k node. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath9k: unset the default LED pin if used by platform ledsMathias Kresin2017-04-084-31/+27
| | | | | | | | | Unset the default LED gpio pin if the same gpio pin is used by a LED defined via platform LED. This prevents that the default led trigger gets assigned to this LED and the GPIO value gets changed on wifi up/down in case the led is not used for signaling the wifi state. Signed-off-by: Mathias Kresin <dev@kresin.me>
* 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: rt2x00: import upstream changes and rebase our patchesDaniel Golle2017-03-3049-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>
* mac80211: ath10k: allow failure getting board id via otpHannu Nyman2017-03-281-0/+11
| | | | | | | | | | | | | | | ath10k tries to fetch board id via otp, but that fails for many chips like QCA988x, QCA9984 etc. Recent commit cc189c0b7f removed the earlier hack that had allowed QCA radios to work, as that hack was incompatible with the new wifi chips being introduced to the source tree. Restore functionality for the existing wifi chips by modifying the return value of the 'board id via otp' function to a value that is recognised as a harmless error, so that name evaluation continues by using the board file. Patch originally suggested by Christian Lamparter in forum discussion. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* ath9k: fix power limits on initFelix Fietkau2017-03-221-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-03-223-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: Fix race condition leading to wifi interfaces not coming up at ↵Vittorio Gambaletta2017-03-221-5/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | boot sometimes. In the drv_mac80211_setup function, mac80211_interface_cleanup is called to ask the kernel to delete all existing interfaces for the phy that is being configured via netlink. Later in the first function, mac80211_prepare_vif is called to set up the new interfaces as required. But sometimes, when mac80211_prepare_vif (and so the relevant `iw phy x interface add y` command) runs, the kernel might still be cleaning up the old interface with the same ifname. It usually takes very few time to do that; possibly a few milliseconds of sleep in the script after detecting this error condition could be enough, but the busybox sh does not support sub-second sleep intervals. When this happens, iw obviously fails to create the new interface; and the following message is printed in the system log, followed by subsequent failure messages from hostapd in case this would have been an AP interface. Tue Mar 14 04:21:57 2017 daemon.notice netifd: radio1 (2767): command failed: Too many open files in system (-23) This was a long-standing issue existing since at least OpenWrt Backfire, and today I finally managed to debug and (hopefully) solve it. It was happening very few times on most devices; but it was happening a lot more frequently on fast platforms with multiple radios, such as the powerpc-based dual-ath9k-radio tl-wdr4900-v1. Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
* mac80211: enable ath10k AHB support for QCA4019Christian Lamparter2017-03-224-51/+50
| | | | | | | | | | | | | | | | This patch enables the ATH10K_AHB support for the QCA4019 devices on the AHB bus. This patch also removes 936-ath10k_skip_otp_check.patch because it breaks the AHB device identification. "Patch is wrong. I find it frustrating OpenWRT/LEDE doesn't try to work with upstream on ixing these things right." [1] <https://www.mail-archive.com/ath10k@lists.infradead.org/msg05896.html> It also limits ath10k memory hunger (This is a problem with 128MiB RAM) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: brcmfmac: backport patches pushed on 2017-03-20Rafał Miłecki2017-03-2111-5/+756
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: Update wireless-regdb to master-2017-03-07Ryan Mounce2017-03-161-12/+19
| | | | | | | | | | | | | | | | The short log of changes since the 2016-06-10 release is below. Jouni Malinen (1): wireless-regdb: Remove DFS requirement for India (IN) Ryan Mounce (1): wireless-regdb: Update rules for Australia (AU) and add 60GHz rules Seth Forshee (2): wireless-regdb: Update 5 GHz rules for Canada wireless-regdb: update regulatory.bin based on preceding changes Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* 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>
* mac80211: mwifiex-sdio: select DRIVER_11AC_SUPPORTÁlvaro Fernández Rojas2017-03-111-1/+1
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: mwifiex-pcie: select DRIVER_11AC_SUPPORTÁlvaro Fernández Rojas2017-03-111-1/+1
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: mwifiex-sdio: select kmod-mmc instead of PCI_SUPPORTÁlvaro Fernández Rojas2017-03-111-1/+1
| | | | | | Should fix buildbot issues. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: add support for Marvell 802.11n/802.11ac SDIO Wireless cardsHenryk Heisig2017-03-111-1/+18
| | | | | | | This adds option to build kernel module and firmware packages for a Marvell 8887 SDIO Wireless device Signed-off-by: Henryk Heisig <hyniu@o2.pl>
* 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: hwsim: select DRIVER_11AC_SUPPORT and DRIVER_11W_SUPPORTYousong Zhou2017-02-241-1/+1
| | | | | | | | This is required for default wireless configuration of malta target to work out of the box again. Fixes "77ece30e: hostapd: Add ability to specify that that wireless driver supports 802.11ac" Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* 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-06204-12870/+1419
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: add a warning to the tx99 config optionFelix Fietkau2017-02-021-1/+1
| | | | | | | | | Lots of users try random stuff when they encounter any kind of difficulty. I've had to debug a number of cases where people had enabled this option for no reason. Hopefully this warning will reduce the number of useless support cases. 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>
* mac80211: start hostapd with logging wpa_printf messages to syslogRafał Miłecki2017-01-311-1/+1
| | | | | | | Some debugging/error messages are printed using wpa_printf and this change allows finally reading them out of the syslog. 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>