IOMMU DMA-mapping API for arm64 ?
Will Deacon
will.deacon at arm.com
Thu Feb 6 05:07:34 EST 2014
On Thu, Feb 06, 2014 at 05:05:45AM +0000, Ritesh Harjani wrote:
> Hi everyone,
>
> I tried looking for IOMMU support in ARM64 but what I was able to see is
> only swiotlb is currently supported.
>
> Based on my understanding for IOMMU support, we need DMA-MAPPING API to
> have IOMMU ops field, similar to what is present in arm32. I could see
> the iommu field added in dev_archdata in below mentioned patch
> (arch/arm64/include/asm/device.h), but there is no ops field in
> arch/arm64/mm/dma-mapping.c ?
Correct, there needs to be a way to plumb dma-mapping into the IOMMU layer.
> I also saw one mail discussion between you guys on what is the best place
> for adding iommu support in ARM64, but couldn't see any followed up
> patches for the same.
>
> Please tell us the current status/updates on the same. Your feedback will
> be greatly appreciated.
There are a few related topics here:
(1) Moving a bunch of the boilerplate IOMMU code into a common place
(iommu-helper.c or similar). This is because we don't want to blindly
duplicate common code across architectures.
(2) Standardising at least part of a system topology description in
device-tree, so that we can deal with different combinations of
{coherent,nocoherent} device {with,without} a series of IOMMUs.
Once both of those are sorted, the actual plumbing should be fairly
straightforward.
Will
More information about the linux-arm-kernel
mailing list