Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Feb 2002 13:35:13 +1100 (EST)
From:      Iain Templeton <iain@research.canon.com.au>
To:        mike varga <mike.varga@cavium.com>
Cc:        freebsd-arch@freebsd.org
Subject:   Re: bus_dma_load_uio() function
Message-ID:  <Pine.LNX.4.10.10202131331220.22737-100000@blow.research.canon.com.au>
In-Reply-To: <000701c1b42e$7835eda0$b210a8c0@netscreen5>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 12 Feb 2002, mike varga wrote:

> Yes I did, but thank you 
> for replying.
> 
> My question essentially 
> boils down to,"How do you
> map and lock user pages (buffers)
> for use in a driver that wants
> to do a DMA directly 
> from/to them.
> 
> It removes unnecessary 
> copies.
> 

We use vm_map_user_pageable() for our device driver, seems to work. We
get the physical address as part of the callback for bus_dmamap_load().

We manage the data in the uio struct ourselves, as the data has some
extra header information that needs to be processed.

Iain


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.10.10202131331220.22737-100000>