From 1cdca4d5817d287c36611e6120042a6057df7e0e Mon Sep 17 00:00:00 2001 From: Christian Lamparter Date: Mon, 3 Jan 2011 22:22:51 +0100 Subject: [PATCH] carl9170 firmware: fix CAB queue delivery This patch fixes a problem were frames - destined for after-DTIM delivery - would just skip the waiting stage. However, DELAYED_TX is not enabled by default. So, only the few people who use a custom, non-standard firmware will be affected. Signed-off-by: Christian Lamparter --- carlfw/src/wlan.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/carlfw/src/wlan.c b/carlfw/src/wlan.c index 8c8c7a8..36d4b86 100644 --- a/carlfw/src/wlan.c +++ b/carlfw/src/wlan.c @@ -426,13 +426,6 @@ void __hot wlan_tx(struct dma_desc *desc) super->s.cnt = 1; hide_super(desc); -#ifdef CONFIG_CARL9170FW_DELAYED_TX - if (!queue_empty(&fw.wlan.tx_queue[super->s.queue])) { - dma_put(&fw.wlan.tx_delay[super->s.queue], desc); - return; - } -#endif /* CONFIG_CARL9170FW_DELAYED_TX */ - #ifdef CONFIG_CARL9170FW_CAB_QUEUE if (unlikely(super->s.cab)) { fw.wlan.cab_queue_len[super->s.vif_id]++; @@ -441,6 +434,13 @@ void __hot wlan_tx(struct dma_desc *desc) } #endif /* CONFIG_CARL9170FW_CAB_QUEUE */ +#ifdef CONFIG_CARL9170FW_DELAYED_TX + if (!queue_empty(&fw.wlan.tx_queue[super->s.queue])) { + dma_put(&fw.wlan.tx_delay[super->s.queue], desc); + return; + } +#endif /* CONFIG_CARL9170FW_DELAYED_TX */ + _wlan_tx(desc); } -- 2.31.1