Lines Matching defs:pdev

139 		struct pci_dev *pdev = to_pci_dev(dev);
141 seg = pci_domain_nr(pdev->bus);
220 static int clone_alias(struct pci_dev *pdev, u16 alias, void *data)
224 u16 devid = pci_dev_id(pdev);
229 iommu = rlookup_amd_iommu(&pdev->dev);
244 struct pci_dev *pdev;
248 pdev = to_pci_dev(dev);
255 clone_alias(pdev, iommu->pci_seg->alias_table[pci_dev_id(pdev)], NULL);
257 pci_for_each_dma_alias(pdev, clone_alias, NULL);
262 struct pci_dev *pdev = to_pci_dev(dev);
274 ivrs_alias = pci_seg->alias_table[pci_dev_id(pdev)];
275 if (ivrs_alias != pci_dev_id(pdev) &&
276 PCI_BUS_NUM(ivrs_alias) == pdev->bus->number)
277 pci_add_dma_alias(pdev, ivrs_alias & 0xff, 1);
325 static bool pci_iommuv2_capable(struct pci_dev *pdev)
333 if (!pci_ats_supported(pdev))
337 pos = pci_find_ext_capability(pdev, caps[i]);
475 struct pci_dev *pdev;
483 pdev = pci_get_domain_bus_and_slot(iommu->pci_seg->id, PCI_BUS_NUM(devid),
485 if (pdev)
486 dev_data = dev_iommu_priv_get(&pdev->dev);
490 pci_err(pdev, "Event logged [RMP_HW_ERROR vmg_tag=0x%04x, spa=0x%llx, flags=0x%04x]\n",
499 if (pdev)
500 pci_dev_put(pdev);
507 struct pci_dev *pdev;
516 pdev = pci_get_domain_bus_and_slot(iommu->pci_seg->id, PCI_BUS_NUM(devid),
518 if (pdev)
519 dev_data = dev_iommu_priv_get(&pdev->dev);
523 pci_err(pdev, "Event logged [RMP_PAGE_FAULT vmg_tag=0x%04x, gpa=0x%llx, flags_rmp=0x%04x, flags=0x%04x]\n",
532 if (pdev)
533 pci_dev_put(pdev);
547 struct pci_dev *pdev;
549 pdev = pci_get_domain_bus_and_slot(iommu->pci_seg->id, PCI_BUS_NUM(devid),
551 if (pdev)
552 dev_data = dev_iommu_priv_get(&pdev->dev);
571 &pdev->dev, address,
579 pci_err(pdev, "Event logged [IO_PAGE_FAULT domain=0x%04x address=0x%llx flags=0x%04x]\n",
589 if (pdev)
590 pci_dev_put(pdev);
1330 static int device_flush_dte_alias(struct pci_dev *pdev, u16 alias, void *data)
1343 struct pci_dev *pdev = NULL;
1353 pdev = to_pci_dev(dev_data->dev);
1355 if (pdev)
1356 ret = pci_for_each_dma_alias(pdev,
1739 static void pdev_iommuv2_disable(struct pci_dev *pdev)
1741 pci_disable_ats(pdev);
1742 pci_disable_pri(pdev);
1743 pci_disable_pasid(pdev);
1746 static int pdev_pri_ats_enable(struct pci_dev *pdev)
1751 ret = pci_enable_pasid(pdev, 0);
1756 ret = pci_reset_pri(pdev);
1762 ret = pci_enable_pri(pdev, 32);
1766 ret = pci_enable_ats(pdev, PAGE_SHIFT);
1773 pci_disable_pri(pdev);
1776 pci_disable_pasid(pdev);
1789 struct pci_dev *pdev;
1806 pdev = to_pci_dev(dev);
1823 if (pdev_pri_ats_enable(pdev) != 0)
1827 dev_data->ats.qdep = pci_ats_queue_depth(pdev);
1828 dev_data->pri_tlp = pci_prg_resp_pasid_required(pdev);
1831 pci_enable_ats(pdev, PAGE_SHIFT) == 0) {
1833 dev_data->ats.qdep = pci_ats_queue_depth(pdev);
2772 int amd_iommu_complete_ppr(struct pci_dev *pdev, u32 pasid,
2779 dev_data = dev_iommu_priv_get(&pdev->dev);
2780 iommu = rlookup_amd_iommu(&pdev->dev);
2791 int amd_iommu_device_info(struct pci_dev *pdev,
2797 if (pdev == NULL || info == NULL)
2805 if (pci_ats_supported(pdev))
2808 pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_PRI);
2812 pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_PASID);
2820 info->max_pasids = min(pci_max_pasids(pdev), max_pasids);
2822 features = pci_pasid_features(pdev);
2938 static int set_remap_table_entry_alias(struct pci_dev *pdev, u16 alias,
2943 struct amd_iommu *iommu = rlookup_amd_iommu(&pdev->dev);
2957 u16 devid, struct pci_dev *pdev)
3000 if (pdev)
3001 pci_for_each_dma_alias(pdev, set_remap_table_entry_alias,
3023 bool align, struct pci_dev *pdev)
3029 table = alloc_irq_table(iommu, devid, pdev);