On Wed, Dec 03, 2008 at 05:51:30PM -0800, Edward Estabrook wrote: > From: Edward Estabrook <[EMAIL PROTECTED]> > > Here is a patch that adds the ability to dynamically allocate and use > coherent DMA > from userspace by extending the Userspace IO driver. This patch applies > against > 2.6.28-rc6. > > The gist of this implementation is to overload uio's mmap > functionality to allocate > and map a new DMA region on demand. The bus-specific DMA address as returned > by > dma_alloc_coherent is made available to userspace in the 1st long word > of the newly > created region (as well as through the conventional 'addr' file in sysfs). > > The kernel-api change is that passing an offset value of 0xFFFFF000UL > to the a uio > device's mmap operation will dynamically allocate a DMA region. This > cannot change/ > break existing behavior as the previous UIO code only allowed a maximum of 5 > mappings.
Odd formatting of your paragraphs :( Anyway, what about 64bit processors? What happens if they try to use a valid address in this range? Is this value always an "invalid" value for all arches that Linux runs on? thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
