Skip to content

Implement SMMU passthrough using the default domain

Sricharan linux-arm-kernel linux-iommu 1 version New

Get series with b4
b4 am '[email protected]'

Versions newest first

  1. v1 Latest0 of 5 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 5 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/5] Implement SMMU passthrough using the default domain

Hi Will,

Quoted 8 lines

Hi all,

A number of people have expressed interest in having the SMMU come up in a passthrough configuration, and then allow subsequent translation for things such as VFIO. Rather than do this in each SMMU driver, it's much cleaner to allow the default domain to be configured to be something other than DMA.

Quoted 8 lines

This patch series implements a command-line option to configure the default domain type. Currently, it supports "dma" and "identity" which is sufficient for the passthrough use-case.

Tested on an ARM fastmodel.

All feedback welcome,

Thanks for this series. We had a case with the GPU.
The GPU's iommu was setup by kernel and the GPU
also does dynamic updates for on-the-fly switching between process pagetables. GPU driver was not using DMA domain and the GPU's firmware was always expecting to run out of contextbank
'0' (although not correct) , which was not the case after the DMA domain
was made default as '0' was getting allocated for DMA domain and there were concerns about reusing the DMA domain as well.
Now with this series, looks there is an way out of that that can be tried.

So should the default domain not be per device specific selectable ?

Regards,
Sricharan

Quoted 26 lines

Will

--->8

Will Deacon (5):
iommu/arm-smmu: Restrict domain attributes to UNMANAGED domains iommu/arm-smmu: Install bypass S2CRs for IOMMU_DOMAIN_IDENTITY domains iommu/arm-smmu-v3: Install bypass STEs for IOMMU_DOMAIN_IDENTITY
domains
arm64: dma-mapping: Only swizzle DMA ops for IOMMU_DOMAIN_DMA
iommu: Allow default domain type to be set on the kernel command line

arch/arm64/mm/dma-mapping.c | 17 ++++++++++++-----
drivers/iommu/arm-smmu-v3.c | 20 ++++++++++++++++++--
drivers/iommu/arm-smmu.c    | 26 +++++++++++++++++++++++---
drivers/iommu/iommu.c       | 19 +++++++++++++++++--
4 files changed, 70 insertions(+), 12 deletions(-)

--
2.1.4

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel