aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorWeidong Han <weidong.han@intel.com>2008-12-08 23:09:29 +0800
committerJoerg Roedel <joerg.roedel@amd.com>2009-01-03 14:02:18 +0100
commitfaa3d6f5ffe7bf60ebfd0d36513fbcda0eb0ea1a (patch)
tree4992e52cff96da38bedfb7805c18ac97c9ae9c01 /include
parentChange domain_context_mapping_one for virtual machine domain (diff)
downloadlinux-dev-faa3d6f5ffe7bf60ebfd0d36513fbcda0eb0ea1a.tar.xz
linux-dev-faa3d6f5ffe7bf60ebfd0d36513fbcda0eb0ea1a.zip
Change intel iommu APIs of virtual machine domain
These APIs are used by KVM to use VT-d Signed-off-by: Weidong Han <weidong.han@intel.com> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/intel-iommu.h20
1 files changed, 11 insertions, 9 deletions
diff --git a/include/linux/intel-iommu.h b/include/linux/intel-iommu.h
index 06349fd5871b..07973c4e4acc 100644
--- a/include/linux/intel-iommu.h
+++ b/include/linux/intel-iommu.h
@@ -330,15 +330,17 @@ extern int qi_flush_iotlb(struct intel_iommu *iommu, u16 did, u64 addr,
extern void qi_submit_sync(struct qi_desc *desc, struct intel_iommu *iommu);
-void intel_iommu_domain_exit(struct dmar_domain *domain);
-struct dmar_domain *intel_iommu_domain_alloc(struct pci_dev *pdev);
-int intel_iommu_context_mapping(struct dmar_domain *domain,
- struct pci_dev *pdev);
-int intel_iommu_page_mapping(struct dmar_domain *domain, dma_addr_t iova,
- u64 hpa, size_t size, int prot);
-void intel_iommu_detach_dev(struct dmar_domain *domain, u8 bus, u8 devfn);
-struct dmar_domain *intel_iommu_find_domain(struct pci_dev *pdev);
-u64 intel_iommu_iova_to_pfn(struct dmar_domain *domain, u64 iova);
+struct dmar_domain *intel_iommu_alloc_domain(void);
+void intel_iommu_free_domain(struct dmar_domain *domain);
+int intel_iommu_attach_device(struct dmar_domain *domain,
+ struct pci_dev *pdev);
+void intel_iommu_detach_device(struct dmar_domain *domain,
+ struct pci_dev *pdev);
+int intel_iommu_map_address(struct dmar_domain *domain, dma_addr_t iova,
+ u64 hpa, size_t size, int prot);
+void intel_iommu_unmap_address(struct dmar_domain *domain,
+ dma_addr_t iova, size_t size);
+u64 intel_iommu_iova_to_phys(struct dmar_domain *domain, u64 iova);
#ifdef CONFIG_DMAR
int intel_iommu_found(void);