Subject: Re: Preliminary work on ath(4)
To: None <>
From: Bruce J.A. Nourish <>
List: current-users
Date: 08/20/2003 10:01:44
On Wed, Aug 20, 2003 at 04:32:25PM -0700, Sam Leffler wrote:
> [****ing bus_dma stuff]
> I suggest you pick a netbsd driver and understand it.

This was the technique I used on if_ath_pci.c. Most of the PCI init code
was pulled from if_fxp_pci.c and then tweaked. The MI part of that driver
is a whole lot bigger and I didn't really fancy digging around in it, but
I guess I'll have to. 

> I think you want to do away with taskqueues under netbsd.  They are used to 
> defer interrupt processing from the ISR to another context.  I believe the 
> netbsd model is to do this processing directly in the interrupt context so 
> just call the taskqueue processing routine directly from ath_intr and fixup 
> the logic to conform.
> Likewise ignore mutex's and think spl's instead. 

Aha. I was thinking that mutex == lock. I see how I was wrong. On a 
related note, is FreeBSD-current reentrant?

> In the end you're likely to have a very different driver.  But when it 
> works I can steal it back for use under FreeBSD -stable! :)

:-) Thanks for your help!

Bruce J.A. Nourish <>