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 e3b8c70..bb26114 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 3bbe163..fcccf6b 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;