Subject: Re: how to do without function bus_dmamap_load_uio() ?
To: Esha <firstname.lastname@example.org>
From: Jason Thorpe <email@example.com>
Date: 01/06/1999 09:35:41
On Wed, 06 Jan 1999 18:41:03 +0530
Esha <firstname.lastname@example.org> wrote:
> If the bus_dmamap_load_uio() is not there in 1.3.3 then is the
> following way correct ?
> call bus_dmamem_alloc()
> call bus_dmamem_map()
> pass the dma-safe address to the user through mmap entry point.
> Is the above idea correct ?
That is certainly one way you could do it, yes. Note, memory mapped into
DMA space with bus_dmamap_load_uio() is not necessarily DMA-safe; it's
whatever random memory the application happened to have. So, the operations
are not really equivalent, but the latter will work fine, but may just be
less convenient for you.
(DMA-mapping non-DMA-safe memory happens all the time, BTW; it just may need
special handling by the bus_dma backends...)
Jason R. Thorpe email@example.com
NASA Ames Research Center Home: +1 408 866 1912
NAS: M/S 258-5 Work: +1 650 604 0935
Moffett Field, CA 94035 Pager: +1 650 940 5942