Message ID | 20240508002055.17705-1-quic_pradeepc@quicinc.com |
---|---|
Headers | show |
Series | wifi: ath12k: add MU-MIMO and 160 MHz bandwidth support | expand |
On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: > Add flag for Full Bandwidth UL MU-MIMO for EHT. This is utilized > to pass EHT MU-MIMO configurations from user space to driver. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> > --- > include/net/mac80211.h | 4 ++++ > net/mac80211/cfg.c | 5 +++++ > 2 files changed, 9 insertions(+) > > diff --git a/include/net/mac80211.h b/include/net/mac80211.h > index cafc664ee531..d7b6f75bc920 100644 > --- a/include/net/mac80211.h > +++ b/include/net/mac80211.h > @@ -701,6 +701,9 @@ struct ieee80211_fils_discovery { > * beamformee > * @eht_mu_beamformer: in AP-mode, does this BSS enable operation as an EHT MU > * beamformer > + * @eht_80mhz_full_bw_ul_mumimo: does this BSS support the reception (AP) or transmission suggest you reformat to fit in 80 columns (we allow code to exceed 80 columns when it improves readability, but comments should almost never exceed 80 columns) > + * (non-AP STA) of an EHT TB PPDU on an RU that spans the entire PPDU > + * bandwidth > */ > struct ieee80211_bss_conf { > struct ieee80211_vif *vif; > @@ -793,6 +796,7 @@ struct ieee80211_bss_conf { > bool eht_su_beamformer; > bool eht_su_beamformee; > bool eht_mu_beamformer; > + bool eht_80mhz_full_bw_ul_mumimo; > }; > > /** > diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c > index b08e5d7687e3..96b2f31f0c8a 100644 > --- a/net/mac80211/cfg.c > +++ b/net/mac80211/cfg.c > @@ -1379,6 +1379,11 @@ static int ieee80211_start_ap(struct wiphy *wiphy, struct net_device *dev, > (IEEE80211_EHT_PHY_CAP7_MU_BEAMFORMER_80MHZ | > IEEE80211_EHT_PHY_CAP7_MU_BEAMFORMER_160MHZ | > IEEE80211_EHT_PHY_CAP7_MU_BEAMFORMER_320MHZ); > + link_conf->eht_80mhz_full_bw_ul_mumimo = > + params->eht_cap->fixed.phy_cap_info[7] & > + (IEEE80211_EHT_PHY_CAP7_NON_OFDMA_UL_MU_MIMO_80MHZ | > + IEEE80211_EHT_PHY_CAP7_NON_OFDMA_UL_MU_MIMO_160MHZ | > + IEEE80211_EHT_PHY_CAP7_NON_OFDMA_UL_MU_MIMO_320MHZ); > } else { > link_conf->eht_su_beamformer = false; > link_conf->eht_su_beamformee = false;
On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: > Generate rx and tx mcs maps in ath12k_mac_set_hemcsmap() based > on number of supported tx/rx chains and set them in supported > mcs/nss for HE capabilities. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Co-developed-by: Muna Sinada <quic_msinada@quicinc.com> > Signed-off-by: Muna Sinada <quic_msinada@quicinc.com> > Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: > Currently, the TX and RX MCS rate configurations per peer are > reversed when sent to the firmware. As a result, RX MCS rates > are configured for TX, and vice versa. This commit rectifies > the configuration to match what the firmware expects. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Fixes: d889913205cf ("wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices") > Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: > Add support to set fixed HE rate/GI/LTF values using nl80211. > Reuse parts of the existing code path already used for HT/VHT > to implement the new helpers symmetrically, similar to how > HT/VHT is handled. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Co-developed-by: Muna Sinada <quic_msinada@quicinc.com> > Signed-off-by: Muna Sinada <quic_msinada@quicinc.com> > Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: > Clean up unused 80P80 references as hardware does not support > it. This is applicable to both QCN9274 and WCN7850. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: > Currently rx and tx MCS map for 160 MHz under HE capabilities > are not updating properly, when 160 MHz is configured with NSS > lesser than max NSS support. Fix this by utilizing > nss_ratio_enabled and nss_ratio_info fields sent by firmware > in service ready event. > > However, if firmware advertises EXT NSS BW support in VHT caps > as 1(1x2) and when nss_ratio_info indicates 1:1, reset the EXT > NSS BW Support in VHT caps to 0 which indicates 1x1. This is > to avoid incorrectly chosing 1:2 NSS ratio when using the s/chosing /choosing / > default VHT caps advertised by firmware. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
On 5/13/2024 1:49 PM, Jeff Johnson wrote: > On 5/7/2024 5:20 PM, Pradeep Kumar Chitrapu wrote: >> Add flag for Full Bandwidth UL MU-MIMO for EHT. This is utilized >> to pass EHT MU-MIMO configurations from user space to driver. >> >> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 >> >> Signed-off-by: Pradeep Kumar Chitrapu <quic_pradeepc@quicinc.com> >> --- >> include/net/mac80211.h | 4 ++++ >> net/mac80211/cfg.c | 5 +++++ >> 2 files changed, 9 insertions(+) >> >> diff --git a/include/net/mac80211.h b/include/net/mac80211.h >> index cafc664ee531..d7b6f75bc920 100644 >> --- a/include/net/mac80211.h >> +++ b/include/net/mac80211.h >> @@ -701,6 +701,9 @@ struct ieee80211_fils_discovery { >> * beamformee >> * @eht_mu_beamformer: in AP-mode, does this BSS enable operation as an EHT MU >> * beamformer >> + * @eht_80mhz_full_bw_ul_mumimo: does this BSS support the reception (AP) or transmission > > suggest you reformat to fit in 80 columns > (we allow code to exceed 80 columns when it improves readability, but comments > should almost never exceed 80 columns) Sure..Thanks Jeff, will address in next revision