mirror of
https://github.com/torvalds/linux.git
synced 2026-10-07 05:31:08 -04:00
iwlegacy: small refactoring of il_{stop,wake}_queue
Tested-by: Jake Edge <[email protected]> Signed-off-by: Stanislaw Gruszka <[email protected]> Signed-off-by: John W. Linville <[email protected]>
This commit is contained in:
1 parent
0967e01e8e
commit
42ce8943e1
1 file changed
+15
-4
@@ -2256,6 +2256,19 @@ il_set_swq_id(struct il_tx_queue *txq, u8 ac, u8 hwq)
|
||||
txq->swq_id = (hwq << 2) | ac;
|
||||
}
|
||||
|
||||
static inline void
|
||||
_il_wake_queue(struct il_priv *il, u8 ac)
|
||||
{
|
||||
if (atomic_dec_return(&il->queue_stop_count[ac]) <= 0)
|
||||
ieee80211_wake_queue(il->hw, ac);
|
||||
}
|
||||
|
||||
static inline void
|
||||
_il_stop_queue(struct il_priv *il, u8 ac)
|
||||
{
|
||||
if (atomic_inc_return(&il->queue_stop_count[ac]) > 0)
|
||||
ieee80211_stop_queue(il->hw, ac);
|
||||
}
|
||||
static inline void
|
||||
il_wake_queue(struct il_priv *il, struct il_tx_queue *txq)
|
||||
{
|
||||
@@ -2264,8 +2277,7 @@ il_wake_queue(struct il_priv *il, struct il_tx_queue *txq)
|
||||
u8 hwq = (queue >> 2) & 0x1f;
|
||||
|
||||
if (test_and_clear_bit(hwq, il->queue_stopped))
|
||||
if (atomic_dec_return(&il->queue_stop_count[ac]) <= 0)
|
||||
ieee80211_wake_queue(il->hw, ac);
|
||||
_il_wake_queue(il, ac);
|
||||
}
|
||||
|
||||
static inline void
|
||||
@@ -2276,8 +2288,7 @@ il_stop_queue(struct il_priv *il, struct il_tx_queue *txq)
|
||||
u8 hwq = (queue >> 2) & 0x1f;
|
||||
|
||||
if (!test_and_set_bit(hwq, il->queue_stopped))
|
||||
if (atomic_inc_return(&il->queue_stop_count[ac]) > 0)
|
||||
ieee80211_stop_queue(il->hw, ac);
|
||||
_il_stop_queue(il, ac);
|
||||
}
|
||||
|
||||
#ifdef ieee80211_stop_queue
|
||||
|
||||
Reference in new issue
Block a user