summaryrefslogtreecommitdiffstats
path: root/sys/pci/if_tl.c
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>1999-05-06 15:32:52 +0000
committerwpaul <wpaul@FreeBSD.org>1999-05-06 15:32:52 +0000
commit8b3db0e8228985fa682b3e2e72ab560619831fbc (patch)
treeb1e9c98fdbbad66727def9852b5bb7c672d71f45 /sys/pci/if_tl.c
parent14f270d531fd127b5de0e208cc9d44257284ec35 (diff)
downloadFreeBSD-src-8b3db0e8228985fa682b3e2e72ab560619831fbc.zip
FreeBSD-src-8b3db0e8228985fa682b3e2e72ab560619831fbc.tar.gz
Tweak the Macronix driver to hopefully make it more reliable:
- Change to the same transmit scheme as the PNIC driver. - Dynamically set the cache alignment, and set burst size the same as the PNIC driver in mx_init(). - Enable 'store and forward' mode by default. This is the slowest option and it does reduce 100Mbps performance somewhat, but it's the most reliable setting I can find. I'm more interested in having the driver work reliably than trying to squeeze the best performance out of it. The reason I'm doing this is that on *some* systems you may see a lot of transmit underruns (which I can't explain: these are *fast* test systems) and these errors seem to cause unusual and decidedly non-tulip-like behavior. In normal 10Mbps mode, performance is fine (you can easily saturate a 10Mbps link). Also tweak some of the other drivers: - Increase the size of the TX ring for the Winbond, ASIX, VIA Rhine and PNIC drivers. - Set a larger value for ifq_maxlen in the ThunderLAN driver. The setting of TL_TX_LIST_CNT - 1 is too low (the ThunderLAN driver only allocates 20 transmit descriptors, and I don't want to fiddle with that now because the ThunderLAN's descriptor structure is an oddball size compared to the others).
Diffstat (limited to 'sys/pci/if_tl.c')
-rw-r--r--sys/pci/if_tl.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/pci/if_tl.c b/sys/pci/if_tl.c
index 16446fd..4ff91d5 100644
--- a/sys/pci/if_tl.c
+++ b/sys/pci/if_tl.c
@@ -29,7 +29,7 @@
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: if_tl.c,v 1.28 1999/03/31 04:04:14 wpaul Exp $
+ * $Id: if_tl.c,v 1.29 1999/04/24 20:14:01 peter Exp $
*/
/*
@@ -221,7 +221,7 @@
#if !defined(lint)
static const char rcsid[] =
- "$Id: if_tl.c,v 1.28 1999/03/31 04:04:14 wpaul Exp $";
+ "$Id: if_tl.c,v 1.29 1999/04/24 20:14:01 peter Exp $";
#endif
/*
@@ -1715,7 +1715,7 @@ tl_attach(config_id, unit)
ifp->if_watchdog = tl_watchdog;
ifp->if_init = tl_init;
ifp->if_mtu = ETHERMTU;
- ifp->if_snd.ifq_maxlen = TL_TX_LIST_CNT - 1;
+ ifp->if_snd.ifq_maxlen = IFQ_MAXLEN;
callout_handle_init(&sc->tl_stat_ch);
/* Reset the adapter again. */
OpenPOWER on IntegriCloud