aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: backport brcmfmac fixes & debugging helpers from 4.18Rafał Miłecki2018-07-279-2/+341
| | | | | | | | | | | | | The most important is probably regression fix in handling platform NVRAM. That bug stopped hardware from being properly calibrated breaking e.g. 5 GHz for Netgear R8000. Other than that it triggers memory dumps when experiencing firmware problems which is important for debugging purposes. Fixes: 2811c97803e5 ("mac80211: backport brcmfmac firmware & clm_blob loading rework") Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit b26214adb53da2816ff830b6cd6e31e1dafa2635)
* mac80211: Expose support for ath9k DynackKoen Vandeputte2018-07-121-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enables support for Dynack feature. When a remote station is far away, we need to compensate for the distance by allowing more time for an ACK to arrive back before issueing a retransmission. Currently, it needs to be set fixed to indicate the maximum distance the remote station will ever be. While this mostly works for static antennae, it introduces 2 issues: - If the actual distance is less, speed is reduced due to a lot of wates wait-time - If the distance becomes greater, retries start to occur and comms can get lost. Allowing to set it dynamically using dynack ensures the best possible tradeoff between speed vs distance. This feature is currently only supported in ath9k. it is also disabled by default. Enabling it can be done in 2 ways: - issue cmd: iw phy0 set distance auto - sending the NL80211_ATTR_WIPHY_DYN_ACK flag to mac80211 driver using netlink Disabling it can be done by providing a valid fixed value. To give an idea of a practical example: In my usecase, we have mesh wifi device installed on ships/platforms. Currently, the coverage class is set at 12000m fixed. When a vessel moved closer (ex. 1500m), the measured link capacity was a lot lower compared to setting the coverage class fixed to 1500m Dynack completely solved this, nearly providing double the bandwidth at closer range compared to the fixed setting of 12000m being used. Also when a vessel sailed to a distance greater than the fixed setting, communication was lost as the ACK's never arrived within the max allowed timeframe. Actual distance: 6010m iperf 60s run avg Fixed 12150m: 31 Mbit/s Dynack: 58 Mbit/s Fixed 6300m: 51 Mbit/s Dynack: 59 Mbit/s Fixed 3000m: 13 Mbit/s (lots of retries) Dynack: 58 Mbit/s Actual distance: 1504m iperf 60s run avg Fixed 12150m: 31 Mbit/s Dynack: 86 Mbit/s Fixed 6300m: 55 Mbit/s Dynack: 87 Mbit/s Fixed 3000m: 67 Mbit/s Dynack: 87 Mbit/s Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* mac80211: initialize sinfo in cfg80211_get_stationSven Eckelmann2018-07-081-0/+42
| | | | | | | | | | | | | | | | | | | | Most of the implementations behind cfg80211_get_station will not initialize sinfo to zero before manipulating it. For example, the member "filled", which indicates the filled in parts of this struct, is often only modified by enabling certain bits in the bitfield while keeping the remaining bits in their original state. A caller without a preinitialized sinfo.filled can then no longer decide which parts of sinfo were filled in by cfg80211_get_station (or actually the underlying implementations). cfg80211_get_station must therefore take care that sinfo is initialized to zero. Otherwise, the caller may tries to read information which was not filled in and which must therefore also be considered uninitialized. In batadv_v_elp_get_throughput's case, an invalid "random" expected throughput may be stored for this neighbor and thus the B.A.T.M.A.N V algorithm may switch to non-optimal neighbors for certain destinations. Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com> (cherry picked from commit 87493dac11f3c7bbbc1fed9aef1cf9ff62053ab0)
* mac80211: make rtl8xxxu build againJohn Crispin2018-06-261-0/+38
| | | | | | | we only wanted to drop rtl8xxxue support Signed-off-by: John Crispin <john@phrozen.org> (cherry picked from commit d8981133b27e7deebc79dc5fc51beb06b3b0a221)
* mac80211: rtl8xxxu: drop support patchesJohn Crispin2018-06-2658-3569/+0
| | | | | | | | | | After a very enlightening but unfortunately far too short exchange with Jes we mutually agreed to drop the patches. They are unfortunately not ready yet. Acked-by: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: John Crispin <john@phrozen.org> (cherry picked from commit 66c5696cdf9599ccef652a651f52c0f7f53da44a)
* mac80211: backport brcmfmac changes from kernel 4.18Rafał Miłecki2018-06-2311-0/+631
| | | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit c446e38c862201dd4d6a4fb8ea6e49172980952d)
* mac80211: backport brcmfmac firmware & clm_blob loading reworkRafał Miłecki2018-06-238-41/+1392
| | | | | | | It backports remaining brcmfmac changes from 4.17. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 7e8eb7f309a802ba10a13ddb807c6a31fecc9183)
* mac80211: backport brcmfmac data structure reworkRafał Miłecki2018-06-2310-9/+1426
| | | | | | | It backports brcmfmac commits from kernel 4.17. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 3c8bb92655c68a07abf5358ef23eb98422ed8d6d)
* mac80211: backport "brcmfmac: cleanup and some rework" from 4.17Rafał Miłecki2018-06-239-1/+772
| | | | | | | | | | | | It was described by Arend as: > This series is intended for 4.17 and includes following: > > * rework bus layer attach code. > * remove duplicate variable declaration. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 0da9303e5b444e2c98c24719c48c09f4c976c5a7)
* mac80211: fix up ath10k led patchJohn Crispin2018-06-221-26/+52
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mac80211: drop 355-ath9k-limit-retries-for-powersave-response-frames.patchJohn Crispin2018-06-2218-235/+153
| | | | | | | several people reported this bug to be causing drop out issues Signed-off-by: John Crispin <john@phrozen.org> (cherry picked from commit cac1a4be66f548735878beccc10dc4b1ec7ad364)
* mac80211: ath10k fix vht160 firmware crashAnsuel Smith2018-06-222-0/+182
| | | | | | | When the 160mhz width is selected the ath10k firmware crash. This fix this problem. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> (cherry picked from commit 134e832814f1986c7ee06ac00806ebb6e762fd15)
* mac80211: ath10k add leds supportAnsuel Smith2018-06-221-0/+617
| | | | | | | This adds support for leds handled by the wireless chipset. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> (cherry picked from commit 61d57a2f88b90ba951012e66c7c6fae9234c97b4)
* mac80211: rt2x00: no longer use TXOP_BACKOFF for probe framesDaniel Golle2018-06-112-1/+46
| | | | | | | | Import a revert-commit from Stanislaw Gruszka which significantly improves WiFi performance on rt2x00 based hardware. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry-picked from commit f4a639a3d7d40b4f63c431c2d554c479fbcc6b74)
* mac80211: refactor non-{sae,dfs} mesh initializationDaniel Golle2018-05-152-47/+48
| | | | | | | | | | | | Refactor mesh initialization into a separate function, do some cleaning on the way to make the code more readable. Changes: * Move iw mesh setup to new mac80211_setup_mesh() * fallback on 'ssid' parameter in case 'mesh_id' isn't set * move setting of freq variable to shared code as it is needed for both, the wpa_supplicant and the iw based setup. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: Re-enable encrypted 11s meshpointSven Eckelmann2018-05-142-2/+2
| | | | | | | | | | The commit 574e4377fad5 ("mac80211: properly setup mesh interface") uses the variable $wpa to decide whether encrypted meshpoint is requested by the user or not. But the variable $wpa will only be set correctly after the function wireless_vif_parse_encryption is called. Fixes: 574e4377fad5 ("mac80211: properly setup mesh interface") Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
* mac80211: properly setup mesh interfaceDaniel Golle2018-05-142-4/+15
| | | | | | | Setup wpa_supplicant for encrypted mesh or when using DFS channels and adjust interface setup to pass fixed frequency for mesh mode. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: fix build error for external kernel.Sandeep Sheriker Mallikarjun2018-05-071-5/+10
| | | | | | | | | | fixed build error when external kernel is selected from menuconfig. The patches present in target/linux/generic does not gets applied to external kernel and build fails while compiling mac82011 & regmap-core kernel modules. as a fix added check in Makefile for CONFIG_EXTERNAL_KERNEL_TREE present or not. Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
* mac80211: update patch to read ath10k variant from DTThomas Hebb2018-04-203-13/+18
| | | | | | | | | This patch was revised upstream before being merged, and OpenWrt's copy was never updated to reflect the revision. Signed-off-by: Thomas Hebb <tommyhebb@gmail.com> [refreshed patches] Signed-off-by: Mathias Kresin <dev@kresin.me>
* mac80211: pass down noscan to wpa_supplicantDaniel Golle2018-04-202-2/+2
| | | | Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: join 5GHz checksLeon M. George2018-04-191-6/+3
| | | | | | | | | | Before this commit, devices supporting both 2.4GHz and 5GHz would be configured for 2.4GHz by default - unless they have VHT capabilities. With this commit, channel 36 is only set when the frequency is supported. VHT isn't checked unless that is the case. Signed-off-by: Leon M. George <leon@georgemail.eu>
* mac80211: ipw2200-fw: fix download mirror(s)Stefan Lippers-Hollmann2018-04-181-1/+5
| | | | | | | bughost.org hasn't existed for 6-8 years, add a couple of current mirrors to avoid the fallback to http://mirror2.openwrt.org/sources/. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* mac80211: ipw2100-fw: fix download mirror(s)Stefan Lippers-Hollmann2018-04-181-1/+5
| | | | | | | bughost.org hasn't existed for 6-8 years, add a couple of current mirrors to avoid the fallback to http://mirror2.openwrt.org/sources/. Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* mac80211: ath10k: Suppress "Unknown eventid: 36925" warningsStefan Lippers-Hollmann2018-04-181-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | Merge upstream patch from Sathishkumar Muruganandam <murugana@codeaurora.org> for OpenWrt's backports package: https://lkml.kernel.org/r/<1522049641-19521-1-git-send-email-murugana@codeaurora.org> Commit-ID: 606204bb863fa3b0bb54929d79b4dc46338f9180 * FW has Smart Logging feature enabled by default for detecting failures * and processing FATAL_CONDITION_EVENTID (36925 - 0x903D) back to host. * * Since ath10k doesn't implement the Smart Logging and FATAL CONDITION * EVENT processing yet, suppressing the unknown event ID warning by moving * this under ATH10K_DBG_WMI. * * Simulated the same issue by having associated STA powered off when * ping flood was running from AP backbone. This triggerd STA KICKOUT * in AP followed by FATAL CONDITION event 36925. * * Issue was reproduced and verified in below DUT * ------------------------------------------------ * AP mode of OpenWRT QCA9984 running 6.0.8 with FW ver 10.4-3.5.3-00053 * * Signed-off-by: Sathishkumar Muruganandam <murugana@codeaurora.org> Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
* mac80211: Fix loading of rsi_sdio moduleHauke Mehrtens2018-04-181-0/+96
| | | | | | | | When CONFIG_PM was not set rsi_sdio_reinit_device() was not compiled into the driver but referenced. This is a backport form the mainline Linux kernel. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: add RedPine RS9113 module supportEvgeniy Didin2018-04-182-0/+125
| | | | | | | | | | | RedPine RS9113 wireless module requires rsi91x driver to be built and linux-firmware/rsi/rs9113_wlan_qspi.rps to be installed. Also we add patch for successful compilation of rsi91x driver. Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: Hauke Mehrtens <hauke@hauke-m.de> Cc: John Crispin <john@phrozen.org>
* Revert "mac80211: pass hostapd control socket to mesh-mode supplicant"Daniel Golle2018-04-181-1/+1
| | | | | | | | This reverts commit 1356a66f94f31e636fafec514a1c658356ef51b3. The change breaks wpa_supplicant.conf generation, more work is needed to fix mesh+AP. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: pass hostapd control socket to mesh-mode supplicantDaniel Golle2018-04-131-1/+1
| | | | | | | | | | | Unlike when operating in Ad-Hoc mode, we apparently need to pass the hostapd control socket interface to wpa_supplicant when using 802.11s mesh mode. There also seems to still be something wrong with the logic setting channel and (v)htmode parameters... Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mac80211: backport brcmfmac fixes from 4.16Rafał Miłecki2018-03-218-3/+345
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: avoid changing skb truesize in A-MSDU aggregationFelix Fietkau2018-03-191-9/+1
| | | | | | Should fix recently reported data corruption issues Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: ath10k: search all IEs for variant before falling backChristian Lamparter2018-03-142-0/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the patch that was posted to ath10k-devel ML: <https://patchwork.kernel.org/patch/10233491/> |From: Thomas Hebb <tommyhebb@gmail.com> |Subject: [PATCH] ath10k: search all IEs for variant before falling back |Date: Wed, 21 Feb 2018 11:43:39 -0500 |[...] |This patch fixes the issue by first searching the entire file for the ID |with variant, and searching for the fallback ID only if that search |fails. It also includes some code cleanup in the area, as |ath10k_core_fetch_board_data_api_n() no longer does its own string |mangling to remove the variant from an ID, instead leaving that job to a |new flag passed to ath10k_core_create_board_name(). | |I've tested this patch on a QCA4019 and verified that the driver behaves |correctly for 1) both fallback and variant BDFs present, 2) only fallback |BDF present, and 3) no matching BDFs present. | |Fixes: 1657b8f84ed9 ("ath10k: search SMBIOS for OEM board file extension") |Signed-off-by: Thomas Hebb <tommyhebb@gmail.com> Note: 937-ath10k-calibration-variant.patch has been reassigned a new 081 number, as it now ships with upstream.... But also because this patch requires the change in ath10k_core_create_board_name(). Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ipq40xx: add targetJohn Crispin2018-03-141-1/+1
| | | | | | Signed-off-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Mathias Kresin <dev@kresin.me> Signed-off-by: John Crispin <john@phrozen.org>
* mac80211: minstrel: make short preamble CCK available when not used at ↵Felix Fietkau2018-03-101-4/+12
| | | | | | | | | connect time The BSS short preamble state can change without rate control update notification. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix a tx queue memory accounting errorFelix Fietkau2018-03-101-0/+66
| | | | | | Fixes rare hard to trigger tx hangs after some time Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: avoid sampling rates that are too slow, improves throughputFelix Fietkau2018-03-031-0/+40
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: brcmfmac: better logging of firmware api errorsRafał Miłecki2018-03-012-0/+254
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport remaining changes from 4.16Rafał Miłecki2018-03-015-0/+1297
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: enlarge caps buffer & final sdio restructuringRafał Miłecki2018-03-019-0/+982
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: restructuring sdio access functions - take 2Rafał Miłecki2018-03-0110-0/+1613
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: restructuring sdio access functionsRafał Miłecki2018-03-0110-0/+1020
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: backport remaining changes from 4.15Rafał Miłecki2018-03-016-2/+546
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: brcmfmac: firmware halt and scan cleanupRafał Miłecki2018-03-0110-3/+582
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: reorder patches putting backports firstRafał Miłecki2018-03-0139-1/+1
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: add a missing check to the last minstrel fixFelix Fietkau2018-03-011-2/+3
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: rename patches accepted upstreamRafał Miłecki2018-03-0112-0/+0
| | | | | | | | This is to simplify maintenance. It's easy to say now which patches need some extra work and/or sending upstream. Updating to newer backports should be also simpler with this. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* Revert "ath: do not apply broken power limits with ATH_USER_REGD"Felix Fietkau2018-03-012-26/+2
| | | | | | | | This reverts commit 79a768a90fa94c0a38c9def1992cc974c091e286. Some devices can go over their power limits with this commit, so this needs to be handled on a case by case basis instead Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: update the A-MSDU fast-rx patch to the latest versionFelix Fietkau2018-03-011-25/+74
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: add more minstrel fixesFelix Fietkau2018-03-014-19/+154
| | | | | | Improves 2.4 GHz throughput Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix regression introduced by the recent minstrel changesFelix Fietkau2018-03-011-52/+40
| | | | | | | The cck rates array needs to be initialized for both the minstrel and the minstrel_ht variant Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: add an optimization for fast-rx supportFelix Fietkau2018-02-281-0/+207
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>