diff options
author | Ivo van Doorn <ivdoorn@gmail.com> | 2008-10-29 12:17:57 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-11-10 15:17:33 -0500 |
commit | e4ea1c403acece78c271bf9cd6f797d1cb093df9 (patch) | |
tree | 4356693a16f2596de08f6afee76490f1ebe6b066 /drivers/net/wireless/rt2x00/rt2x00.h | |
parent | 3f64b435ab76e79bfb3b4d36f043e6f892093b71 (diff) |
rt2x00: Optimize configuration handling
Implement latest changed from mac80211 configuration
handling to optmize configuration handling in rt2x00.
* Remove set_retry_limit callback function, handled
through config()
* Move config_antenna to its own callback function,
it isn't handled by mac80211 anymore
* Use IEEE80211_CONF_CHANGED_* flags and remove manual
checks
* Removed deprecated short slot setting through config()
and put it in config_erp() through which mac80211 now
configures it
* Remove config_phymode() and move contents to config_erp()
since it only managed the basic rates which is now
determined by mac80211 through config_erp().
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00.h')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00.h | 35 |
1 files changed, 12 insertions, 23 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h index 0887e895d5c1..4d983e6eefc4 100644 --- a/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h | |||
@@ -433,18 +433,6 @@ struct rt2x00lib_conf { | |||
433 | 433 | ||
434 | struct rf_channel rf; | 434 | struct rf_channel rf; |
435 | struct channel_info channel; | 435 | struct channel_info channel; |
436 | |||
437 | struct antenna_setup ant; | ||
438 | |||
439 | enum ieee80211_band band; | ||
440 | |||
441 | u32 basic_rates; | ||
442 | u32 slot_time; | ||
443 | |||
444 | short sifs; | ||
445 | short pifs; | ||
446 | short difs; | ||
447 | short eifs; | ||
448 | }; | 436 | }; |
449 | 437 | ||
450 | /* | 438 | /* |
@@ -456,6 +444,15 @@ struct rt2x00lib_erp { | |||
456 | 444 | ||
457 | int ack_timeout; | 445 | int ack_timeout; |
458 | int ack_consume_time; | 446 | int ack_consume_time; |
447 | |||
448 | u64 basic_rates; | ||
449 | |||
450 | int slot_time; | ||
451 | |||
452 | short sifs; | ||
453 | short pifs; | ||
454 | short difs; | ||
455 | short eifs; | ||
459 | }; | 456 | }; |
460 | 457 | ||
461 | /* | 458 | /* |
@@ -589,19 +586,11 @@ struct rt2x00lib_ops { | |||
589 | 586 | ||
590 | void (*config_erp) (struct rt2x00_dev *rt2x00dev, | 587 | void (*config_erp) (struct rt2x00_dev *rt2x00dev, |
591 | struct rt2x00lib_erp *erp); | 588 | struct rt2x00lib_erp *erp); |
589 | void (*config_ant) (struct rt2x00_dev *rt2x00dev, | ||
590 | struct antenna_setup *ant); | ||
592 | void (*config) (struct rt2x00_dev *rt2x00dev, | 591 | void (*config) (struct rt2x00_dev *rt2x00dev, |
593 | struct rt2x00lib_conf *libconf, | 592 | struct rt2x00lib_conf *libconf, |
594 | const unsigned int flags); | 593 | const unsigned int changed_flags); |
595 | #define CONFIG_UPDATE_PHYMODE ( 1 << 1 ) | ||
596 | #define CONFIG_UPDATE_CHANNEL ( 1 << 2 ) | ||
597 | #define CONFIG_UPDATE_TXPOWER ( 1 << 3 ) | ||
598 | #define CONFIG_UPDATE_ANTENNA ( 1 << 4 ) | ||
599 | #define CONFIG_UPDATE_SLOT_TIME ( 1 << 5 ) | ||
600 | #define CONFIG_UPDATE_BEACON_INT ( 1 << 6 ) | ||
601 | #define CONFIG_UPDATE_ALL 0xffff | ||
602 | |||
603 | int (*set_retry_limit) (struct ieee80211_hw *hw, | ||
604 | u32 short_limit, u32 long_limit); | ||
605 | }; | 594 | }; |
606 | 595 | ||
607 | /* | 596 | /* |