aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAgeFilesLines
* ath9k: add back support for using tx99 with active monitor interfacesFelix Fietkau2018-09-221-0/+96
| | | | | | Fixes controlling bitrate Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix tx queue allocation for active monitor interfacesFelix Fietkau2018-09-221-0/+26
| | | | | | Fixes a crash with drivers like ath9k Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath9k: fix unloading the moduleFelix Fietkau2018-09-202-15/+10
| | | | | | | | | Registering a GPIO chip with the ath9k device as parent prevents unload, because the gpiochip core increases the module use count. Unfortunately, the only way to avoid this at the moment seems to be to register the GPIO chip without a parent device Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: brcmfmac: backport CYW89342 support & fixes from 4.20Rafał Miłecki2018-09-124-0/+208
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: add iw command wrapper with error loggingRafał Miłecki2018-09-101-0/+4
| | | | | | | | | | | | | | | | | | | | | Currently it's close to impossible to tell what part of mac80211 setup went wrong. Errors logged into system log look like this: radio0 (6155): command failed: No error information (-524) radio0 (6155): command failed: Not supported (-95) radio0 (6155): command failed: I/O error (-5) radio0 (6155): command failed: Too many open files in system (-23) With this commit change it's getting clear: command failed: No error information (-524) Failed command: iw dev wlan0 del command failed: Not supported (-95) Failed command: iw phy phy0 set antenna_gain 0 command failed: I/O error (-5) Failed command: iw phy phy0 set distance 0 command failed: Too many open files in system (-23) Failed command: iw phy phy0 interface add wlan0 type __ap Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport upstream fixesKoen Vandeputte2018-09-0714-8/+679
| | | | | | | | | | Backport most significant upstream fixes (excl. hwsim fixes) Refreshed all patches. Contains important fixes for CSA (Channel Switch Announcement) and A-MSDU frames. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath9k: fix setting up tx99 with a monitor mode interfaceFelix Fietkau2018-08-251-0/+92
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: mwl8k: Expand non-DFS 5G channelsAntonio Silverio2018-08-251-0/+37
| | | | | | | Add non-DFS 5G upper channels (149-165) besides existed 4 lower channels (36, 40, 44, 48). Signed-off-by: Antonio Silverio <menion@gmail.com>
* mac80211: brcmfmac: backport patch for per-firmware featuresRafał Miłecki2018-07-311-0/+84
| | | | | | | This allows driver to support features that can't be dynamically discovered. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: ath10k: Limit available channels via DT ieee80211-freq-limitSven Eckelmann2018-07-301-0/+44
| | | | | | | | | | | | | Tri-band devices (1x 2.4GHz + 2x 5GHz) often incorporate special filters in the RX and TX path. These filtered channel can in theory still be used by the hardware but the signal strength is reduced so much that it makes no sense. There is already a DT property to limit the available channels but ath10k has to manually call this functionality to limit the currrently set wiphy channels further. Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
* mac80211: brcmfmac: backport 4.19 patches preparing monitor mode supportRafał Miłecki2018-07-276-1/+383
| | | | | | | | Monitor mode isn't supported yet with brcmfmac, it's just an early work. This also prepares brcmfmac to work stable with new firmwares which use updated struct for passing STA info. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport brcmfmac fixes & debugging helpers from 4.18Rafał Miłecki2018-07-269-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: 7e8eb7f309a8 ("mac80211: backport brcmfmac firmware & clm_blob loading rework") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: backport and update patches for ath10kAnsuel Smith2018-07-2219-74/+2508
| | | | | | | | | | | | | | | | | | | | | | | | This commit refreshes and updates the VHT160 ath10k support fix patches and adds a number of backports from ath-next: * 8ed05ed06fca ath10k: handle tdls peer events * 229329ff345f ath10k: wmi: modify svc bitmap parsing for wcn3990 * 14d65775687c ath10k: advertise TDLS wider bandwidth support for 5GHz * bc64d05220f3 ath10k: debugfs support to get final TPC stats for 10.4 variants * 8b2d93dd2261 ath10k: Fix kernel panic while using worker (ath10k_sta_rc_update_wk) * 4b190675ad06 ath10k: fix kernel panic while reading tpc_stats * be8cce96f14d ath10k: add support to configure channel dwell time * f40105e67478 ath: add support to get the detected radar specifications * 6f6eb1bcbeff ath10k: DFS Host Confirmation * 260e629bbf44 ath10k: fix memory leak of tpc_stats * 38441fb6fcbb ath10k: support use of channel 173 * 2e9bcd0d7324 ath10k: fix spectral scan for QCA9984 and QCA9888 chipsets Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [move backported patches in the 3xx number space, bring in upstream order, replace incomplete patch files with git format-patch ones, rewrite commit message, fix subject] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* 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>