diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn-sta.c | 20 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-mac80211.c | 16 |
2 files changed, 15 insertions, 21 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-sta.c b/drivers/net/wireless/iwlwifi/iwl-agn-sta.c index 3eb8fd4771b..6b9af994cfa 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-sta.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-sta.c | |||
@@ -1437,16 +1437,14 @@ int iwl_sta_rx_agg_stop(struct iwl_priv *priv, struct ieee80211_sta *sta, | |||
1437 | 1437 | ||
1438 | void iwl_sta_modify_sleep_tx_count(struct iwl_priv *priv, int sta_id, int cnt) | 1438 | void iwl_sta_modify_sleep_tx_count(struct iwl_priv *priv, int sta_id, int cnt) |
1439 | { | 1439 | { |
1440 | unsigned long flags; | 1440 | struct iwl_addsta_cmd cmd = { |
1441 | 1441 | .mode = STA_CONTROL_MODIFY_MSK, | |
1442 | spin_lock_irqsave(&priv->shrd->sta_lock, flags); | 1442 | .station_flags = STA_FLG_PWR_SAVE_MSK, |
1443 | priv->stations[sta_id].sta.station_flags |= STA_FLG_PWR_SAVE_MSK; | 1443 | .station_flags_msk = STA_FLG_PWR_SAVE_MSK, |
1444 | priv->stations[sta_id].sta.station_flags_msk = STA_FLG_PWR_SAVE_MSK; | 1444 | .sta.sta_id = sta_id, |
1445 | priv->stations[sta_id].sta.sta.modify_mask = | 1445 | .sta.modify_mask = STA_MODIFY_SLEEP_TX_COUNT_MSK, |
1446 | STA_MODIFY_SLEEP_TX_COUNT_MSK; | 1446 | .sleep_tx_count = cpu_to_le16(cnt), |
1447 | priv->stations[sta_id].sta.sleep_tx_count = cpu_to_le16(cnt); | 1447 | }; |
1448 | priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; | ||
1449 | iwl_send_add_sta(priv, &priv->stations[sta_id].sta, CMD_ASYNC); | ||
1450 | spin_unlock_irqrestore(&priv->shrd->sta_lock, flags); | ||
1451 | 1448 | ||
1449 | iwl_send_add_sta(priv, &cmd, CMD_ASYNC); | ||
1452 | } | 1450 | } |
diff --git a/drivers/net/wireless/iwlwifi/iwl-mac80211.c b/drivers/net/wireless/iwlwifi/iwl-mac80211.c index 03f770543d8..9fba532d35c 100644 --- a/drivers/net/wireless/iwlwifi/iwl-mac80211.c +++ b/drivers/net/wireless/iwlwifi/iwl-mac80211.c | |||
@@ -1505,17 +1505,13 @@ static int iwlagn_mac_sta_remove(struct ieee80211_hw *hw, | |||
1505 | 1505 | ||
1506 | static void iwl_sta_modify_ps_wake(struct iwl_priv *priv, int sta_id) | 1506 | static void iwl_sta_modify_ps_wake(struct iwl_priv *priv, int sta_id) |
1507 | { | 1507 | { |
1508 | unsigned long flags; | 1508 | struct iwl_addsta_cmd cmd = { |
1509 | 1509 | .mode = STA_CONTROL_MODIFY_MSK, | |
1510 | spin_lock_irqsave(&priv->shrd->sta_lock, flags); | 1510 | .station_flags_msk = STA_FLG_PWR_SAVE_MSK, |
1511 | priv->stations[sta_id].sta.station_flags &= ~STA_FLG_PWR_SAVE_MSK; | 1511 | .sta.sta_id = sta_id, |
1512 | priv->stations[sta_id].sta.station_flags_msk = STA_FLG_PWR_SAVE_MSK; | 1512 | }; |
1513 | priv->stations[sta_id].sta.sta.modify_mask = 0; | ||
1514 | priv->stations[sta_id].sta.sleep_tx_count = 0; | ||
1515 | priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; | ||
1516 | iwl_send_add_sta(priv, &priv->stations[sta_id].sta, CMD_ASYNC); | ||
1517 | spin_unlock_irqrestore(&priv->shrd->sta_lock, flags); | ||
1518 | 1513 | ||
1514 | iwl_send_add_sta(priv, &cmd, CMD_ASYNC); | ||
1519 | } | 1515 | } |
1520 | 1516 | ||
1521 | static void iwlagn_mac_sta_notify(struct ieee80211_hw *hw, | 1517 | static void iwlagn_mac_sta_notify(struct ieee80211_hw *hw, |