aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/ath
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: backport upstream fixes for FragAttacksFelix Fietkau2021-05-1611-5/+502
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From the patch series description: Several security issues in the 802.11 implementations were found by Mathy Vanhoef (New York University Abu Dhabi), who has published all the details at https://papers.mathyvanhoef.com/usenix2021.pdf Specifically, the following CVEs were assigned: * CVE-2020-24586 - Fragmentation cache not cleared on reconnection * CVE-2020-24587 - Reassembling fragments encrypted under different keys * CVE-2020-24588 - Accepting non-SPP A-MSDU frames, which leads to payload being parsed as an L2 frame under an A-MSDU bit toggling attack * CVE-2020-26139 - Forwarding EAPOL from unauthenticated sender * CVE-2020-26140 - Accepting plaintext data frames in protected networks * CVE-2020-26141 - Not verifying TKIP MIC of fragmented frames * CVE-2020-26142 - Processing fragmented frames as full frames * CVE-2020-26143 - Accepting fragmented plaintext frames in protected networks * CVE-2020-26144 - Always accepting unencrypted A-MSDU frames that start with RFC1042 header with EAPOL ethertype * CVE-2020-26145 - Accepting plaintext broadcast fragments as full frames * CVE-2020-26146 - Reassembling encrypted fragments with non-consecutive packet numbers * CVE-2020-26147 - Reassembling mixed encrypted/plaintext fragments In general, the scope of these attacks is that they may allow an attacker to * inject L2 frames that they can more or less control (depending on the vulnerability and attack method) into an otherwise protected network; * exfiltrate (some) network data under certain conditions, this is specific to the fragmentation issues. A subset of these issues is known to apply to the Linux IEEE 802.11 implementation (mac80211). Where it is affected, the attached patches fix the issues, even if not all of them reference the exact CVE IDs. In addition, driver and/or firmware updates may be necessary, as well as potentially more fixes to mac80211, depending on how drivers are using it. Specifically, for Intel devices, firmware needs to be updated to the most recently released versions (which was done without any reference to the security issues) to address some of the vulnerabilities. To have a single set of patches, I'm also including patches for the ath10k and ath11k drivers here. We currently don't have information about how other drivers are, if at all, affected. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: Update to version 5.10.34-1Hauke Mehrtens2021-05-0412-69/+20
| | | | | | | The removed patches were applied upstream and are not needed anymore. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 17ac9849d3ff687c8c14d63e46f3e205adc22a3e)
* mac80211: Update to version 5.10.16-1Hauke Mehrtens2021-02-151-7/+7
| | | | | | The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Refresh patches againHauke Mehrtens2021-02-156-34/+37
| | | | | | | A wrong quilt configuration was used last time. Fixes: ed1e234d87fc ("mac80211: refresh patches") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath9k: fix transmitting to stations in dynamic SMPS modeFelix Fietkau2021-02-141-0/+49
| | | | | | | | | | When transmitting to a receiver in dynamic SMPS mode, all transmissions that use multiple spatial streams need to be sent using CTS-to-self or RTS/CTS to give the receiver's extra chains some time to wake up. This fixes the tx rate getting stuck at <= MCS7 for some clients, especially Intel ones, which make aggressive use of SMPS. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: refresh patchesFelix Fietkau2021-02-146-37/+34
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: Update to version 5.10-rc6-1Hauke Mehrtens2021-02-1415-44/+44
| | | | | | | | | The removed patches were applied upstream. This adapts ath10k-ct and mt76 to changed APIs. nl80211.h in iw is updated to match the version from backports. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.9.12-1Hauke Mehrtens2021-02-145-12/+12
| | | | | | | | | | | The removed patches were applied upstream. Remove the 300-mac80211-optimize-skb-resizing.patch. This patch was not applied upstream, but it conflicts with upstream changes and needs bigger changes. It was applied with Felix to remove this patch for now. It should be reworked and then send upstream later. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: convert UniFi Outdoor+ HSR support to OFDavid Bauer2021-02-011-25/+10
| | | | | | | | Enable support for the Ubiquiti UniFi Outdoor+ RF filter via device-tree. The old way of using platform data is not required anymore, as it was only used on the now removed ar71xx target. Signed-off-by: David Bauer <mail@david-bauer.net>
* mac80211: Update to version 5.8.18-1Hauke Mehrtens2020-12-161-2/+2
| | | | | | The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.8Hauke Mehrtens2020-08-101-262/+0
| | | | | | The removed patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.8-rc2-1Hauke Mehrtens2020-07-2317-239/+304
| | | | | | | | | | | | | | | | | | | | | | | | The following patches: * 972-ath10k_fix-crash-due-to-wrong-handling-of-peer_bw_rxnss_override-parameter.patch * 973-ath10k_fix-band_center_freq-handling-for-VHT160-in-recent-firmwares.patch are replaced by this commit in the upstream kernel: * 3db24065c2c8 ("ath10k: enable VHT160 and VHT80+80 modes") The following patches were applied upstream: * 001-rt2800-enable-MFP-support-unconditionally.patch * 090-wireless-Use-linux-stddef.h-instead-of-stddef.h.patch The rtw88 driver is now split into multiple kernel modules, just put it all into one OpenWrt kernel package. rtl8812au-ct was patched to compile against the mac80211 from kernel 5.8, but not runtime tested. Add a patch which fixes ath10k on IPQ40XX, this patch was send upstream and fixes a crash when loading ath10k on this SoC. Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [ipq40xx/ map-ac2200] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.7.5-1Hauke Mehrtens2020-07-238-12/+12
| | | | | | The b43 and b43legacy driver now support DRIVER_11W_SUPPORT. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: ath9k: enable MFP capability unconditionallyDavid Bauer2020-06-251-0/+34
| | | | | | | | | | ath9k will already fallback on software-crypto for chipsets not supporting IEEE802.11w (MFP). So advertising MFP is not dependent on disabling HW crypto for all traffic entirely. Tested on Sonicwall SonicPoint Ni (AR9132) Signed-off-by: David Bauer <mail@david-bauer.net>
* mac80211: Update to version 5.7-rc3-1Hauke Mehrtens2020-05-219-33/+33
| | | | | | | | | | | This updates the mac80211 backport. The removed patches are already integrated in the upstream version. The 131-Revert-mac80211-aes-cmac-switch-to-shash-CMAC-driver.patch patch was manually adapted to the changes in kernel 5.7. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.6.8-1Hauke Mehrtens2020-05-217-23/+23
| | | | | | | | This updates the mac80211 backport. The removed patches are already integrated in the upstream version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.5.19Hauke Mehrtens2020-05-2110-59/+59
| | | | | | | | This updates the mac80211 backport. The removed patches are already integrated in the upstream version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: ath10k: increase rx buffer size to 2048Linus Lüssing2020-04-261-0/+37
| | | | | | | | | | | | | | | | | | | | | | | Before, only frames with a maximum size of 1528 bytes could be transmitted between two 802.11s nodes. For batman-adv for instance, which adds its own header to each frame, we typically need an MTU of at least 1532 bytes to be able to transmit without fragmentation. This patch now increases the maxmimum frame size from 1528 to 1656 bytes. Tested with two ath10k devices in 802.11s mode, as well as with batman-adv on top of 802.11s with forwarding disabled. Fix originally found and developed by Ben Greear. Link: https://github.com/greearb/ath10k-ct/issues/89 Link: https://github.com/greearb/ath10k-ct/commit/9e5ab25027e0971fa24ccf93373324c08c4e992d Cc: Ben Greear <greearb@candelatech.com> Signed-off-by: Linus Lüssing <ll@simonwunderlich.de> Signed-off-by: Sven Eckelmann <sven@narfation.org>
* mac80211: Update to version 5.4.27Hauke Mehrtens2020-03-298-133/+10
| | | | | | The removed patches are all integrated in the upstream version now. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: ath9k: add GPIO mask dts propertyMichal Cieslakiewicz2020-01-151-0/+25
| | | | | | | | | | | | | | | This patch adds 'qca,gpio-mask=<u32>' device tree property to ath9k node. This optional setting is a hack and should only be used in very special (and rare) cases when a button or LED is wired to a GPIO pin normally masked out (due to being one-way etc). Netgear WNDR4300 v2 is one such example - it uses GPI9 for RFKILL. See ath9k/reg.h *_GPIO_MASK constants. Use with caution and expect to see stream of kernel warnings if wrong mask value is provided. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* mac80211: remove ath10k_pci memory hacksChristian Lamparter2020-01-052-49/+0
| | | | | | | | | | | | | These two hacks are no longer necessary as they've been moved to a special variant of kmod-ath10k-ct. So, if you have a device suffering from low-memory situation and getting applications crashes due to the OOM reaper or kernel panics with ath10k, please use the "kmod-ath10k-ct-smallbuffers" package from now on. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: switch to upstream owl-loader driverChristian Lamparter2019-11-302-0/+93
| | | | | | | | | | | | | | | | | | The Owl Loader (named after the codename that Atheros gave these devices back in the day) has been accepted upstream. This patch removes the "misc" driver OpenWrt had and adds the remaining differences against the version that ships with 5.4-rc1 into a separate "120-owl-loader-compat.patch" file that can be cut down once AR71XX is being dealt with. Note: I decided to keep the existing (kmod-)owl-loader package name around for now. The kernel module file in the kmod package will be called ath9k_pci_owl_loader.ko though. Acked-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: update to version 5.4-rc8Hauke Mehrtens2019-11-223-46/+4
| | | | | | | | This updates mac80211 to backports based on kernel 5.4-rc8. The deleted patches were applied upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211 ath9k: force QCA953x clock to 25MHzDavid Bauer2019-11-051-6/+13
| | | | | | | | | | | The QCA953x only supports 25 MHz refclk, however some OEMs set an invalid bootstrap value for the REF_CLK option, which would break the clock detection in ath9k. Force the QCA953x refclk to 25MHz in ath9k, as this is (according to the datasheet) the only valid frequency. Signed-off-by: David Bauer <mail@david-bauer.net>
* mac80211: Update to version 5.4-rc2Hauke Mehrtens2019-10-1912-294/+13
| | | | | | | | | This updates mac80211 to backports based on kernel 5.4-rc2 ath10k-ct was updated to match the API changes and iw now uses the new nl80211.h header file. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.3.6Hauke Mehrtens2019-10-194-33/+14
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: ath10k: fix latency issue for QCA988xDavid Bauer2019-10-061-0/+42
| | | | | | | | This backport fixes high latency (>100ms) on the WiFi link when using a QCA988x Wave 1 radio. The ath10k-ct driver is not affected by this bug from my testing, hence why it hasn't been discovered earlier. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath9k: backport dynack improvementsKoen Vandeputte2019-08-284-0/+300
| | | | | | | | | | | | | | | | | | | | | | | | | Close cooperation with Lorenzo Bianconi resulted in these patches which fix all remaining seen issues when using dynack. Fix link losses when: - Late Ack's are not seen or not present - switching from too low static coverage class to dynack on a live link These are fixed by setting the Ack Timeout/Slottime to the max possible value for the currently used channel width when a new station has been discovered. When traffic flows, dynack is able to adjust to optimal values within a few packets received (typically < 1 second) These changes have been thoroughly tested on ~60 offshore devices all interconnected using mesh over IBSS and dynack enabled on all. Distances between devices varied from <100m up to ~35km Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
* mac80211: ath10k: Fix crashes of QCA9984 when station connectsHauke Mehrtens2019-08-181-0/+83
| | | | | | | | | | This fixes a bug introduced in backports from kernel 5.1 which makes ath10k crash on QCA9984 when a station connects. The FW sends a airtime report, but this station is not yet fully registered and a NULL pointer is used. Fixes: 0b2c42ced21a ("mac80211: Update to version 5.2-rc7") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.3-rc4-1Hauke Mehrtens2019-08-1716-54/+54
| | | | | | | | | The removed patches were applied upstream. The type of the RT2X00_LIB_EEPROM config option was changed to bool, because boolean is an invalid value and the new kconfig system complained about this. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.2.8-1Hauke Mehrtens2019-08-1716-68/+25
| | | | | | | This contains multiple fixes from the upstream kernel. The removed patch was merged upstream. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: Update to version 5.2-rc7Hauke Mehrtens2019-07-1839-644/+110
| | | | | | | | | | | | | | This updates mac80211 to version 5.2-rc7, this contains all the changes to the wireless subsystem up to Linux 5.2-rc7. * The removed patches are applied upstream * b43 now uses kmod-lib-cordic * Update the nl80211.h file in iw to match backports version. * Remove the two backports from kernel 4.9, they were needed for mt76, but that can use the version from backports now, otherwise they collide and cause compile errors. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: ath10k: adjust tx power reduction for US regulatory domainSven Eckelmann2019-06-151-0/+101
| | | | | | | | | | | | | | | | | | | | | | | | FCC allows maximum antenna gain of 6 dBi. 15.247(b)(4): > (4) The conducted output power limit > specified in paragraph (b) of this section > is based on the use of antennas > with directional gains that do not exceed > 6 dBi. Except as shown in paragraph > (c) of this section, if transmitting > antennas of directional gain greater > than 6 dBi are used, the conducted > output power from the intentional radiator > shall be reduced below the stated > values in paragraphs (b)(1), (b)(2), > and (b)(3) of this section, as appropriate, > by the amount in dB that the > directional gain of the antenna exceeds > 6 dBi. https://www.gpo.gov/fdsys/pkg/CFR-2013-title47-vol1/pdf/CFR-2013-title47-vol1-sec15-247.pdf Signed-off-by: Sven Eckelmann <sven@narfation.org>
* mac80211: ath10k: fix max antenna gain unitSven Eckelmann2019-06-151-0/+49
| | | | | | | | | | | | | | | Most of the txpower for the ath10k firmware is stored as twicepower (0.5 dB steps). This isn't the case for max_antenna_gain - which is still expected by the firmware as dB. The firmware is converting it from dB to the internal (twicepower) representation when it calculates the limits of a channel. This can be seen in tpc_stats when configuring "12" as max_antenna_gain. Instead of the expected 12 (6 dB), the tpc_stats shows 24 (12 dB). Tested on QCA9888 and IPQ4019 with firmware 10.4-3.5.3-00057. Signed-off-by: Sven Eckelmann <sven@narfation.org>
* mac80211: ath9k: Increase allowed antenna gain to 6 dBiSven Eckelmann2019-06-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | FCC allows maximum antenna gain of 6 dBi. 15.247(b)(4): > (4) The conducted output power limit > specified in paragraph (b) of this section > is based on the use of antennas > with directional gains that do not exceed > 6 dBi. Except as shown in paragraph > (c) of this section, if transmitting > antennas of directional gain greater > than 6 dBi are used, the conducted > output power from the intentional radiator > shall be reduced below the stated > values in paragraphs (b)(1), (b)(2), > and (b)(3) of this section, as appropriate, > by the amount in dB that the > directional gain of the antenna exceeds > 6 dBi. Signed-off-by: Sven Eckelmann <sven@narfation.org>
* mac80211: update to version 4.19.32-1Hauke Mehrtens2019-04-061-73/+0
| | | | | | | | The removed patches are now integrated in the upstream kernel. Refresh all patches on top of the new backports release. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* mac80211: ath10k: fix incorrect multicast/broadcast rate settingSven Eckelmann2019-02-261-0/+43
| | | | | | | | | If no mcast_rate is set for the wifi-iface then there is no rate_idx (0) set for the bss. This breaks for example 5GHz meshpoint interfaces because 0 maps to a CCK rate (11Mbit/s). Fixes: db90c243a0b9 ("mac80211: update to version based on 4.19-rc4") Signed-off-by: Sven Eckelmann <sven@narfation.org>
* mac80211: update to version 4.19.23-1Hauke Mehrtens2019-02-178-212/+13
| | | | | | | | This updates mac80211 to backports version 4.19.23-1 which includes all the stable fixes from kernel 4.19.23. The removed patches are included in this version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: ath10k: support for management rate controlSven Eckelmann2019-02-112-0/+155
| | | | | | | | | | | | | Issues a wmi command to firmware when multicast rate change is received with the new BSS_CHANGED_MCAST_RATE flag. Also fixes the incorrect fixed_rate setting for CCK rates which got introduced with addition of ath10k_rates_rev2 enum. By default the firmware uses 1Mbps and 6Mbps rate for management packets in 2G and 5G bands respectively. But when the user selects different basic rates from the userspace, we need to send the management packets at the lowest basic rate selected by the user. Signed-off-by: Sven Eckelmann <sven@narfation.org>
* mac80211: ath: add extra 'regulatory domains'Oever González2019-01-261-0/+35
| | | | | | | | | | | | This patch adds several country codes to the regd.h and regd_common.h files in order to support devices whose country codes are not present in the original list. Without this patch, all devices whose manufacturer programmed any of these code in their EEPROM will run without wireless interfaces. Signed-off-by: Oever González <notengobattery@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [matched signed-off]
* mac80211: ath10k: remove "ath10k: fix otp failure result" patchChristian Lamparter2019-01-241-11/+0
| | | | | | | | | | | | | | Initially this patch was introduced as a quick fix following the removal of 936-ath10k_skip_otp_check.patch which caused multiple ath10k pcie devices in various ipq806x and ar71xx/ath79 targets to malfunction. Thankfully, the affected devices have been updated to utilize the pre-caldata method. And finally with the switch to ath10k-ct, which never had the patch or any reports of similar issues, I think it's time to remove this patch since it is no longer needed. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath9k: Avoid OF no-eeprom quirks when no qca,no-eepromDaniel F. Dickinson2018-12-221-0/+73
| | | | | | | | | | | | | | | | | | Based on the process of discovery in https://github.com/openwrt/openwrt/pull/1613, it has become clear that (at least) the PowerCloud System CR5000 was unable to get working 5GHz wireless (PCIe) because AH_USE_EEPROM was unconditionally masked out, not only when qca,noeeprom was in the DTS. This patch moves mask AH_USE_EEPROM into the if ... qca,noeeprom OF test. Thanks to Christian Lampartar (@chunkeey) for the heavy lifting and help. Patch has been prepared for upstream and will be submitted after review by @chunkeey and @xdarklight. Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
* mac80211: Update to version 4.19.7-1Hauke Mehrtens2018-12-136-13/+13
| | | | | | | | | | | This updates the backports package used in mac80211 to version 4.19.7-1 which is based on kernel 4.19.7. This integrates all the stable fixes introduces in this kernel version. The deleted patches are not needed any more because they are either included in the upstream Linux kernel 4.19.7 or in backports 4.19.7-1. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath9k: register GPIO chip for OF targetsMathias Kresin2018-12-122-10/+19
| | | | | | | | | | | | | | | | | This partitialy reverts commit ccab68f2d399. Registering the GPIO chip without a parent device completely breaks the ath9k GPIOs for device tree targets. As long as boards using the devicetree don't have the gpio-controller property set for the ath9k node, the unloading of the driver works as expected. Register the GPIO chip with the ath9k device as parent only for OF targets to find a trade-off between the needs of driver developers and the broken LEDs and buttons seen by users. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ath9k: fix dynack in IBSS modeKoen Vandeputte2018-11-065-0/+309
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, dynack was only tested upstream using AP/STA mode. Testing it on IBSS, showed that late-ack detection was broken. This is caused due to dynack using Association Request/Response frames for late-ack detection, which IBSS does not use. Also allowing Authentication frames here solves this. A second issue also got fixed, which was also seen AP/STA mode: When a station was added, the estimated value would be exponentially averaged using 0 as a starting point. This means that on larger distances, the ack timeout was still not high enough before synchronizing would run out of late-ack's for estimation. Fix this by using the initial estimated value as a baseline and only start averaging in the following estimation rounds. Test setup: - 2x identical devices: RB912UAG-5HPnD + 19dB sector - IBSS - 2x2 802.11an (ar9340), HT20, long GI - RSSI's -70 / -71 - Real distance: 23910 meter Results (60s iperf runs): Fixed coverage class 54 (up to 24300m): * 21.5 Mbits/sec Dynack: * 28.9 Mbits/sec Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* mac80211: Add patches which were added laterHauke Mehrtens2018-09-261-0/+96
| | | | | | | | These patches were added after the new matches structure for the mac80211 package was created. All the deleted patches are already integrated in kernel 4.19-rc4. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: update to version based on 4.19-rc4Hauke Mehrtens2018-09-2642-518/+132
| | | | | | | | | | | | This updates mac80211 to backports based on kernel 4.19-rc4. I plan to integrate all the patches which are in this tar into upstream backports soon. I used the backports generated from this code: https://github.com/hauke/backports/commits/wip2 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mac80211: rebase ontop of v4.18.5John Crispin2018-09-2660-0/+4860
Signed-off-by: John Crispin <john@phrozen.org>