mwifiex: update beamforming capability field for HT
authorAmitkumar Karwar <akarwar@marvell.com>
Sat, 8 Feb 2014 00:27:26 +0000 (16:27 -0800)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 12 Feb 2014 20:36:15 +0000 (15:36 -0500)
This patch makes sure that beamforming capability field in
ht capability info gets filled if hardware supports the feature.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/mwifiex/11n.c
drivers/net/wireless/mwifiex/fw.h

index 6261f8c53d44bd7a6ba4f30651bfc8c67da6f4e5..822e622fa323e45568d0fa8d1e8c9017e986cd43 100644 (file)
@@ -64,6 +64,10 @@ mwifiex_fill_cap_info(struct mwifiex_private *priv, u8 radio_type,
 
        ht_cap->ht_cap.cap_info = cpu_to_le16(sband->ht_cap.cap);
        ht_cap->ht_cap.extended_ht_cap_info = cpu_to_le16(ht_ext_cap);
+
+       if (ISSUPP_BEAMFORMING(priv->adapter->hw_dot_11n_dev_cap))
+               ht_cap->ht_cap.tx_BF_cap_info =
+                               cpu_to_le32(MWIFIEX_DEF_11N_TX_BF_CAP);
 }
 
 /*
index ed41af17b213f3f9f8f5be8de44c72ec3c832a1b..cad9f86600c2f06e377fe77288ab26a2b89a802b 100644 (file)
@@ -186,6 +186,8 @@ enum MWIFIEX_802_11_PRIVACY_FILTER {
                                 (1 << IEEE80211_HT_CAP_RX_STBC_SHIFT) | \
                                 IEEE80211_HT_CAP_SM_PS)
 
+#define MWIFIEX_DEF_11N_TX_BF_CAP      0x09E1E008
+
 #define MWIFIEX_DEF_AMPDU      IEEE80211_HT_AMPDU_PARM_FACTOR
 
 /* dev_cap bitmap
@@ -209,6 +211,7 @@ enum MWIFIEX_802_11_PRIVACY_FILTER {
 #define ISSUPP_GREENFIELD(Dot11nDevCap) (Dot11nDevCap & BIT(29))
 #define ISENABLED_40MHZ_INTOLERANT(Dot11nDevCap) (Dot11nDevCap & BIT(8))
 #define ISSUPP_RXLDPC(Dot11nDevCap) (Dot11nDevCap & BIT(22))
+#define ISSUPP_BEAMFORMING(Dot11nDevCap) (Dot11nDevCap & BIT(30))
 
 /* httxcfg bitmap
  * 0           reserved