aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: Expose support for ath9k DynackKoen Vandeputte2018-07-111-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-071-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>
* mac80211: make rtl8xxxu buils againJohn Crispin2018-06-261-0/+38
| | | | | | we only wanted to drop rtl8xxxue support Signed-off-by: John Crispin <john@phrozen.org>
* 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>
* mac80211: enable ath10k LED support by defaultStijn Tintel2018-06-251-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | Commit 61d57a2f88b90ba951012e66c7c6fae9234c97b4 adds ath10k LED support, but doesn't add an option to actually enable it. After enabling this option, a LED named ath10k-phy0 appears in sysfs, and a trigger can be assigned to it. Since 60deb3cdef4a the default set trigger is the tpt one. Enable it by default, as most devices using ath10k chips shouldn't be severely space-constrained. There are likely many devices that can benefit from having it enabled, like my testing device. Before: text data bss dec hex filename 245311 8899 16 254226 3e112 ath10k_core.ko After: text data bss dec hex filename 245979 8899 16 254894 3e3ae ath10k_core.ko Tested on a D-Link DAP-2695-A1 (ar71xx). Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* mac80211: ath10k: use tpt LED trigger by defaultMathias Kresin2018-06-251-0/+53
| | | | | | | | Use the tpt LED trigger for each created phy led. Ths way LEDs attached to the ath10k GPIO pins are indicating the phy status and blink on traffic. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mac80211: drop 355-ath9k-limit-retries-for-powersave-response-frames.patchJohn Crispin2018-06-2219-243/+157
| | | | | | several people reported this bug to be causing drop out issues Signed-off-by: John Crispin <john@phrozen.org>
* 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>
* 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>
* mac80211: backport brcmfmac changes from kernel 4.18Rafał Miłecki2018-06-1811-0/+631
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport brcmfmac firmware & clm_blob loading reworkRafał Miłecki2018-06-188-41/+1392
| | | | | | It backports remaining brcmfmac changes from 4.17. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport brcmfmac data structure reworkRafał Miłecki2018-06-1710-9/+1426
| | | | | | It backports brcmfmac commits from kernel 4.17. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport "brcmfmac: cleanup and some rework" from 4.17Rafał Miłecki2018-06-179-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>
* mac80211: ath10k: Allow to enable the thermal code of ath10kSven Eckelmann2018-06-094-3/+24
| | | | | | | | | | | | | | | Some ath10k firmware versions allow to access the chip internal a temperature sensor and allow to reduce the amount of the time when the card is allowed to send. The latter is required on devices which tend to overheat. An userspace service has to read /sys/class/ieee80211/phy*/device/hwmon/hwmon*/temp1_input regularly and then decide how much the device has to be throttled. This can be done by writing to /sys/class/ieee80211/phy*/device/cooling_device/cur_state. By default it is not throttled (0) but it can be throttled up to 100(%). Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
* mac80211: rt2x00: no longer use TXOP_BACKOFF for probe framesDaniel Golle2018-05-282-1/+48
| | | | | | | Import a revert-commit from Stanislaw Gruszka which significantly improves WiFi performance on rt2x00 based hardware. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath79: make ahb wifi workJohn Crispin2018-05-242-4/+339
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* 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>