mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
mac80211: Add EHT UL MU-MIMO flag in ieee80211_bss_conf
This commit is contained in:
parent
5d1aadf436
commit
3a5a4986fa
@ -0,0 +1,55 @@
|
||||
--- a/include/net/mac80211.h
|
||||
+++ b/include/net/mac80211.h
|
||||
@@ -673,6 +673,12 @@
|
||||
* @he_full_ul_mumimo: does this BSS support the reception (AP) or transmission
|
||||
* (non-AP STA) of an HE TB PPDU on an RU that spans the entire PPDU
|
||||
* bandwidth
|
||||
+ * @eht_su_beamformer: in AP-mode, does this BSS enable operation as an EHT SU
|
||||
+ * beamformer
|
||||
+ * @eht_su_beamformee: in AP-mode, does this BSS enable operation as an EHT SU
|
||||
+ * beamformee
|
||||
+ * @eht_mu_beamformer: in AP-mode, does this BSS enable operation as an EHT MU
|
||||
+ * beamformer
|
||||
*/
|
||||
struct ieee80211_bss_conf {
|
||||
const u8 *bssid;
|
||||
@@ -758,6 +764,9 @@
|
||||
bool he_su_beamformee;
|
||||
bool he_mu_beamformer;
|
||||
bool he_full_ul_mumimo;
|
||||
+ bool eht_su_beamformer;
|
||||
+ bool eht_su_beamformee;
|
||||
+ bool eht_mu_beamformer;
|
||||
};
|
||||
|
||||
/**
|
||||
--- a/net/mac80211/cfg.c
|
||||
+++ b/net/mac80211/cfg.c
|
||||
@@ -1307,6 +1307,27 @@
|
||||
IEEE80211_HE_PHY_CAP2_UL_MU_FULL_MU_MIMO;
|
||||
}
|
||||
|
||||
+ if (params->eht_cap) {
|
||||
+ if (!link_conf->he_support)
|
||||
+ return -EOPNOTSUPP;
|
||||
+ link_conf->eht_support = true;
|
||||
+ link_conf->eht_su_beamformer =
|
||||
+ params->eht_cap->fixed.phy_cap_info[0] &
|
||||
+ IEEE80211_EHT_PHY_CAP0_SU_BEAMFORMER;
|
||||
+ link_conf->eht_su_beamformee =
|
||||
+ params->eht_cap->fixed.phy_cap_info[0] &
|
||||
+ IEEE80211_EHT_PHY_CAP0_SU_BEAMFORMEE;
|
||||
+ link_conf->eht_mu_beamformer =
|
||||
+ params->eht_cap->fixed.phy_cap_info[7] &
|
||||
+ (IEEE80211_EHT_PHY_CAP7_MU_BEAMFORMER_80MHZ |
|
||||
+ IEEE80211_EHT_PHY_CAP7_MU_BEAMFORMER_160MHZ |
|
||||
+ IEEE80211_EHT_PHY_CAP7_MU_BEAMFORMER_320MHZ);
|
||||
+ } else {
|
||||
+ link_conf->eht_su_beamformer = false;
|
||||
+ link_conf->eht_su_beamformee = false;
|
||||
+ link_conf->eht_mu_beamformer = false;
|
||||
+ }
|
||||
+
|
||||
if (sdata->vif.type == NL80211_IFTYPE_AP &&
|
||||
params->mbssid_config.tx_wdev) {
|
||||
err = ieee80211_set_ap_mbssid_options(sdata,
|
Loading…
Reference in New Issue
Block a user