9dd94d0919
pviommu is an IOMMU driver that interacts with pKVM paravirtualized
IOMMU through hypercalls(HVC).
The device tree binding for the driver is:
iommu {
compatible = “pkvm,pv-iommu”;
handle=<id>;
};
The device tree binding is typically generated from VMM with a
virtual IOMMU ID that the hypervisor translates to an IOMMU.
Where the id is a unique ID for this IOMMU used when talking with the
hypervisor.
This patch adds IOMMU ops handlers with implementation of trivial
functions only and Kconfig for the driver PKVM_PVIOMMU.
Bug: 357781595
Bug: 348382247
Bug: 236685427
Change-Id: Id7fcd2106d7f58fc2822996e9adede419b82b84f
Signed-off-by: Mostafa Saleh <smostafa@google.com>
34 lines
1.4 KiB
Makefile
34 lines
1.4 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-y += amd/ intel/ arm/ iommufd/
|
|
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 io-pgtable-arm-common.o
|
|
obj-$(CONFIG_IOMMU_IO_PGTABLE_DART) += io-pgtable-dart.o
|
|
obj-$(CONFIG_IOMMU_IOVA) += iova.o
|
|
obj-$(CONFIG_OF_IOMMU) += of_iommu.o
|
|
obj-$(CONFIG_MSM_IOMMU) += msm_iommu.o
|
|
obj-$(CONFIG_IPMMU_VMSA) += ipmmu-vmsa.o
|
|
obj-$(CONFIG_IRQ_REMAP) += 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_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_HYPERV_IOMMU) += hyperv-iommu.o
|
|
obj-$(CONFIG_VIRTIO_IOMMU) += virtio-iommu.o
|
|
obj-$(CONFIG_IOMMU_SVA) += iommu-sva.o
|
|
obj-$(CONFIG_IOMMU_IOPF) += io-pgfault.o
|
|
obj-$(CONFIG_SPRD_IOMMU) += sprd-iommu.o
|
|
obj-$(CONFIG_APPLE_DART) += apple-dart.o
|
|
obj-$(CONFIG_PKVM_PVIOMMU) += pkvm-pviommu.o
|