mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 03:10:12 +00:00
![Will Deacon](/assets/img/avatar_default.png)
Version three of the ARM SMMU architecture introduces significant changes and improvements over previous versions of the specification, necessitating a new driver in the Linux kernel. The main change to the programming interface is that the majority of the configuration data has been moved from MMIO registers to in-memory data structures, with communication between the CPU and the SMMU being mediated via in-memory circular queues. This patch adds an initial driver for SMMUv3 to Linux. We currently support pinned stage-1 (DMA) and stage-2 (KVM VFIO) mappings using the generic IO-pgtable code. Cc: Robin Murphy <robin.murphy@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Joerg Roedel <jroedel@suse.de>
25 lines
1.1 KiB
Makefile
25 lines
1.1 KiB
Makefile
obj-$(CONFIG_IOMMU_API) += iommu.o
|
|
obj-$(CONFIG_IOMMU_API) += iommu-traces.o
|
|
obj-$(CONFIG_IOMMU_API) += iommu-sysfs.o
|
|
obj-$(CONFIG_IOMMU_IO_PGTABLE) += io-pgtable.o
|
|
obj-$(CONFIG_IOMMU_IO_PGTABLE_LPAE) += io-pgtable-arm.o
|
|
obj-$(CONFIG_IOMMU_IOVA) += iova.o
|
|
obj-$(CONFIG_OF_IOMMU) += of_iommu.o
|
|
obj-$(CONFIG_MSM_IOMMU) += msm_iommu.o msm_iommu_dev.o
|
|
obj-$(CONFIG_AMD_IOMMU) += amd_iommu.o amd_iommu_init.o
|
|
obj-$(CONFIG_AMD_IOMMU_V2) += amd_iommu_v2.o
|
|
obj-$(CONFIG_ARM_SMMU) += arm-smmu.o
|
|
obj-$(CONFIG_ARM_SMMU_V3) += arm-smmu-v3.o
|
|
obj-$(CONFIG_DMAR_TABLE) += dmar.o
|
|
obj-$(CONFIG_INTEL_IOMMU) += intel-iommu.o
|
|
obj-$(CONFIG_IPMMU_VMSA) += ipmmu-vmsa.o
|
|
obj-$(CONFIG_IRQ_REMAP) += intel_irq_remapping.o irq_remapping.o
|
|
obj-$(CONFIG_OMAP_IOMMU) += omap-iommu.o
|
|
obj-$(CONFIG_OMAP_IOMMU_DEBUG) += omap-iommu-debug.o
|
|
obj-$(CONFIG_ROCKCHIP_IOMMU) += rockchip-iommu.o
|
|
obj-$(CONFIG_TEGRA_IOMMU_GART) += tegra-gart.o
|
|
obj-$(CONFIG_TEGRA_IOMMU_SMMU) += tegra-smmu.o
|
|
obj-$(CONFIG_EXYNOS_IOMMU) += exynos-iommu.o
|
|
obj-$(CONFIG_SHMOBILE_IOMMU) += shmobile-iommu.o
|
|
obj-$(CONFIG_SHMOBILE_IPMMU) += shmobile-ipmmu.o
|
|
obj-$(CONFIG_FSL_PAMU) += fsl_pamu.o fsl_pamu_domain.o
|