Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/ic Bump the number of Tx DMA segments from 7 to 15 (...



details:   https://anonhg.NetBSD.org/src/rev/ff2452fe029a
branches:  trunk
changeset: 526378:ff2452fe029a
user:      thorpej <thorpej%NetBSD.org@localhost>
date:      Fri May 03 00:04:07 2002 +0000

description:
Bump the number of Tx DMA segments from 7 to 15 (the zero-copy socket
code sometimes sees more than 7).

diffstat:

 sys/dev/ic/aic6915.c    |   6 +++---
 sys/dev/ic/aic6915reg.h |  18 +++++++++---------
 2 files changed, 12 insertions(+), 12 deletions(-)

diffs (78 lines):

diff -r 6310c4f8ebb9 -r ff2452fe029a sys/dev/ic/aic6915.c
--- a/sys/dev/ic/aic6915.c      Thu May 02 23:04:31 2002 +0000
+++ b/sys/dev/ic/aic6915.c      Fri May 03 00:04:07 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: aic6915.c,v 1.5 2001/11/13 13:14:33 lukem Exp $        */
+/*     $NetBSD: aic6915.c,v 1.6 2002/05/03 00:04:07 thorpej Exp $      */
 
 /*-
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -42,7 +42,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: aic6915.c,v 1.5 2001/11/13 13:14:33 lukem Exp $");
+__KERNEL_RCSID(0, "$NetBSD: aic6915.c,v 1.6 2002/05/03 00:04:07 thorpej Exp $");
 
 #include "bpfilter.h"
 
@@ -1028,7 +1028,7 @@
         */
        sc->sc_TxDescQueueCtrl = TDQC_SkipLength(0) |
            TDQC_TxDmaBurstSize(4) |    /* default */
-           TDQC_MinFrameSpacing(2) |   /* 64 bytes */
+           TDQC_MinFrameSpacing(3) |   /* 128 bytes */
            TDQC_TxDescType(0);
        sf_funcreg_write(sc, SF_TxDescQueueCtrl,
            sc->sc_TxDescQueueCtrl |
diff -r 6310c4f8ebb9 -r ff2452fe029a sys/dev/ic/aic6915reg.h
--- a/sys/dev/ic/aic6915reg.h   Thu May 02 23:04:31 2002 +0000
+++ b/sys/dev/ic/aic6915reg.h   Fri May 03 00:04:07 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: aic6915reg.h,v 1.1 2001/06/18 22:05:36 thorpej Exp $   */
+/*     $NetBSD: aic6915reg.h,v 1.2 2002/05/03 00:04:07 thorpej Exp $   */
 
 /*-
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -144,13 +144,13 @@
  * Number of transmit buffer fragments we use.  This is arbitrary, but
  * we choose it carefully; see blow.
  */
-#define        SF_NTXFRAGS             7
+#define        SF_NTXFRAGS             15
 
 /*
  * Type 0, 32-bit addressing mode (Frame Descriptor) Transmit Descriptor
  *
- * NOTE: The total length of this structure is: 8 + (7 * 8) == 64
- * This means 8 Tx indices per Type 0 descriptor.  This is important later
+ * NOTE: The total length of this structure is: 8 + (15 * 8) == 128
+ * This means 16 Tx indices per Type 0 descriptor.  This is important later
  * on; see below.
  */
 struct sf_txdesc0 {
@@ -223,19 +223,19 @@
 
 /*
  * The Tx indices are in units of 8 bytes, and since we are using
- * Tx descriptors that are 64 bytes long, we need to divide by 8
+ * Tx descriptors that are 128 bytes long, we need to divide by 16
  * to get the actual index that we care about.
  */
-#define        SF_TXDINDEX_TO_HOST(x)          ((x) >> 3)
-#define        SF_TXDINDEX_TO_CHIP(x)          ((x) << 3)
+#define        SF_TXDINDEX_TO_HOST(x)          ((x) >> 4)
+#define        SF_TXDINDEX_TO_CHIP(x)          ((x) << 4)
 
 /*
  * To make matters worse, the manual lies about the indices in the
  * completion queue entires.  It claims they are in 8-byte units,
  * but they're actually *BYTES*, which means we need to divide by
- * 64 to get the actual index.
+ * 128 to get the actual index.
  */
-#define        SF_TCD_INDEX_TO_HOST(x)         ((x) >> 6)
+#define        SF_TCD_INDEX_TO_HOST(x)         ((x) >> 7)
 
 /*
  * PCI configuration space addresses.



Home | Main Index | Thread Index | Old Index