[lkml]   [2011]   [May]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [Linaro-mm-sig] [RFC] ARM DMA mapping TODO, v1
On Tuesday 03 May 2011, Laurent Pinchart wrote:
> I wish it was that simple.
> The OMAP4 ISS (Imaging Subsystem) has no IOMMU, but it can use the OMAP4 DMM
> (Dynamic Memory Manager) which acts as a memory remapper. Basically (if my
> understanding is correct), the ISS is configured to read/write from/to
> physical addresses. If those physical addresses are in the DMM address range,
> the DMM translates the accesses to physical accesses, acting as an IOMMU.
> The ISS can thus write to physically contiguous memory directly, or to
> scattered physical pages through the DMM. Whether an IOMMU (or, to be correct
> in this case, the IOMMU-like DMM) needs to handle the DMA is a per-buffer
> decision, not a per-device decision.

This doesn't sound too unusual for IOMMU implementations. A lot of time
you can access e.g. low memory using a direct mapping but you need the
IOMMU code for highmem. I've also seen a machine where a linear mapping
exists for all the memory in strict ordering, while you can use relaxed
DMA ordering when you go through the IOMMU address range. If we manage
to come up with a common dma-mapping API implementation for all IOMMUs,
it certainly needs to handle that case as well.


 \ /
  Last update: 2011-05-03 17:33    [W:0.135 / U:2.096 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site