bcm4400 driver and Dell 8500

Stuart Walsh stu at ipng.org.uk
Thu Aug 28 01:28:40 PDT 2003


(apologies for the large cc list, im only subbed to -mobile so not sure
who is where)

On Thu Aug 28, 08:21P +0100, Duncan Barclay wrote:
> From: "Kenneth D. Merry" <ken at kdm.org>
> 
> > > This is a little loop that waits for the card to finish DMAing a packet.
> There
> > > should be a DELAY(1) in there. But it may be commented out.
> >
> > That's bad...in general the chip should DMA the packet and then update the
> > consumer index and generate an interrupt.  I don't know how this
> particular
> > chip works, though.  The DELAY is commented out.
> 
> Unfortunately I don't know how the chips works wither. This method comes
> from the drivers I used as a reference. I have recoded the loop a little so
> it doesn't DELAY and I've never had a timeout from it.
> 

That is how this chip works.  It rxes a packet, prepends an rxheader to
it, DMAs it and then updates the index and generates an interrupt.  If
it reaches the last descriptor(marked by an end of table flag) it resets it 0.
The chip does have a 'lazy rx' mode which can be set to interrupt after a 
certain amount of frames or a certain amount of data.

These problems may or may not mystically disappear when I finish merging
Duncan and I's drivers, but I wouldn't hold your breath. :)

Regards,

Stuart


More information about the freebsd-hackers mailing list