aboutsummaryrefslogtreecommitdiff
path: root/package/kernel/mac80211
Commit message (Collapse)AuthorAge
* mac80211: ath11k: re-enable ipq807x coldboot calibrationRobert Marko2024-04-18
| | | | | | | | | It seems that move to kernel 6.6 somehow fixed the remoteproc restart so now it properly restarts and thus coldboot calibration works as well. ipq60xx still seems to be broken in a different way so keep it disabled. Signed-off-by: Robert Marko <robimarko@gmail.com>
* mac80211: ath11k: support DT property to limit channelsRobert Marko2024-04-13
| | | | | | | | Limiting allowed channels per device may be required and is commonly supported on other drivers, so include a pending patch to add support for the same. Signed-off-by: Robert Marko <robimarko@gmail.com>
* mac80211: improve mesh fast tx patchFelix Fietkau2024-04-13
| | | | | | | Change hash key struct size for faster lookup. Fix clearing cache entries for forwarding Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: carl9170: re-fix fortified-memset warningMieczyslaw Nalewaj2024-03-23
| | | | | | | | | | | | | | | | | | | | | | | | | | The carl9170_tx_release() function sometimes triggers a fortified-memset warning in my randconfig builds: In file included from include/linux/string.h:254, from drivers/net/wireless/ath/carl9170/tx.c:40: In function 'fortify_memset_chk', inlined from 'carl9170_tx_release' at drivers/net/wireless/ath/carl9170/tx.c:283:2, inlined from 'kref_put' at include/linux/kref.h:65:3, inlined from 'carl9170_tx_put_skb' at drivers/net/wireless/ath/carl9170/tx.c:342:9: include/linux/fortify-string.h:493:25: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning] 493 | __write_overflow_field(p_size_field, size); Kees previously tried to avoid this by using memset_after(), but it seems this does not fully address the problem. I noticed that the memset_after() here is done on a different part of the union (status) than the original cast was from (rate_driver_data), which may confuse the compiler. Unfortunately, the memset_after() trick does not work on driver_rates[] because that is part of an anonymous struct, and I could not get struct_group() to do this either. Using two separate memset() calls on the two members does address the warning though. Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
* mac80211: add missing license informationFlorian Eckert2024-03-21
| | | | | | | The lincense information for the packages mac80211 are missing. This commit adds the missing information. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* mac80211: fix a crash triggered by sta disconnect with per-sta VLANsFelix Fietkau2024-03-16
| | | | | Reported-by: ranygh@riseup.net Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix another regression in the broadcast AQL patchFelix Fietkau2024-03-15
| | | | | | | | | | Add a separate bit in struct ieee80211_tx_info to indicate airtime tracked as broadcast/multicast. This avoids a race condition where airtime from stations that were just removed wasn't getting subtracted from the total PHY airtime. Fixes: 95e633efbd1b ("mac80211: add AQL support for broadcast/multicast packets") Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix build with linux kernel 6.6Weijie Gao2024-03-11
| | | | | | | | | | | | | | | | | | | | Fix build failure with linux kernel 6.6 Related kernel commits: 20b0b53aca43 (genetlink: introduce split op representation) bffcc6882a1b (genetlink: remove userhdr from struct genl_info) e9a688bcb193 (random: use rejection sampling for uniform bounded random integers) 3c202d14a9d7 (prandom: remove prandom_u32_max()) 3d2f20ad46f8 (wifi: iwlwifi: Use generic thermal_zone_get_trip() function) Signed-off-by: Weijie Gao <hackpascal@gmail.com>
* mac80211: select BRCMFMAC_SDIO on starfiveZoltan HERPAI2024-03-10
| | | | | | | As the Visionfive V1 board has an Ampak module connected via SDIO, enable support for SDIO in the brcmfmac module. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
* mac80211: rtl8xxxu: sync with linux-next 20240229Shiji Yang2024-03-09
| | | | | | Backporting upstream patches to improve RTL8188F support. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* mac80211: fix a regression in the broadcast AQL patchFelix Fietkau2024-03-08
| | | | | | | | | The AQL limit for buffered broadcast packets is higher than the maximum total pending airtime limit. This can get unicast data stuck whenever there is too much pending broadcast data. Fix this by excluding broadcast AQL from the total limit. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath25: drop targetRobert Marko2024-03-07
| | | | | | | | | | | | | | ath25 has been on life support for the last couple of releases, eventually leading to marking it as source-only in 2023. It has been basically only touched to do a kernel bump so that we can make the new OpenWrt release which was a challenge due to small RAM amount. However, with the attempt of kernel 6.1 update it turns out that kernel cannot even finish booting due to RAM constraints, so its time to let this target go. Signed-off-by: Robert Marko <robimarko@gmail.com>
* mac80211: only build ath10k with smallbuffersEneas U de Queiroz2024-02-23
| | | | | | | | | | | | | | | | When both variants of ath10k drivers are selected, any driver that is selected along is being built twice, one for each ath10k variant. Avoid these redundant builds by introducing an optional second parameter to config_package that lists the variants for which the package is to be built. If the symbol is to be set for all of the variants, $(ALL_VARIANTS) can be used. This is the case for the mac80211 and cfg80211 modules. If the parameter is empty, then the module will be selected and thus built when the first variant is compiled. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* mac80211: build each variant in its own dirEneas U de Queiroz2024-02-23
| | | | | | | | | | | | | | | | | | Having different build directories is the default when the package Makefile defines more than one variant. Mac80211 overrides PKG_BUILD_DIR, not taking different variants in consideration, which causes clobbering the directories when both variants are built. When compiled with AUTOREMOVE=y, the effect is that the package is unnecessarily rebuilt when the package is compiled again. Wihout AUTOREMOVE, the problem is worse: the second variant will not be rebuilt, and you end up with the smallbuffers variant being a copy of the regular one. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* mac80211: ath11k: disable coldboot for ipq6018Mantas Pucka2024-02-21
| | | | | | | Coldboot calibration does not work at the moment and causes failure during wifi startup. Signed-off-by: Mantas Pucka <mantas@8devices.com>
* mac80211: add a fix for racy drv_sta_rc_update callsFelix Fietkau2024-02-21
| | | | | | Fixes potential crash issues in mt76 and other drivers Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: add AQL support for broadcast/multicast packetsFelix Fietkau2024-02-21
| | | | | | Should improve performance/reliability with lots of mcast packets Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: update to 6.6.15Robert Marko2024-02-21
| | | | | | | Update backports to the latest 6.6 point release. Signed-off-by: Robert Marko <robimarko@gmail.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* wifi-scripts: add new package, move wifi scripts to a single placeFelix Fietkau2024-02-03
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: brcm: fix warning on ARCH_BCM2835Álvaro Fernández Rojas2024-01-27
| | | | | | | | | Completely disable dump_survey code on ARCH_BCM2835 to fix defined but not used warning. https://github.com/openwrt/openwrt/commit/512b762ddbb602b744f0e7a443cf4ac7422155c1?w=1#commitcomment-137899352 Fixes: 512b762ddbb6 ("mac80211: brcm: disable dump_survey on Raspberry Pi") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: brcm: disable dump_survey on Raspberry PiÁlvaro Fernández Rojas2024-01-26
| | | | | | | | Enabling this causes slow iwinfo calls on Raspberry Pi and LuCI slows down when wireless is enabled. Fixes: https://github.com/openwrt/openwrt/issues/14013 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: brcm: remove alternative DT firmware names patchÁlvaro Fernández Rojas2024-01-26
| | | | | | | This patch has been reverted in the Raspberry Pi linux repository. Also refresh the rest of the patches. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* mac80211: fix typo in getting path from board.jsonFelix Fietkau2024-01-26
| | | | | | | Use json_get_vars in order to avoid getting bogus values when extra properties are present Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: remove obsolete functionFelix Fietkau2024-01-25
| | | | | | Leftover from authsae, which was removed a long time ago Signed-off-by: Felix Fietkau <nbd@nbd.name>
* Revert "mac80211: rework interface setup, fix race condition"Felix Fietkau2024-01-13
| | | | | | | | This reverts commit b7f9742da82fa9b122e8d63e48a9a5c0dec298f2. There are several reports of regressions with this commit. Will be added back once I've figured out and fixed the cause Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: rework interface setup, fix race conditionFelix Fietkau2024-01-11
| | | | | | | Only tell netifd about vifs when the setup is complete and hostapd + wpa_supplicant have been notified Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211.sh: fix deadlock on configuring multiple PHYs simultaneouslyFelix Fietkau2024-01-11
| | | | | | | | When hitting a timing window where ubus configuration calls are hitting hostapd and wpa_supplicant simultaneously, they can deadlock waiting for each other. Fix this by using a lock around the ubus calls. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: do not emit VHT160 capabilities if channel width is less than 160 MHzFelix Fietkau2024-01-09
| | | | | | Fixes compatibility issues with VHT160 capable clients Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: avoid crashing on invalid band infoDavid Bauer2024-01-07
| | | | | | | | | | | | | | | Frequent crashes have been observed on MT7916 based platforms. While the root of these crashes are currently unknown, they happen when decoding rate information of connected STAs in AP mode. The rate-information is associated with a band which is not available on the PHY. Check for this condition in order to avoid crashing the whole system. This patch should be removed once the roout cause has been found and fixed. Link: https://github.com/freifunk-gluon/gluon/issues/2980 Signed-off-by: David Bauer <mail@david-bauer.net>
* mac80211: add missing newline for "min_tx_power"Rany Hany2024-01-05
| | | | | | | This prevents min_tx_power from functioning properly in some circumstances. Add the missing newline. Signed-off-by: Rany Hany <rany_hany@riseup.net>
* mac80211: fix a race condition related to enabling fast-xmitFelix Fietkau2024-01-04
| | | | | | | | | | fast-xmit must only be enabled after the sta has been uploaded to the driver, otherwise it could end up passing the not-yet-uploaded sta via drv_tx calls to the driver, leading to potential crashes because of uninitialized drv_priv data. Add a missing sta->uploaded check and re-check fast xmit after inserting a sta. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix flush during station removalOldřich Jedlička2023-12-24
| | | | | | | | | | This fixes WARN_ONs when using AP_VLANs after station removal. The flush call passed AP_VLAN vif to driver, but because these vifs are virtual and not registered with drivers, we need to translate to the correct AP vif first. Fixes: openwrt#12420 Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
* kernel: backport list_count_nodes()Rafał Miłecki2023-12-15
| | | | | | | It's needed by various stuff we backport. That includes NVMEM changes queued for v6.8. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mac80211: realtek: rtw88: add RTL8822CU supportChukun Pan2023-11-13
| | | | | | Add the Realtek RTL8822CU support to rtw88 package. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* mac80211: realtek: rtw88: add RTL8821CU supportChukun Pan2023-11-13
| | | | | | Add the Realtek RTL8821CU support to rtw88 package. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* mac80211: realtek: rtw88: add RTL8821CE supportChukun Pan2023-11-13
| | | | | | Add the Realtek RTL8821CE support to rtw88 package. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* mac80211: realtek: fix rtw88 driver dependenciesChukun Pan2023-11-13
| | | | | | | | | | | | | The RTW88 PCI/USB driver uses the same firmware, so add firmware dependencies. Also CI report that: Package kmod-rtw88-usb is missing dependencies for the following libraries: usbcore.ko This commit fixes it. Fixes: 3538a19 ("mac80211: split rtw88 configuration for each supported chip") Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* mac80211: rt2x00: correct wrong BBP register in RxDCOC calibrationShiji Yang2023-11-13
| | | | | | | This fix can reduce the total calibration time from 6 seconds to 1 second. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* mac80211: sync some rt2x00 patches with wireless-nextShiji Yang2023-11-13
| | | | | | | | | | | | | | | | | | | | | | | | | Some local patches have been sent to upstream and they are slightly different from the upstream version. So it's better to replace them to avoid conflicts with the new mac80211 backport driver. The different parts have been merged into patch 996. This commit also includes some additional fixes: * Fix watchdog function. * Improve MT7620 register initialization. * Introduce DMA busy watchdog for rt2800. P.S. Sometimes rt2800 series chips may fall into a DMA busy state. The tx queues become very slow and the client cannot connect to the AP. Usually, We can see a lot of hostapd warnings at this point: 'hostapd: IEEE 802.11: did not acknowledge authentication response' The DMA busy watchdog can help the driver automatically recover from this abnormal state. By the way, setting higer 'cell_density' and disabling 'disassoc_low_ack' can significantly reduce the probability of the DMA busy. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* mac80211: add support for rtw88_8822buAlexis Lothoré2023-11-12
| | | | | | | | | Kernel 6.1 has introduced support for RTW8822BU network adapter, which is an USB variant of the rtw8822b 802.11ac chipset family. Build and install the corresponding module in the rtw88 package Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
* mac80211: split rtw88 configuration for each supported chipAlexis Lothoré2023-11-12
| | | | | | | | | | | | | | | Current rtw88 build configuration builds modules for all chips supported by rtw88 driver family. This brings the following issues: - adding a chip with a different bus is not convenient (all chips currently depends on PCI) - some features requirements are not relevant for all chips in family (eg 802.11AC is enforced but RTW88-8723DE is only a 802.11b/g/n chip) Remove those constraints/issues by adding one module build option per supported chip, and add intermediate options to properly cascade dependencies. Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
* mac80211: ath9k-htc: support "chanbw" in debugfsLech Perczak2023-11-12
| | | | | | | | | | | | | | ath9k-htc USB-based adapters also support 5/10MHz channel bandwidth. Move the code handling the features in debugfs to common-debug.c, and create proper registration functions to use in debug.c and htc_drv_debug.c, leaving only debugfs registration there. While at that, refresh one patch that would conflict otherwise. Tested on TP-Link Archer C7v2 (ath79) and TP-Link WN722Nv1 (AR9287) and WN822Nv2 (AR7010+AR9287). Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* mac80211: ath9k-htc: support "eeprom" in debugfsLech Perczak2023-11-12
| | | | | | | | | | | | | | | ath9k-htc USB-based adapterssupport 5/10MHz channel bandwidth, the same as standard ath9k ones. Move the code handling the features in debugfs to common-debug.c, and create proper registration functions to use in debug.c and htc_drv_debug.c, leaving only debugfs registration there. While at that, refresh one patch that would conflict otherwise. Tested on TP-Link Archer C7v2 (ath79) and TP-Link WN722Nv1 (AR9287) and WN822Nv2 (AR7010+AR9287). Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
* mac80211: fix not set noscan option for wpa_supplicantChristian Marangi2023-11-09
| | | | | | | | noscan option was changed to hostapd_noscan but the entry in wpa_supplicant was never updated resulting in the noscan option actually never set. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* mac80211: ath: add struct_group for struct ath_cycle_countersShiji Yang2023-10-31
| | | | | | | | | | | | | | | | Add a struct_group to around all members in struct ath_cycle_counters. It can help the compiler detect the intended bounds of the memcpy() and memset(). This patch fixes the following build warning: In function 'fortify_memset_chk', inlined from 'ath9k_ps_wakeup' at /home/db/openwrt/build_dir/target-mips_24kc_musl/linux-ath79_generic/backports-6.1.24/drivers/net/wireless/ath/ath9k/main.c:140:3: ./include/linux/fortify-string.h:314:25: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning] 314 | __write_overflow_field(p_size_field, size); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* mac80211: compile kconf with host gccZeyu Dong2023-10-28
| | | | | | | | | | Fix the building issue setting CC to KERNEL_CC in kernel.mk. The kernel backports by default uses CC to compile kconf. A new patch is added to mac80211 to compile kconf with host gcc. Signed-off-by: Zeyu Dong <dzy201415@gmail.com> [ refresh patches ] Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* mac80211: rt2x00: improve EEPROM load patchesChristian Marangi2023-10-16
| | | | | | | | | | | | | | Improve EEPROME load patches. Reorganize and rework them. The current patch are bugged and with the case of MTD loading, leaks and never free the EEPROM read values. Also add support for loading EEPROM using NVMEM cells. As a cleanup, change the binding to swap EEPROM read from mtd to ralink,eeprom-swap and generilize it. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* mac80211: ath11k: sync with ath-nextRobert Marko2023-10-14
| | | | | | | | | | | | | | | Synchronize the ath11k backports with the current ath-next tree. All of the changes are various bugfixes, there is no new major feature. Notable bugfixes are: * WCN6855 board name fixes * One MSI vector booting is working again This is rather important for most of the older platforms. * DFS CAC state in virtual interfaces was fixed * TX power during CAC reporting Signed-off-by: Robert Marko <robimarko@gmail.com>
* mac80211: backport upstream DFS CAC time exportRobert Marko2023-10-14
| | | | | | | DFS CAC time export is required for backport of a ath11k fix so lets backport the required cfg80211 upstream commit as well. Signed-off-by: Robert Marko <robimarko@gmail.com>
* mac80211: rt2x00: fix MT7620 low RSSI issueShiji Yang2023-09-23
| | | | | | | | | | | Introducing SoC specific RSSI base value to fix the low RSSI issue on MT7620. With this fix[1], the RSSI value reported by MT7620 will increase by 10 dB. [1] https://lore.kernel.org/linux-wireless/TYAP286MB031571CDB146C414A908A66DBCFEA@TYAP286MB0315.JPNP286.PROD.OUTLOOK.COM/ Fixes: https://github.com/openwrt/openwrt/issues/11036 Signed-off-by: Shiji Yang <yangshiji66@qq.com>