Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Sep 1996 12:40:09 +0100 (BST)
From:      Doug Rabson <dfr@render.com>
To:        Guido van Rooij <Guido.vanRooij@nl.cis.philips.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: vx device broken in 21.1.5?
Message-ID:  <Pine.BSF.3.95.960913123758.4396V-100000@minnow.render.com>
In-Reply-To: <199609130900.LAA03640@spooky.lss.cp.philips.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 13 Sep 1996, Guido van Rooij wrote:

> I just ported the current Open/NetBSD if_vx driver to FreeBSD 2.1.5 and
> I am seeeing the exact same problems.
> 
> I've ben assured that these drivers do work.
> 
> What happens in FreeBSD is when vxstart() is called and there is not
> enough space free in the fifos, a treshold is set so the board will
> give an interrupt when the amount of free space in the fifos pass
> the treshold. 
> 
> Unfortunately, there is *never* one single interrupts given for this event.
> It just doesn't happen. Therefor OACTIVE stays set.
> 
> Accoring to me, everything is done by the book (read: the OpenBSD driver):
> RD_0_MASK and INTR_MASK both contain TX_AVAIL at the
> interrupt time so TX_AVAIL should be set. I also printed the actuial free
> space in the interrupts handler. It started lower then the treshold and 
> ended higher but there was *no* interrupt given where the status had the
> TX_AVAIL flag set.
> 
> Any hints?

No idea.  Sounds like busted hardware to me.  You could always try to
patch it up with some kind of timeout instead of waiting for TX_AVAIL.
Surely the card should at least deliver a transmit-complete interrupt for
the packet which was in the fifo.  Maybe you could use that to restart
transmission.

--
Doug Rabson, Microsoft RenderMorphics Ltd.	Mail:  dfr@render.com
						Phone: +44 171 734 3761
						FAX:   +44 171 734 6426




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95.960913123758.4396V-100000>