Lines Matching refs:devfn
351 u8 devfn; /* PCI devfn number */ member
678 u8 bus, u8 devfn, int alloc) in iommu_context_addr() argument
686 if (devfn >= 0x80) { in iommu_context_addr()
687 devfn -= 0x80; in iommu_context_addr()
690 devfn *= 2; in iommu_context_addr()
708 return &context[devfn]; in iommu_context_addr()
716 static struct intel_iommu *device_to_iommu(struct device *dev, u8 *bus, u8 *devfn) in device_to_iommu() argument
743 *devfn = drhd->devices[i].devfn; in device_to_iommu()
760 *devfn = pdev->devfn; in device_to_iommu()
778 static int device_context_mapped(struct intel_iommu *iommu, u8 bus, u8 devfn) in device_context_mapped() argument
785 context = iommu_context_addr(iommu, bus, devfn, 0); in device_context_mapped()
792 static void clear_context_table(struct intel_iommu *iommu, u8 bus, u8 devfn) in clear_context_table() argument
798 context = iommu_context_addr(iommu, bus, devfn, 0); in clear_context_table()
1282 u8 bus, u8 devfn) in iommu_support_dev_iotlb() argument
1298 info->devfn == devfn) { in iommu_support_dev_iotlb()
1352 sid = info->bus << 8 | info->devfn; in iommu_flush_dev_iotlb()
1794 u8 bus, u8 devfn, int translation) in domain_context_mapping_one() argument
1804 bus, PCI_SLOT(devfn), PCI_FUNC(devfn)); in domain_context_mapping_one()
1811 context = iommu_context_addr(iommu, bus, devfn, 1); in domain_context_mapping_one()
1852 info = iommu_support_dev_iotlb(domain, iommu, bus, devfn); in domain_context_mapping_one()
1880 (((u16)bus) << 8) | devfn, in domain_context_mapping_one()
1916 u8 bus, devfn; in domain_context_mapping() local
1919 iommu = device_to_iommu(dev, &bus, &devfn); in domain_context_mapping()
1924 return domain_context_mapping_one(domain, iommu, bus, devfn, in domain_context_mapping()
1946 u8 bus, devfn; in domain_context_mapped() local
1948 iommu = device_to_iommu(dev, &bus, &devfn); in domain_context_mapped()
1953 return device_context_mapped(iommu, bus, devfn); in domain_context_mapped()
2119 static void iommu_detach_dev(struct intel_iommu *iommu, u8 bus, u8 devfn) in iommu_detach_dev() argument
2124 clear_context_table(iommu, bus, devfn); in iommu_detach_dev()
2150 iommu_detach_dev(info->iommu, info->bus, info->devfn); in domain_remove_dev_info()
2179 dmar_search_domain_by_dev_info(int segment, int bus, int devfn) in dmar_search_domain_by_dev_info() argument
2185 info->devfn == devfn) in dmar_search_domain_by_dev_info()
2192 int bus, int devfn, in dmar_insert_dev_info() argument
2205 info->devfn = devfn; in dmar_insert_dev_info()
2215 info2 = dmar_search_domain_by_dev_info(iommu->segment, bus, devfn); in dmar_insert_dev_info()
2249 u8 bus, devfn; in get_domain_for_dev() local
2255 iommu = device_to_iommu(dev, &bus, &devfn); in get_domain_for_dev()
2309 tmp = dmar_insert_dev_info(iommu, bus, devfn, dev, domain); in get_domain_for_dev()
2520 u8 bus, devfn; in domain_add_dev_info() local
2523 iommu = device_to_iommu(dev, &bus, &devfn); in domain_add_dev_info()
2527 ndomain = dmar_insert_dev_info(iommu, bus, devfn, dev, domain); in domain_add_dev_info()
4298 u8 bus, devfn; in domain_remove_one_dev_info() local
4300 iommu = device_to_iommu(dev, &bus, &devfn); in domain_remove_one_dev_info()
4307 info->devfn == devfn) { in domain_remove_one_dev_info()
4312 iommu_detach_dev(iommu, info->bus, info->devfn); in domain_remove_one_dev_info()
4408 u8 bus, devfn; in intel_iommu_attach_device() local
4432 iommu = device_to_iommu(dev, &bus, &devfn); in intel_iommu_attach_device()
4588 u8 bus, devfn; in intel_iommu_add_device() local
4590 iommu = device_to_iommu(dev, &bus, &devfn); in intel_iommu_add_device()
4608 u8 bus, devfn; in intel_iommu_remove_device() local
4610 iommu = device_to_iommu(dev, &bus, &devfn); in intel_iommu_remove_device()