aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel
Commit message (Collapse)AuthorAgeFilesLines
* mac80211: backport support for BSS color changesFelix Fietkau2021-11-233-16/+1025
| | | | | | | | | This is needed for an upcoming mt76 update also sync iw nl80211 with kernel backports Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 2bfac61483db32f8bd1f5b38702b39f206256265) (cherry-picked from commit 36019ed5893cd11c86a7dbedca1c6a055654a3c0)
* mac80211: add missing change for encap offload on devices with sw rate controlFelix Fietkau2021-11-232-18/+51
| | | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 0f6887972adc48449a1f5efaa143fa3f740a8c36) (cherry-picked from commit 6f2044c2d74dd0ae2cee3b25b2ac084513c0536a)
* mac80211: backport SAR power limit supportFelix Fietkau2021-11-233-6/+455
| | | | | | | Needed for an upcoming mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 890bf06cef20015e2cec0274c87a9a2232691b6b)
* mac80211: merge the virtual time based airtime schedulerFelix Fietkau2021-11-234-3/+1430
| | | | | | | Improves airtime fairness, especially for devices with larger firmware buffers Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit a5888ad6b33840d913438ce664c0e7da7e7f53e6)
* mac80211: set beamformer/beamformee number of antennas in VHT capsFelix Fietkau2021-11-231-0/+16
| | | | | | | Without this, beamforming is probably not working Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit e2c4998f6dca7d9b74a8b01762040ff2c5e38fd7)
* mac80211: fix IBSS/adhoc mode for brcmfmacBastian Bittorf2021-11-231-0/+1
| | | | | | | | | | | | | | | | | | | | | On systems using brmcfmac (e.g. Raspberry Pi Zero W) without this fix, the final setup-call: iw dev wlan0 ibss join ... fails with returncode 161 and message: "command failed: Not supported (-95)" So this patch calls an explicit: iw dev wlan0 set type ibss just prior to the 'ibss join' command. I have tested several ath9k and mt76xx devices with different revisions: this patch does not harm. please also apply to stable branch. Signed-off-by: Bastian Bittorf <bb@npl.de> (cherry-picked from commit ea5fce3f4616df3e4331e6b4e8e79767bded442c)
* mac80211: allow retry of wifi setup if an iw interface add command failsFelix Fietkau2021-11-231-1/+1
| | | | | | | In some cases, spurious failures might be cleared by teardown and retry Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 42dda0ed3e941bc36661e29b990e2ee2adf7f508)
* mac80211: fix HT40 mode for 6G bandFelix Fietkau2021-11-231-3/+4
| | | | | | | The channel offset used for VHT segment calculation was missing for HT Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit a0d81ba0d5e9d055c55b5e478cb913c217122317)
* mac80211: fix processing HE capabilities (FS#3871)Felix Fietkau2021-11-231-1/+1
| | | | | | | Use the right argument to fix setting unsupported capabilities to 0 Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 49ef4dbee519e006bb998de11e3bdf1c10c43e6a)
* mac80211: fix typoFelix Fietkau2021-11-231-1/+1
| | | | | | | Remove stray parenthesis Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 2cd1a108290f48fd35373f91056c05277c289687)
* mac80211: do not enable VHT in the default config on 2.4 GHzFelix Fietkau2021-11-231-1/+1
| | | | | | | | Some drivers advertise it, but it's not supported at the moment Reported-by: John Thomson <git@johnthomson.fastmail.com.au> Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 42a99b18ff23fa768a6ae5f1076f15cbfa494f24)
* mac80211: fix detecting VHT capabilities when generating the default configFelix Fietkau2021-11-231-1/+1
| | | | | | | | The colon does not directly follow the "VHT Capabilities" string Reported-by: John Thomson <git@johnthomson.fastmail.com.au> Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 3518b793a2f2293e7e9124b5beae7b09887c5e32)
* mac80211: add more HE capabilitiesFelix Fietkau2021-11-231-5/+81
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit fbd6f099f50e77d2bb95708c62e86a358779251a)
* mac80211: fix center freq selection for 6 GHzFelix Fietkau2021-11-231-6/+20
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 8d79915327b7b9ed221f513589281328e4fdc6ef)
* mac80211: set hostapd op_class for 6 GHzFelix Fietkau2021-11-231-0/+8
| | | | | | | This is needed to disambiguate it from 5 GHz channels Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit c8bcdd561909034a14cbfd785e13848cbd5f5e50)
* mac80211: rework default config scriptFelix Fietkau2021-11-231-20/+85
| | | | | | | | Emit the new band option instead of hwmode Support 6 GHz band and HE options Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 8504212f65865449dd6b9ed9daa0ba9781f8f287)
* mac80211: make use of the new 'band' optionFelix Fietkau2021-11-231-14/+31
| | | | | | | | Use it to look up frequencies only in the configured band to better deal with channel number overlap Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 8b8c1cb09bf2259e647a15d0c881b5dea15330da)
* gpio-button-hotplug: convert to gpio descriptor (gpiod_) APIChristian Lamparter2021-11-051-79/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenWrt's special gpio-button-hotplug driver is still using exclusively the legacy GPIO Subsystem gpio_ API. While it still does work fine for most devices, upstream linux is starting to convert platform support like that of the APU2/3/4 to the new GPIOD LOOKUP tables that are not supported by it. Hence, this patch replaces the gpio_ calls present in gpio-button-hotplug with gpiod_ equivalent wherever it's possible. This allows the driver to use the gpiod lookup tables and still have a fallback for legacy platform data code that just sets button->gpio set to the real button/switch GPIO. As a bonus: the active_low logic is now being handled by the linux's gpio subsystem too. Another issue that was address is the of_handle leak in the dt parser error path. Tested with legacy platform data: x86_64: APU2, MX-100 Tested on OF: ATH79; MR18, APM821xx: Netgear WNDR4700, RAMIPS: WL-330N3G LANTIQ: AVM FritzBox 7360v1 Reported-by: Chris Blake <chrisrblake93@gmail.com> Tested-by: Chris Blake <chrisrblake93@gmail.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 2b0378cf9f3163bac29fa9946b3aa1607fc03802)
* ath10k-ct: update to version from 2021-09-22Andrew Robbins2021-10-212-4/+4
| | | | | | | | | Add in a fix for 160Mhz dfs on 5.10 and higher. Add support for 5.13 and 5.15 kernels. Add of_get_mac_address support for 5.15 driver. Signed-off-by: Andrew Robbins <andrew@robbinsa.me> (cherry picked from commit 1d2bc94f786434e89bc87003b2a2202e92ad84e7)
* mac80211: Update to backports-5.10.68Hauke Mehrtens2021-09-2229-135/+84
| | | | | | | | | | | | | | | | | | 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>
* ath10k-ct: fix typo in MakefileMichael Yartys2021-07-021-1/+1
| | | | | | | Add forgotten colon to Makefile. Signed-off-by: Michael Yartys <michael.yartys@protonmail.com> (cherry picked from commit f0f1d68d528402b4d51a1dd08d2e2c9034167f92)
* ath10k-ct: update to latest versionMichael Yartys2021-07-024-45/+8
| | | | | | | | | | | | | | | | | Changelog: - ath10k-ct: Add security fixes. - ath10k-ct: Add 5.12 kernel version. - ath10k-ct: Fix the beacon/mcast/bcast override issue - ath10k-ct 5.7: Fix setting mcast/bcast/beacon rate from debugfs. - ath10k-ct: Add 5.11 driver. Delete upstreamed patch and refresh the rest. Also, use the opportunity to set PKG_RELEASE to $(AUTORELEASE). Runtime-tested on ipq806x (Netgear R7800). Signed-off-by: Michael Yartys <michael.yartys@protonmail.com> (cherry picked from commit 2e10ed925e1e07c28570731a429efa5e7de3b826)
* kernel/modules: move act_gact into kmod-sched-coreDENG Qingfang2021-07-021-2/+2
| | | | | | | | As the name suggests, act_gact has the generic actions such as dropping and accepting packets, so move it into kmod-sched-core. Signed-off-by: DENG Qingfang <dqfext@gmail.com> (cherry-picked from commit 10aacb9a6ce3445cdee39573f4120e7888beb022)
* mac80211: print an error if wifi teardown failsBob Cantor2021-06-301-0/+4
| | | | | | | | | | 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> (cherry-picked from commit 3933e29d1b87c713167cf4730b68e5f18af4f140)
* mac80211: always call wireless_set_data (FS#3784)Bob Cantor2021-06-301-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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> (cherry-picked from commit d515f6b6cde357bf480d32a7387f07ea40e85e52)
* mac80211: fix no_reload logic (FS#3902)Bob Cantor2021-06-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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> (cherry-picked from commit a29ab3b79affb62fda82e0825ed811eaf482dd3c)
* mac80211: backport fix for nl80211 control port tx (fixes FS#3857)Felix Fietkau2021-06-307-17/+133
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit de499573006ab4f32ded9fd66a62ec5e0c183e8a)
* mac80211: add support for 802.3 encap offload with software rate controlFelix Fietkau2021-06-301-0/+119
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit f2c6d892cacb5d884bdd638bc7574c1ee98514a5)
* mac80211: improve rate control performanceFelix Fietkau2021-06-304-1/+353
| | | | | | | | | | | | Call rate control handler after intermediate queueuing Includes follow-up fixes Signed-off-by: Felix Fietkau <nbd@nbd.name> cherry-picked from commits: - 7dd8829ef915f1c5fc728be8f8360c61ddaadf1b - a603e82dd342680d584c4eb5f1b222e056379890 - 8bb4437c01ca35a5ac67e391630a1b24cb52dbb7
* exfat: update to 5.12.3Rosen Penev2021-06-221-3/+3
| | | | | | | | | | | | | Major changes are: Avoid page allocation failure from upcase table allocation. Add support for FITRIM. Improve write perofmrance on dirsync mount. Improve lookup perofmrance. Fix a bug on discard mount. Switch to AUTORELEASE to avoid having to bump it. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* mac80211: fix an issue with wds links on 802.11ax devicesFelix Fietkau2021-06-191-0/+51
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 89c9ccc3b241d8f07c22a1c271211322c4703f7b)
* mac80211: fix minstrel sample time checkFelix Fietkau2021-06-171-0/+23
| | | | | | | | We need to skip sampling if the next sample time is after jiffies, not before. This patch fixes an issue where in some cases only very little sampling (or none at all) is performed, leading to really bad data rates Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mt76: update to the latest versionFelix Fietkau2021-06-171-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bddc1db76d0f mt76: mt7915: drop the use of repeater entries for station interfaces 3c90f35dddac mt76: mt7915: add thermal sensor device support afab0e8202ff mt76: mt7915: add thermal cooling device support 41cf02184699 mt76: mt7615: add thermal sensor device support 2ac6b8762565 mt76: connac: update BA win size in Rx direction ddb301127291 mt76: mt7921: fix reset under the deep sleep is enabled e4cbefd1d69a mt76: mt7921: avoid unnecessary consecutive WiFi resets 393eea2034d7 mt76: mt7921: fix invalid register access in wake_work a15d46407ffa mt76: mt7921: fix OMAC idx usage e4d267d8e900 mt76: mt7921: enable runtime pm by default 50fd8ce2412a mt76: connac: add bss color support for sta mode e29058c3c860 mt76: mt7921: return proper error value in mt7921_mac_init c89c8c347b1e mt76: mt7921: do not schedule hw reset if the device is not running 9f7bb428e587 mt76: mt7921: reset wfsys during hw probe 22ea365913b5 mt76: mt7915: add .offset_tsf callback ad91f8e8e494 mt76: mt7615: add .offset_tsf callback 6f871f35e3c1 mt76: mt7915: use mt7915_mcu_get_txpower_sku() to get per-rate txpower 597b68b7daa3 mt76: mt7615: remove useless if condition in mt7615_add_interface() 3945264468eb mt76: testmode: fix memory leak in mt76_testmode_alloc_skb bdcc57a11606 mt76: testmode: remove unnecessary function calls in mt76_testmode_free_skb a9763452601d mt76: testmode: remove undefined behaviour in mt76_testmode_alloc_skb 4aef2a2be464 mt76: mt7615: fix potential overflow on large shift d9dd7635b055 mt76: mt7915: use mt7915_mcu_get_mib_info() to get survey data d740e921758a mt76: mt7921: introduce mac tx done handling 259ddfc7cb73 mt76: mt7921: update statistic in active mode only 757b93f4b179 mt76: mt7921: remove leftover 80+80 HE capability 1fcff599b2e1 mt76: allow hw driver code to overwrite wiphy interface_modes c55c22e39b7d mt7915: update firmware to 2020110522 10548aef1f45 mt76: mt7915: improve error recovery reliability ed6b0c79820c mt76: mt7921: set MT76_RESET during mac reset 321443258bea mt76: move mt76_rates in mt76 module d1652e8af9e1 Revert "mt76: connac: do not schedule wake_work if the runtime-pm is disabled" 4f4cab39ed9f mt76: mt7915: read all eeprom fields from fw in efuse mode 71450535f164 mt76: mt7921: enable hw offloading for wep keys 833d577e430c mt76: mt7921: remove mt7921_get_wtbl_info routine 67b7a22d2b99 mt76: mt7921: enable random mac address during sched_scan cf1ff7bf4f1b mt76: mt7915: setup drr group for peers ef2f7aa8745f mt76: mt7615: update radar parameters b9f09f530223 mt76: mt7915: fix MT_EE_CAL_GROUP_SIZE 22b690334c0f mt76: mt7915: do not fail if the cooling device could not be registered Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 3c46ba053d899df65dc07e373c64d1925d30f88e)
* mac80211: sync nl80211.h with upstream and backport a WPA3 related commitFelix Fietkau2021-06-174-31/+380
| | | | | | | Fixes compatibility issues with the latest hostapd update Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 91abeebd3bd29a98de516e49260d61165096009a)
* treewide: make AddDepends/usb-serial selectiveAdrian Schmutzler2021-06-081-1/+1
| | | | | | | | Make packages depending on usb-serial selective, so we do not have to add kmod-usb-serial manually for every device. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> (cherry picked from commit 9397b22df1473f315552578b58322db7f7750361)
* mac80211: Update to backports-5.10.42Hauke Mehrtens2021-06-0633-1532/+63
| | | | | | | | | | | | | The removed patches were integrated upstream. The brcmf_driver_work workqueue was removed in brcmfmac with kernel 5.10.42, the asynchronous call was covered to a synchronous call. There is no need to wait any more. This part was removed manually from this patch: brcm/860-brcmfmac-register-wiphy-s-during-module_init.patch Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 04a260911ca0f10a0e37c487c220e1aae3623dda)
* mt76: update to the latest versionFelix Fietkau2021-05-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Includes fix for CVE-2020-24588 186af01047b2 mt76: mt7921: introduce MCU_EVENT_LP_INFO event parsing 93b5c28c97d5 mt76: mt7921: add rcu section in mt7921_mcu_tx_rate_report a8e89c5a1d1f mt76: testmode: add support to send larger packet a0cc9a9e3877 mt76: mt7915: rework mt7915_tm_set_tx_len() c8b96630324e mt76: mt7915: fix rate setting of tx descriptor in testmode 22fd2958c42a mt76: mt7615: fix memleak when mt7615_unregister_device() 7401e0db3143 mt76: mt7915: fix memleak when mt7915_unregister_device() c3656268b3f6 mt76: mt7915: only free skbs after mt7915_dma_reset() when reset happens 0ce955b04ba8 mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens b03d1e62acf7 mt76: mt7615: use ieee80211_free_txskb() in mt7615_tx_token_put() 5ac02e22fb03 mt76: flush tx status queue on DMA reset c71f609b398a mt76: sync with upstream changes 23ecadd4af77 mt76: mt7615: fix hardware error recovery for mt7663 57a899ee3c3c mt76: mt7615: fix entering driver-own state on mt7663 42a2dddb706b mt76: mt7615: load ROM patch before checking patch semaphore status cf0e406af84a mt76: mt7915: add support for applying pre-calibration data 459940ccbc58 mt76: mt7921: move hw configuration in mt7921_register_device 0a094b11f3c0 mt76: improve mcu error logging bf536832e37d mt76: mt7921: run mt7921_mcu_fw_log_2_host holding mt76 mutex 7616f4f78163 mt76: mt7921: add wifisys reset support in debugfs e620bd881ef5 mt76: mt7921: abort uncompleted scan by wifi reset e8dacf59ab1c mt76: mt7915: rework the flow of txpower setting c8c78e577236 mt76: mt7915: directly read per-rate tx power from registers 1622bf4f8705 mt76: mt7921: add mt7921_dma_cleanup in mt7921_unregister_device ef96fafad8a9 mt76: Convert to DEFINE_SHOW_ATTRIBUTE 90e4bfea2948 mt76: mt7921: do not use 0 as NULL pointer 0a139d7f5966 mt76: connac: move mcu_update_arp_filter in mt76_connac module de26c73ce3c2 mt76: mt7921: remove leftover function declaration 1c0b6cb4f942 mt76: mt7921: fix a race between mt7921_mcu_drv_pmctrl and mt7921_mcu_fw_pmctrl 2923e3e2b8e4 mt76: mt7663: fix a race between mt7615_mcu_drv_pmctrl and mt7615_mcu_fw_pmctrl 74d0fdaa7a99 mt76: connac: introduce wake counter for fw_pmctrl synchronization 28c87e09a5ea mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path 36f664edc7db mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path 51b3d1a9a2b7 mt76: dma: add the capability to define a custom rx napi poll routine 4f1339c9fb72 mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi 1bc5e67a60be mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi 325f7b451c03 mt76: connac: unschedule ps_work in mt76_connac_pm_wake 12115052a02f mt76: connac: check wake refcount in mcu_fw_pmctrl e5d28e3cef66 mt76: connac: remove MT76_STATE_PM in mac_tx_free 475112a3cdcc mt76: mt7921: get rid of useless MT76_STATE_PM in mt7921_mac_work 112998f32d85 mt76: connac: alaways wake the device before scanning 4334f3e2fc43 mt76: mt7615: rely on pm refcounting in mt7615_led_set_config 0562380659ad mt76: connac: do not run mt76_txq_schedule_all directly acfa78df5708 mt76: connac: use waitqueue for runtime-pm ca74a4cd0722 mt76: remove MT76_STATE_PM in tx path 0c2d3e74852e mt76: mt7921: add awake and doze time accounting 45e0eefffe9f mt76: mt7921: enable sw interrupts fd2ff641166f mt76: mt7615: Fix a dereference of pointer sta before it is null checked 7e2521468767 mt76: mt7921: move mt7921_dma_reset in dma.c c9dd6b1fa171 mt76: mt7921: introduce mt7921_wpdma_reset utility routine 2ac7c7e9c568 mt76: mt7921: introduce mt7921_dma_{enable,disable} utilities 662a89f2b9d1 mt76: mt7921: introduce mt7921_wpdma_reinit_cond utility routine 614efe9e9180 mt76: connac: introduce mt76_connac_mcu_set_deep_sleep utility 0dbb16ef39d8 mt76: mt7921: enable deep sleep when the device suspends 3c19f569cc70 mt76: mt7921: fix possible invalid register access ade1f5aad4c6 mt76: move token_lock, token and token_count in mt76_dev 8d5c456be1ff mt76: move token utilities in mt76 common module fb04d9df5e52 mt76: mt7915: do not read rf value from efuse in flash mode 2126b2176336 mt76: mt7921: get rid of mcu_reset function pointer d325b7eff1b1 mt76: mt7921: improve doze opportunity 2ae25c7e547e mt76: mt7663: add awake and doze time accounting 349bbb9d6f13 mt76: connac: unschedule mac_work before going to sleep 98a235004dea mt76: mt7921: mt7921_stop should put device in fw_own state 63d80b9ab251 mt76: mt7921: introduce mt7921_mcu_sta_add routine 3c5bf837fdbd mt76: mt7615: fix a precision vs width bug in printk ded14da5eacc mt76: mt7915: fix a precision vs width bug in printk aaf0d254f9ea mt76: mt7921: fix a precision vs width bug in printk 757af5c67d32 mt76: move mt76_token_init in mt76_alloc_device ed41ed73a495 mt76: mt7921: reinit wpdma during drv_own if necessary 92fb81e085c6 mt76: mt7921: fix possible AOOB issue in mt7921_mcu_tx_rate_report 53d915a23bc9 mt76: connac: do not schedule wake_work if the runtime-pm is disabled 23fe1bdcf15a mt76: connac: do not schedule mac_work if the device is not running e5b19336c58e mt76: mt7615: do not set MT76_STATE_PM at bootstrap 0fc2136a61dd mt76_connac_mcu: move mt76_connac_mcu_update_arp_filter outside of CONFIG_PM e693f3e23e06 mt76: mt7915: add MSI support 5231e7300fa4 mt7915: disable ASPM 554b50dabf54 mt76: connac: fix uninitialized HT A-MPDU setting field in STA_REC_PHY 43b9c0a838bb mt76: mt7921: fix max aggregation subframes setting 5a387a0a3004 mt76: mt7921: enable rx hw de-amsdu c8cbcb87be07 mt76: connac: add missing configuration in mt76_connac_mcu_wtbl_hdr_trans_tlv 55921e57b380 mt76: mt7921: enable rx header traslation offload 01441f67d8b2 mt76: mt7921: enable rx csum offload c9ab76dd93a0 mt76: mt7915: move mt7915_queue_rx_skb to mac.c caedb4c4ee41 mt76: mt7615: fix fixed-rate tx status reporting c6ae95d43e6d mt76: improve tx status codepath 27d468d094e6 mt76: mt7915: rework tx rate reporting 3b4ca5b09e2c mt76: mt7615: avoid use of ieee80211_tx_info_clear_status e1f07d7f1cb9 mt76: mt7603: avoid use of ieee80211_tx_info_clear_status 18513ba5fbc2 mt76: mt7915: add support for tx status reporting 35f189cf81b2 mt76: mt7915: fix uninitialized variable in MSI error handling 9e928ac1ea9b mt76: dma: use ieee80211_tx_status_ext to free packets when tx fails 628eee9c386c mt76: fill queue entry wcid for all skbs with a station a9bc4d94b7a1 mt76: intialize tx queue entry wcid to 0xffff by default 998ca8af7d17 mt76: mt7915: fix tssi indication field of DBDC NICs 7dd24b3cfacf mt76: mt7915: fix a signedness bug in mt7915_mcu_apply_tx_dpd() 535025d65d8d mt76: mt7915: cleanup mt7915_mcu_sta_rate_ctrl_tlv() ff8bbe22dd87 mt76: mt7915: add .set_bitrate_mask() callback c7dd54a22e30 mt76: connac: skip wtbl reset on sta disconnect 3511fd430356 mt76: validate rx A-MSDU subframes aedc3145de6e mt76: fix possible NULL pointer dereference in mt76_tx 5c2baab92cd0 mt76: mt7615: fix NULL pointer dereference in tx_prepare_skb() af21659ee834 mt76: mt76x0: use dev_debug instead of dev_err for hw_rf_ctrl e423c16f16f7 mt76: mt7615: free irq if mt7615_mmio_probe fails f2d0da8da9b7 mt76: mt7663: enable hw rx header translation d2713a5d9de9 mt76: mt7921: fix mt7921_wfsys_reset sequence ce5f32d84f33 mt76: mt7921: Don't alter Rx path classifier 8ab8c7747197 mt76: connac: fw_own rely on all packet memory all being free a747b0bb4956 mt76: mt7921: enable deep sleep at runtime 2e6e999509b1 mt76: mt7921: add deep sleep control to runtime-pm knob 30bcb2338ce2 mt76: connac: fix WoW with disconnetion and bitmap pattern 56518f4a126e mt76: mt7921: consider the invalid value for to_rssi e969ab10a034 mt76: mt7921: add back connection monitor support 28b162366d09 mt76: fix calling mt76_get_of_eeprom with an offset for pre-cal data 9d736545bb5a mt76: mt7915: disable pre-calibration support for now Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit f62aa9e7816fd0601a7997d87c89767939a6afcf)
* mac80211: backport upstream fixes for FragAttacksFelix Fietkau2021-05-1623-7/+1466
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/rtl: backport a rtl8192cu AP mode fixRui Salvaterra2021-05-141-0/+118
| | | | | | | | | | Running USB devices in AP mode is never a good idea. That said, fix the TIM issue in rtl8192cu [1], allowing these devices to "work" in AP mode. [1] https://patchwork.kernel.org/project/linux-wireless/patch/20210419065956.6085-1-pkshih@realtek.com/ Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> (cherry picked from commit eeda8652f1655d4f9c11e9c9f51ddcd3377d119a)
* mac80211: Update to version 5.10.34-1Hauke Mehrtens2021-05-0421-188/+48
| | | | | | | 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: minstrel_ht: fix issue in calculating success probabilityFelix Fietkau2021-04-281-0/+21
| | | | | | | | Missing braces in a macro were leading to badly working rates sometimes getting a success probabilty of 1.0 Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 12cb52bd0665da33cb5dc64697f1751a8b33fb05)
* lantiq: enable G.INP retransmission countersJeroen Peelaerts2021-04-191-1/+3
| | | | | | | | | | | | | | | | | This commit adds monitoring for a couple of DSL line features that are present in the lantiq firmware blobs. * G.INP ON/OFF * Trellis encoding ON/OFF * Virtaul Noise ON/OFF * Bitswap ON/OFF Difference in size for ltq-vdsl-app = 1k Difference in size for kmod-ltq-vdsl-vr9 < 1k Reviewed-by: Andre Heider <a.heider@gmail.com> Signed-off-by: Jeroen Peelaerts <jeroen.peelaerts@gmail.com> (cherry picked from commit 48162e4c0c85a7f64d9007565bf5be2c7ace3ada)
* kernel: limit crypto-hw-ccp to the x86Rafał Miłecki2021-04-141-0/+1
| | | | | | | | | | | | | | | CRYPTO_DEV_CCP depends on X86 or ARM64 CRYPTO_DEV_CCP_DD depends on CPU_SUP_AMD or ARM64 Compiling this driver makes sense for x86 mainly. If one day support for ARM64 board with AMD Secure Processor gets added this package may be updated. Trying to build this package on bcm4908 was causing: ERROR: module 'build_dir/target-aarch64_cortex-a53_musl/linux-bcm4908_generic/linux-5.4.110/drivers/crypto/ccp/ccp-crypto.ko' is missing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit cb3fb45ed1262355e8c31d8e522f411169ee6df8)
* kernel: crypto: format "crypto-hw-ccp" dependenciesRafał Miłecki2021-04-141-1/+8
| | | | | | | | Use multiples lines for better readability and sort lines. Suggested-by: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 107111adbba16328f9853a4d89db4a103b20118c)
* mt76: update to the latest versionFelix Fietkau2021-04-111-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6a3cf95733e2 mt76: fix tx skb error handling in mt76_dma_tx_queue_skb ab9045153343 mt76: mt7915: only modify tx buffer list after allocating tx token id 7e1eff676257 mt76: mt7915: fix unused 'mode' variable 8a2e22fcbf69 mt76: mt7921: fix suspend/resume sequence 27a54e8b687f mt76: mt7921: fix memory leak in mt7921_coredump_work c267322f0bdb mt76: mt7921: switch to new api for hardware beacon filter [v2 update] fd2c59d9ba46 mt76: mt7921: fixup rx bitrate statistics [v2 update] bfa8d5a6a9a1 mt76: adjust to upstream API for enabling threaded NAPI 1706fb6c48e8 mt76: mt7663s: fix rx buffer refcounting c5aca6692c41 mt76: mt7615: enable hw rx-amsdu de-aggregation 9002b0b30aed mt76: mt7615: add rx checksum offload support 8e3f5bfe74f6 mt76: mt7615: add support for rx decapsulation offload 8e3bba8bd3ef mt76: mt7615: fix memory leak in mt7615_coredump_work 760adce29100 mt76: mt7921: fix aggr length histogram 84229a51845a mt76: mt7915: fix aggr len debugfs node 10a95da23cb7 mt76: mt7921: remove unneeded semicolon 2856dc8fb57e mt76: mt7921: fix stats register definitions 1b245e57549d mt76: mt7615: fix TSF configuration 1a2e2965b62b mt76: mt7615: remove hdr->fw_ver check f60ec1b9473d mt76: mt7615: fix mib stats counter reporting to mac80211 8a5b036af48f mt76: mt7915: fix mib stats counter reporting to mac80211 ee6dbcc64f6d mt76: connac: fix kernel warning adding monitor interface e46dd240ce72 mt76: check return value of mt76_txq_send_burst in mt76_txq_schedule_list ddf95ead3bb3 mt76: mt7921: get rid of mt7921_sta_rc_update routine fd2a51ea9dc8 mt76: mt7921: fix the base of PCIe interrupt 28f53d074bb0 mt76: mt7921: fix the base of the dynamic remap 8d737632b57f mt76: mt7921: check mcu returned values in mt7921_start 5ff25c915e62 mt76: mt7915: add missing capabilities for DBDC 58dd3f26c099 mt76: mt7615: fix CSA notification for DBDC 76f4959107ac mt76: mt7615: stop ext_phy queue when mac reset happens 7de0a0654054 mt76: mt7915: fix CSA notification for DBDC e9e418fc7eb0 mt76: mt7915: stop ext_phy queue when mac reset happens 477b78301879 mt76: mt7915: fix PHY mode for DBDC 37b4dc0f7595 mt76: mt76x0u: Add support for TP-Link T2UHP(UN) v1 29a04583aecb mt76: mt7915: fix rxrate reporting a4307e6ba054 mt76: mt7915: fix txrate reporting 256f324f8fcd mt76: mt7915: check mcu returned values in mt7915_ops 638b112188a5 mt76: mt7615: check mcu returned values in mt7615_ops 975cccfa96da mt76: mt7663: fix when beacon filter is being applied aafe972e95b2 mt76: mt7663s: make all of packets 4-bytes aligned in sdio tx aggregation 0d5b1a702715 mt76: mt7663s: fix the possible device hang in high traffic 00628061b546 mt76: mt7615: add missing capabilities for DBDC 2303e1844afd mt76: mt7915: fix possible deadlock while mt7915_register_ext_phy() 6e2b9d258306 mt76: mt7921: reduce mcu timeouts for suspend, offload and hif_ctrl msg 3cf5afc02955 mt76: introduce mcu_reset function pointer in mt76_mcu_ops structure 9af9622df549 mt76: mt7921: introduce mt7921_run_firmware utility routine. e12c44a7e165 mt76: mt7921: introduce __mt7921_start utility routine 7b56d5bf6ea0 mt76: dma: introduce mt76_dma_queue_reset routine a80e50098b51 mt76: dma: export mt76_dma_rx_cleanup routine e0708e296e27 mt76: mt7921: add wifi reset support 87e09e8482cf mt76: mt7921: remove leftovers from dbdc configuration cc933b3669f7 mt76: mt7921: remove redundant check on type ca22cc221ae7 linux-firmware: add firmware for MT7921 0b6c9a043f78 mt76: move de-amsdu buffer per-phy 48a905e23791 mt76: mt7615: fix CSA event format fbef8bba038f mt76: mt7921: remove duplicated macros in mcu.h 6886b57a1534 mt76: connac: introcuce mt76_sta_cmd_info data structure e529e8afe22a mt76: mt7921: properly configure rcpi adding a sta to the fw e4d522776804 mt76: mt7921: fix airtime reporting be2f67e8d3cb mt76: mt7915: fix key set/delete issue 09a1befde4b7 mt76: fix potential DMA mapping leak f66f8f41d47b mt76: mt7915: refresh repeater entry MAC address when setting BSSID 035e2f6f1ddf mt76: mt7921: get rid of mt7921_mac_wtbl_lmac_addr ee29cd5f3a6a mt76: mt7615: only enable DFS test knobs for mt7615 9a98b1a6f9c2 mt76: mt7615: cleanup mcu tx queue in mt7615_dma_reset() 3bd285424e7b mt76: mt7622: trigger hif interrupt for system reset bf6d9ee4acd1 mt76: mt7615: keep mcu_add_bss_info enabled till interface removal 115b74282314 mt76: mt7915: keep mcu_add_bss_info enabled till interface removal 57432e701d1a mt76: mt7915: cleanup mcu tx queue in mt7915_dma_reset() a519c49a6a42 mt76: mt7615: 0-terminate firmware log messages 4a22f2ffae2e mt76: mt7915: 0-terminate firmware log messages b8609066893a mt76: mt7615: fix chip reset on MT7622 and MT7663e 465dda65ee84 mt7615,mt7915: replace fw log 0-terminating code with wiphy info length limit 62b13f5352b8 mt76: mt7921: fix key set/delete issue 0ff3a336a8d8 mt7615,mt7915: fix a compiler warning 113ba8a81d54 mt76: mt7615: remove redundant dev_err call in mt7622_wmac_probe() be1ab3b9ae7c mt76: mt7921: fix typo in mt7921_pci_resume 4e22f0dc934b mt76: mt7915: fix txpower init for TSSI off chips e66a0b9b8d66 mt76: mt7615: always wake the device in mt7615_remove_interface 38f656768a90 mt76: mt7921: always wake the device in mt7921_remove_interface 6ee4770de083 mt76: mt7921: rework mt7921_mcu_debug_msg_event routine e578b4b8d56a mt76: mt7615: fix .add_beacon_offload() f8c6c7cbf10f mt76: mt7915: fix mt7915_mcu_add_beacon 7d35b7a15d1d mt76: mt7915: add wifi subsystem reset 04122c89749d mt76: fix rx amsdu subframe processing 5e764ec9bece mt76: mt7921: introduce MT_WFDMA_DUMMY_CR definition cf0badbc0497 mt76: mt7921: fix inappropriate WoW setup with the missing ARP informaiton f32a4e15f5b2 mt76: mt7921: fix the dwell time control 54f52771a04a mt76: mt7921: fix kernel crash when the firmware fails to download 97189d2a045b mt76: mt7921: fix the insmod hangs dcdbd7c89cf5 mt76: mt7921: fix MT_PCIE_MAC_INT_ENABLE access 813db729c02f mt76: mt7921: reduce the data latency during hw scan 028b7152b1a9 mt76: mt7921: remove 80+80 MHz support capabilities 7714dc914df6 mt76: report Rx timestamp ffd4cf15fa0e mt76: mt7915: add mmio.c fe8717dd573a mt76: mt7615: add missing SPDX tag in mmio.c 6b293c411d22 mt76: mt7615: always add rx header translation tlv when adding stations bf45b30d8919 add missing file Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 8cc013981d2a017a4604e696e4ec19c846f2c230)
* mac80211: add client mode connection monitor fixFelix Fietkau2021-04-111-0/+31
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit dfdb28c24aa60cf057ec45cbc11ab48ba2655f53)
* mac80211: support rx timestamps for HE ratesFelix Fietkau2021-04-111-0/+134
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry-picked from commit 7d8e14e44f76e18d1696565569ec50ccdce963b3)
* kernel: bump 5.4 to 5.4.111Hauke Mehrtens2021-04-111-1/+1
| | | | | | | | | | | | | | | | | | | | | Refreshed all patches. The following patches were manually changed: * 610-netfilter_match_bypass_default_checks.patch * 611-netfilter_match_bypass_default_table.patch * 802-can-0002-can-rx-offload-fix-long-lines.patch * 802-can-0003-can-rx-offload-can_rx_offload_compare-fix-typo.patch * 802-can-0004-can-rx-offload-can_rx_offload_irq_offload_timestamp-.patch * 802-can-0005-can-rx-offload-can_rx_offload_reset-remove-no-op-fun.patch * 802-can-0006-can-rx-offload-Prepare-for-CAN-FD-support.patch * 802-can-0018-can-flexcan-use-struct-canfd_frame-for-CAN-classic-f.patch The can-dev.ko model was moved in the upstream kernel. Compile-tested on: x86/64, armvirt/64, ath79/generic Runtime-tested on: x86/64, armvirt/64, ath79/generic Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel/modules: relocate teql hotplug from iproute2 to kmod-schedTony Ambardar2021-04-102-0/+30
| | | | | | | | | | | | | | | The link equalizer sch_teql.ko of package kmod-sched relies on a hotplug script historically included in iproute2's tc package. In previous discussion [1], consensus was the hotplug script is best located together with the module in kmod-sched, but this change was deferred at the time. Relocate the hotplug script now. This change also simplifies adding a tc variant for minimal size with reduced functionality. [1] https://github.com/openwrt/openwrt/pull/1627#issuecomment-447923636 Signed-off-by: Tony Ambardar <itugrok@yahoo.com> (cherry picked from commit 863ce4f15f74a674f01ab47f445b362c113b113b)
* kernel: fix kmod-wireguard package fieldsIlya Lipnitskiy2021-04-101-4/+2
| | | | | | | | | | Use NETWORK_SUPPORT_MENU like all other modules in netsupport.mk. Drop SECTION and CATEGORY fields as they are set by default and to match other packages in netsupport.mk. Use better TITLE for kmod-wireguard (taken from upstream drivers/net/Kconfig). Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com> (cherry picked from commit 0b53d6f7fa8cc35cec5b22e1c64a2407fab6dfe3)