![Maxime Ripard](/assets/img/avatar_default.png)
The Allwinner H6 has introduced an IOMMU for a few DMA controllers, mostly video related: the display engine, the video decoders / encoders, the camera capture controller, etc. The design is pretty simple compared to other IOMMUs found in SoCs: there's a single instance, controlling all the masters, with a single address space. It also features a performance monitoring unit that allows to retrieve various informations (per-master and global TLB accesses, hits and misses, access latency, etc) that isn't supported at the moment. Signed-off-by: Maxime Ripard <maxime@cerno.tech> Link: https://lore.kernel.org/r/d122a8670361e36fc26b4ce2674a2223d30dc4cc.1589378833.git-series.maxime@cerno.tech Signed-off-by: Joerg Roedel <jroedel@suse.de>
41 lines
1.8 KiB
Makefile
41 lines
1.8 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-$(CONFIG_IOMMU_API) += iommu.o
|
|
obj-$(CONFIG_IOMMU_API) += iommu-traces.o
|
|
obj-$(CONFIG_IOMMU_API) += iommu-sysfs.o
|
|
obj-$(CONFIG_IOMMU_DEBUGFS) += iommu-debugfs.o
|
|
obj-$(CONFIG_IOMMU_DMA) += dma-iommu.o
|
|
obj-$(CONFIG_IOMMU_IO_PGTABLE) += io-pgtable.o
|
|
obj-$(CONFIG_IOMMU_IO_PGTABLE_ARMV7S) += io-pgtable-arm-v7s.o
|
|
obj-$(CONFIG_IOMMU_IO_PGTABLE_LPAE) += io-pgtable-arm.o
|
|
obj-$(CONFIG_IOASID) += ioasid.o
|
|
obj-$(CONFIG_IOMMU_IOVA) += iova.o
|
|
obj-$(CONFIG_OF_IOMMU) += of_iommu.o
|
|
obj-$(CONFIG_MSM_IOMMU) += msm_iommu.o
|
|
obj-$(CONFIG_AMD_IOMMU) += amd_iommu.o amd_iommu_init.o amd_iommu_quirks.o
|
|
obj-$(CONFIG_AMD_IOMMU_DEBUGFS) += amd_iommu_debugfs.o
|
|
obj-$(CONFIG_AMD_IOMMU_V2) += amd_iommu_v2.o
|
|
obj-$(CONFIG_ARM_SMMU) += arm_smmu.o
|
|
arm_smmu-objs += arm-smmu.o arm-smmu-impl.o arm-smmu-qcom.o
|
|
obj-$(CONFIG_ARM_SMMU_V3) += arm-smmu-v3.o
|
|
obj-$(CONFIG_DMAR_TABLE) += dmar.o
|
|
obj-$(CONFIG_INTEL_IOMMU) += intel-iommu.o intel-pasid.o
|
|
obj-$(CONFIG_INTEL_IOMMU) += intel-trace.o
|
|
obj-$(CONFIG_INTEL_IOMMU_DEBUGFS) += intel-iommu-debugfs.o
|
|
obj-$(CONFIG_INTEL_IOMMU_SVM) += intel-svm.o
|
|
obj-$(CONFIG_IPMMU_VMSA) += ipmmu-vmsa.o
|
|
obj-$(CONFIG_IRQ_REMAP) += intel_irq_remapping.o irq_remapping.o
|
|
obj-$(CONFIG_MTK_IOMMU) += mtk_iommu.o
|
|
obj-$(CONFIG_MTK_IOMMU_V1) += mtk_iommu_v1.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_SUN50I_IOMMU) += sun50i-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_FSL_PAMU) += fsl_pamu.o fsl_pamu_domain.o
|
|
obj-$(CONFIG_S390_IOMMU) += s390-iommu.o
|
|
obj-$(CONFIG_QCOM_IOMMU) += qcom_iommu.o
|
|
obj-$(CONFIG_HYPERV_IOMMU) += hyperv-iommu.o
|
|
obj-$(CONFIG_VIRTIO_IOMMU) += virtio-iommu.o
|