Subject: Re: Intel 2200BG
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Frank van der Linden <fvdl@netbsd.org>
List: current-users
Date: 01/26/2005 21:17:31
On Wed, Jan 26, 2005 at 07:35:13PM +0100, Manuel Bouyer wrote:
> > It looks like it does. if_iwi.c says that the card retrieves the
> > firmware via DMA..
> 
> And it can't do scatter/gather DMA ?

Looking at the code, it looks like IWI_CB_MAXDATALEN is the maximum amount
it can DMA. It's 8191, which is more than one page on most architectures.

However, it also looks like on line 1558 of if_iwi.c, replacing
IWI_CB_MAXDATALEN by PAGE_SIZE should work to limit the chunksize
to one page (and, of course, increasing the index to segs[X].ds_addr
if needed).

That also eliminates the need for a seperate bus_dmamem_alloc-ed region;
the driver can just allocate a VM stretch and use bus_dmamap_load on it,
picking individual stretches from it.

- Frank