diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-11-17 03:54:33 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-11-17 03:54:33 +0000 |
commit | 26b6b5bdd1ff0e3fa1f000aedccf9c0ea4f75233 (patch) | |
tree | 5ad00477caf932c45de10d4e6a317682ecd5d509 /package/broadcom-wl/src/kmod/linux_osl.c | |
parent | 9ae939ed2f8edf6ecd51baf0f4e8aa2adbaec67d (diff) |
upgrade to broadcom wl driver version 4.80.53.0 (from wrt350n release)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@5546 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/broadcom-wl/src/kmod/linux_osl.c')
-rw-r--r-- | package/broadcom-wl/src/kmod/linux_osl.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/package/broadcom-wl/src/kmod/linux_osl.c b/package/broadcom-wl/src/kmod/linux_osl.c index d70296103..24fd77dae 100644 --- a/package/broadcom-wl/src/kmod/linux_osl.c +++ b/package/broadcom-wl/src/kmod/linux_osl.c @@ -159,13 +159,18 @@ osl_pktget(osl_t *osh, uint len, bool send) return ((void*) skb); } +typedef void (*pktfree_cb_fn_t)(void *ctx, void *pkt, uint16 status); /* Free the driver packet. Free the tag if present */ void -osl_pktfree(osl_t *osh, void *p) +osl_pktfree(osl_t *osh, void *p, bool send) { struct sk_buff *skb, *nskb; + pktfree_cb_fn_t tx_fn = osh->pub.tx_fn; skb = (struct sk_buff*) p; + + if (send && tx_fn) + tx_fn(osh->pub.tx_ctx, p, 0); /* perversion: we use skb->next to chain multi-skb packets */ while (skb) { |