Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 2010 00:00:45 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r213255 - head/sys/dev/bge
Message-ID:  <201009290000.o8T00j63089678@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yongari
Date: Wed Sep 29 00:00:45 2010
New Revision: 213255
URL: http://svn.freebsd.org/changeset/base/213255

Log:
  Set the number of RX frames to receive after RX MBUF low watermark
  has reached. This reduced number of dropped frames when
  flow-control is enabled. Previously it dropped incoming frames once
  RX MBUF low watermark has reached. The value used in MAC RX MBUF
  low watermark is greater than or equal to 4 so receiving two more
  RX frames should not be a problem.
  
  Obtained from:	OpenBSD

Modified:
  head/sys/dev/bge/if_bge.c
  head/sys/dev/bge/if_bgereg.h

Modified: head/sys/dev/bge/if_bge.c
==============================================================================
--- head/sys/dev/bge/if_bge.c	Tue Sep 28 23:23:23 2010	(r213254)
+++ head/sys/dev/bge/if_bge.c	Wed Sep 29 00:00:45 2010	(r213255)
@@ -4220,6 +4220,14 @@ bge_init_locked(struct bge_softc *sc)
 	/* Turn on receiver. */
 	BGE_SETBIT(sc, BGE_RX_MODE, BGE_RXMODE_ENABLE);
 
+	/*
+	 * Set the number of good frames to receive after RX MBUF
+	 * Low Watermark has been reached. After the RX MAC receives
+	 * this number of frames, it will drop subsequent incoming
+	 * frames until the MBUF High Watermark is reached.
+	 */
+	CSR_WRITE_4(sc, BGE_MAX_RX_FRAME_LOWAT, 2);
+
 	/* Tell firmware we're alive. */
 	BGE_SETBIT(sc, BGE_MODE_CTL, BGE_MODECTL_STACKUP);
 

Modified: head/sys/dev/bge/if_bgereg.h
==============================================================================
--- head/sys/dev/bge/if_bgereg.h	Tue Sep 28 23:23:23 2010	(r213254)
+++ head/sys/dev/bge/if_bgereg.h	Wed Sep 29 00:00:45 2010	(r213255)
@@ -632,6 +632,7 @@
 #define	BGE_RX_BD_RULES_CTL15		0x04F8
 #define	BGE_RX_BD_RULES_MASKVAL15	0x04FC
 #define	BGE_RX_RULES_CFG		0x0500
+#define	BGE_MAX_RX_FRAME_LOWAT		0x0504
 #define	BGE_SERDES_CFG			0x0590
 #define	BGE_SERDES_STS			0x0594
 #define	BGE_SGDIG_CFG			0x05B0



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201009290000.o8T00j63089678>