mwifiex: don't use IEEE80211_MAX_QUEUES
authorJohannes Berg <johannes.berg@intel.com>
Tue, 27 Mar 2012 12:07:59 +0000 (14:07 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 10 Apr 2012 18:54:04 +0000 (14:54 -0400)
IEEE80211_MAX_QUEUES is an internal mac80211 value,
it is not guaranteed to be always 4. The firmware
API in mwifiex almost certainly doesn't care about
mac80211 changing though, so mwifiex shouldn't use
this value.

Maybe it should use IEEE80211_NUM_ACS instead and
that is what I'm doing here as at least that value
will probably never change, but maybe it should
have its own define instead.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/mwifiex/fw.h
drivers/net/wireless/mwifiex/main.h

index e3b8c7062dbe251eb38715f931bbc76a7242da77..bb26114bdb96f4a7947072e194a724b92fc96a07 100644 (file)
@@ -1012,7 +1012,7 @@ struct ieee_types_wmm_parameter {
        struct ieee_types_vendor_header vend_hdr;
        u8 qos_info_bitmap;
        u8 reserved;
-       struct ieee_types_wmm_ac_parameters ac_params[IEEE80211_MAX_QUEUES];
+       struct ieee_types_wmm_ac_parameters ac_params[IEEE80211_NUM_ACS];
 } __packed;
 
 struct ieee_types_wmm_info {
@@ -1033,7 +1033,7 @@ struct ieee_types_wmm_info {
 
 struct host_cmd_ds_wmm_get_status {
        u8 queue_status_tlv[sizeof(struct mwifiex_ie_types_wmm_queue_status) *
-                             IEEE80211_MAX_QUEUES];
+                             IEEE80211_NUM_ACS];
        u8 wmm_param_tlv[sizeof(struct ieee_types_wmm_parameter) + 2];
 } __packed;
 
index 3bbe163647315d2a971d617bea7e8458030533f0..fcccf6b1373fcf6c2937efbb0e803ce1e11861d6 100644 (file)
@@ -201,10 +201,10 @@ struct mwifiex_wmm_desc {
        u32 packets_out[MAX_NUM_TID];
        /* spin lock to protect ra_list */
        spinlock_t ra_list_spinlock;
-       struct mwifiex_wmm_ac_status ac_status[IEEE80211_MAX_QUEUES];
-       enum mwifiex_wmm_ac_e ac_down_graded_vals[IEEE80211_MAX_QUEUES];
+       struct mwifiex_wmm_ac_status ac_status[IEEE80211_NUM_ACS];
+       enum mwifiex_wmm_ac_e ac_down_graded_vals[IEEE80211_NUM_ACS];
        u32 drv_pkt_delay_max;
-       u8 queue_priority[IEEE80211_MAX_QUEUES];
+       u8 queue_priority[IEEE80211_NUM_ACS];
        u32 user_pri_pkt_tx_ctrl[WMM_HIGHEST_PRIORITY + 1];     /* UP: 0 to 7 */
        /* Number of transmit packets queued */
        atomic_t tx_pkts_queued;