···426 iommu_queue_inv_iommu_pages(iommu, address, domid, 0, 1);427}428429-#ifdef CONFIG_IOMMU_API430/*431 * This function is used to flush the IO/TLB for a given protection domain432 * on every IOMMU in the system···449 spin_unlock_irqrestore(&iommu->lock, flags);450 }451}452-#endif453454/****************************************************************************455 *···514 return 0;515}516517-#ifdef CONFIG_IOMMU_API518static void iommu_unmap_page(struct protection_domain *dom,519 unsigned long bus_addr)520{···535536 *pte = 0;537}538-#endif539540/*541 * This function checks if a specific unity mapping entry is needed for···719 return id;720}721722-#ifdef CONFIG_IOMMU_API723static void domain_id_free(int id)724{725 unsigned long flags;···728 __clear_bit(id, amd_iommu_pd_alloc_bitmap);729 write_unlock_irqrestore(&amd_iommu_devtable_lock, flags);730}731-#endif732733/*734 * Used to reserve address ranges in the aperture (e.g. for exclusion···1696 /* Make the driver finally visible to the drivers */1697 dma_ops = &amd_iommu_dma_ops;16981699-#ifdef CONFIG_IOMMU_API1700 register_iommu(&amd_iommu_ops);1701-#endif17021703 bus_register_notifier(&pci_bus_type, &device_nb);1704···1723 * which is not possible with the dma_ops interface.1724 *1725 *****************************************************************************/1726-1727-#ifdef CONFIG_IOMMU_API17281729static void cleanup_domain(struct protection_domain *domain)1730{···1934 .iova_to_phys = amd_iommu_iova_to_phys,1935};19361937-#endif
···426 iommu_queue_inv_iommu_pages(iommu, address, domid, 0, 1);427}4280429/*430 * This function is used to flush the IO/TLB for a given protection domain431 * on every IOMMU in the system···450 spin_unlock_irqrestore(&iommu->lock, flags);451 }452}0453454/****************************************************************************455 *···516 return 0;517}5180519static void iommu_unmap_page(struct protection_domain *dom,520 unsigned long bus_addr)521{···538539 *pte = 0;540}0541542/*543 * This function checks if a specific unity mapping entry is needed for···723 return id;724}7250726static void domain_id_free(int id)727{728 unsigned long flags;···733 __clear_bit(id, amd_iommu_pd_alloc_bitmap);734 write_unlock_irqrestore(&amd_iommu_devtable_lock, flags);735}0736737/*738 * Used to reserve address ranges in the aperture (e.g. for exclusion···1702 /* Make the driver finally visible to the drivers */1703 dma_ops = &amd_iommu_dma_ops;170401705 register_iommu(&amd_iommu_ops);017061707 bus_register_notifier(&pci_bus_type, &device_nb);1708···1731 * which is not possible with the dma_ops interface.1732 *1733 *****************************************************************************/0017341735static void cleanup_domain(struct protection_domain *domain)1736{···1944 .iova_to_phys = amd_iommu_iova_to_phys,1945};19460