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