mac80211: make retry limits part of hw config
Instead of having a separate callback, use the HW config callback with a new flag to change retry limits. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
525181891f
commit
9124b07740
@@ -473,6 +473,7 @@ static inline int __deprecated __IEEE80211_CONF_SHORT_SLOT_TIME(void)
|
||||
* @IEEE80211_CONF_CHANGE_PS: the PS flag changed
|
||||
* @IEEE80211_CONF_CHANGE_POWER: the TX power changed
|
||||
* @IEEE80211_CONF_CHANGE_CHANNEL: the channel changed
|
||||
* @IEEE80211_CONF_CHANGE_RETRY_LIMITS: retry limits changed
|
||||
*/
|
||||
enum ieee80211_conf_changed {
|
||||
IEEE80211_CONF_CHANGE_RADIO_ENABLED = BIT(0),
|
||||
@@ -482,6 +483,7 @@ enum ieee80211_conf_changed {
|
||||
IEEE80211_CONF_CHANGE_PS = BIT(4),
|
||||
IEEE80211_CONF_CHANGE_POWER = BIT(5),
|
||||
IEEE80211_CONF_CHANGE_CHANNEL = BIT(6),
|
||||
IEEE80211_CONF_CHANGE_RETRY_LIMITS = BIT(7),
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -497,6 +499,12 @@ enum ieee80211_conf_changed {
|
||||
* @ht_cap: describes current self configuration of 802.11n HT capabilities
|
||||
* @ht_bss_conf: describes current BSS configuration of 802.11n HT parameters
|
||||
* @channel: the channel to tune to
|
||||
* @long_frame_max_tx_count: Maximum number of transmissions for a "long" frame
|
||||
* (a frame not RTS protected), called "dot11LongRetryLimit" in 802.11,
|
||||
* but actually means the number of transmissions not the number of retries
|
||||
* @short_frame_max_tx_count: Maximum number of transmissions for a "short"
|
||||
* frame, called "dot11ShortRetryLimit" in 802.11, but actually means the
|
||||
* number of transmissions not the number of retries
|
||||
*/
|
||||
struct ieee80211_conf {
|
||||
int beacon_int;
|
||||
@@ -506,6 +514,8 @@ struct ieee80211_conf {
|
||||
u16 listen_interval;
|
||||
bool radio_enabled;
|
||||
|
||||
u8 long_frame_max_tx_count, short_frame_max_tx_count;
|
||||
|
||||
struct ieee80211_channel *channel;
|
||||
|
||||
struct ieee80211_sta_ht_cap ht_cap;
|
||||
@@ -1190,8 +1200,6 @@ enum ieee80211_ampdu_mlme_action {
|
||||
* the device does fragmentation by itself; if this method is assigned then
|
||||
* the stack will not do fragmentation.
|
||||
*
|
||||
* @set_retry_limit: Configuration of retry limits (if device needs it)
|
||||
*
|
||||
* @sta_notify: Notifies low level driver about addition or removal
|
||||
* of assocaited station or AP.
|
||||
*
|
||||
@@ -1261,8 +1269,6 @@ struct ieee80211_ops {
|
||||
u32 *iv32, u16 *iv16);
|
||||
int (*set_rts_threshold)(struct ieee80211_hw *hw, u32 value);
|
||||
int (*set_frag_threshold)(struct ieee80211_hw *hw, u32 value);
|
||||
int (*set_retry_limit)(struct ieee80211_hw *hw,
|
||||
u32 short_retry, u32 long_retr);
|
||||
void (*sta_notify)(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||
enum sta_notify_cmd, struct ieee80211_sta *sta);
|
||||
int (*conf_tx)(struct ieee80211_hw *hw, u16 queue,
|
||||
|
Reference in New Issue
Block a user