Commit Graph

187 Commits

Author SHA1 Message Date
lean
faf4476659 kernel: Make QMI Helpers user selectable in 5.18 2022-07-12 18:54:05 +08:00
lean
86ea102156 mac80211: add rtl8723bs for kernel 5.18 support for Ryan 2022-07-11 02:43:03 +08:00
lean
c6734e6cdb mac80211: backport APIs to support kernel 5.18 2022-07-09 19:19:54 +08:00
lean
63434c83c9 mac80211: improve ath10k encap/vht/thermal support 2022-07-08 14:45:00 +08:00
lean
66d19a4e36 mac80211: bump to 5.15.33-1 2022-07-08 12:44:37 +08:00
Felix Fietkau
e78e4dcf22 mac80211: add a bug fix for a rare crash
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2022-06-03 12:27:41 +08:00
JoseCoW
08a6577256
mac80211: add random BSS color setting (#9188)
Using BSS coloring is one way of improving performance on 802.11ax
radios, currently its only enabled by users adding he_bss_color to their
wireless UCI config.

This made sense as one could easily get BSS color collision as BSS color
range is 1-63.

Hostapd now has a way of dealing with BSS color collisions so we can just
assign a integer in the 1-63 range randomly if one is not set by users.

Signed-off-by: Robert Marko <robimarko@gmail.com>

Co-authored-by: Robert Marko <robimarko@gmail.com>
2022-04-05 00:58:22 +08:00
lean
8ee8d8cf46 mac80211: fix ath11k kernel 5.15 support 2022-04-03 01:03:27 +08:00
lean
3530c1b73f mac80211: fix ath11k support for IPQ target 2022-04-03 00:53:56 +08:00
AmadeusGhost
cc60132004 mac80211: update to 5.15.8-1
Fixes: #9065, #9083, #9091
2022-03-29 15:09:20 +08:00
lean
1c96c4ace0 mac80211: fix complie with kernel 5.15 2022-02-26 19:08:42 +08:00
lean
9604aa4723 mac80211: agg-tx: refactor sending addba 2022-02-16 13:50:00 +08:00
lean
8efdb24e81 mac80211: fix typo error 2021-12-31 14:46:23 +08:00
lean
011c015a6f ath10k: provide a build variant for small RAM devices 2021-12-31 11:50:34 +08:00
lean
61b1fd2208 Revert "mac80211: sync upstream (#7932)"
This reverts commit a42521a11f.
2021-09-29 21:45:03 +08:00
Beginner
a42521a11f
mac80211: sync upstream (#7932)
* mac80211: fix HT40 mode for 6G band

The channel offset used for VHT segment calculation was missing for HT

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: refresh patch

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: add missing change for encap offload on devices with sw rate control

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* ath9k: owl-loader: remove obsolete AR71XX patch

this is no longer necessary as the AR71XX target
was superseded by ath79.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>

* mac80211: revert faulty change that was breaking broadcast tx

Fixes: 0f6887972adc ("mac80211: add missing change for encap offload on devices with sw rate control")
Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: Update to backports-5.10.68

Refresh all patches.
The removed patches were integrated upstream.

This contains fixes for CVE-2020-3702

1. These patches (ath, ath9k, mac80211)  were included in kernel
versions since 4.14.245 and 4.19.205. They fix security vulnerability
CVE-2020-3702 [1] similar to KrØØk, which was found by ESET [2].

Thank you Josef Schlehofer for reporting this problem.

[1] https://nvd.nist.gov/vuln/detail/CVE-2020-3702
[2] https://www.welivesecurity.com/2020/08/06/beyond-kr00k-even-more-wifi-chips-vulnerable-eavesdropping/

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

* mac80211: backport support for BSS color changes

This is needed for an upcoming mt76 update

Signed-off-by: Felix Fietkau <nbd@nbd.name>

Co-authored-by: Felix Fietkau <nbd@nbd.name>
Co-authored-by: Christian Lamparter <chunkeey@gmail.com>
Co-authored-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-09-29 21:41:27 +08:00
coolsnowwolf
7a28386e64 Revert "mac80211: sync upstream (#7734)"
This reverts commit a74c473f42.
2021-09-04 15:19:13 +08:00
coolsnowwolf
b42c413de5 Revert "mac80211: remove patch (#7742)"
This reverts commit 634663fe56.
2021-09-04 15:19:10 +08:00
Beginner
634663fe56
mac80211: remove patch (#7742)
This patch caused a compilation error

Signed-off-by: Beginner <70857188+Beginner-Go@users.noreply.github.com>
2021-08-25 15:07:02 +08:00
Beginner
a74c473f42
mac80211: sync upstream (#7734)
* mac80211: fix HT40 mode for 6G band

The channel offset used for VHT segment calculation was missing for HT

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: refresh patch

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: add missing change for encap offload on devices with sw rate control

Signed-off-by: Felix Fietkau <nbd@nbd.name>

Co-authored-by: Felix Fietkau <nbd@nbd.name>
2021-08-25 10:55:57 +08:00
Hugo Yuan
527a117abd
ipq807x: add support for ZTE MF269 (#7713) 2021-08-22 01:27:48 +08:00
ntlf9t
fde8a69c47
ath11k: memory leak patches (#7546) 2021-07-28 10:12:15 +08:00
ntlf9t
c7f168255a
ath11k: memory leak patches and finishing patch (#7521) 2021-07-26 00:56:20 +08:00
coolsnowwolf
7a4f49fb25 ath11k: fix wifi drivers memory leak for AX6/AX3600 etc. 2021-07-24 15:49:58 +08:00
coolsnowwolf
f0d208f443 ath11k: Update signal filled flag during sta_statistics drv 2021-07-16 16:50:37 +08:00
Beginner
889ce56607
mac80211: sync upstream (#7387)
* mac80211: merge the virtual time based airtime scheduler

Improves airtime fairness, especially for devices with larger firmware buffers

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: merge a 4-addr client mode fix

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mac80211: backport SAR power limit support

Needed for an upcoming mt76 update

Signed-off-by: Felix Fietkau <nbd@nbd.name>

* mt76: update to the latest version

624c681ef0c6 mt76: mt7921: enable VHT BFee capability
a27dfcb63ccf mt76: connac: fix UC entry is being overwritten
6b691e62470e mt76: connac: add mt76_connac_power_save_sched in mt76_connac_pm_unref
b14365bea586 mt76: mt7921: wake the device before dumping power table
82af16bddfc0 mt76: mt7921: make mt7921_set_channel static
b24598b1c1a9 mt76: connac: add mt76_connac_mcu_get_nic_capability utility routine
5954e3381ff9 mt76: testmode: move chip-specific stats dump before common stats
fd5b612f9aa4 mt76: mt7915: fix rx fcs error count in testmode
d9d26a294f7b mt76: connac: fix the maximum interval schedule scan can support
ed39c882f388 mt76: reduce rx buffer size to 2048
60f3d3adbba6 mt76: move mt76_get_next_pkt_id in mt76.h
67ed4d902c84 mt76: connac: check band caps in mt76_connac_mcu_set_rate_txpower
23c6ec49c000 mt76: make mt76_update_survey() per phy
5ca602fb9455 mt76: mt7915: introduce mt7915_mcu_set_txbf()
c13df42282e9 mt76: mt7915: improve MU stability
dee7dcddcaa0 mt76: use SPDX header file comment style
6fbd47153b3d mt76: mt7915: fix IEEE80211_HE_PHY_CAP7_MAX_NC for station mode
1b97dd1762ca mt76: mt7921: fix sta_state incorrect implementation
1b89053b5a6f mt76: mt7921: improve code readability for mt7921_update_txs
126649816785 mt76: mt7921: limit txpower according to userlevel power
a5163ac09be2 mt76: mt7921: introduce dedicated control for deep_sleep
e47c04db4d7e mt76: mt7921: fix kernel warning when reset on vif is not sta
063d3611662c mt76: mt7921: fix the coredump is being truncated
12bf28feba7c mt76: fix iv and CCMP header insertion
949327e76ee4 mt76: disable TWT capabilities for the moment
3530254c1bc9 mt76: mt7921: enable HE BFee capability
599e35f5d9b8 mt76: sdio: do not run mt76_txq_schedule directly
3b6d30c28946 mt76: mt7663s: rely on pm reference counting
529d55a79088 mt76: mt7663s: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path
ef44ff116ee2 mt76: mt7663s: enable runtime-pm
3a71e71a555e mt76: mt7615: set macwork timeout according to runtime-pm
925d96e443a4 mt76: mt7921: allow chip reset during device restart
63b114d84361 mt76: mt76x0e: fix device hang during suspend/resume
7f5ea5e2fd10 mt7915: check return code of sysfs_create_link
ca64a36908b7 mt76: fix mt76_rates for the multiple devices
f517116bf14c mt76: add mt76_default_basic_rate more devices can rely on
6c70b0100513 mt76: mt7921: fix mgmt frame using unexpected bitrate
c00a9a6b52af mt76: mt7915: fix mgmt frame using unexpected bitrate
0e4089949565 mt76: mt7921: fix endianness in mt7921_mcu_tx_done_event
55f314120ef2 mt76: mt7921: avoid unnecessary spin_lock/spin_unlock in mt7921_mcu_tx_done_event
541cd3276488 mt76: mt7915: fix endianness warning in mt7915_mac_add_txs_skb
817761e87c4f mt76: mt7921: fix endianness warning in mt7921_update_txs
b8eca74bbd7b mt76: mt7615: fix endianness warning in mt7615_mac_write_txwi
5e5e07f0def3 mt76: mt7915: fix potential overflow of eeprom page index
abda4cded420 mt76: mt7915: fix info leak in mt7915_mcu_set_pre_cal()
535899f81a46 mt76: mt7915: fix calling mt76_wcid_alloc with incorrect parameter
adfa1b9a3ca0 mt76: connac: fix mt76_connac_gtk_rekey_tlv usage
2a65b105ea4a mt76: mt7921: enable aspm by default
c57158c82804 mt76: fix build error implicit enumeration conversion
41f607cab83c mt76: mt7921: fix survey-dump reporting
25b4f885a937 mt76: mt76x02: fix endianness warnings in mt76x02_mac.c
e63fadb87fe1 mt76: mt7915: report HE MU radiotap
135ef3e9827a mt76: mt7915: adapt new firmware to update BA winsize for Rx session
7118eacb7ce4 mt76: mt7921: add .set_sar_specs support
f1f6569da408 mt76: mt7915: fix an off-by-one bound check
f7da39467965 mt76 mt7915: take RCU read lock when calling ieee80211_bss_get_elem()
87af8e5c72b1 mt76: mt7915: cleanup -Wunused-but-set-variable
8e2d383fbd92 mt76: mt7915: report tx rate directly from tx status
ddce30977591 mt76: mt7915: remove mt7915_sta_stats
4ccd42029519 mt76: mt7921: introduce testmode support

Signed-off-by: Felix Fietkau <nbd@nbd.name>

Co-authored-by: Felix Fietkau <nbd@nbd.name>
2021-07-15 03:23:47 +00:00
coolsnowwolf
25683fe038 ipq807x: add NSS ecm 64 support 2021-07-10 08:43:31 +08:00
coolsnowwolf
67e0aa3a01 ath10k: add tx hw 802.11 encapusaltion offloading support 2021-07-09 18:18:34 +08:00
coolsnowwolf
2513ccaf94 mac80211: NSS classify tx support 2021-07-09 17:39:01 +08:00
coolsnowwolf
4790aa244b mac80211: add tasklet_kill step during NSS interface take down 2021-07-08 12:57:11 +08:00
coolsnowwolf
e82fddcf0e mac80211: add support for NSS firmware 2021-07-08 12:27:04 +08:00
Tianling Shen
0f29dec405
Revert "ath11k: fixes a memory leak as the MHI controller was allocated but never freed" (#7286)
This makes memory leak more seriously.

This reverts commit 48a880a190.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2021-07-06 06:27:21 +00:00
coolsnowwolf
6675de3732 Revert "ath11k: fix for peer memory corruption"
This reverts commit 83b29e014f.
2021-07-06 14:26:13 +08:00
coolsnowwolf
6ad4588a9b ath11k: allow vht on 2.4g 2021-07-06 00:08:31 +08:00
coolsnowwolf
83b29e014f ath11k: fix for peer memory corruption 2021-07-06 00:07:39 +08:00
coolsnowwolf
6967bf73f0 ipq807x: ax6/ax3600 use 512M RAM profile 2021-07-06 00:06:32 +08:00
coolsnowwolf
48a880a190 ath11k: fixes a memory leak as the MHI controller was allocated but never freed 2021-07-05 18:01:22 +08:00
Beginner
12a44d5e54
mac80211: backport fix for nl80211 control port tx (fixes FS#3857) (#7241)
Signed-off-by: Felix Fietkau <nbd@nbd.name>

Co-authored-by: Felix Fietkau <nbd@nbd.name>
2021-07-01 05:27:14 +00:00
Beginner
ced4dc7500
mac80211: fix a regression in starting aggregation sessions on mesh interfaces (#7226)
Signed-off-by: Felix Fietkau <nbd@nbd.name>

Co-authored-by: Felix Fietkau <nbd@nbd.name>
2021-06-30 01:01:01 +08:00
coolsnowwolf
87d72cae64 mac80211: remove ath11k nss code temporality 2021-06-29 22:24:20 +08:00
coolsnowwolf
892b521774 mac80211: grace code 2021-06-29 17:09:06 +08:00
coolsnowwolf
9faf3ea90d mac80211: add ipq807x dep for ath11k nss 2021-06-29 16:19:40 +08:00
coolsnowwolf
9be314ba8f mac80211: add ath11k nss dependence 2021-06-29 14:07:54 +08:00
coolsnowwolf
37efc3f069 ath11k: Update tx descriptor search index properly 2021-06-29 12:03:04 +08:00
coolsnowwolf
9e2257c44a ath11k: add hw nss ax wifi offload support 2021-06-29 11:47:43 +08:00
coolsnowwolf
aa3cc2ddfa ath11k: add decap offload support 2021-06-29 11:42:28 +08:00
Bob Cantor
5df9eeddbf mac80211: print an error if wifi teardown fails
drv_mac80211_teardown fails silently if the device to be torn down is
not defined.  This commit prints an error message.

branches affected: trunk, 21.02

Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
2021-06-29 11:17:01 +08:00
Bob Cantor
00be744e8f mac80211: always call wireless_set_data (FS#3784)
When wifi is turned off, drv_mac80211_teardown sometimes fails (silently)
because the device to be torn down is not defined.

This situation arises if drv_mac80211_setup was called twice when
wifi was turned on.

This commit ensures that the device to be torn down is always defined
in drv_mac80211_teardown.

Steps to reproduce:

1) Use /sbin/wifi to turn on wifi.
   uci set wireless.@wifi-iface[0].disabled=0
   uci set wireless.@wifi-device[0].disabled=0
   uci commit
   wifi

2) Use /sbin/wifi to turn off wifi.
   uci set wireless.@wifi-device[0].disabled=1
   uci commit
   wifi

3) Observe that wifi is still up.

branches affected: trunk, 21.02

Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
2021-06-29 11:16:40 +08:00
Bob Cantor
9cdb2a6cd3 mac80211: fix no_reload logic (FS#3902)
If drv_mac80211_setup is called twice with the same wifi configuration,
then the second call returns early with error HOSTAPD_START_FAILED.
(wifi works nevertheless, despite the fact that setup is incomplete.  But
"ubus call network.wireless status" erroneously reports that radio0 is down.)

The relevant part of drv_mac80211_setup is,

if [ "$no_reload" != "0" ]; then
        add_ap=1
        ubus wait_for hostapd
        local hostapd_res="$(ubus call hostapd config_add "{\"iface\":\"$primary_ap\", \"config\":\"${hostapd_conf_file}\"}")"
        ret="$?"
        [ "$ret" != 0 -o -z "$hostapd_res" ] && {
                wireless_setup_failed HOSTAPD_START_FAILED
                return
        }
        wireless_add_process "$(jsonfilter -s "$hostapd_res" -l 1 -e @.pid)" "/usr/sbin/hostapd" 1 1
fi

This commit sets no_reload = 0 during the second call of drv_mac80211_setup.

It is perhaps worth providing a way to reproduce the situation
where drv_mac80211_setup is called twice.

When /sbin/wifi is used to turn on wifi,
   uci set wireless.@wifi-iface[0].disabled=0
   uci set wireless.@wifi-device[0].disabled=0
   uci commit
   wifi

/sbin/wifi makes the following ubus calls,
   ubus call network reload
   ubus call network.wireless down
   ubus call network.wireless up

The first and third ubus calls both call drv_mac80211_setup,
while the second ubus call triggers wireless_device_setup_cancel.
So the call sequence becomes,

   drv_mac80211_setup
   wireless_device_setup_cancel
   drv_mac80211_setup

In contrast, when LuCI is used to turn on wifi only a single call
is made to drv_mac80211_setup.

branches affected: trunk, 21.02

Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
2021-06-29 11:16:16 +08:00
AmadeusGhost
41ba774971
ath10k: re-added 256qam support (#7200)
* mac80211: allow VHT on 2.4GHz

Allow VHT rate on 2.4GHz in order to use 256-QAM

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>

* ath10k: allow VHT on 2.4GHz

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>

* hostapd: add vendor_vht option

hostapd has vendor_vht option to enable VHT (256-QAM) on 2.4GHz
Add this option to hostapd.sh so users can enable it via uci

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>

* mac80211: ath.mk: typo fixes

Co-authored-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
2021-06-27 17:47:04 +08:00