summaryrefslogtreecommitdiff
path: root/sys/src/9/pc/etheriwl.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2015-07-10 18:50:37 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2015-07-10 18:50:37 +0200
commit34a0f4660d47cd34340fee4444af5b16ffef5d02 (patch)
tree241bec13b50c7daca897c64ffca46c4819c34a8f /sys/src/9/pc/etheriwl.c
parentb5655b7247a657bd4b590218a68ed99bbab318f6 (diff)
etheriwl: dont clear descriptors after completion
Diffstat (limited to 'sys/src/9/pc/etheriwl.c')
-rw-r--r--sys/src/9/pc/etheriwl.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/sys/src/9/pc/etheriwl.c b/sys/src/9/pc/etheriwl.c
index a5c68bf4c..e086cb54e 100644
--- a/sys/src/9/pc/etheriwl.c
+++ b/sys/src/9/pc/etheriwl.c
@@ -2240,7 +2240,7 @@ static void
receive(Ctlr *ctlr)
{
Block *b, *bb;
- uchar *d, *dd, *cc;
+ uchar *d;
RXQ *rx;
TXQ *tx;
uint hw;
@@ -2275,11 +2275,6 @@ receive(Ctlr *ctlr)
if(tx->n > 0){
bb = tx->b[idx];
tx->b[idx] = nil;
- /* paranoia: clear tx descriptors */
- dd = tx->d + idx*Tdscsize;
- cc = tx->c + idx*Tcmdsize;
- memset(dd, 0, Tdscsize);
- memset(cc, 0, Tcmdsize);
tx->n--;
wakeup(tx);
@@ -2362,13 +2357,10 @@ receive(Ctlr *ctlr)
case 197: /* rx compressed ba */
break;
}
-
- /* paranoia: clear the descriptor */
- memset(b->rp, 0, Rdscsize);
}
+ csr32w(ctlr, FhRxWptr, ((hw+Nrx-1) % Nrx) & ~7);
if(bb != nil)
freeb(bb);
- csr32w(ctlr, FhRxWptr, ((hw+Nrx-1) % Nrx) & ~7);
}
static void