summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/brcm80211/brcmsmac/dma.h
diff options
context:
space:
mode:
authorArend van Spriel <arend@broadcom.com>2011-10-21 16:16:31 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-11-08 15:54:23 -0500
commit3fd172d30b59d9b73cb35ab263a1f0173dae974c (patch)
tree1d4af5d073bdb1dc62a4182544487f047bd106c2 /drivers/net/wireless/brcm80211/brcmsmac/dma.h
parent81d2e2d148c2263f29a971d027f04c6e2c87e0d2 (diff)
downloadlinux-3fd172d30b59d9b73cb35ab263a1f0173dae974c.tar.gz
linux-3fd172d30b59d9b73cb35ab263a1f0173dae974c.tar.bz2
linux-3fd172d30b59d9b73cb35ab263a1f0173dae974c.zip
brcm80211: smac: use sk_buff list for handling frames in receive path
In the receive path the frames are obtained from the dma using multiple sk_buff that were linked using the skb next pointer. This has been changed and it now used sk_buff lists and skb_queue functions instead. Reported-by: Johannes Berg <johannes@sipsolutions.net> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Reviewed-by: Alwin Beukers <alwin@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmsmac/dma.h')
-rw-r--r--drivers/net/wireless/brcm80211/brcmsmac/dma.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/dma.h b/drivers/net/wireless/brcm80211/brcmsmac/dma.h
index ebc5bc546f3b..d317c7c12f91 100644
--- a/drivers/net/wireless/brcm80211/brcmsmac/dma.h
+++ b/drivers/net/wireless/brcm80211/brcmsmac/dma.h
@@ -18,6 +18,7 @@
#define _BRCM_DMA_H_
#include <linux/delay.h>
+#include <linux/skbuff.h>
#include "types.h" /* forward structure declarations */
/* map/unmap direction */
@@ -80,7 +81,7 @@ extern struct dma_pub *dma_attach(char *name, struct si_pub *sih,
uint nrxpost, uint rxoffset, uint *msg_level);
void dma_rxinit(struct dma_pub *pub);
-struct sk_buff *dma_rx(struct dma_pub *pub);
+int dma_rx(struct dma_pub *pub, struct sk_buff_head *skb_list);
bool dma_rxfill(struct dma_pub *pub);
bool dma_rxreset(struct dma_pub *pub);
bool dma_txreset(struct dma_pub *pub);