Lines Matching defs:bus

223 static inline bool context_copied(struct intel_iommu *iommu, u8 bus, u8 devfn)
228 return test_bit(((long)bus << 8) | devfn, iommu->copied_tables);
232 set_context_copied(struct intel_iommu *iommu, u8 bus, u8 devfn)
234 set_bit(((long)bus << 8) | devfn, iommu->copied_tables);
238 clear_context_copied(struct intel_iommu *iommu, u8 bus, u8 devfn)
240 clear_bit(((long)bus << 8) | devfn, iommu->copied_tables);
591 struct context_entry *iommu_context_addr(struct intel_iommu *iommu, u8 bus,
594 struct root_entry *root = &iommu->root_entry[bus];
602 if (!alloc && context_copied(iommu, bus, devfn))
652 pbridge->subordinate->number <= pdev->bus->number &&
653 pbridge->subordinate->busn_res.end >= pdev->bus->number)
670 rc = pci_bus_read_config_dword(pdev->bus, PCI_DEVFN(0, 0), 0xb0, &vtbar);
706 struct intel_iommu *device_to_iommu(struct device *dev, u8 *bus, u8 *devfn)
727 segment = pci_domain_nr(pdev->bus);
746 if (bus && devfn) {
747 *bus = drhd->devices[i].bus;
759 if (bus && devfn) {
760 *bus = pdev->bus->number;
810 u8 bus, u8 devfn, struct dma_pte *parent, int level)
842 u8 bus = source_id >> 8;
848 rt_entry = &iommu->root_entry[bus];
861 ctx_entry = iommu_context_addr(iommu, bus, devfn, 0);
911 pgtable_walk(iommu, addr >> VTD_PAGE_SHIFT, bus, devfn, pgtable, level);
1347 struct intel_iommu *iommu, u8 bus, u8 devfn)
1354 if (info->iommu == iommu && info->bus == bus &&
1462 sid = info->bus << 8 | info->devfn;
1490 PCI_DEVID(info->bus, info->devfn),
1929 u8 bus, u8 devfn)
1932 domain_lookup_dev_info(domain, iommu, bus, devfn);
1942 bus, PCI_SLOT(devfn), PCI_FUNC(devfn));
1946 context = iommu_context_addr(iommu, bus, devfn, 1);
1951 if (context_present(context) && !context_copied(iommu, bus, devfn))
1963 if (context_copied(iommu, bus, devfn)) {
1968 (((u16)bus) << 8) | devfn,
1975 clear_context_copied(iommu, bus, devfn);
2051 (((u16)bus) << 8) | devfn,
2089 u8 bus, devfn;
2091 iommu = device_to_iommu(dev, &bus, &devfn);
2099 bus, devfn);
2285 static void domain_context_clear_one(struct device_domain_info *info, u8 bus, u8 devfn)
2295 context = iommu_context_addr(iommu, bus, devfn, 0);
2315 (((u16)bus) << 8) | devfn,
2451 u8 bus, devfn;
2454 iommu = device_to_iommu(dev, &bus, &devfn);
2591 int bus, bool ext)
2599 tbl_idx = ext ? bus * 2 : bus;
2657 set_context_copied(iommu, bus, devfn);
2679 int bus, ret;
2714 for (bus = 0; bus < 256; bus++) {
2715 ret = copy_context_table(iommu, &old_rt[bus],
2716 ctxt_tbls, bus, ext);
2718 pr_err("%s: Failed to copy context table for bus %d\n",
2719 iommu->name, bus);
2727 for (bus = 0; bus < 256; bus++) {
2728 int idx = ext ? bus * 2 : bus;
2733 iommu->root_entry[bus].lo = val;
2740 iommu->root_entry[bus].hi = val;
3402 if (satc->segment != pci_domain_nr(dev->bus))
3417 struct pci_bus *bus;
3436 for (bus = dev->bus; bus; bus = bus->parent) {
3437 bridge = bus->self;
3453 if (atsr->segment != pci_domain_nr(dev->bus))
3742 if (dev->bus != &acpi_bus_type)
3806 * The bus notifier takes the dmar_global_lock, so lockdep will
3929 domain_context_clear_one(info, info->bus, info->devfn);
4349 u8 bus, devfn;
4352 iommu = device_to_iommu(dev, &bus, &devfn);
4361 info->bus = pdev->bus->number;
4363 info->segment = pci_domain_nr(pdev->bus);
4365 info->bus = bus;
4736 if (context_copied(iommu, info->bus, info->devfn))
5000 /* Zero TLB entries? You get to ride the short bus to school. */
5050 sid = PCI_DEVID(info->bus, info->devfn);