mwifiex: CPU mips optimization with NO_PKT_PRIO_TID
If we go through the entire for loop in mwifiex_wmm_get_highest_priolist_ptr() and don't find any packets, set highest_queued_prio to NO_PKT_PRIO_TID (< LOW_PRIO_TID). Signed-off-by: Marc Yang <yangyang@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
9396814787
commit
17e8cec875
|
@ -202,6 +202,7 @@ struct mwifiex_tid_tbl {
|
||||||
#define WMM_HIGHEST_PRIORITY 7
|
#define WMM_HIGHEST_PRIORITY 7
|
||||||
#define HIGH_PRIO_TID 7
|
#define HIGH_PRIO_TID 7
|
||||||
#define LOW_PRIO_TID 0
|
#define LOW_PRIO_TID 0
|
||||||
|
#define NO_PKT_PRIO_TID (-1)
|
||||||
|
|
||||||
struct mwifiex_wmm_desc {
|
struct mwifiex_wmm_desc {
|
||||||
struct mwifiex_tid_tbl tid_tbl_ptr[MAX_NUM_TID];
|
struct mwifiex_tid_tbl tid_tbl_ptr[MAX_NUM_TID];
|
||||||
|
|
|
@ -946,6 +946,12 @@ mwifiex_wmm_get_highest_priolist_ptr(struct mwifiex_adapter *adapter,
|
||||||
} while (ptr != head);
|
} while (ptr != head);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* No packet at any TID for this priv. Mark as such
|
||||||
|
* to skip checking TIDs for this priv (until pkt is
|
||||||
|
* added).
|
||||||
|
*/
|
||||||
|
atomic_set(hqp, NO_PKT_PRIO_TID);
|
||||||
|
|
||||||
/* Get next bss priority node */
|
/* Get next bss priority node */
|
||||||
bssprio_node = list_first_entry(&bssprio_node->list,
|
bssprio_node = list_first_entry(&bssprio_node->list,
|
||||||
struct mwifiex_bss_prio_node,
|
struct mwifiex_bss_prio_node,
|
||||||
|
|
Loading…
Reference in New Issue