mac80211: indicate admission control in TX queue parameters
authorAlexander Bondar <alexander.bondar@intel.com>
Sun, 7 Apr 2013 06:53:30 +0000 (09:53 +0300)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 22 Apr 2013 13:33:06 +0000 (15:33 +0200)
Some driver implementations need to know whether mandatory
admission control is required by the AP for some ACs. Add
a parameter to the TX queue parameters indicating this.

As there's currently no support for admission control in
mac80211's AP implementation, it's only ever set for the
client implementation.

Signed-off-by: Alexander Bondar <alexander.bondar@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
include/net/mac80211.h
net/mac80211/mlme.c

index 4f693a5..b77d57a 100644 (file)
@@ -128,6 +128,7 @@ enum ieee80211_ac_numbers {
  *     2^n-1 in the range 1..32767]
  * @cw_max: maximum contention window [like @cw_min]
  * @txop: maximum burst time in units of 32 usecs, 0 meaning disabled
+ * @acm: is mandatory admission control required for the access category
  * @uapsd: is U-APSD mode enabled for the queue
  */
 struct ieee80211_tx_queue_params {
@@ -135,6 +136,7 @@ struct ieee80211_tx_queue_params {
        u16 cw_min;
        u16 cw_max;
        u8 aifs;
+       bool acm;
        bool uapsd;
 };
 
index f7beb12..13bb814 100644 (file)
@@ -1661,6 +1661,7 @@ static bool ieee80211_sta_wmm_params(struct ieee80211_local *local,
                params.cw_max = ecw2cw((pos[1] & 0xf0) >> 4);
                params.cw_min = ecw2cw(pos[1] & 0x0f);
                params.txop = get_unaligned_le16(pos + 2);
+               params.acm = acm;
                params.uapsd = uapsd;
 
                mlme_dbg(sdata,