aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00mac.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00mac.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00mac.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c
index 1d67bcd46bcb..e3f15e518c76 100644
--- a/drivers/net/wireless/rt2x00/rt2x00mac.c
+++ b/drivers/net/wireless/rt2x00/rt2x00mac.c
@@ -342,23 +342,27 @@ int rt2x00mac_get_tx_stats(struct ieee80211_hw *hw,
342} 342}
343EXPORT_SYMBOL_GPL(rt2x00mac_get_tx_stats); 343EXPORT_SYMBOL_GPL(rt2x00mac_get_tx_stats);
344 344
345void rt2x00mac_erp_ie_changed(struct ieee80211_hw *hw, u8 changes, 345void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw,
346 int cts_protection, int preamble) 346 struct ieee80211_vif *vif,
347 struct ieee80211_bss_conf *bss_conf,
348 u32 changes)
347{ 349{
348 struct rt2x00_dev *rt2x00dev = hw->priv; 350 struct rt2x00_dev *rt2x00dev = hw->priv;
349 int short_preamble; 351 int short_preamble;
350 int ack_timeout; 352 int ack_timeout;
351 int ack_consume_time; 353 int ack_consume_time;
352 int difs; 354 int difs;
355 int preamble;
353 356
354 /* 357 /*
355 * We only support changing preamble mode. 358 * We only support changing preamble mode.
356 */ 359 */
357 if (!(changes & IEEE80211_ERP_CHANGE_PREAMBLE)) 360 if (!(changes & BSS_CHANGED_ERP_PREAMBLE))
358 return; 361 return;
359 362
360 short_preamble = !preamble; 363 short_preamble = bss_conf->use_short_preamble;
361 preamble = !!(preamble) ? PREAMBLE : SHORT_PREAMBLE; 364 preamble = bss_conf->use_short_preamble ?
365 SHORT_PREAMBLE : PREAMBLE;
362 366
363 difs = (hw->conf.flags & IEEE80211_CONF_SHORT_SLOT_TIME) ? 367 difs = (hw->conf.flags & IEEE80211_CONF_SHORT_SLOT_TIME) ?
364 SHORT_DIFS : DIFS; 368 SHORT_DIFS : DIFS;
@@ -374,7 +378,7 @@ void rt2x00mac_erp_ie_changed(struct ieee80211_hw *hw, u8 changes,
374 rt2x00dev->ops->lib->config_preamble(rt2x00dev, short_preamble, 378 rt2x00dev->ops->lib->config_preamble(rt2x00dev, short_preamble,
375 ack_timeout, ack_consume_time); 379 ack_timeout, ack_consume_time);
376} 380}
377EXPORT_SYMBOL_GPL(rt2x00mac_erp_ie_changed); 381EXPORT_SYMBOL_GPL(rt2x00mac_bss_info_changed);
378 382
379int rt2x00mac_conf_tx(struct ieee80211_hw *hw, int queue, 383int rt2x00mac_conf_tx(struct ieee80211_hw *hw, int queue,
380 const struct ieee80211_tx_queue_params *params) 384 const struct ieee80211_tx_queue_params *params)