In the user space case of bus_dmamap_load_uio(), the calling thread is stored in uio->uio_td, in which the user's pmap can be determined.
The ARM processor, with the possible exception of the ARMv7 MPcore with snoop control unit, needs to make the caches consistent before DMA. I noticed that the routine, _bus_dmamap_sync(), copies data into the bounce buffer using current pmap. Can/should we assume the uio sent from to bus_dmamap_load_uio() is always in the same address space as thread that is executing the _bus_dmamap_sync()? --Mark Tinguely _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[email protected]"

