提交 a922a4b7 编写于 作者: M Mike McCormack 提交者: Greg Kroah-Hartman

Staging: rtl8192e: Clean formatting in rtl8192_hard_start_xmit()

Signed-off-by: NMike McCormack <mikem@ring3k.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 1f1f19ff
无相关合并请求
......@@ -1048,43 +1048,42 @@ static int rtl8192_hard_start_xmit(struct sk_buff *skb,struct net_device *dev)
static void rtl8192_tx_isr(struct net_device *dev, int prio)
{
struct r8192_priv *priv = (struct r8192_priv *)ieee80211_priv(dev);
struct rtl8192_tx_ring *ring = &priv->tx_ring[prio];
while (skb_queue_len(&ring->queue)) {
tx_desc_819x_pci *entry = &ring->desc[ring->idx];
struct sk_buff *skb;
struct r8192_priv *priv = (struct r8192_priv *)ieee80211_priv(dev);
struct rtl8192_tx_ring *ring = &priv->tx_ring[prio];
/* beacon packet will only use the first descriptor defaultly,
* and the OWN may not be cleared by the hardware
* */
if(prio != BEACON_QUEUE) {
if(entry->OWN)
return;
ring->idx = (ring->idx + 1) % ring->entries;
}
while (skb_queue_len(&ring->queue)) {
tx_desc_819x_pci *entry = &ring->desc[ring->idx];
struct sk_buff *skb;
skb = __skb_dequeue(&ring->queue);
pci_unmap_single(priv->pdev, le32_to_cpu(entry->TxBuffAddr),
skb->len, PCI_DMA_TODEVICE);
/*
* beacon packet will only use the first descriptor defaultly,
* and the OWN may not be cleared by the hardware
*/
if (prio != BEACON_QUEUE) {
if (entry->OWN)
return;
ring->idx = (ring->idx + 1) % ring->entries;
}
kfree_skb(skb);
}
if (prio == MGNT_QUEUE){
if (priv->ieee80211->ack_tx_to_ieee){
if (rtl8192_is_tx_queue_empty(dev)){
priv->ieee80211->ack_tx_to_ieee = 0;
ieee80211_ps_tx_ack(priv->ieee80211, 1);
}
}
}
skb = __skb_dequeue(&ring->queue);
pci_unmap_single(priv->pdev, le32_to_cpu(entry->TxBuffAddr),
skb->len, PCI_DMA_TODEVICE);
if(prio != BEACON_QUEUE) {
/* try to deal with the pending packets */
tasklet_schedule(&priv->irq_tx_tasklet);
}
kfree_skb(skb);
}
if (prio == MGNT_QUEUE) {
if (priv->ieee80211->ack_tx_to_ieee) {
if (rtl8192_is_tx_queue_empty(dev)) {
priv->ieee80211->ack_tx_to_ieee = 0;
ieee80211_ps_tx_ack(priv->ieee80211, 1);
}
}
}
if (prio != BEACON_QUEUE) {
/* try to deal with the pending packets */
tasklet_schedule(&priv->irq_tx_tasklet);
}
}
static void rtl8192_stop_beacon(struct net_device *dev)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册
反馈
建议
客服 返回
顶部