diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2008-07-10 05:22:31 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-07-14 14:52:57 -0400 |
commit | f434b2d111d9ff84ebdd0f11a7ae42c761453259 (patch) | |
tree | 8c19b89773cb03812e81f3d170c97c31925dec36 | |
parent | f591fa5dbbbeaebd95c9c019b3a536a327fb79de (diff) |
mac80211: fix struct ieee80211_tx_queue_params
Multiple issues:
- there are no "default" values needed
- cw_min/cw_max can be larger than documented
- restructure to decrease size
- use get_unaligned_le16
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | include/net/mac80211.h | 10 | ||||
-rw-r--r-- | net/mac80211/mlme.c | 2 |
2 files changed, 6 insertions, 6 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 1dbd49fc557e..24a69f6075c2 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -115,17 +115,17 @@ enum ieee80211_max_queues { | |||
115 | * The information provided in this structure is required for QoS | 115 | * The information provided in this structure is required for QoS |
116 | * transmit queue configuration. Cf. IEEE 802.11 7.3.2.29. | 116 | * transmit queue configuration. Cf. IEEE 802.11 7.3.2.29. |
117 | * | 117 | * |
118 | * @aifs: arbitration interface space [0..255, -1: use default] | 118 | * @aifs: arbitration interface space [0..255] |
119 | * @cw_min: minimum contention window [will be a value of the form | 119 | * @cw_min: minimum contention window [a value of the form |
120 | * 2^n-1 in the range 1..1023; 0: use default] | 120 | * 2^n-1 in the range 1..32767] |
121 | * @cw_max: maximum contention window [like @cw_min] | 121 | * @cw_max: maximum contention window [like @cw_min] |
122 | * @txop: maximum burst time in units of 32 usecs, 0 meaning disabled | 122 | * @txop: maximum burst time in units of 32 usecs, 0 meaning disabled |
123 | */ | 123 | */ |
124 | struct ieee80211_tx_queue_params { | 124 | struct ieee80211_tx_queue_params { |
125 | s16 aifs; | 125 | u16 txop; |
126 | u16 cw_min; | 126 | u16 cw_min; |
127 | u16 cw_max; | 127 | u16 cw_max; |
128 | u16 txop; | 128 | u8 aifs; |
129 | }; | 129 | }; |
130 | 130 | ||
131 | /** | 131 | /** |
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 61d7f81bf45e..a4bbc8d6d0e6 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -345,7 +345,7 @@ static void ieee80211_sta_wmm_params(struct net_device *dev, | |||
345 | params.aifs = pos[0] & 0x0f; | 345 | params.aifs = pos[0] & 0x0f; |
346 | params.cw_max = ecw2cw((pos[1] & 0xf0) >> 4); | 346 | params.cw_max = ecw2cw((pos[1] & 0xf0) >> 4); |
347 | params.cw_min = ecw2cw(pos[1] & 0x0f); | 347 | params.cw_min = ecw2cw(pos[1] & 0x0f); |
348 | params.txop = pos[2] | (pos[3] << 8); | 348 | params.txop = get_unaligned_le16(pos + 2); |
349 | #ifdef CONFIG_MAC80211_VERBOSE_DEBUG | 349 | #ifdef CONFIG_MAC80211_VERBOSE_DEBUG |
350 | printk(KERN_DEBUG "%s: WMM queue=%d aci=%d acm=%d aifs=%d " | 350 | printk(KERN_DEBUG "%s: WMM queue=%d aci=%d acm=%d aifs=%d " |
351 | "cWmin=%d cWmax=%d txop=%d\n", | 351 | "cWmin=%d cWmax=%d txop=%d\n", |