summaryrefslogtreecommitdiffstats
path: root/sys/pci/if_xlreg.h
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>1998-09-25 17:34:19 +0000
committerwpaul <wpaul@FreeBSD.org>1998-09-25 17:34:19 +0000
commit8b137e029a5d733a43c935be787432fc41c80a47 (patch)
tree70fb1fd85e358299272b6316159b56edbb9bc3a4 /sys/pci/if_xlreg.h
parent9f5a84eacbe39a2cd5ee3eb874ef0a194418484c (diff)
downloadFreeBSD-src-8b137e029a5d733a43c935be787432fc41c80a47.zip
FreeBSD-src-8b137e029a5d733a43c935be787432fc41c80a47.tar.gz
Apply patch graciously provided by Jason Wright <jason@thought.net> from
the OpenBSD group to fix a problem with the default ifmedia not being set properly in some cases with a 3c905B, leading to a panic in ifmedia_set(). Also apply a patch to force the transmit start routine to check the transmitter to make sure it isn't wedged if the outbound tx queue appears full. This seems to cure some problems with 'watchdog timeout' errors cropping up in some cases. I tried to do this before by checking for the IFF_OACTIVE flag on entry to xl_start(), but if the IFF_OACTIVE flag is set, ether_output() won't even call xl_start(). It should work now. Lastly, increase the size of the TX queue from 10 descriptors to 16 to hopefully make it less likely that the TX queue will fill up.
Diffstat (limited to 'sys/pci/if_xlreg.h')
-rw-r--r--sys/pci/if_xlreg.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/pci/if_xlreg.h b/sys/pci/if_xlreg.h
index 4a6756c..28b3c4e 100644
--- a/sys/pci/if_xlreg.h
+++ b/sys/pci/if_xlreg.h
@@ -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_xlreg.h,v 1.15 1998/09/04 14:43:56 wpaul Exp $
+ * $Id: if_xlreg.h,v 1.4 1998/09/04 16:22:15 wpaul Exp $
*/
#define XL_EE_READ 0x0080 /* read, 5 bit address */
@@ -437,7 +437,7 @@ struct xl_list_onefrag {
#define XL_MAXFRAGS 63
#define XL_RX_LIST_CNT 16
-#define XL_TX_LIST_CNT 10
+#define XL_TX_LIST_CNT 16
#define XL_MIN_FRAMELEN 60
struct xl_list_data {
OpenPOWER on IntegriCloud