summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h
diff options
context:
space:
mode:
authorSara Sharon <sara.sharon@intel.com>2016-02-03 15:04:49 +0200
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2016-02-27 22:00:11 +0200
commitf92659a110436cdfdd8d7661188ba059b61404b7 (patch)
treeb8e849851596b1c061ea9d5100bff457932b4784 /drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h
parent7ed3eec53023deecffb61abbcb7f8408ff6ab064 (diff)
downloadlinux-stable-f92659a110436cdfdd8d7661188ba059b61404b7.tar.gz
linux-stable-f92659a110436cdfdd8d7661188ba059b61404b7.tar.bz2
linux-stable-f92659a110436cdfdd8d7661188ba059b61404b7.zip
iwlwifi: mvm: support VHT MU-MIMO notification
When the device is in d0i3/d3 we will not receive the VHT MU-MIMO group id management frame. Instead, firmware will notify us upon exit on the current status and we can in turn update mac80211. Support this notification. While at it, also check as a precaution that the vif is indeed the VHT MU-MIMO owner before updating the firmware. Signed-off-by: Sara Sharon <sara.sharon@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h b/drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h
index f432ddd4cde3..4a0fc47c81f2 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h
@@ -290,6 +290,7 @@ enum iwl_phy_ops_subcmd_ids {
enum iwl_data_path_subcmd_ids {
UPDATE_MU_GROUPS_CMD = 0x1,
TRIGGER_RX_QUEUES_NOTIF_CMD = 0x2,
+ MU_GROUP_MGMT_NOTIF = 0xFE,
RX_QUEUES_NOTIFICATION = 0xFF,
};
@@ -1965,6 +1966,18 @@ struct iwl_mu_group_mgmt_cmd {
__le32 user_position[4];
} __packed; /* MU_GROUP_ID_MNG_TABLE_API_S_VER_1 */
+/**
+ * struct iwl_mu_group_mgmt_notif - VHT MU-MIMO group id notification
+ *
+ * @membership_status: a bitmap of MU groups
+ * @user_position: the position of station in a group. If the station is in the
+ * group then bits (group * 2) is the position -1
+ */
+struct iwl_mu_group_mgmt_notif {
+ __le32 membership_status[2];
+ __le32 user_position[4];
+} __packed; /* MU_GROUP_MNG_NTFY_API_S_VER_1 */
+
#define MAX_STORED_BEACON_SIZE 600
/**