Hello,
On Monday, April 18, 2011 4:16 PM Arnd Bergmann wrote:
On Monday 18 April 2011, Marek Szyprowski wrote:
quoted
From: Andrzej Pietrasiewicz <redacted>
This patch adds new videobuf2 memory allocator dedicated to devices that
supports IOMMU DMA mappings. A device with IOMMU module and a driver
with include/iommu.h compatible interface is required. This allocator
aquires memory with standard alloc_page() call and doesn't suffer from
memory fragmentation issues. The allocator support following page sizes:
4KiB, 64KiB, 1MiB and 16MiB to reduce iommu translation overhead.
My feeling is that this is not the right abstraction. Why can't you
just implement the regular dma-mapping.h interfaces for your IOMMU
so that the videobuf code can use the existing allocators?
I'm not really sure which existing videobuf2 allocators might transparently
support IOMMU interface yet
Do you think that all iommu operations can be hidden behind dma_map_single
and dma_unmap_single?
Best regards
--
Marek Szyprowski
Samsung Poland R&D Center