Date: Mon, 20 Nov 2006 20:54:12 -0500 From: "Mark Stolp" <mstolp@teltronics.com> To: <freebsd-hardware@freebsd.org> Subject: RE: rtl8139D Message-ID: <11C803742910E84E9CDBFD344773B81401B9D7FF@srqech02.teltronics.com>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. ------_=_NextPart_001_01C70D0F.F14D9E55 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable I've ported the following version of the 8139 driver to another proprietary OS that runs on a Pentium PC (originally written by Intel): =20 * $FreeBSD: src/sys/pci/if_rl.c,v 1.38.2.7 2001/07/19 18:33:07 wpaul Exp $ =20 I can get it to run in polled mode but when I try to run in interrupt mode after about 15-20 transmit packets the transmit interrupt stops firing. After a while the receive interrupt stops firing also. I tried to add recovery when the transmit queue is full (I'm only using 4 packets at this point in time) but that doesn't help. I've checked the 8139 IMR and also checked the PC ports to make sure interrupts are being disabled. I also checked my Interrupt Descriptor Table to make sure the OS isn't clobbering it. Can you think of a reason why resetting and restarting the 8139 would not allow interrupts to start up again? =20 Any ideas would be greatly appreciated. I've been struggling with this for several weeks now. =20 I've attached my source code but I don't know if you'll be able to follow it. =20 Mark Stolp =20 ------_=_NextPart_001_01C70D0F.F14D9E55--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?11C803742910E84E9CDBFD344773B81401B9D7FF>