On Tue, 13 Jul 2010 17:30:43 +0900 FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx> wrote: > On Tue, 13 Jul 2010 09:20:12 +0100 > Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote: > > > > Why video4linux can't use the DMA API? Doing DMA with vmalloc'ed > > > buffers is a thing that we should avoid (there are some exceptions > > > like xfs though). > > > > Vmalloc is about the only API for creating virtually linear memory areas. > > The video stuff really needs that to avoid lots of horrible special cases > > when doing buffer processing and the like. > > > > Pretty much each driver using it has a pair of functions 'rvmalloc' and > > 'rvfree' so given a proper "vmalloc_for_dma()" type interface can easily > > be switched > > We already have helper functions for DMA with vmap pages, > flush_kernel_vmap_range and invalidate_kernel_vmap_range. I'm not sure they help at all because the DMA user for these pages isn't the video driver - it's the USB layer, and the USB layer isn't specifically aware it is being passed vmap pages. Alan -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html