void ieee80211_sta_init_nss_bw_capa(struct link_sta_info *link_sta,
struct cfg80211_chan_def *chandef)
{
+ /*
+ * TODO: The entirety of the STA Tx/Rx bandwidth handling
+ * assumes 20MHz based widths, so for now don't initialise
+ * pubsta->bandwidth for S1G bands. Since enum
+ * ieee80211_sta_rx_bandwidth is ordered, we will probably
+ * need to introduce ieee80211_s1g_sta_rx_bandwidth with
+ * S1G widths and associated S1G specific code. Additionally,
+ * existing S1G hardware is all 1SS, in the future if hardware
+ * starts supporting >1SS this should be implemented in
+ * ieee80211_sta_nss_capability().
+ */
+ if (cfg80211_chandef_is_s1g(chandef)) {
+ link_sta->capa_nss = 1;
+ link_sta->pub->rx_nss = 1;
+ return;
+ }
+
link_sta->capa_nss = ieee80211_sta_nss_capability(link_sta);
link_sta->pub->rx_nss = link_sta->capa_nss;